It is currently 26 Aug 2025, 08:32
   
Text Size

Forge Beta: 06-28-2013 ver 1.4.2

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Niv-Mizzet » 30 Jun 2013, 05:31

Wow, mad props to whoever was involved in finally implementing banding. Not that everyone was clamoring for Benalish Hero but it seems like that potentially fills in a lot of the gaps from those older sets.

=D>
User avatar
Niv-Mizzet
 
Posts: 125
Joined: 17 Oct 2009, 21:20
Has thanked: 0 time
Been thanked: 5 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby saturnine » 30 Jun 2013, 08:04

Description: Switching Section views in the Deck Editor. This bug was in 1.4.1 AFAIK, and is incredibly annoying. No luck with fixing this yet?

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.card.CardDb$PredicateExistsInSets.apply(CardDb.java:373)
   at forge.card.CardDb$PredicateExistsInSets.apply(CardDb.java:363)
   at com.google.common.base.Predicates$AndPredicate.apply(Predicates.java:343)
   at com.google.common.base.Predicates$AndPredicate.apply(Predicates.java:343)
   at com.google.common.base.Predicates$OrPredicate.apply(Predicates.java:377)
   at com.google.common.base.Predicates$CompositionPredicate.apply(Predicates.java:536)
   at com.google.common.collect.Iterators$7.computeNext(Iterators.java:702)
   at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at forge.item.ItemPool.addAll(ItemPool.java:151)
   at forge.gui.deckeditor.tables.EditorTableModel.addCards(EditorTableModel.java:167)
   at forge.gui.deckeditor.tables.EditorTableView.updateView(EditorTableView.java:488)
   at forge.gui.deckeditor.tables.EditorTableView.setDeckImpl(EditorTableView.java:347)
   at forge.gui.deckeditor.tables.EditorTableView.setDeck(EditorTableView.java:319)
   at forge.gui.deckeditor.controllers.CEditorConstructed.cycleEditorMode(CEditorConstructed.java:246)
   at forge.gui.deckeditor.controllers.CEditorConstructed$2.run(CEditorConstructed.java:322)
   at forge.gui.toolbox.FLabel._doMouseAction(FLabel.java:309)
   at forge.gui.toolbox.FLabel.access$1300(FLabel.java:51)
   at forge.gui.toolbox.FLabel$6.mouseClicked(FLabel.java:345)
   at java.awt.AWTEventMulticaster.mouseClicked(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$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)
saturnine
 
Posts: 154
Joined: 29 Jul 2012, 15:16
Has thanked: 98 times
Been thanked: 7 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Sloth » 30 Jun 2013, 08:28

Haytrid wrote:OK, I just downloaded Forge for the first time yesterday. Is this the proper format to report crashes/bugs? Thanks!

Description: Playing a sealed deck tourney with "all sets". Crashed during the computers main phase when he cast "Benediction of Moons"

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.zone.MagicStack$1.resolve(MagicStack.java:550)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:530)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:877)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Fixed! Thanks Haytrid.

zxc wrote:Description: Computer tried to play Changeling Titan, then game crashed. Sorry, forgot to take a screenshot before closing.

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 amd64
Java Version:     1.7.0_21 Oracle Corporation

java.lang.NullPointerException
   at forge.game.GameAction.reveal(GameAction.java:1414)
   at forge.game.GameAction.reveal(GameAction.java:1410)
   at forge.card.ability.ai.ChangeZoneAi.hiddenOriginResolveAI(ChangeZoneAi.java:1390)
   at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:580)
   at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:352)
   at forge.card.spellability.AbilitySub.resolve(AbilitySub.java:130)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.ai.ComputerUtil.playNoStack(ComputerUtil.java:330)
   at forge.card.trigger.WrappedAbility.resolve(WrappedAbility.java:363)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:528)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:877)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
freddyjsg wrote:In an AI Vs AI game, when one of them put 5 Thoughtweft Trio onto the battlefield with Rite of Replication:

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.GameAction.reveal(GameAction.java:1414)
   at forge.game.GameAction.reveal(GameAction.java:1410)
   at forge.card.ability.ai.ChangeZoneAi.hiddenOriginResolveAI(ChangeZoneAi.java:1390)
   at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:580)
   at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:352)
   at forge.card.spellability.AbilitySub.resolve(AbilitySub.java:130)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.ai.ComputerUtil.playNoStack(ComputerUtil.java:330)
   at forge.card.trigger.WrappedAbility.resolve(WrappedAbility.java:363)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:528)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:877)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
