It is currently 14 Sep 2025, 13:21
   
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 Salmiaka » 23 May 2013, 15:38

When Ancestral Vision is on the stack (by suspension), if we keep on pressing enter, the spell doesn't resolves, it is just passed away. It stays on exile without any suspend counter.
It should be obligated to target any player isn't it ?

It is the same with every suspend spell that needs a target.

Epocrasite in the exile keeps memory of damages done, and directly returns in exile after 3 upkeeps : it is still written "Time counters : 3 Damages 5", like it kept memory.
Salmiaka
 
Posts: 20
Joined: 07 May 2013, 00:55
Has thanked: 4 times
Been thanked: 2 times

Re: Bug Reports (snapshot builds)

Postby jeffwadsworth » 23 May 2013, 22:26

Screenshot of game state attached with the bug report. AI vs AI.

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

[spoiler=ArrayIndexOutOfBoundsException]
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21590
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_21 Oracle Corporation

java.lang.ArrayIndexOutOfBoundsException: -1
   at java.util.ArrayList.fastRemove(Unknown Source)
   at java.util.ArrayList.remove(Unknown Source)
   at forge.Card.removeSpellAbility(Card.java:2536)
   at forge.game.GameActionUtil.grantBasicLandsManaAbilities(GameActionUtil.java:684)
   at forge.game.GameAction.checkStaticAbilities(GameAction.java:897)
   at forge.card.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1049)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1063)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1034)
   at forge.game.ai.ComputerUtil.playNoStack(ComputerUtil.java:319)
   at forge.card.trigger.WrappedAbility.resolve(WrappedAbility.java:372)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1057)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1034)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:613)
   at forge.game.phase.PhaseHandler$1.run(PhaseHandler.java:748)
   at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:756)
   at forge.game.player.PlayerController.passPriority(PlayerController.java:76)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:850)
   at forge.game.ai.AiInputCommon$1.run(AiInputCommon.java:74)
   at forge.FThreads$1.run(FThreads.java:136)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
[/spoiler]
Attachments
gamestate.jpg
jeffwadsworth
Super Tester Elite
 
Posts: 1172
Joined: 20 Oct 2010, 04:47
Location: USA
Has thanked: 287 times
Been thanked: 70 times

Re: Bug Reports (snapshot builds)

Postby Salmiaka » 23 May 2013, 23:43

Bug report : Description: [Deck Building and scrolling a small (about a thousand) amount of cards]

IllegalStateException | Open
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21590
Operating System: Windows XP 5.1 x86
Java Version:     1.7.0_09 Oracle Corporation

