Page 41 of 487

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 11:28
by moomarc
I'm getting a crash at the end of each turn if there is a planeswalker in play. Looks like the problem is in Combat.initiatePossibleDefenders.
Crash report | Open
forge.game.player.HumanPlayer cannot be cast to forge.Card


Version:
Forge version SVN

OS: Windows 7 Version: 6.1 Architecture: x86

Java Version: 1.6.0_35 Vendor: Sun Microsystems Inc.

Detailed error trace:
java.lang.ClassCastException: forge.game.player.HumanPlayer cannot be cast to forge.Card
at forge.Card.compareTo(Card.java:1)
at java.util.TreeMap.put(Unknown Source)
at forge.game.phase.Combat.initiatePossibleDefenders(Combat.java:117)
at forge.game.phase.Combat.reset(Combat.java:97)
at forge.game.phase.PhaseUtil.handleUntap(PhaseUtil.java:88)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:325)

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 12:14
by friarsol
moomarc wrote:I'm getting a crash at the end of each turn if there is a planeswalker in play. Looks like the problem is in Combat.initiatePossibleDefenders.
Crash report | Open
forge.game.player.HumanPlayer cannot be cast to forge.Card


Version:
Forge version SVN

OS: Windows 7 Version: 6.1 Architecture: x86

Java Version: 1.6.0_35 Vendor: Sun Microsystems Inc.

Detailed error trace:
java.lang.ClassCastException: forge.game.player.HumanPlayer cannot be cast to forge.Card
at forge.Card.compareTo(Card.java:1)
at java.util.TreeMap.put(Unknown Source)
at forge.game.phase.Combat.initiatePossibleDefenders(Combat.java:117)
at forge.game.phase.Combat.reset(Combat.java:97)
at forge.game.phase.PhaseUtil.handleUntap(PhaseUtil.java:88)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:325)
Hmmm.. In Combat, See if changing

private Map<GameEntity, CardList> defenderMap = new TreeMap<GameEntity, CardList>();

to

private Map<GameEntity, CardList> defenderMap = new HashMap<GameEntity, CardList>(); helps at all

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 12:27
by moomarc
friarsol wrote:
moomarc wrote:I'm getting a crash at the end of each turn if there is a planeswalker in play. Looks like the problem is in Combat.initiatePossibleDefenders.
Crash report | Open
forge.game.player.HumanPlayer cannot be cast to forge.Card


Version:
Forge version SVN

OS: Windows 7 Version: 6.1 Architecture: x86

Java Version: 1.6.0_35 Vendor: Sun Microsystems Inc.

Detailed error trace:
java.lang.ClassCastException: forge.game.player.HumanPlayer cannot be cast to forge.Card
at forge.Card.compareTo(Card.java:1)
at java.util.TreeMap.put(Unknown Source)
at forge.game.phase.Combat.initiatePossibleDefenders(Combat.java:117)
at forge.game.phase.Combat.reset(Combat.java:97)
at forge.game.phase.PhaseUtil.handleUntap(PhaseUtil.java:88)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:325)
Hmmm.. In Combat, See if changing

private Map<GameEntity, CardList> defenderMap = new TreeMap<GameEntity, CardList>();

to

private Map<GameEntity, CardList> defenderMap = new HashMap<GameEntity, CardList>(); helps at all
Seems to have done the trick. Should I commit that change or is there anything else you want to check first?

Edit: Meh, just commited the fix. If it's stopped something else from working then it's four letters to revert. :P

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 14:11
by moomarc
Looks like pumped "May be played" keywords don't get removed from instants or sorceries when cast or countered. Affects Aerial Caravan, Elkin Bottle etc. Is there an easy way to clear the keyword when you cast it do we need to start converting them to Play AFs?

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 14:24
by friarsol
moomarc wrote:Seems to have done the trick. Should I commit that change or is there anything else you want to check first?

Edit: Meh, just commited the fix. If it's stopped something else from working then it's four letters to revert. :P
I was just going to use a hashmap to begin with, but for whatever reason the rest of those were already TreeMaps, so I just followed that. But I guess since GameEntities aren't comparable it can't use a TreeMap from Card -> Player.

Re: Bug Reports (snapshot builds)