EDIT:
Also at another AI Vs AI, when one of them cast Changeling Titan:


NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.GameAction.reveal(GameAction.java:1414)
   at forge.game.GameAction.reveal(GameAction.java:1410)
   at forge.card.ability.ai.ChangeZoneAi.hiddenOriginResolveAI(ChangeZoneAi.java:1390)
   at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:580)
   at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:352)
   at forge.card.spellability.AbilitySub.resolve(AbilitySub.java:130)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.ai.ComputerUtil.playNoStack(ComputerUtil.java:330)
   at forge.card.trigger.WrappedAbility.resolve(WrappedAbility.java:363)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1032)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1015)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:528)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:877)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Fixed! Thanks zxc and freddyjsg.

Haytrid wrote:Description: Game crashed when computer attacked me with a Silhana Ledgewalker

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.combat.Combat.getAttackersOf(Combat.java:100)
   at forge.game.ai.ComputerUtilCombat.lifeThatWouldRemain(ComputerUtilCombat.java:222)
   at forge.game.ai.ComputerUtilCombat.wouldLoseLife(ComputerUtilCombat.java:341)
   at forge.card.ability.ai.DamagePreventAi.canPlayAI(DamagePreventAi.java:124)
   at forge.card.ability.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:18)
   at forge.card.ability.AbilityApiBased.canPlayAI(AbilityApiBased.java:67)
   at forge.game.ai.AiController.canPlayAndPayFor(AiController.java:478)
   at forge.game.ai.AiController.chooseSpellAbilyToPlay(AiController.java:462)
   at forge.game.ai.AiController.getSpellAbilityToPlay(AiController.java:816)
   at forge.game.ai.AiController.playSpellAbilities(AiController.java:790)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:738)
   at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:339)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:847)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Haytrid wrote:Description: Game crashed during the DB stage after being attacked by an absolver thrull

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.combat.Combat.getAttackersOf(Combat.java:100)
   at forge.game.ai.ComputerUtilCombat.lifeThatWouldRemain(ComputerUtilCombat.java:222)
   at forge.game.ai.ComputerUtilCombat.wouldLoseLife(ComputerUtilCombat.java:341)
   at forge.card.ability.ai.DamagePreventAi.canPlayAI(DamagePreventAi.java:124)
   at forge.card.ability.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:18)
   at forge.card.ability.AbilityApiBased.canPlayAI(AbilityApiBased.java:67)
   at forge.game.ai.AiController.canPlayAndPayFor(AiController.java:478)
   at forge.game.ai.AiController.chooseSpellAbilyToPlay(AiController.java:462)
   at forge.game.ai.AiController.getSpellAbilityToPlay(AiController.java:816)
   at forge.game.ai.AiController.playSpellAbilities(AiController.java:790)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:738)
   at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:339)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:847)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Fixed! Thanks Haytrid.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby friarsol » 30 Jun 2013, 15:05

Niv-Mizzet wrote:Wow, mad props to whoever was involved in finally implementing banding. Not that everyone was clamoring for Benalish Hero but it seems like that potentially fills in a lot of the gaps from those older sets.

=D>
:: takes a bow ::

Edit: And of course, thanks to Swordshine for scripting most of the Banding cards after it was functional.
Last edited by friarsol on 30 Jun 2013, 17:44, edited 1 time in total.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby SecretCaveman » 30 Jun 2013, 17:06

The AI cast Condemn on my Ulamog's Crusher in my "Declare Attacker" step. Get the error after it resolved.

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.game.combat.CombatUtil$2.resolve(CombatUtil.java:936)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:530)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:877)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
SecretCaveman
 
Posts: 63
Joined: 22 Jun 2013, 12:38
Has thanked: 1 time
Been thanked: 1 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby freddyjsg » 30 Jun 2013, 17:38

Two more.
First, the AI seems to be paying replicate costs for auras, like Infiltrator's Magemark, when Djinn Illuminatus is on the battlefield.
Two, similar to a crash that i had with the AI and Purity using the mana from Smokebraider to cast it in 1.4.1:

