Bug Reports (snapshot builds)
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Bug Reports (snapshot builds)
by Max mtg » 08 Feb 2014, 22:50
No problems; revert commits if I leave something like that.friarsol wrote:r24749
Max, I have a compile error from one of your commits in PhaseHandler.java:
addedAnythingToStack |= game.getStack().chooseOrderOfSimultaneousStackEntry(whoAddsToStack);
since that function doesn't seem to actually return a boolean. Did you have changes in MagicStack.java that aren't committed? I'd prefer not to have to revert commits without allowing the person who broke it to fix.
This one was fixed.
I have untied AI from game in the same working copy, not sure if it works, afraid to commit extra files
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)
by Agetian » 09 Feb 2014, 04:51
Yes, happens to me, too - hybrid cost payment appears to be broken, this is a rather serious issue since it affects many cards in a major way. Does anybody know how to fix it?friarsol wrote:r24746
I was looking at adding the color conversion stuff as a Continuous static ability (which feels like the right place), and happened to notice that Spectral Procession is currently broken. I thought it might have something to do with the (test version of) Sunglasses of Urza I had in play, but after I destroyed it, the hybrid cost was still busted. Can someone confirm that when you tap a Plains to pay for Spectral Procession only a colorless mana is removed from the hybrid Mana Shard instead of a White?
- Agetian
- Agetian
- Programmer
- Posts: 3486
- Joined: 14 Mar 2011, 05:58
- Has thanked: 683 times
- Been thanked: 569 times
Re: Bug Reports (snapshot builds)
by Max mtg » 09 Feb 2014, 07:24
Agetian, how can it be serious while it's about a single equals/not-equals sign?
24760
24760
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)
by Agetian » 09 Feb 2014, 10:30
Hehe luckily "serious" doesn't have to mean "difficult to fix"Max mtg wrote:Agetian, how can it be serious while it's about a single equals/not-equals sign?
24760


- Agetian
- Agetian
- Programmer
- Posts: 3486
- Joined: 14 Mar 2011, 05:58
- Has thanked: 683 times
- Been thanked: 569 times
Re: Bug Reports (snapshot builds)
by RumbleBBU » 09 Feb 2014, 18:23
All of the above sounds great to me.drdev wrote:RumbleBBU, you're not doing anything wrong. I marked certain columns with a fixed size so that Swing would resize other columns like name as is ideal. I think what I will do is make it so, when you mouse down to begin a resize, the size restriction is removed temporarily then restored after you finish resizing. That should improve usability while still supporting Swing in good autosizing.
The quest deck issue I'll look into, and I can add a setting to not show confirmation prompts for buying and selling cards, though the default will remain to show them.
How's that sound?
...but you probably knew I was going to say that.

