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 friarsol » 12 Feb 2013, 02:35
I think what Sloth is saying was that City in the Bottle was preventing ALL LANDS from ETB, so it's better to just have CitB not function correctly for ARN lands (all 9 of them) then prevent it from stopping things it shouldn't be preventing.myk wrote:Is this the current behavior or the intended behavior? According to http://wiki.mtgsalvation.com/article/Permanent, lands are permanents, and they have the ARN symbol on them, so they should be prevented from entering the battlefield too, shouldn't they? Ref: http://magiccards.info/query?q=city+in+a+bottle&v=card&s=cname
- 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 swordshine » 12 Feb 2013, 04:19
Actually, my initial purpose is to script cards like Null Chamber and Conjurer's Ban, validcards should be used in this static ability CantPlayLand. Then I searched the cards and found City in the Bottle. Anyway, thanks for your work, Sloth.
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Bug Reports (snapshot builds)
by Sloth » 12 Feb 2013, 11:59
Ok, i will try to make the validcard work.swordshine wrote:Actually, my initial purpose is to script cards like Null Chamber and Conjurer's Ban, validcards should be used in this static ability CantPlayLand. Then I searched the cards and found City in the Bottle.
EDIT: Done!
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: Bug Reports (snapshot builds)
by Bundy » 12 Feb 2013, 12:41
- 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)
by jwallstone » 13 Feb 2013, 04:32
Playing forge-1.3.9-20130210.125556-2
Opponent played a Mesmeric Orb. It worked on my turn, then when it came to opponent's turn, game became stuck with the Orb's trigger on the stack.
Opponent played a Mesmeric Orb. It worked on my turn, then when it came to opponent's turn, game became stuck with the Orb's trigger on the stack.
- jwallstone
- Posts: 66
- Joined: 02 Mar 2012, 06:16
- Has thanked: 0 time
- Been thanked: 0 time
Re: Bug Reports (snapshot builds)
by friarsol » 14 Feb 2013, 04:27
r19583
Attacked with 4 creatures. 2/2 Flying, 2/1 First strike, 2/1, 1/1. AI is at 5 life and blocks the 2/2 Flying with his 3/3 Flying.
This error pops up during the regular combat damage with the AI already down to 3 life from the First strike damage.
Detailed error trace:
java.lang.NullPointerException
at forge.game.phase.Combat.assignBlockersDamage(Combat.java:697)
at forge.game.phase.Combat.assignCombatDamage(Combat.java:754)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:344)
at forge.control.input.InputControl.getActualInput(InputControl.java:187)
at forge.gui.GuiInput.update(GuiInput.java:50)
Attacked with 4 creatures. 2/2 Flying, 2/1 First strike, 2/1, 1/1. AI is at 5 life and blocks the 2/2 Flying with his 3/3 Flying.
This error pops up during the regular combat damage with the AI already down to 3 life from the First strike damage.
Detailed error trace:
java.lang.NullPointerException
at forge.game.phase.Combat.assignBlockersDamage(Combat.java:697)
at forge.game.phase.Combat.assignCombatDamage(Combat.java:754)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:344)
at forge.control.input.InputControl.getActualInput(InputControl.java:187)
at forge.gui.GuiInput.update(GuiInput.java:50)
- 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 myk » 14 Feb 2013, 22:53
NPE when AI casts Necromancy and attaches it to a Cadaverous Knight:
- | Open
- java.lang.NullPointerException
at forge.game.GameAction.checkStateEffects(GameAction.java:1007)
at forge.game.zone.MagicStack.unfreezeStack(MagicStack.java:210)
at forge.game.zone.MagicStack.finishResolving(MagicStack.java:1035)
at forge.card.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1004)
at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1186)
at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:995)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:894)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:735)
at forge.game.player.PlayerController.passPriority(PlayerController.java:74)
at forge.control.input.InputPassPriority.selectButtonOK(InputPassPriority.java:77)
at forge.gui.GuiInput.selectButtonOK(GuiInput.java:80)
at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:50)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:374)
at javax.swing.AbstractButton.doClick(AbstractButton.java:354)
at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:87)
at java.awt.Component.processKeyEvent(Component.java:6347)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2802)
at java.awt.Component.processEvent(Component.java:6166)
at java.awt.Container.processEvent(Container.java:2045)
at java.awt.Component.dispatchEventImpl(Component.java:4750)
at java.awt.Container.dispatchEventImpl(Container.java:2103)
at java.awt.Component.dispatchEvent(Component.java:4576)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:769)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1045)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:912)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:734)
at java.awt.Component.dispatchEventImpl(Component.java:4620)
at java.awt.Container.dispatchEventImpl(Container.java:2103)
at java.awt.Window.dispatchEventImpl(Window.java:2518)
at java.awt.Component.dispatchEvent(Component.java:4576)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:672)
at java.awt.EventQueue.access$400(EventQueue.java:96)
at java.awt.EventQueue$2.run(EventQueue.java:631)
at java.awt.EventQueue$2.run(EventQueue.java:629)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:116)
at java.awt.EventQueue$3.run(EventQueue.java:645)
at java.awt.EventQueue$3.run(EventQueue.java:643)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:642)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
- myk
- Posts: 439
- Joined: 17 Jan 2013, 02:39
- Location: California
- Has thanked: 38 times
- Been thanked: 57 times
Re: Bug Reports (snapshot builds)
by bhsfmiao » 15 Feb 2013, 17:37
Crashed when open the deck editor of draft or sealed mode.
Forge-1.3.9-20130215.120856-7
Forge-1.3.9-20130215.120856-7
- Attachments
-
2013-02-16-00.txt
- Crash Report
- (2.99 KiB) Downloaded 385 times
- bhsfmiao
- Posts: 4
- Joined: 15 Feb 2013, 17:16
- Has thanked: 0 time
- Been thanked: 0 time
Re: Bug Reports (snapshot builds)
by myk » 15 Feb 2013, 18:32
Thanks bhsfmiao -- this was fixed in r19610. try updating
- myk
- Posts: 439
- Joined: 17 Jan 2013, 02:39
- Location: California
- Has thanked: 38 times
- Been thanked: 57 times
Re: Bug Reports (snapshot builds)
by Max mtg » 15 Feb 2013, 20:30
Did any creatures have trample, or were there any creatures blocking several attackers at a time?friarsol wrote:r19583
Attacked with 4 creatures. 2/2 Flying, 2/1 First strike, 2/1, 1/1. AI is at 5 life and blocks the 2/2 Flying with his 3/3 Flying.
This error pops up during the regular combat damage with the AI already down to 3 life from the First strike damage.
Detailed error trace:
java.lang.NullPointerException
at forge.game.phase.Combat.assignBlockersDamage(Combat.java:697)
at forge.game.phase.Combat.assignCombatDamage(Combat.java:754)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:344)
at forge.control.input.InputControl.getActualInput(InputControl.java:187)
at forge.gui.GuiInput.update(GuiInput.java:50)
I see the potential error source, but cannot figure how that could happen that damage map contains a NULL key, that usually matches player/planeswalker - who must not be present among attackers.
Would appreciate a detailed repro.
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 friarsol » 15 Feb 2013, 20:43
The blocking creature had trample, but I didn't mention it since trampling on a blocker isn't a relevant ability.Max mtg wrote:Did any creatures have trample, or were there any creatures blocking several attackers at a time?friarsol wrote:r19583
Attacked with 4 creatures. 2/2 Flying, 2/1 First strike, 2/1, 1/1. AI is at 5 life and blocks the 2/2 Flying with his 3/3 Flying.
This error pops up during the regular combat damage with the AI already down to 3 life from the First strike damage.
Detailed error trace:
java.lang.NullPointerException
at forge.game.phase.Combat.assignBlockersDamage(Combat.java:697)
at forge.game.phase.Combat.assignCombatDamage(Combat.java:754)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:344)
at forge.control.input.InputControl.getActualInput(InputControl.java:187)
at forge.gui.GuiInput.update(GuiInput.java:50)
I see the potential error source, but cannot figure how that could happen that damage map contains a NULL key, that usually matches player/planeswalker - who must not be present among attackers.
Would appreciate a detailed repro.
You can use this as a gamestate file to replicate the situation:
- Code: Select all
HumanCardsInPlay=Coiled Tinviper;Hypnotic Specter;Savannah Lions;Agent of Stromgald
AICardsInPlay=Assault Zeppelid
AILife=5
- 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 bhsfmiao » 15 Feb 2013, 21:15
Thanks a lot, it worksmyk wrote:Thanks bhsfmiao -- this was fixed in r19610. try updating

