Page 254 of 487

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 05:46
by Agetian
r28072: Targeting arrows for items on stack still do not work if the targeting overlay is in "On mouse over" mode. I narrowed the problem down to a particular issue - it's not that the targeting arcs do not appear on time, it's just that they do not appear at all unless the overlay is in "Always on" mode. While hovering the mouse over the stack item in the "On mouse over" targeting overlay mode though, there's nothing that can make the targeting arcs appear.

A simple test case to reproduce: Set your targeting overlay to "On Mouse Over" mode. Use the dev mode to add Lightning Bolt to stack and target the opponent. Hover the mouse over the stack item, the targeting arrow will not appear. Use the dock panel to switch the targeting overlay to "Always On" mode. Now the targeting arrow will appear when you hover your mouse over the stack item. Switch the targeting overlay to "On Mouse Over" again. The targeting arrow will no longer appear even though it should.

EDIT: Fixed in r28073, but I'm not sure if my fix is NPE-proof.

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 06:52
by mastroego
Snowstorm wrote:r28063

This bug has been persisting since 1.5.28 and I have reported it before but I will again since this is a new version. The card that Snapcaster Mage targets still does not show up in the flashback section but is still playable if you go into the graveyard and click on it.
Maybe this is meant to be. After all, flashback cards are cast from the graveyard...
That zone may be used for "cast from exile" cards, and other special cases.

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 08:01
by Snowstorm
mastroego wrote:
Snowstorm wrote:r28063

This bug has been persisting since 1.5.28 and I have reported it before but I will again since this is a new version. The card that Snapcaster Mage targets still does not show up in the flashback section but is still playable if you go into the graveyard and click on it.
Maybe this is meant to be. After all, flashback cards are cast from the graveyard...
That zone may be used for "cast from exile" cards, and other special cases.
Before 1.5.28 the cards Snapcaster Mage gave flashback appeared in the flashback section (the bar with a lightning bolt that is literately called flashback cards). Plus, all other cards that give or have flashback still appear there so there is no way this is meant to be. :wink:

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 11:53
by lujo
You can "click thorough" Geth's Verdict even if you have creatures to sacrifice. I've seen this with other sacrifice effects, if you pres space a few times in respons the game just goes on with nothing happening.

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 15:11
by Chris H.
drdev wrote:That's really strange, as I specifically fixed that case, and it's working when I run Forge on my machine. Is there any chance the publish didn't pull on all the recent changes somehow?
 
I use the Synchronize View in Eclipse to update. I press the Synchronize SVN button that then displays all of the incoming changes. I then press the Update all incoming changes button. This process should update me to the head version.

Before I use a Maven command to build and deploy I make sure that the number of incoming changes in the entire workspace is set to zero.

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 17:22
by lujo
Description: This keeps happening at random times when I use certain sources of mana as part of paying a cost. I start paying a cost and try to sacrifice a land such as Ebon Stronghold and that happens.

RuntimeException | Open
Code: Select all
Forge Version:    1.5.29-SNAPSHOT-r28045 (mixed revisions detected; please update from the root directory)
Operating System: Windows XP 5.1 x86
Java Version:     1.8.0_25 Oracle Corporation

java.lang.RuntimeException: Cannot remove input InputPayManaOfCostPayment because it's not on top of stack. Stack = []
   at forge.match.input.InputQueue.removeInput(InputQueue.java:59)
   at forge.match.input.InputSyncronizedBase.stop(InputSyncronizedBase.java:49)
   at forge.match.input.InputPayMana.onStateChanged(InputPayMana.java:415)
   at forge.match.input.InputPayMana.showMessage(InputPayMana.java:409)
   at forge.match.input.InputBase.showMessageInitial(InputBase.java:131)
   at forge.match.input.InputProxy$1.run(InputProxy.java:68)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
But in case it's somehow different, I press contionue, the spell is on the stack and payed for, and it crashes again. MAybe it's the same thing, not sure if I can read these right.

Description: [describe what you were doing when the crash occurred]

RuntimeException | Open
Code: Select all
Forge Version:    1.5.29-SNAPSHOT-r28045 (mixed revisions detected; please update from the root directory)
Operating System: Windows XP 5.1 x86
Java Version:     1.8.0_25 Oracle Corporation