RuntimeException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.RuntimeException: ComputerUtil : payManaCost() cost was not paid for Vigor. Didn't find what to pay for G
   at forge.game.ai.ComputerUtilMana.payManaCost(ComputerUtilMana.java:213)
   at forge.game.ai.ComputerUtilMana.payManaCost(ComputerUtilMana.java:62)
   at forge.card.cost.CostPartMana.payAI(CostPartMana.java:184)
   at forge.card.cost.CostPayment.payComputerCosts(CostPayment.java:190)
   at forge.game.ai.ComputerUtil.handlePlayingSpellAbility(ComputerUtil.java:130)
   at forge.game.ai.AiController.playSpellAbilities(AiController.java:793)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:738)
   at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:339)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:847)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
This time it was Vigor, but the AI had 2 Forest in play, in addition to the Smokebraider as green mana sources

EDIT:
Also, here is another. I guess it was because of Mizzium Transreliquat ability, because of the report:

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_25 Oracle Corporation

java.lang.NullPointerException
   at forge.card.ability.ai.CloneAi.canPlayAI(CloneAi.java:49)
   at forge.card.ability.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:18)
   at forge.card.ability.AbilityApiBased.canPlayAI(AbilityApiBased.java:67)
   at forge.game.ai.AiController.canPlayAndPayFor(AiController.java:478)
   at forge.game.ai.AiController.chooseSpellAbilyToPlay(AiController.java:462)
   at forge.game.ai.AiController.getSpellAbilityToPlay(AiController.java:816)
   at forge.game.ai.AiController.playSpellAbilities(AiController.java:790)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:738)
   at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:339)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:847)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
freddyjsg
 
Posts: 66
Joined: 12 Feb 2013, 13:24
Has thanked: 18 times
Been thanked: 1 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby SecretCaveman » 30 Jun 2013, 22:07

Ulamog's Crusher does 16 damage instead of 8 when attacking the turn it came into play if I give it haste with Battle Rampart

Edit: OK, can't reproduce this each time. Has to be something else that causes it. (I'm sure theres nothing that gives it doublestrike or something, going to take a screenshot next time)
SecretCaveman
 
Posts: 63
Joined: 22 Jun 2013, 12:38
Has thanked: 1 time
Been thanked: 1 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Dreago » 30 Jun 2013, 23:11

Ravnica card Shadow of Doubt doesn't have any text? Don't know if it has any effect or not.
Dreago
 
Posts: 17
Joined: 15 Jun 2013, 05:40
Has thanked: 0 time
Been thanked: 0 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Chris H. » 01 Jul 2013, 02:34

Dreago wrote:Ravnica card Shadow of Doubt doesn't have any text? Don't know if it has any effect or not.
 
Fixed, it looks like there was a simple typo in the card script for this card. Thank you for the bug report Dreago. :)
User avatar
Chris H.
Forge Moderator
 
Posts: 6320
Joined: 04 Nov 2008, 12:11
Location: Mac OS X Yosemite
Has thanked: 644 times
Been thanked: 643 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby SunShintaBra » 01 Jul 2013, 05:27

Opponent milled in a planechase game, stuck at draw step where he loses. Interface responds but can not pass turn or quit game.
Attachments
Untitled.png
SunShintaBra
 
Posts: 9
Joined: 24 Mar 2013, 02:15
Has thanked: 0 time
Been thanked: 0 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby krishkrush » 01 Jul 2013, 08:49

 Hero of Bladehold activates its token ability two times (and its other ability as well).
Edit: I cannot achieve this after some testing, only the AI was able to do this (but every time). Okay I checked the log again and found that the Hero is handled as two cards? But with the same ID ...