I updated to r19624 and faced some new issue here. If I drew a card while one or more creatures have "Dredge" ability in the graveyard, the application would crash. Here's the report.
- Attachments
-
2013-02-16-01.txt
- Crash Report
- (8.46 KiB) Downloaded 411 times
- bhsfmiao
- Posts: 4
- Joined: 15 Feb 2013, 17:16
- Has thanked: 0 time
- Been thanked: 0 time
Re: Bug Reports (snapshot builds)
by Max mtg » 15 Feb 2013, 21:26
Fixed, and that really helped, thanks!friarsol wrote:The blocking creature had trample, but I didn't mention it since trampling on a blocker isn't a relevant ability.
You can use this as a gamestate file to replicate the situation:
- Code: Select all
HumanCardsInPlay=Coiled Tinviper;Hypnotic Specter;Savannah Lions;Agent of Stromgald
AICardsInPlay=Assault Zeppelid
AILife=5
(AI was unaware whether it was attacking of defending, and assigned damage to 'defending player' at all times)
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 Max mtg » 15 Feb 2013, 21:31
fixed in 19638bhsfmiao wrote:I updated to r19624 and faced some new issue here. If I drew a card while one or more creatures have "Dredge" ability in the graveyard, the application would crash. Here's the report.
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 Max mtg » 16 Feb 2013, 07:56
I attack with a beast 5/5 token enchanted by Ai's Guilty Conscience, I also have Jade Monolith.
Cannot use Jade monolith's ability to prevent damage to my creature from the Guilty Conscience, since Jade Monolith's script expects me to choose a creature, though the artifact's Oracle text 'a source of your choice' does not restrict me to a creature
Cannot use Jade monolith's ability to prevent damage to my creature from the Guilty Conscience, since Jade Monolith's script expects me to choose a creature, though the artifact's Oracle text 'a source of your choice' does not restrict me to a creature
Single class for single responsibility.
- Max mtg
- Programmer
- Posts: 1997
- Joined: 02 Jul 2011, 14:26
- Has thanked: 173 times
- Been thanked: 334 times
Who is online
Users browsing this forum: No registered users and 32 guests