Re: Bug Reports (snapshot builds)
by drdev » 09 Feb 2014, 19:48
Quest deck issue fixed in r24781. I still need to fix the column resize issue.RumbleBBU wrote:All of the above sounds great to me.drdev wrote:RumbleBBU, you're not doing anything wrong. I marked certain columns with a fixed size so that Swing would resize other columns like name as is ideal. I think what I will do is make it so, when you mouse down to begin a resize, the size restriction is removed temporarily then restored after you finish resizing. That should improve usability while still supporting Swing in good autosizing.
The quest deck issue I'll look into, and I can add a setting to not show confirmation prompts for buying and selling cards, though the default will remain to show them.
How's that sound?
...but you probably knew I was going to say that.
- drdev
- Programmer
- Posts: 1958
- Joined: 27 Jul 2013, 02:07
- Has thanked: 189 times
- Been thanked: 565 times
Re: Bug Reports (snapshot builds)
by swordshine » 10 Feb 2014, 14:07
For exmaple, AnimateAll effect line 120 and 135.
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Bug Reports (snapshot builds)
by friarsol » 11 Feb 2014, 04:50
r24811
Garza's Assassin Recover ability doesn't display properly (May be resolved if Hellfish is able to properly refactor Keywords)
Garza's Assassin Recover ability doesn't display properly (May be resolved if Hellfish is able to properly refactor Keywords)
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Bug Reports (snapshot builds)
by xbon » 11 Feb 2014, 07:24
Description: opponent uses effect of Warren Pilferers when opp has no cards in graveyard.
Remove artifacts from generated decks is not selected.
By selecting Remove Artifacts.... artifacts are generated in the deck... the option is reversed?
- IndexOutOfBoundsException | Open
- Code: Select all
Forge Version: 1.5.13-SNAPSHOT-r${forge.revision}${forge.specialStatus} (mixed revisions detected; please update from the root directory)
Operating System: Windows 8 6.2 amd64
Java Version: 1.8.0-ea Oracle Corporation
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:638)
at java.util.ArrayList.get(ArrayList.java:414)
at forge.ai.ability.ChangeZoneAi.chooseCardToHiddenOriginChangeZone(ChangeZoneAi.java:1091)
at forge.ai.PlayerControllerAi.chooseSingleCardForZoneChange(PlayerControllerAi.java:763)
at forge.game.ability.effects.ChangeZoneEffect.changeZonePlayerInvariant(ChangeZoneEffect.java:737)
at forge.game.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:582)
at forge.game.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:345)
at forge.game.ability.AbilityApiBased.resolve(AbilityApiBased.java:59)
at forge.game.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1175)
at forge.game.ability.AbilityUtils.resolve(AbilityUtils.java:1157)
at forge.ai.ComputerUtil.playNoStack(ComputerUtil.java:303)
at forge.ai.PlayerControllerAi.playSpellAbilityNoStack(PlayerControllerAi.java:289)
at forge.game.trigger.WrappedAbility.resolve(WrappedAbility.java:350)
at forge.game.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1175)
at forge.game.ability.AbilityUtils.resolve(AbilityUtils.java:1157)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:538)
at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:1006)
at forge.game.GameAction.startGame(GameAction.java:1487)
at forge.game.Match.startGame(Match.java:80)
at forge.control.FControl$4.run(FControl.java:433)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Remove artifacts from generated decks is not selected.
By selecting Remove Artifacts.... artifacts are generated in the deck... the option is reversed?
Last edited by xbon on 11 Feb 2014, 18:09, edited 3 times in total.
Re: Bug Reports (snapshot builds)
by Agetian » 11 Feb 2014, 17:06
r24815: A deck editor pile view related bug: if you use middle mouse click to zoom in on a card in your collection and accidentally scroll the mouse wheel up (or possibly down, too), it'll become impossible to use the mouse anymore until you restart the deck editor (left click doesn't select cards, middle click doesn't zoom, right click doesn't show the context menu etc.)
Also, got this exception when trying to add Polukranos, World Eater from my quest inventory into a deck:
Also, got this exception when trying to add Polukranos, World Eater from my quest inventory into a deck:
- NullPointerException | Open
- Code: Select all
Forge Version: 1.5.13-SNAPSHOT-r${forge.revision}${forge.specialStatus} (mixed revisions detected; please update from the root directory)
Operating System: Linux 3.8.0-26-generic amd64
Java Version: 1.7.0_51 Oracle Corporation
java.lang.NullPointerException
at java.util.Hashtable.hash(Hashtable.java:239)
at java.util.Hashtable.get(Hashtable.java:434)
at forge.util.ItemPool.count(ItemPool.java:153)
at forge.gui.toolbox.itemmanager.ItemManager.getItemCount(ItemManager.java:772)
at forge.gui.deckeditor.CDeckEditorUI.moveSelectedItems(CDeckEditorUI.java:140)
at forge.gui.deckeditor.CDeckEditorUI.addSelectedCards(CDeckEditorUI.java:155)
at forge.gui.deckeditor.CDeckEditorUI$6.run(CDeckEditorUI.java:237)
at forge.gui.toolbox.itemmanager.ItemManager.activateSelectedItems(ItemManager.java:1150)
at forge.gui.toolbox.itemmanager.views.ImageView$4.onLeftDoubleClick(ImageView.java:233)
at forge.gui.toolbox.FMouseAdapter.mousePressed(FMouseAdapter.java:146)
at java.awt.Component.processMouseEvent(Component.java:6502)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
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:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
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:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
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)
- Agetian
- Programmer
- Posts: 3486
- Joined: 14 Mar 2011, 05:58
- Has thanked: 683 times
- Been thanked: 569 times
Re: Bug Reports (snapshot builds)
by drdev » 11 Feb 2014, 18:25
I can't reproduce either of these issues. Can you make sure you're using the latest revision, and then post screenshots if you can still reproduce?Agetian wrote:r24815: A deck editor pile view related bug: if you use middle mouse click to zoom in on a card in your collection and accidentally scroll the mouse wheel up (or possibly down, too), it'll become impossible to use the mouse anymore until you restart the deck editor (left click doesn't select cards, middle click doesn't zoom, right click doesn't show the context menu etc.)
Also, got this exception when trying to add Polukranos, World Eater from my quest inventory into a deck:- Agetian
- NullPointerException | Open
- Code: Select all
Forge Version: 1.5.13-SNAPSHOT-r${forge.revision}${forge.specialStatus} (mixed revisions detected; please update from the root directory)
Operating System: Linux 3.8.0-26-generic amd64
Java Version: 1.7.0_51 Oracle Corporation
java.lang.NullPointerException
at java.util.Hashtable.hash(Hashtable.java:239)
at java.util.Hashtable.get(Hashtable.java:434)
at forge.util.ItemPool.count(ItemPool.java:153)
at forge.gui.toolbox.itemmanager.ItemManager.getItemCount(ItemManager.java:772)
at forge.gui.deckeditor.CDeckEditorUI.moveSelectedItems(CDeckEditorUI.java:140)
at forge.gui.deckeditor.CDeckEditorUI.addSelectedCards(CDeckEditorUI.java:155)
at forge.gui.deckeditor.CDeckEditorUI$6.run(CDeckEditorUI.java:237)
at forge.gui.toolbox.itemmanager.ItemManager.activateSelectedItems(ItemManager.java:1150)
at forge.gui.toolbox.itemmanager.views.ImageView$4.onLeftDoubleClick(ImageView.java:233)
at forge.gui.toolbox.FMouseAdapter.mousePressed(FMouseAdapter.java:146)
at java.awt.Component.processMouseEvent(Component.java:6502)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
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:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
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:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
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)
- drdev
- Programmer
- Posts: 1958
- Joined: 27 Jul 2013, 02:07
- Has thanked: 189 times
- Been thanked: 565 times
Re: Bug Reports (snapshot builds)
by Agetian » 11 Feb 2014, 18:34
Umm yes, using the very latest snapshot at the moment (r24815).
The first one is easy to reproduce: load Forge, open the deck editor, switch it to pile view (no grouping, no piling necessary), hover your mouse over any card you want (the card itself in the pile view, that is - not the card picture in the bottom right corner of the screen), hold the middle mouse button (scroll wheel) and scroll it up a little bit while holding the middle mouse button, then release the middle mouse button. The mouse becomes useless after that in the deck editor (cards are unselectable). Happens to me every time (at least on Linux, not sure about other systems, I'm not using anything else). Do I need to post a screenshot here?.. Not sure what it'll exemplify, it's just deck editor in the pile view mode... there's no way to see that the mouse doesn't work on the screenshot. Otherwise it looks normal.
The second issue is trickier to reproduce, I can't reproduce it myself either, the card added just fine after I restarted Forge - if it happens again I'll tell you what I did to make it happen again. I know I did play a lot with card filters before it happened to me (I both searched by name and filtered by colors and type and whatnot).
- Agetian
The first one is easy to reproduce: load Forge, open the deck editor, switch it to pile view (no grouping, no piling necessary), hover your mouse over any card you want (the card itself in the pile view, that is - not the card picture in the bottom right corner of the screen), hold the middle mouse button (scroll wheel) and scroll it up a little bit while holding the middle mouse button, then release the middle mouse button. The mouse becomes useless after that in the deck editor (cards are unselectable). Happens to me every time (at least on Linux, not sure about other systems, I'm not using anything else). Do I need to post a screenshot here?.. Not sure what it'll exemplify, it's just deck editor in the pile view mode... there's no way to see that the mouse doesn't work on the screenshot. Otherwise it looks normal.
The second issue is trickier to reproduce, I can't reproduce it myself either, the card added just fine after I restarted Forge - if it happens again I'll tell you what I did to make it happen again. I know I did play a lot with card filters before it happened to me (I both searched by name and filtered by colors and type and whatnot).
- Agetian
- Agetian
- Programmer
- Posts: 3486
- Joined: 14 Mar 2011, 05:58
- Has thanked: 683 times
- Been thanked: 569 times
Re: Bug Reports (snapshot builds)
by xbon » 11 Feb 2014, 23:28
Description: turning targetting arcs "always on" opp has reality acid targetting my mountain
- ClassCastException | Open
- Code: Select all
Forge Version: 1.5.13-SNAPSHOT-r${forge.revision}${forge.specialStatus} (mixed revisions detected; please update from the root directory)
Operating System: Windows 8.1 6.3 amd64
Java Version: 1.8.0 Oracle Corporation
java.lang.ClassCastException: forge.gui.toolbox.FSkin$SkinnedRadioButtonMenuItem cannot be cast to forge.gui.toolbox.FSkin$SkinnedMenuItem
at forge.gui.match.menus.GameMenu$6.actionPerformed(GameMenu.java:173)
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.JToggleButton$ToggleButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.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)
by friarsol » 12 Feb 2014, 02:45
24816
The DualListBox appears to be semi-busted. I cast Ransack on myself, and after putting three cards on the bottom of my library, I now have two cards to order on top of my deck. After I add the first one to the right box, the left arrows aren't activated. I have to add all of the cards to the right box before the left arrows activate, causing a very awkward situation where if I choose the wrong card to add first, I'm forced to add the next card before I can remove any cards.
The DualListBox appears to be semi-busted. I cast Ransack on myself, and after putting three cards on the bottom of my library, I now have two cards to order on top of my deck. After I add the first one to the right box, the left arrows aren't activated. I have to add all of the cards to the right box before the left arrows activate, causing a very awkward situation where if I choose the wrong card to add first, I'm forced to add the next card before I can remove any cards.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Bug Reports (snapshot builds)
by drdev » 12 Feb 2014, 02:52
I still can't reproduce the first issue. What OS are you using? I'm using Windows if that matters.Agetian wrote:Umm yes, using the very latest snapshot at the moment (r24815).
The first one is easy to reproduce: load Forge, open the deck editor, switch it to pile view (no grouping, no piling necessary), hover your mouse over any card you want (the card itself in the pile view, that is - not the card picture in the bottom right corner of the screen), hold the middle mouse button (scroll wheel) and scroll it up a little bit while holding the middle mouse button, then release the middle mouse button. The mouse becomes useless after that in the deck editor (cards are unselectable). Happens to me every time (at least on Linux, not sure about other systems, I'm not using anything else). Do I need to post a screenshot here?.. Not sure what it'll exemplify, it's just deck editor in the pile view mode... there's no way to see that the mouse doesn't work on the screenshot. Otherwise it looks normal.
The second issue is trickier to reproduce, I can't reproduce it myself either, the card added just fine after I restarted Forge - if it happens again I'll tell you what I did to make it happen again. I know I did play a lot with card filters before it happened to me (I both searched by name and filtered by colors and type and whatnot).
- Agetian
- drdev
- Programmer
- Posts: 1958
- Joined: 27 Jul 2013, 02:07
- Has thanked: 189 times
- Been thanked: 565 times
Who is online
Users browsing this forum: No registered users and 30 guests