| Open
Match result: Human: 0 Alexander: 1
Game outcome: Alexander has won because all opponents have lost
Game outcome: You have lost because life total reached 0
Damage: Soldier (1073) deals 5 combat damage to Human.
Damage: Soldier (1054) deals 6 combat damage to Human.
Damage: Soldier (1052) deals 6 combat damage to Human.
Damage: Soldier (1071) deals 5 combat damage to Human.
Damage: Hero of Bladehold (136) deals 8 combat damage to Human.
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Combat: Human didn't block Hero of Bladehold (136).
Human didn't block Soldier (1071).
Human didn't block Soldier (1052).
Human didn't block Soldier (1054).
Human didn't block Soldier (1073).
Phase: Alexander's Declare Blockers
Resolve stack: Vault of the Archangel (139) - Creatures you control gain deathtouch and lifelink until end of turn.
Add to stack: Alexander activated Vault of the Archangel (139).
Resolve stack: Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)
Resolve stack: Whenever Hero of Bladehold attacks, put two 1/1 white Soldier creature tokens onto the battlefield tapped and attacking.
Resolve stack: Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)
Resolve stack: Whenever Hero of Bladehold attacks, put two 1/1 white Soldier creature tokens onto the battlefield tapped and attacking.
Add to stack: Alexander activated Hero of Bladehold (136).
Add to stack: Alexander activated Hero of Bladehold (136).
Add to stack: Alexander activated Hero of Bladehold (136).
Add to stack: Alexander activated Hero of Bladehold (136).
Combat: Alexander assigned Hero of Bladehold (136) and Hero of Bladehold (136) to attack Human.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Vault of the Archangel (124)
Replacement Effect: You may have CARDNAME enter the battlefield tapped as a copy of any land on the battlefield.
Phase: Alexander's Main, precombat
Resolve stack: Swords to Plowshares (151) - Swords to Plowshares - Exile. gains 0 life.
Add to stack: Alexander cast Swords to Plowshares (151) targeting .
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 14 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Maelstrom Nexus
Resolve stack: Cultivate (25) - - Human searches his/her's library for 1 Land.Basic and puts that card onto the battlefield tapped. Then shuffle that library. Human searches his/her's library for 1 Land.Basic and puts that card into its owner's hand. Then shuffle that library.
Resolve stack: Maelstrom Nexus (57) - Cascade.
Add to stack: Human cast Cultivate (25).
Add to stack: Human activated Maelstrom Nexus (57).
Add to stack: Human cast Maelstrom Nexus (57).
Mana: Forest (35) - Tap: Add G to your mana pool.
Mana: Plains (42) - Tap: Add W to your mana pool.
Mana: Mountain (52) - Tap: Add R to your mana pool.
Mana: Island (7) - Tap: Add U to your mana pool.
Mana: Swamp (31) - Tap: Add B to your mana pool.
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 13 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Resolve stack: Hero of Bladehold - Creature 3 / 4
Add to stack: Alexander cast Hero of Bladehold (136).
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Phase: Alexander's Declare Blockers
Combat: Alexander didn't attack this turn.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Plains (122)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 12 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Evolving Wilds (6) - - Human searches his/her's library for 1 Land.Basic and puts that card onto the battlefield tapped. Then shuffle that library.
Add to stack: Human activated Evolving Wilds (6).
Resolve stack: Child of Alara - Creature 6 / 6
Resolve stack: Maelstrom Pulse (26) - Destroy . Maelstrom Pulse - Destroy permanents.
Resolve stack: Child of Alara (45) - Cascade.
Add to stack: Human cast Maelstrom Pulse (26) targeting .
Add to stack: Human activated Child of Alara (45).
Add to stack: Human cast Child of Alara (45).
Mana: Plains (42) - Tap: Add W to your mana pool.
Mana: Mountain (52) - Tap: Add R to your mana pool.
Mana: Island (7) - Tap: Add U to your mana pool.
Mana: Swamp (31) - Tap: Add B to your mana pool.
Mana: Forest (38) - Tap: Add G to your mana pool.
Land: Human played Evolving Wilds (6)
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 11 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Damage: Spirit (344) deals 4 combat damage to Human.
Damage: Spirit (346) deals 4 combat damage to Human.
Damage: Spirit (342) deals 4 combat damage to Human.
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Combat: Human didn't block Spirit (342).
Human didn't block Spirit (346).
Human didn't block Spirit (344).
Phase: Alexander's Declare Blockers
Combat: Alexander assigned Spirit (342), Spirit (344) and Spirit (346) to attack Human.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Resolve stack: Honor of the Pure
Add to stack: Alexander cast Honor of the Pure (138).
Resolve stack: Intangible Virtue
Add to stack: Alexander cast Intangible Virtue (95).
Land: Alexander played Isolated Chapel (130)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 10 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Maelstrom Nexus
Add to stack: Human cast Maelstrom Nexus (58).
Mana: Plains (42) - Tap: Add W to your mana pool.
Mana: Mountain (52) - Tap: Add R to your mana pool.
Mana: Island (7) - Tap: Add U to your mana pool.
Mana: Swamp (31) - Tap: Add B to your mana pool.
Mana: Forest (38) - Tap: Add G to your mana pool.
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 9 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Resolve stack: Spectral Procession (145) - Put (3) 1/1 Spirit tokens onto the battlefield.
Add to stack: Alexander cast Spectral Procession (145).
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Phase: Alexander's Declare Blockers
Combat: Alexander didn't attack this turn.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Vault of the Archangel (139)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 8 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Swords to Plowshares (150) - Swords to Plowshares - Exile. gains 0 life.
Add to stack: Alexander cast Swords to Plowshares (150) targeting .
Resolve stack: Child of Alara - Creature 6 / 6
Add to stack: Human cast Child of Alara (46).
Mana: Plains (42) - Tap: Add W to your mana pool.
Mana: Mountain (52) - Tap: Add R to your mana pool.
Mana: Island (7) - Tap: Add U to your mana pool.
Mana: Swamp (31) - Tap: Add B to your mana pool.
Mana: Forest (38) - Tap: Add G to your mana pool.
Land: Human played Forest (38)
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 7 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Phase: Alexander's Declare Blockers
Combat: Alexander didn't attack this turn.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Plains (121)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 6 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Harrow (11) - - Human searches his/her's library for 2 Land.Basic and puts those cards onto the battlefield. Then shuffle that library.
Add to stack: Human cast Harrow (11).
Mana: Island (7) - Tap: Add U to your mana pool.
Mana: Forest (39) - Tap: Add G to your mana pool.
Mana: Swamp (31) - Tap: Add B to your mana pool.
Land: Human played Island (7)
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 5 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Resolve stack: Intangible Virtue
Add to stack: Alexander cast Intangible Virtue (94).
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Phase: Alexander's Declare Blockers
Combat: Alexander didn't attack this turn.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Plains (117)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 4 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Evolving Wilds (5) - - Human searches his/her's library for 1 Land.Basic and puts that card onto the battlefield tapped. Then shuffle that library.
Add to stack: Human activated Evolving Wilds (5).
Land: Human played Evolving Wilds (5)
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 3 (Human)
Phase: Alexander's Cleanup
Phase: Alexander's End of Turn
Phase: Alexander's Main, postcombat
Phase: Alexander's End Combat
Phase: Alexander's Combat Damage
Phase: Alexander's First Strike Damage
Phase: Alexander's Declare Blockers
Combat: Alexander didn't attack this turn.
Phase: Alexander's Declare Attackers
Phase: Alexander's Begin Combat
Land: Alexander played Scrubland (109)
Phase: Alexander's Main, precombat
Phase: Alexander's Draw
Phase: Alexander's Upkeep
Phase: Alexander's Untap
Turn: Turn 2 (Alexander)
Phase: Human's Cleanup
Phase: Human's End of Turn
Phase: Human's Main, postcombat
Phase: Human's End Combat
Phase: Human's Combat Damage
Phase: Human's First Strike Damage
Phase: Human's Declare Blockers
Combat: Human didn't attack this turn.
Phase: Human's Declare Attackers
Phase: Human's Begin Combat
Resolve stack: Evolving Wilds (4) - - Human searches his/her's library for 1 Land.Basic and puts that card onto the battlefield tapped. Then shuffle that library.
Add to stack: Human activated Evolving Wilds (4).
Land: Human played Evolving Wilds (4)
Phase: Human's Main, precombat
Phase: Human's Draw
Phase: Human's Upkeep
Phase: Human's Untap
Turn: Turn 1 (Human)
Mulligan: Alexander has kept a hand of 7 cards
Mulligan: Human has kept a hand of 7 cards
Last edited by Chris H. on 01 Jul 2013, 11:56, edited 1 time in total.
Reason: mouse-over
krishkrush
 