java.lang.IllegalStateException: Card Mycoloth (542) has no means to determine the game it belongs to!
   at forge.Card.getGame(Card.java:8310)
   at forge.card.cardfactory.CardFactoryUtil.parseKeywords(CardFactoryUtil.java:3144)
   at forge.card.cardfactory.CardFactory.buildAbilities(CardFactory.java:280)
   at forge.card.cardfactory.CardFactory.getCard(CardFactory.java:233)
   at forge.item.CardPrinted.toForgeCard(CardPrinted.java:249)
   at forge.item.CardPrinted.getMatchingForgeCard(CardPrinted.java:238)
   at forge.gui.match.controllers.CDetail.showCard(CDetail.java:55)
   at forge.gui.deckeditor.CDeckEditorUI.setCard(CDeckEditorUI.java:87)
   at forge.gui.deckeditor.tables.EditorTableModel.showSelectedCard(EditorTableModel.java:193)
   at forge.gui.deckeditor.tables.EditorTableModel$1.valueChanged(EditorTableModel.java:208)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
   at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
   at javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
   at javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown Source)
   at javax.swing.JTable.changeSelectionModel(Unknown Source)
   at javax.swing.JTable.changeSelection(Unknown Source)
   at javax.swing.plaf.basic.BasicTableUI$Actions.actionPerformed(Unknown Source)
   at javax.swing.SwingUtilities.notifyAction(Unknown Source)
   at javax.swing.JComponent.processKeyBinding(Unknown Source)
   at javax.swing.JTable.processKeyBinding(Unknown Source)
   at javax.swing.JComponent.processKeyBindings(Unknown Source)
   at javax.swing.JComponent.processKeyEvent(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.KeyboardFocusManager.redispatchEvent(Unknown Source)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
   at java.awt.Component.dispatchEventImpl(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$200(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)
Salmiaka
 
Posts: 20
Joined: 07 May 2013, 00:55
Has thanked: 4 times
Been thanked: 2 times

Re: Bug Reports (snapshot builds)

Postby Salmiaka » 24 May 2013, 01:51

Sorry for double posting : (another bug, another post, tell me if i'm wrong)

Some strange double upkeeps seems to trigger :

as soon as there is a "auto" input, its like some effets just copy themself in the stack. 2 events for life-loss with only one Wanderlust on my creature, with some (maybe 6 or 7) spell suspended (the black one that suggest to sacrifice a permanent, i don't remember the name for now, whites that prevents opponents to attack me).

When the computer put another wanderlust, I lose 4 life instead of 2 this way.

Note that time counters weren't affected by this : only one removed (on each suspended card) each upkeep.
Salmiaka
 
Posts: 20
Joined: 07 May 2013, 00:55
Has thanked: 4 times
Been thanked: 2 times

Re: Bug Reports (snapshot builds)

Postby Salmiaka » 24 May 2013, 23:51

Description: [No idea, it just poped out.]

NullPointerException | Open
Code: Select all
Forge Version:    1.3.16-r21506
Operating System: Mac OS X 10.5.8 x86_64
Java Version:     1.6.0_26 Apple Inc.

java.lang.NullPointerException
   at forge.control.input.InputAttack.setCurrentDefender(InputAttack.java:153)
   at forge.control.input.InputAttack.selectButtonOK(InputAttack.java:101)
   at forge.gui.InputProxy.selectButtonOK(InputProxy.java:103)
   at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:59)
   at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
   at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
   at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
   at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
   at javax.swing.AbstractButton.doClick(AbstractButton.java:389)
   at javax.swing.AbstractButton.doClick(AbstractButton.java:337)
   at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:87)
   at java.awt.Component.processKeyEvent(Component.java:6331)
   at javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
   at java.awt.Component.processEvent(Component.java:6150)
   at java.awt.Container.processEvent(Container.java:2085)
   at java.awt.Component.dispatchEventImpl(Component.java:4735)
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
   at java.awt.Component.dispatchEventImpl(Component.java:4607)
   at java.awt.Container.dispatchEventImpl(Container.java:2143)
   at java.awt.Window.dispatchEventImpl(Window.java:2478)
   at java.awt.Component.dispatchEvent(Component.java:4565)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:679)
   at java.awt.EventQueue.access$000(EventQueue.java:85)
   at java.awt.EventQueue$1.run(EventQueue.java:638)
   at java.awt.EventQueue$1.run(EventQueue.java:636)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
   at java.awt.EventQueue$2.run(EventQueue.java:652)
   at java.awt.EventQueue$2.run(EventQueue.java:650)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:649)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Salmiaka
 
Posts: 20
Joined: 07 May 2013, 00:55
Has thanked: 4 times
Been thanked: 2 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 24 May 2013, 23:55

r21646

Essence of the Wild seems to be busted right now. I have an EotW on the Battlefield. I cast a Youthful Knight, which correctly turns into an EotW. I equip it with a Ring of Valkas for Haste and attack. AI blocks with something and the two creatures both die.

Next turn, I cast Burning Shield Askari and it turns into a Youthful Knight. These are not the Clones I'm looking for.

I cast something else, another Youthful Knight. I kill offall the Youthful Knights and still everything I cast after that is also a Youthful Knight.
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 Zirbert » 25 May 2013, 01:52

1.3.17, r21633 -

A tapped Bottomless Vault gets two storage counters per turn. Likely the same the same double-triggering bug that Salmiaka reported earlier. (Posting in case another example makes tracking the problem down any easier.)
Zirbert
 
Posts: 512
Joined: 13 Oct 2010, 16:04
Has thanked: 104 times
Been thanked: 19 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 25 May 2013, 05:58

r21654: Launching Forge and then opening any sort of deck editor (the normal one accessible from the home screen, the quest shop, etc.) causes the following NPE:

NullPointerException | Open
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21654
Operating System: Linux 3.7.0-7-generic amd64
Java Version:     1.7.0_21 Oracle Corporation

