It is currently 18 Sep 2025, 20:31
   
Text Size

Bug Reports (snapshot builds)

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Bug Reports (snapshot builds)

Postby Agetian » 24 Oct 2014, 05:46

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
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby mastroego » 24 Oct 2014, 06:52

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.
mastroego
 
Posts: 236
Joined: 22 Sep 2013, 14:04
Has thanked: 28 times
Been thanked: 16 times

Re: Bug Reports (snapshot builds)

Postby Snowstorm » 24 Oct 2014, 08:01

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:
User avatar
Snowstorm
 
Posts: 50
Joined: 16 Mar 2014, 20:37
Has thanked: 4 times
Been thanked: 1 time

Re: Bug Reports (snapshot builds)

Postby lujo » 24 Oct 2014, 11:53

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.
---

My Shandalar deck pack folder is avaliable here:Dropbox
Leave feedback on particular decks here: Google doc
Ask for instructions, give feedback and complaints here: Thread
User avatar
lujo
 
Posts: 557
Joined: 20 Nov 2013, 13:17
Has thanked: 224 times
Been thanked: 70 times

Re: Bug Reports (snapshot builds)

Postby Chris H. » 24 Oct 2014, 15:11

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.
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Bug Reports (snapshot builds)

Postby lujo » 24 Oct 2014, 17:22

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)
---

My Shandalar deck pack folder is avaliable here:Dropbox
Leave feedback on particular decks here: Google doc
Ask for instructions, give feedback and complaints here: Thread
User avatar
lujo
 
Posts: 557
Joined: 20 Nov 2013, 13:17
Has thanked: 224 times
Been thanked: 70 times

Re: Bug Reports (snapshot builds)

Postby Jak » 24 Oct 2014, 20:40

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:
Jak
 
Posts: 23
Joined: 23 Mar 2011, 07:37
Has thanked: 0 time
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby drdev » 24 Oct 2014, 21:09

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.
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Bug Reports (snapshot builds)

Postby Jak » 25 Oct 2014, 05:55

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. :)
Jak
 
Posts: 23
Joined: 23 Mar 2011, 07:37
Has thanked: 0 time
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby JaeKill » 25 Oct 2014, 16:35

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.
JaeKill
 
Posts: 7
Joined: 11 May 2013, 00:17
Has thanked: 2 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby friarsol » 25 Oct 2014, 16:45

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.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby borsuk » 25 Oct 2014, 20:09

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)
borsuk
 
Posts: 10
Joined: 05 Oct 2014, 21:01
Has thanked: 2 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby drdev » 25 Oct 2014, 20:16

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.
drdev
Programmer
 
Posts: 1958
Joined: 27 Jul 2013, 02:07
Has thanked: 189 times
Been thanked: 565 times

Re: Bug Reports (snapshot builds)

Postby Snowstorm » 26 Oct 2014, 02:01

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.
User avatar
Snowstorm
 
Posts: 50
Joined: 16 Mar 2014, 20:37
Has thanked: 4 times
Been thanked: 1 time

Re: Bug Reports (snapshot builds)

Postby Hanmac » 26 Oct 2014, 17:01

Ink-Treader Nephilim does trigger but not copy the spells that i target on him
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 42 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 42 users online :: 0 registered, 0 hidden and 42 guests (based on users active over the past 10 minutes)
Most users ever online was 7967 on 09 Sep 2025, 23:08

Users browsing this forum: No registered users and 42 guests

Login Form