PostPosted: 11 Sep 2012, 14:34
by moomarc
moomarc wrote:Looks like pumped "May be played" keywords don't get removed from instants or sorceries when cast or countered. Affects Aerial Caravan, Elkin Bottle etc. Is there an easy way to clear the keyword when you cast it do we need to start converting them to Play AFs?
I think this is fixed now. Just duplicated the block in GameAction.changeZone that removes these types of keywords from permanents entering play, then changed the destination zone to graveyard. Can anyone think of a situation this won't work? Basic testing works fine.

Re: Bug Reports (snapshot builds)

PostPosted: 12 Sep 2012, 15:23
by Bundy
Forge Snapshot 1.2.14-20120912.104753-4
Got this error after choosing a color for the counter on Coalition Relic:

Code: Select all
This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
   http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.

For input string: "X"


Version:
Forge version 1.2.14-SNAPSHOT

OS: Windows 7 Version: 6.1 Architecture: x86

Java Version: 1.7.0_07 Vendor: Oracle Corporation

Detailed error trace:
java.lang.NumberFormatException: For input string: "X"
   at java.lang.NumberFormatException.forInputString(Unknown Source)
   at java.lang.Integer.parseInt(Unknown Source)
   at java.lang.Integer.parseInt(Unknown Source)
   at forge.card.abilityfactory.AbilityFactory.calculateAmount(AbilityFactory.java:1784)
   at forge.card.abilityfactory.AbilityFactoryMana.generatedMana(AbilityFactoryMana.java:428)
   at forge.card.abilityfactory.AbilityFactoryMana.manaResolve(AbilityFactoryMana.java:388)
   at forge.card.abilityfactory.AbilityFactoryMana$1abFactoryMana.resolve(AbilityFactoryMana.java:86)
   at forge.card.abilityfactory.AbilityFactory.resolve(AbilityFactory.java:2842)
   at forge.card.spellability.SpellAbilityRequirements.finishPaying(SpellAbilityRequirements.java:190)
   at forge.card.cost.CostPayment.payCost(CostPayment.java:227)
   at forge.card.cost.CostPayment.paidCost(CostPayment.java:190)
   at forge.card.cost.CostMana.payHuman(CostMana.java:219)
   at forge.card.cost.CostPayment.payCost(CostPayment.java:221)
   at forge.card.spellability.SpellAbilityRequirements.startPaying(SpellAbilityRequirements.java:179)
   at forge.card.spellability.SpellAbilityRequirements.needPayment(SpellAbilityRequirements.java:165)
   at forge.card.spellability.SpellAbilityRequirements.fillRequirements(SpellAbilityRequirements.java:132)
   at forge.GameAction.playSpellAbilityNoStack(GameAction.java:2051)
   at forge.card.trigger.TriggerHandler$2.resolve(TriggerHandler.java:993)
   at forge.card.abilityfactory.AbilityFactory.resolve(AbilityFactory.java:2842)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:940)
   at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:881)
   at forge.game.player.ComputerAIGeneral.playSpellAbilities(ComputerAIGeneral.java:345)
   at forge.control.input.InputControl.updateInput(InputControl.java:260)
   at forge.gui.GuiInput.update(GuiInput.java:58)
   at java.util.Observable.notifyObservers(Unknown Source)
   at java.util.Observable.notifyObservers(Unknown Source)
   at forge.util.MyObservable.updateObservers(MyObservable.java:41)
   at forge.control.input.InputControl.resetInput(InputControl.java:146)
   at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:870)
   at forge.control.input.InputPassPriority.selectButtonOK(InputPassPriority.java:76)
   at forge.gui.GuiInput.selectButtonOK(GuiInput.java:92)
   at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:52)
   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.AbstractButton.doClick(Unknown Source)
   at javax.swing.AbstractButton.doClick(Unknown Source)
   at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:89)
   at java.awt.Component.processKeyEvent(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)

Re: Bug Reports (snapshot builds)

PostPosted: 12 Sep 2012, 20:36
by Milod
error while cpu uses trapanation blade

This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.

For input string: "X"


Version:
Forge version 1.2.14-SNAPSHOT

OS: Windows 7 Version: 6.1 Architecture: x86

Java Version: 1.7.0_06 Vendor: Oracle Corporation