java.lang.NullPointerException
   at forge.control.FControl.mayShowCard(FControl.java:301)
   at forge.gui.CardDetailPanel.setCard(CardDetailPanel.java:215)
   at forge.gui.match.controllers.CDetail.showCard(CDetail.java:49)
   at forge.gui.match.controllers.CDetail.showCard(CDetail.java:55)
   at forge.gui.deckeditor.CDeckEditorUI.setCard(CDeckEditorUI.java:87)
   at forge.gui.deckeditor.tables.EditorTableModel.showSelectedCard(EditorTableModel.java:193)
   at forge.gui.deckeditor.tables.EditorTableModel$2.focusGained(EditorTableModel.java:216)
   at java.awt.AWTEventMulticaster.focusGained(AWTEventMulticaster.java:220)
   at java.awt.Component.processFocusEvent(Component.java:6394)
   at java.awt.Component.processEvent(Component.java:6261)
   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.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:938)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:570)
   at java.awt.Component.dispatchEventImpl(Component.java:4731)
   at java.awt.Container.dispatchEventImpl(Container.java:2287)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at sun.awt.SunToolkit$1.run(SunToolkit.java:502)
   at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
   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.awt.EventQueue.dispatchEvent(EventQueue.java:697)
   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)
EDIT: Tried to fix this in r21655 by forcibly returning 'true' from mayShowCard when outside a match, please review - really not sure if this is the preferred/optimal solution.

- 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 Max mtg » 25 May 2013, 07:00

will do. Even if you have already started a game on that session.
On the other side, the game as it ends should be detached from UI - that's when game pointer shall be reset to null
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Bug Reports (snapshot builds)

Postby Sloth » 25 May 2013, 07:18

friarsol wrote:r21646

Essence of the Wild seems to be busted right now. I have an EotW on the Battlefield. I cast a Youthful Knight, which correctly turns into an EotW. I equip it with a Ring of Valkas for Haste and attack. AI blocks with something and the two creatures both die.

Next turn, I cast Burning Shield Askari and it turns into a Youthful Knight. These are not the Clones I'm looking for.

I cast something else, another Youthful Knight. I kill offall the Youthful Knights and still everything I cast after that is also a Youthful Knight.
Fixed! Thanks sol.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Bug Reports (snapshot builds)

Postby Jak » 25 May 2013, 07:33

The card Commander's Authority goes on the stack two times and due to that you get two tokens instead of only one.

Edit: Same problem with Endless Horizons, I may activate it two times at the beginning of my upkeep. :?
General bug report | Open
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21633
Operating System: Windows 7 6.1 amd64
Java Version:     1.7.0_09 Oracle Corporation
Jak
 
Posts: 23
Joined: 23 Mar 2011, 07:37
Has thanked: 0 time
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby Bundy » 25 May 2013, 13:07

Forge 1.3.17-Snapshot r21633
The ability of Mine Layer activates 4 times when a land with a counter is tapped. I only have 1 Mine Layer in play and 3 in my library, so i guess the ones in my library also activate when the land with the counter gets tapped.
Bundy
 
Posts: 348
Joined: 17 Dec 2010, 17:32
Location: The netherlands
Has thanked: 23 times
Been thanked: 3 times

Re: Bug Reports (snapshot builds)

Postby RedDeckWins » 25 May 2013, 14:33

Bundy wrote:Forge 1.3.17-Snapshot r21633
The ability of Mine Layer activates 4 times when a land with a counter is tapped. I only have 1 Mine Layer in play and 3 in my library, so i guess the ones in my library also activate when the land with the counter gets tapped.
fixed r21664
User avatar
RedDeckWins
 
Posts: 35
Joined: 20 Apr 2013, 16:45
Has thanked: 8 times
Been thanked: 10 times

Re: Bug Reports (snapshot builds)

Postby Bundy » 25 May 2013, 16:12

Forge 1.3.17-Snapshot r21633
Did not update to the newest snapshot yet, so maybe already fixed?

Description: I click mulligan, then i get this error

RuntimeException | Open
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21633
Operating System: Windows 8 6.2 x86
Java Version:     1.7.0_21 Oracle Corporation

java.lang.RuntimeException: Trying to unlock input which is not locked! Do check when your threads terminate!
   at forge.control.input.InputQueue.unlock(InputQueue.java:203)
   at forge.control.input.InputQueue$1.run(InputQueue.java:223)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Bundy
 
Posts: 348
Joined: 17 Dec 2010, 17:32
Location: The netherlands
Has thanked: 23 times
Been thanked: 3 times

Re: Bug Reports (snapshot builds)

Postby RedDeckWins » 25 May 2013, 18:56

There is definitely something up with bottomless vault.

The keep tapped popup doesn't block the game from going into the upkeep phase. This seems like bad behavior.
User avatar
RedDeckWins
 
Posts: 35
Joined: 20 Apr 2013, 16:45
Has thanked: 8 times
Been thanked: 10 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 29 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 29 users online :: 0 registered, 0 hidden and 29 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 29 guests

Login Form