Page 111 of 487

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 12:08
by Max mtg
swordshine wrote:Maybe we should add the stack descriptions of these cards manually, I searched "\bChangeZone\b.*ValidTgts\$ Opponent", only got 22 results.
It'd be better to pay a visit to the changeHiddenOriginStackDescription method of ChangeZoneEffect class.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 12:59
by Corwin72
i5-2500k 3.3GHz
64bit
java 32bit Version 7 Update 17
build 1.7.0_b02

Please let me know if there is any other info that I can provide.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 13:04
by Max mtg
I think that'll be enough - we have found one common property, that's Java 7.
I'll try to run the SVN build with it and see if it helps to reproduce the reported problem. Then attempt to call all that GuiChoose dialogs from EDT and check effects of that change.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 14:46
by moomarc
swordshine wrote:
moomarc wrote:For now I've added the Chooser and DefinedPlayer parameters to other similar cards because I need a little more time to work some things out (r20722). It makes the scripts a little more foolproof if nothing else. Also, looking at the stack description, it has never been able to handle targeted hidden origin changes and needs quite a large overhaul.

EDIT: The main issue is fixed. It is now handled the way I had intended initially when I made the changes for Oath of Lieges, I had just made a slight logic error.
Maybe we should add the stack descriptions of these cards manually, I searched "\bChangeZone\b.*ValidTgts\$ Opponent", only got 22 results.
I've just improved the stack description generated by hiddenOriginStackDescription. It's far better than it was and covers most scenarios. If we come across anything that still doesn't read well, then we can just add a StackDescription to the offending card.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 19:23
by Corwin72
Max, I also use a very large deck when I get this issue. 400+ cards.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 19:24
by Max mtg
I experience serious slowdowns when AI has enchanted my creature with something.
Eg: Mogg Sentry is enchanted with Creature Bond. - this leads to constant 10-12% CPU load (given that core i7-2600 has 8 cores, that's one core fully loaded)

After I killed my creature, the CPU load normalizes back. Don't know why, not sure if related to threads


@Corwin, this list size cannot be a problem. When you add a card via dev mode, the list gets filled with all 12k+ cards we have and still works.

UPD: Could not reproduce the problem (by playing my fetchland)
Code: Select all
java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Ok, I'll wrap the GuiChoose into EDT then and see if that works for you.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 19:39
by Hellfish
Max, do you have targeting arrows enabled? I experience slowdowns when they are always on as well and there is a note by Doublestrike in TargetingOverlay.java about how the arrows are redrawn every repaint regardless of wether the cards involved have moved or not.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 19:56
by Max mtg
Hellfish wrote:Max, do you have targeting arrows enabled? I experience slowdowns when they are always on as well and there is a note by Doublestrike in TargetingOverlay.java about how the arrows are redrawn every repaint regardless of wether the cards involved have moved or not.
Yes, I have. I see the arrows only for the first time when cards are played, subsuquent redraws don't display them.

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 19:58
by Max mtg
@7543021, @Corwin72
I could not reproduce the issue, will have to guess a working solution.
Please update to 20733 and tell me if that helped.

@sol
Took you quest save, didn't reproduce as well. Will try same thing as made for GuiChoose (commited as r20735). Does this solve anything?

Re: Bug Reports (snapshot builds)

PostPosted: 02 Apr 2013, 21:15
by Corwin72
Will do.

Still crashed on new version.

Downgraded java.

This happened when ai returned Thawing Glaciers at EOT.
| Open
Description: [describe what you were doing when the crash occurred]

[spoiler=EmptyStackException]
Code: Select all
Forge Version:    1.3.12-SNAPSHOT-r20726
Operating System: Windows 7 6.1 amd64
Java Version:     1.6.0_43 Sun Microsystems Inc.

java.util.EmptyStackException
   at java.util.Stack.peek(Unknown Source)
   at forge.control.input.InputControl.getActualInput(InputControl.java:132)
   at forge.gui.InputProxy.update(InputProxy.java:69)
   at java.util.Observable.notifyObservers(Unknown Source)
   at java.util.Observable.notifyObservers(Unknown Source)
   at forge.util.MyObservable.updateObservers(MyObservable.java:38)
   at forge.control.input.InputControl.removeInput(InputControl.java:103)
   at forge.control.input.InputControl.unlock(InputControl.java:198)
   at forge.FThreads$1.run(FThreads.java:102)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
[/spoiler]

Re: Bug Reports (snapshot builds)

PostPosted: 03 Apr 2013, 11:24
by swordshine
Description: When I rigged planar roll via Dev mode to trigger planeswalk/chaos

IllegalStateException | Open
Code: Select all
Forge Version:    SVN
Operating System: Windows XP 5.1 x86
Java Version:     1.7.0_17 Oracle Corporation

java.lang.IllegalStateException: Player.playSpellAbility may not be accessed from the event dispatch thread.
   at forge.FThreads.checkEDT(FThreads.java:50)
   at forge.game.player.HumanPlayer.playSpellAbility(HumanPlayer.java:105)
   at forge.game.zone.MagicStack.chooseOrderOfSimultaneousStackEntry(MagicStack.java:1128)
   at forge.game.zone.MagicStack.chooseOrderOfSimultaneousStackEntryAll(MagicStack.java:1070)
   at forge.gui.GuiDisplayUtil.devModeRiggedPlanarRoll(GuiDisplayUtil.java:687)
   at forge.gui.match.controllers.CDev$13.mousePressed(CDev.java:87)
   at java.awt.AWTEventMulticaster.mousePressed(AWTEventMulticaster.java:280)
   at java.awt.Component.processMouseEvent(Component.java:6502)
   at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
   at java.awt.Component.processEvent(Component.java:6270)
   at java.awt.Container.processEvent(Container.java:2229)
   at java.awt.Component.dispatchEventImpl(Component.java:4861)
   at java.awt.Container.dispatchEventImpl(Container.java:2287)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
   at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4489)
   at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
   at java.awt.Container.dispatchEventImpl(Container.java:2273)
   at java.awt.Window.dispatchEventImpl(Window.java:2719)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
   at java.awt.EventQueue.access$200(EventQueue.java:103)
   at java.awt.EventQueue$3.run(EventQueue.java:688)
   at java.awt.EventQueue$3.run(EventQueue.java:686)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
   at java.awt.EventQueue$4.run(EventQueue.java:702)
   at java.awt.EventQueue$4.run(EventQueue.java:700)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

Re: Bug Reports (snapshot builds)

PostPosted: 03 Apr 2013, 11:45
by Max mtg
@swordshine - the quoted below code has to be run by a thread out of pool (not EDT that serves UI)
See usages of HumanPlayer.playSpellAbility(Card c, SpellAbility ab) for a way to do that.

Code: Select all
        PlanarDice.roll(p, res);
        p.getGame().getStack().chooseOrderOfSimultaneousStackEntryAll();

Re: Bug Reports (snapshot builds)

PostPosted: 03 Apr 2013, 13:19
by moomarc
TriggerCount$DamageAmount seems to be broken. Not sure if its related to the refactoring of CalculateAmount.

Re: Bug Reports (snapshot builds)

PostPosted: 03 Apr 2013, 13:26
by Max mtg
moomarc wrote:TriggerCount$DamageAmount seems to be broken. Not sure if its related to the refactoring of CalculateAmount.
Give me a card to check

Re: Bug Reports (snapshot builds)

PostPosted: 03 Apr 2013, 13:34
by moomarc
Max mtg wrote:
moomarc wrote:TriggerCount$DamageAmount seems to be broken. Not sure if its related to the refactoring of CalculateAmount.
Give me a card to check
Armadillo Cloak. I know that was working fairly recently.