SVN Bug Reports
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: SVN Bug Reports
by friarsol » 27 Jan 2011, 21:11
Yep. This is a feature. The first dialog box even says "Looking at your Library" not "Select a Card" like the second one does.Hellfish wrote:Pretty sure that's intentional, because you should get to see your entire library.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: SVN Bug Reports
by Jaedayr » 27 Jan 2011, 21:34
r5823
- Code: Select all
An error has occured. You can copy/paste this message or save it to a file.
Please report this, plus what you tried to do, to:
http://www.slightlymagic.net/forum/viewforum.php?f=26
If you don't want to register an account, you can mail it directly to
mtgerror@yahoo.com
AbilityFactory : getAbility -- abString too short in Runed Servitor
Version:
Forge -- official beta: $Date: 2011-01-06 11:34:48 -0500 (Thu, 06 Jan 2011) $, SVN revision: $Revision: 4891 $
OS: Windows XP Version: 5.1 Architecture: x86
Java Version: 1.6.0_23 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.RuntimeException: AbilityFactory : getAbility -- abString too short in Runed Servitor
at forge.AbilityFactory.getAbility(AbilityFactory.java:98)
at forge.TriggerHandler.runSingleTrigger(TriggerHandler.java:237)
at forge.TriggerHandler.runTrigger(TriggerHandler.java:197)
at forge.GameAction.moveTo(GameAction.java:84)
at forge.GameAction.moveToGraveyard(GameAction.java:172)
at forge.GameAction.sacrificeDestroy(GameAction.java:2075)
at forge.GameAction.destroy(GameAction.java:2200)
at forge.GameAction.checkStateEffects(GameAction.java:515)
at forge.GameAction.checkWheneverKeyword(GameAction.java:713)
at forge.GameAction.sacrificeDestroy(GameAction.java:2093)
at forge.GameAction.destroy(GameAction.java:2200)
at forge.GameAction.checkStateEffects(GameAction.java:515)
at forge.Phase.handleBeginPhase(Phase.java:252)
at forge.InputControl.updateInput(InputControl.java:91)
at forge.GuiInput.update(GuiInput.java:19)
at java.util.Observable.notifyObservers(Unknown Source)
at java.util.Observable.notifyObservers(Unknown Source)
at forge.MyObservable.updateObservers(MyObservable.java:9)
at forge.Phase.nextPhase(Phase.java:372)
at forge.GuiDisplay4$25.actionPerformed(GuiDisplay4.java:781)
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.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.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: SVN Bug Reports
by jeffwadsworth » 27 Jan 2011, 23:25
Cheers.
Last edited by jeffwadsworth on 28 Jan 2011, 06:51, edited 1 time in total.
- jeffwadsworth
- Super Tester Elite
- Posts: 1172
- Joined: 20 Oct 2010, 04:47
- Location: USA
- Has thanked: 287 times
- Been thanked: 70 times
Re: SVN Bug Reports
by slapshot5 » 28 Jan 2011, 01:45
I ran into this the other day for some card I was making. But I have no recollection of what the problem was.Jaedayr wrote:r5823
- Code: Select all
An error has occured. You can copy/paste this message or save it to a file.
Please report this, plus what you tried to do, to:
http://www.slightlymagic.net/forum/viewforum.php?f=26
If you don't want to register an account, you can mail it directly to
mtgerror@yahoo.com
AbilityFactory : getAbility -- abString too short in Runed Servitor
Version:
Forge -- official beta: $Date: 2011-01-06 11:34:48 -0500 (Thu, 06 Jan 2011) $, SVN revision: $Revision: 4891 $
OS: Windows XP Version: 5.1 Architecture: x86
Java Version: 1.6.0_23 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.RuntimeException: AbilityFactory : getAbility -- abString too short in Runed Servitor
at forge.AbilityFactory.getAbility(AbilityFactory.java:98)
at forge.TriggerHandler.runSingleTrigger(TriggerHandler.java:237)
at forge.TriggerHandler.runTrigger(TriggerHandler.java:197)
at forge.GameAction.moveTo(GameAction.java:84)
at forge.GameAction.moveToGraveyard(GameAction.java:172)
at forge.GameAction.sacrificeDestroy(GameAction.java:2075)
at forge.GameAction.destroy(GameAction.java:2200)
at forge.GameAction.checkStateEffects(GameAction.java:515)
at forge.GameAction.checkWheneverKeyword(GameAction.java:713)
at forge.GameAction.sacrificeDestroy(GameAction.java:2093)
at forge.GameAction.destroy(GameAction.java:2200)
at forge.GameAction.checkStateEffects(GameAction.java:515)
at forge.Phase.handleBeginPhase(Phase.java:252)
at forge.InputControl.updateInput(InputControl.java:91)
at forge.GuiInput.update(GuiInput.java:19)
at java.util.Observable.notifyObservers(Unknown Source)
at java.util.Observable.notifyObservers(Unknown Source)
at forge.MyObservable.updateObservers(MyObservable.java:9)
at forge.Phase.nextPhase(Phase.java:372)
at forge.GuiDisplay4$25.actionPerformed(GuiDisplay4.java:781)
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.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.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)