Detailed error trace:
java.lang.NumberFormatException: For input string: "X"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at forge.card.abilityfactory.AbilityFactory.calculateAmount(AbilityFactory.java:1784)
at forge.card.abilityfactory.AbilityFactoryPump.getNumAttack(AbilityFactoryPump.java:264)
at forge.card.abilityfactory.AbilityFactoryPump.pumpStackDescription(AbilityFactoryPump.java:1283)
at forge.card.abilityfactory.AbilityFactoryPump.access$200(AbilityFactoryPump.java:63)
at forge.card.abilityfactory.AbilityFactoryPump$1DrawbackPump.getStackDescription(AbilityFactoryPump.java:231)
at forge.card.spellability.SpellAbilityStackInstance.<init>(SpellAbilityStackInstance.java:91)
at forge.card.spellability.SpellAbilityStackInstance.<init>(SpellAbilityStackInstance.java:107)
at forge.game.zone.MagicStack.push(MagicStack.java:890)
at forge.game.zone.MagicStack.add(MagicStack.java:473)
at forge.game.player.ComputerUtil.playStack(ComputerUtil.java:355)
at forge.game.zone.MagicStack.chooseOrderOfSimultaneousStackEntry(MagicStack.java:1390)
at forge.game.zone.MagicStack.chooseOrderOfSimultaneousStackEntryAll(MagicStack.java:1345)
at forge.game.phase.PhaseHandler.setPriority(PhaseHandler.java:171)
at forge.game.phase.PhaseHandler.resetPriority(PhaseHandler.java:184)
at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:491)
at forge.control.input.InputControl.updateInput(InputControl.java:203)
at forge.gui.GuiInput.update(GuiInput.java:58)
at java.util.Observable.notifyObservers(Unknown Source)
at java.util.Observable.notifyObservers(Unknown Source)
at forge.util.MyObservable.updateObservers(MyObservable.java:41)
at forge.game.phase.PhaseHandler.nextPhase(PhaseHandler.java:588)
at forge.game.phase.PhaseHandler.nextPhase(PhaseHandler.java:592)
at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:57)
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.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:89)
at java.awt.Component.processKeyEvent(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$000(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)

PostPosted: 13 Sep 2012, 07:45
by moomarc
Milod wrote:error while cpu uses Trepanation Blade
Code: Select all
For input string: "X"...
Fixed. Thanks Milod!

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 07:55
by moomarc
Bundy wrote:Got this error after choosing a color for the counter on Coalition Relic
Fixed. Thanks Bundy!

On a side note this card needs some tweaking so that you can add different colors of mana for each counter removed.

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 08:25
by Sloth
Why is there no longer a fallback to the cards SVar?

I'm sure there will be dozens of missing references on triggers. And there isn't even a card that copies triggered abilities.

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 09:19
by moomarc
Game crashes whenever the AI starts with a card with Kicker in its hand (probably at any time with a Kicker card in hand but only playing 2 round test games at the moment).
Crash | Open
java.lang.ArrayIndexOutOfBoundsException: 1
at forge.card.spellability.SpellPermanent.checkETBEffects(SpellPermanent.java:433)
at forge.card.spellability.SpellPermanent.canPlayFromEffectAI(SpellPermanent.java:381)
at forge.card.spellability.SpellPermanent.canPlayAI(SpellPermanent.java:305)
at forge.game.player.ComputerUtil.canBePlayedAndPayedByAI(ComputerUtil.java:47)...

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 11:02
by Sloth
moomarc wrote:Game crashes whenever the AI starts with a card with Kicker in its hand (probably at any time with a Kicker card in hand but only playing 2 round test games at the moment).
Crash | Open
java.lang.ArrayIndexOutOfBoundsException: 1
at forge.card.spellability.SpellPermanent.checkETBEffects(SpellPermanent.java:433)
at forge.card.spellability.SpellPermanent.canPlayFromEffectAI(SpellPermanent.java:381)
at forge.card.spellability.SpellPermanent.canPlayAI(SpellPermanent.java:305)
at forge.game.player.ComputerUtil.canBePlayedAndPayedByAI(ComputerUtil.java:47)...
Fixed! Thanks marc.

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 14:36
by jeffwadsworth
Ver. 16830. A null pointer.
The previous turn I had cast Oblivion Ring and targeted the AI's Black Vise.
When my end of turn came around, the error occurred. Screenshot attached.

Re: Bug Reports (snapshot builds)

PostPosted: 13 Sep 2012, 16:26
by Jaedayr
I have Creakwood Liege and Sigil Captain in play. At the beginning of my upkeep I get a 3/3 token wurm with 2 +1/+1 counters on it making it 5/5. I ran across this and wonder if this is a bug in Forge or not.

http://forums.mtgsalvation.com/showthre ... wood+liege