Posts: 89
Joined: 13 Oct 2012, 14:18
Has thanked: 30 times
Been thanked: 2 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby zxc » 01 Jul 2013, 09:37

Is there a way to use cards from the hand whose purpose is to add mana to the pool? I tried using Seething Song when prompted to pay mana costs for another card, but it didn't work. I couldn't use Simian Spirit Guide either. Sorry if this has been noted somewhere or I'm missing something obvious.

Also, I'm not sure if this is possible to implement, but the stack doesn't resolve as it should for a particular use of Avarice Totem.

From Wizards' site:

It is possible to activate this ability in response to itself and generate some odd combinations. For example, if you control this card and another permanent, you can use this card's ability and target the permanent you control. You can then use this card's ability again and target a permanent your opponent controls. The second usage resolves first and you get your opponent's permanent in exchange for this one. The first usage then resolves and swaps your other permanent for the Totem so you get it back. The net effect is that you can swap any non-land permanent you have for any of theirs if you can activate this ability twice. Note that your opponent does get the chance to use the Totem in between the resolutions of your two usages if they have the mana.
When I tried, both usages just fizzled.
zxc
 
Posts: 11
Joined: 29 Jun 2013, 05:53
Has thanked: 0 time
Been thanked: 0 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Doerk » 01 Jul 2013, 12:09