java.lang.RuntimeException: Cannot remove input InputPassPriority because it's not on top of stack. Stack = []
   at forge.match.input.InputQueue.removeInput(InputQueue.java:59)
   at forge.match.input.InputSyncronizedBase.stop(InputSyncronizedBase.java:49)
   at forge.match.input.InputPassPriority$1.run(InputPassPriority.java:73)
   at forge.match.input.InputPassPriority.passPriority(InputPassPriority.java:121)
   at forge.match.input.InputPassPriority.onOk(InputPassPriority.java:70)
   at forge.match.input.InputBase.selectButtonOK(InputBase.java:154)
   at forge.match.input.InputProxy.selectButtonOK(InputProxy.java:82)
   at forge.player.PlayerControllerHuman.selectButtonOk(PlayerControllerHuman.java:1317)
   at forge.screens.match.controllers.CPrompt.selectButtonOk(CPrompt.java:91)
   at forge.screens.match.controllers.CPrompt$2.actionPerformed(CPrompt.java:62)
   at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
   at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
   at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
   at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
   at java.awt.Component.processMouseEvent(Unknown Source)
   at javax.swing.JComponent.processMouseEvent(Unknown Source)
   at java.awt.Component.processEvent(Unknown Source)
   at java.awt.Container.processEvent(Unknown Source)
   at java.awt.Component.dispatchEventImpl(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Window.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 20:40
by Jak
r28063
Coalition Relic does not work like it should if it has more than one charge counter on it, it generates only one mana and not one for any charge counter on it.

edit: Some odd behavior of the AI player I noticed: he used the ability of Copper Gnomes to put a Howling Mine into play (after the draw phase on his turn). He could have saved mana and still had a creature on the field. :roll:

Re: Bug Reports (snapshot builds)

PostPosted: 24 Oct 2014, 21:09
by drdev
Agetian wrote:r28072: Targeting arrows for items on stack still do not work if the targeting overlay is in "On mouse over" mode. I narrowed the problem down to a particular issue - it's not that the targeting arcs do not appear on time, it's just that they do not appear at all unless the overlay is in "Always on" mode. While hovering the mouse over the stack item in the "On mouse over" targeting overlay mode though, there's nothing that can make the targeting arcs appear.

A simple test case to reproduce: Set your targeting overlay to "On Mouse Over" mode. Use the dev mode to add Lightning Bolt to stack and target the opponent. Hover the mouse over the stack item, the targeting arrow will not appear. Use the dock panel to switch the targeting overlay to "Always On" mode. Now the targeting arrow will appear when you hover your mouse over the stack item. Switch the targeting overlay to "On Mouse Over" again. The targeting arrow will no longer appear even though it should.

EDIT: Fixed in r28073, but I'm not sure if my fix is NPE-proof.

- Agetian
I looked your fix over and tested it out. Looks good. Thanks.

Re: Bug Reports (snapshot builds)

PostPosted: 25 Oct 2014, 05:55
by Jak
If you have a token pic for morph creatures (morph.jpg), all cards where you should see the back (e. g. looking at library) use this pic. There should be a seperate pic for the backside instead of using the morph token pic. :)

Re: Bug Reports (snapshot builds)

PostPosted: 25 Oct 2014, 16:35
by JaeKill
suppression field will not let me play shocklands from my hand unless i pay 2. the pay 2 life is a triggered not activated ability.

Re: Bug Reports (snapshot builds)

PostPosted: 25 Oct 2014, 16:45
by friarsol
JaeKill wrote:suppression field will not let me play shocklands from my hand unless i pay 2. the pay 2 life is a triggered not activated ability.
What version are you on? I fixed that before the last release.

Re: Bug Reports (snapshot builds)

PostPosted: 25 Oct 2014, 20:09
by borsuk
1.5.29

duel in quest mode, during opponents M1 turn bug showed up, forge couldn't continue:

Description: [describe what you were doing when the crash occurred]

IllegalComponentStateException | Open
Code: Select all
Forge Version:    1.5.29-r28053Mu (mixed revisions detected; please update from the root directory)
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_25 Oracle Corporation

java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
   at java.awt.Component.getLocationOnScreen_NoTreeLock(Unknown Source)
   at java.awt.Component.getLocationOnScreen(Unknown Source)
   at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:165)
   at forge.screens.match.TargetingOverlay.access$600(TargetingOverlay.java:59)
   at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:377)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintToOffscreen(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
   at javax.swing.RepaintManager.paint(Unknown Source)
   at javax.swing.JComponent._paintImmediately(Unknown Source)
   at javax.swing.JComponent.paintImmediately(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.access$1300(Unknown Source)
   at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)

Re: Bug Reports (snapshot builds)

PostPosted: 25 Oct 2014, 20:16
by drdev
borsuk wrote:1.5.29

duel in quest mode, during opponents M1 turn bug showed up, forge couldn't continue:

Description: [describe what you were doing when the crash occurred]

IllegalComponentStateException | Open
Code: Select all
Forge Version:    1.5.29-r28053Mu (mixed revisions detected; please update from the root directory)
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_25 Oracle Corporation

java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
   at java.awt.Component.getLocationOnScreen_NoTreeLock(Unknown Source)
   at java.awt.Component.getLocationOnScreen(Unknown Source)
   at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:165)
   at forge.screens.match.TargetingOverlay.access$600(TargetingOverlay.java:59)
   at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:377)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JLayeredPane.paint(Unknown Source)
   at javax.swing.JComponent.paintChildren(Unknown Source)
   at javax.swing.JComponent.paint(Unknown Source)
   at javax.swing.JComponent.paintToOffscreen(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
   at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
   at javax.swing.RepaintManager.paint(Unknown Source)
   at javax.swing.JComponent._paintImmediately(Unknown Source)
   at javax.swing.JComponent.paintImmediately(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at javax.swing.RepaintManager$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.access$1300(Unknown Source)
   at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
   at java.awt.event.InvocationEvent.dispatch(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$400(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
This has already been fixed. Please update to a newer snapshot.

Re: Bug Reports (snapshot builds)

PostPosted: 26 Oct 2014, 02:01
by Snowstorm
r28063

Two bugs I noticed:

Goblin Guide does not reveal the top card of the library when a opponent attacks you with it but it works the other way around. However, it still gives you a land if there is a land on top.

I noticed this bug a long time ago (since 1.5.26) but I forgot about it until today after running into it again. The AI does not play Rift Bolt when it comes off suspend and it stays exiled indefinitely.

Re: Bug Reports (snapshot builds)

PostPosted: 26 Oct 2014, 17:01
by Hanmac
Ink-Treader Nephilim does trigger but not copy the spells that i target on him