-slapshot5
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: SVN Bug Reports
by friarsol » 28 Jan 2011, 02:39
Oh I fixed what was causing the problem. It had to do with the SVar that was being executed wasn't defined. Usually the executed one wasn't renamed to the one on the card.
Also, slap, I was trying to fix a bug with Primal Clay going to the graveyard before letting you choose. I know you worked on the */* stuff, maybe you can check it out?
Also, slap, I was trying to fix a bug with Primal Clay going to the graveyard before letting you choose. I know you worked on the */* stuff, maybe you can check it out?
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: SVN Bug Reports
by slapshot5 » 28 Jan 2011, 03:23
Sure thing.friarsol wrote:Also, slap, I was trying to fix a bug with Primal Clay going to the graveyard before letting you choose. I know you worked on the */* stuff, maybe you can check it out?
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: SVN Bug Reports
by lazylockie » 28 Jan 2011, 03:50
r5822
Wurmcoil Engine 's tokens are also artifacts.
Wurmcoil Engine 's tokens are also artifacts.
Name:Wurmcoil Engine
ManaCost:6
Types:Artifact Creature Wurm
Text:no text
PT:6/6
K:Deathtouch
K:Lifelink
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, put a 3/3 colorless Wurm artifact creature token with deathtouch and a 3/3 colorless Wurm artifact creature token with lifelink onto the battlefield.
SVar:TrigToken:AB$Token | Cost$ 0 | TokenImage$ C 3 3 Wurm Deathtouch | TokenColors$ Colorless | TokenAmount$ 1 | TokenName$ Wurm | TokenTypes$ Artifact,Creature,Wurm | TokenPower$ 3 | TokenToughness$ 3 | TokenKeywords$ Deathtouch | SubAbility$SVar=DBToken
SVar:DBToken:DB$Token | TokenImage$ C 3 3 Wurm Lifelink | TokenColors$ Colorless | TokenAmount$ 1 | TokenName$ Wurm | TokenTypes$ Artifact,Creature,Wurm | TokenPower$ 3 | TokenToughness$ 3 | TokenKeywords$ Lifelink
SVar:Picture:http://www.wizards.com/global/images/magic/general/wurmcoil_engine.jpg
SVar:Rarity:Mythic
SetInfo:SOM|Mythic|http://magiccards.info/scans/en/som/223.jpg
End
- lazylockie
- Posts: 508
- Joined: 13 Jul 2010, 22:44
- Has thanked: 74 times
- Been thanked: 15 times
Re: SVN Bug Reports
by slapshot5 » 28 Jan 2011, 03:50
I think the problem is card.addComesIntoPlayCommand() (which Primal Clay uses) is too late (state effects have already sent it to the graveyard before this triggered ability resolves). That is for "When this card enters the battlefield", Primal Clay needs "As this card enters the battlefield". Several other cards have "As this card enters the battlefield", but the timing doesn't make any difference. For Primal Clay, it does. The */* is basically only for display in the Deck Editor. The easy fix here is to set the P/T to a default of 3/3 when getCard() is called. If we're releasing beta this weekend, I'll do that for now. We'll need to think a bit more about how to properly implement "As CARDNAME comes into play..."slapshot5 wrote:Sure thing.friarsol wrote:Also, slap, I was trying to fix a bug with Primal Clay going to the graveyard before letting you choose. I know you worked on the */* stuff, maybe you can check it out?
-slapshot5
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: SVN Bug Reports
by friarsol » 28 Jan 2011, 04:07
Yep. I got about that far before I realized that's what was going on. I tried resolving the choice immediately instead of adding it to the stack, but that was also too slow. "As CARDNAME comes into play" should really be occurring before the state effects are checked (or triggers occurred) since it's a static effect itself, but we don't really have the code for that right now. Sounds like a good enough fix for now.slapshot5 wrote:I think the problem is card.addComesIntoPlayCommand() (which Primal Clay uses) is too late (state effects have already sent it to the graveyard before this triggered ability resolves). That is for "When this card enters the battlefield", Primal Clay needs "As this card enters the battlefield". Several other cards have "As this card enters the battlefield", but the timing doesn't make any difference. For Primal Clay, it does. The */* is basically only for display in the Deck Editor. The easy fix here is to set the P/T to a default of 3/3 when getCard() is called. If we're releasing beta this weekend, I'll do that for now. We'll need to think a bit more about how to properly implement "As CARDNAME comes into play..."
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: SVN Bug Reports
by slapshot5 » 28 Jan 2011, 14:23
r5845
I'm getting a NPE with Essence Fracture on this line in AF_ChangeZone in changeKnownOriginCanPlayAI():
full stack
I'm getting a NPE with Essence Fracture on this line in AF_ChangeZone in changeKnownOriginCanPlayAI():
- Code: Select all
if (CardFactoryUtil.AI_getMostExpensivePermanent(list, af.getHostCard(), false).isCreature()
full stack
- Code: Select all
n error has occured. You can copy/paste this message or save it to a file.
Please report this, plus what you tried to do, to:
http://www.slightlymagic.net/forum/viewforum.php?f=26
If you don't want to register an account, you can mail it directly to
mtgerror@yahoo.com
There is an error in the card code for Essence Fracture:
Version:
Forge -- official beta: $Date: 2011-01-06 10:34:48 -0600 (Thu, 06 Jan 2011) $, SVN revision: $Revision: 4891 $
OS: Mac OS X Version: 10.6.6 Architecture: x86_64
Java Version: 1.6.0_22 Vendor: Apple Inc.
Detailed error trace:
java.lang.NullPointerException
at forge.AbilityFactory_ChangeZone.changeKnownOriginCanPlayAI(AbilityFactory_ChangeZone.java:658)
at forge.AbilityFactory_ChangeZone.changeZoneCanPlayAI(AbilityFactory_ChangeZone.java:114)
at forge.AbilityFactory_ChangeZone.access$0(AbilityFactory_ChangeZone.java:106)
at forge.AbilityFactory_ChangeZone$2.canPlayAI(AbilityFactory_ChangeZone.java:43)
at forge.ComputerAI_General.getPlayable(ComputerAI_General.java:178)
at forge.ComputerAI_General.getMain1(ComputerAI_General.java:112)
at forge.ComputerAI_General.playCards(ComputerAI_General.java:34)
at forge.ComputerAI_General.main1(ComputerAI_General.java:21)
at forge.ComputerAI_Input.think(ComputerAI_Input.java:46)
at forge.ComputerAI_Input.showMessage(ComputerAI_Input.java:31)
at forge.GuiInput.setInput(GuiInput.java:27)
at forge.GuiInput.update(GuiInput.java:21)
at java.util.Observable.notifyObservers(Observable.java:142)
at java.util.Observable.notifyObservers(Observable.java:98)
at forge.MyObservable.updateObservers(MyObservable.java:9)
at forge.Phase.nextPhase(Phase.java:372)
at forge.GuiDisplay4$25.actionPerformed(GuiDisplay4.java:781)
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.plaf.basic.BasicButtonListener$Actions.actionPerformed(BasicButtonListener.java:287)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1639)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2851)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2886)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2814)
at java.awt.Component.processEvent(Component.java:6129)
at java.awt.Container.processEvent(Container.java:2085)
at java.awt.Component.dispatchEventImpl(Component.java:4714)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Component.dispatchEvent(Component.java:4544)
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:4586)
at java.awt.Container.dispatchEventImpl(Container.java:2143)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4544)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:635)
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)
- slapshot5
- Programmer
- Posts: 1391
- Joined: 03 Jan 2010, 17:47
- Location: Mac OS X
- Has thanked: 25 times
- Been thanked: 68 times
Re: SVN Bug Reports
by friarsol » 28 Jan 2011, 15:51
List is empty. getMost... returns a null, then we try to find out if null is a creature. I'll fix the check above to make sure there's enough minimum creatures.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: SVN Bug Reports
by Jaedayr » 28 Jan 2011, 17:54
r5868
AI attacked with Iron Tusk Elephant and I blocked with Steel Wall. The wall went to the graveyard. I thought I saw this yesterday but was clicking too fast to get the details.
This was on Eclipse console.
I checked the wall txt and it has
AI attacked with Iron Tusk Elephant and I blocked with Steel Wall. The wall went to the graveyard. I thought I saw this yesterday but was clicking too fast to get the details.
This was on Eclipse console.
- Code: Select all
Adding 4 damage to Steel Wall
I checked the wall txt and it has
- Code: Select all
SVar:RemAIDeck:True
Re: SVN Bug Reports
by Jaedayr » 28 Jan 2011, 18:55
r5868
The pic for Voja (ability of Tolsimir Wolfblood) does not appear on the battlefield. I have gw_2_2_voja.jpg in the tokens folder.
The pic for Voja (ability of Tolsimir Wolfblood) does not appear on the battlefield. I have gw_2_2_voja.jpg in the tokens folder.
Re: SVN Bug Reports
by Sloth » 28 Jan 2011, 22:44
This is fixed now. It was a more general bug. Thanks for pointing out Jaedayr.Jaedayr wrote:r5868
AI attacked with Iron Tusk Elephant and I blocked with Steel Wall. The wall went to the graveyard. I thought I saw this yesterday but was clicking too fast to get the details.
This was on Eclipse console.
- Code: Select all
Adding 4 damage to Steel Wall
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Who is online
Users browsing this forum: No registered users and 28 guests