Description: Crashed on AI's turn when attacking with White Knight.

Edit: "Crashed" means: I couldn't anything after the error message.

NullPointerException | Open
Code: Select all
Forge Version:    1.4.2-r22320
Operating System: Windows 7 6.1 amd64
Java Version:     1.7.0_17 Oracle Corporation

java.lang.NullPointerException
   at forge.game.combat.Combat.getAttackersOf(Combat.java:100)
   at forge.game.ai.ComputerUtilCombat.lifeThatWouldRemain(ComputerUtilCombat.java:222)
   at forge.game.ai.ComputerUtilCombat.wouldLoseLife(ComputerUtilCombat.java:341)
   at forge.card.ability.ai.DamagePreventAi.canPlayAI(DamagePreventAi.java:124)
   at forge.card.ability.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:18)
   at forge.card.ability.SpellApiBased.canPlayAI(SpellApiBased.java:49)
   at forge.game.ai.AiController.canPlayAndPayFor(AiController.java:478)
   at forge.game.ai.AiController.chooseSpellAbilyToPlay(AiController.java:462)
   at forge.game.ai.AiController.getSpellAbilityToPlay(AiController.java:816)
   at forge.game.ai.AiController.playSpellAbilities(AiController.java:790)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:738)
   at forge.game.player.PlayerControllerAi.takePriority(PlayerControllerAi.java:339)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:847)
   at forge.game.GameAction.startGame(GameAction.java:1465)
   at forge.game.Match$1.run(Match.java:105)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Attachments
Forge 1.4_WhiteKnight.jpg
Last edited by Doerk on 01 Jul 2013, 13:13, edited 2 times in total.
Doerk
 
Posts: 41
Joined: 12 Apr 2011, 16:43
Has thanked: 2 times
Been thanked: 1 time

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby friarsol » 01 Jul 2013, 12:18

zxc wrote:Is there a way to use cards from the hand whose purpose is to add mana to the pool? I tried using Seething Song when prompted to pay mana costs for another card, but it didn't work. I couldn't use Simian Spirit Guide either. Sorry if this has been noted somewhere or I'm missing something obvious.
Seeting Song is not a mana ability. It's an instant. Similarly, Dark Ritual used to be a Mana Ability (back around Tempest) so it was uncounterable, but it was changed where you have to cast it first. You should be able to use Elvish/Simian Spirit Guide as a mana ability. I believe this used to work, so if someone can repro this as not working then that's a bug.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Forge Beta: 06-28-2013 ver 1.4.2

Postby Doomlord » 01 Jul 2013, 12:42

When I control Consecrated Sphinx and the AI draws a card, the dialogue box where I choose weather to draw cards from the sphinx tells me the name of the card my opponent drew.
Doomlord
 
Posts: 47
Joined: 07 Dec 2011, 21:07
Has thanked: 0 time
Been thanked: 2 times

PreviousNext

Return to Forge

Who is online

Users browsing this forum: No registered users and 27 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 27 users online :: 0 registered, 0 hidden and 27 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 27 guests

Login Form