Page 428 of 491

Re: Bug Reports (snapshot builds)

PostPosted: 19 Aug 2017, 04:08
by Agetian
Xyx wrote:The "Format -> Standard" filter allows decks that are less than 60 cards.
Hmm, yeah, interestingly, I don't think that any deck size limits are specified anywhere for the formats themselves (so they don't get into filters like Standard and Modern and whatnot), and this check is only made later when the deck is tested for conformance :/ I'll see if I can find a way to improve this. However, it's a bit more complicated than just "testing for 60 or more", since this filter may be used in Quest Mode as well, which allows 40-card decks, so I'm a bit confused... Even more confusingly, it can be used to filter Booster Draft and Sealed Deck decks, which makes little sense from the MTG standpoint (since Sealed and Draft are separate limited formats), but which effectively functions as a "filter for decks which only have Standard-/Modern-/whatever-legal cards in them". Maybe it should be called something else other than "Format" then, in order not to confuse people?..

(Btw, can't reproduce the Scry-related bug you posted above just yet :/ )

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 20 Aug 2017, 13:26
by Xyx
Hunter's Prowess has a weird text prompt. See image.

Peregrination also has a rather ugly prompt, and it suggests that the library is shuffled twice instead of just once (but it is only once.)

Steam Augury also has a slightly unhelpful prompt that does not explain which pile does which. And while the pile selection dialog is open, you can't see the Steam Augury card.

Re: Bug Reports (snapshot builds)

PostPosted: 24 Aug 2017, 10:17
by Indigo Dragon
Scalelord Reckoner triggers on when a dragon is targeted in another zone. (eg. Scrabbling Claws second ability targeting an Ojutai, Soul of Winter).

e: Also, Orator of Ojutai only draws a card if you revealed a Dragon card from your hand, and does not draw if you controlled a Dragon.

Re: Bug Reports (snapshot builds)

PostPosted: 25 Aug 2017, 08:40
by kevlahnota
Description: [describe what you were doing when the crash occurred]

I was playing planar conquest, the AI cast Ajani Vangeant, then NPE popup. Im using Android svn R35213, It froze on waiting opponent...

NullPointerException | Open
Code: Select all
Forge Version:    1.6.2.001
Operating System: Linux 3.10.84-perf-g44616d6 armv8l
Java Version:     0 The Android Project

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String forge.game.spellability.SpellAbility.getSVar(java.lang.String)' on a null object reference
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:95)
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:61)
   at forge.ai.ability.DamageDealAi.canPlayAI(DamageDealAi.java:164)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:634)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:618)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1142)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1114)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1094)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:951)
   at forge.game.GameAction.startGame(GameAction.java:1565)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
   at java.lang.Thread.run(Thread.java:818)
Screenshot_2017-08-25-16-37-17-775_forge.app.png

Re: Bug Reports (snapshot builds)

PostPosted: 25 Aug 2017, 11:03
by Agetian
@kevlahnota: Thanks! Fixed in r35217.

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 25 Aug 2017, 13:07
by MaxMtg
Description: [ Opponent played Sunset Pyramid and the game crashed]

NullPointerException | Open
Code: Select all
Forge Version:    1.6.3-SNAPSHOT-r-1
Operating System: Windows 8.1 6.3 amd64
Java Version:     1.8.0_144 Oracle Corporation

java.lang.NullPointerException
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:95)
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:61)
   at forge.ai.ability.DrawAi.willPayCosts(DrawAi.java:113)
   at forge.ai.SpellAbilityAi.canPlayWithoutRestrict(SpellAbilityAi.java:80)
   at forge.ai.SpellAbilityAi.canPlayAI(SpellAbilityAi.java:53)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:634)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:618)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1142)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1114)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1094)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:951)
   at forge.game.GameAction.startGame(GameAction.java:1565)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)

Re: Bug Reports (snapshot builds)

PostPosted: 25 Aug 2017, 13:34
by Agetian
MaxMtg wrote:Description: [ Opponent played Sunset Pyramid and the game crashed]

NullPointerException | Open
Code: Select all
Forge Version:    1.6.3-SNAPSHOT-r-1
Operating System: Windows 8.1 6.3 amd64
Java Version:     1.8.0_144 Oracle Corporation

java.lang.NullPointerException
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:95)
   at forge.ai.ComputerUtilCost.checkRemoveCounterCost(ComputerUtilCost.java:61)
   at forge.ai.ability.DrawAi.willPayCosts(DrawAi.java:113)
   at forge.ai.SpellAbilityAi.canPlayWithoutRestrict(SpellAbilityAi.java:80)
   at forge.ai.SpellAbilityAi.canPlayAI(SpellAbilityAi.java:53)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:634)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:618)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1142)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1114)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1094)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:951)
   at forge.game.GameAction.startGame(GameAction.java:1565)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
If it's prior to 35217, then it's hopefully fixed in that revision, but if it's past 35217, then I'll take a look and patch it up tonight when I'm home :)

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 26 Aug 2017, 17:15
by kevlahnota
Description: [describe what you were doing when the crash occurred]

Activate Tectonic Edge to destroy opponent non basic land, NPE occurs. Using R35231

NullPointerException | Open
Code: Select all
Forge Version:    1.6.2.001
Operating System: Linux 3.10.84-perf-g44616d6 armv8l
Java Version:     0 The Android Project

java.lang.NullPointerException: Attempt to invoke virtual method 'forge.game.ability.ApiType forge.game.spellability.SpellAbility.getApi()' on a null object reference
   at forge.ai.ComputerUtil.predictThreatenedObjects(ComputerUtil.java:1618)
   at forge.ai.ComputerUtil.predictThreatenedObjects(ComputerUtil.java:1381)
   at forge.ai.ComputerUtil.predictThreatenedObjects(ComputerUtil.java:1351)
   at forge.ai.ability.ChangeZoneAi.canBouncePermanent(ChangeZoneAi.java:1156)
   at forge.ai.ability.ChangeZoneAi.isPreferredTarget(ChangeZoneAi.java:874)
   at forge.ai.ability.ChangeZoneAi.knownOriginTriggerAI(ChangeZoneAi.java:1310)
   at forge.ai.ability.ChangeZoneAi.doTriggerAINoCost(ChangeZoneAi.java:135)
   at forge.ai.SpellAbilityAi.doTriggerNoCostWithSubs(SpellAbilityAi.java:167)
   at forge.ai.SpellAbilityAi.doTriggerAI(SpellAbilityAi.java:162)
   at forge.ai.AiController.doTrigger(AiController.java:1188)
   at forge.ai.ability.CharmAi.chooseMultipleOptionsAi(CharmAi.java:218)
   at forge.ai.ability.CharmAi.checkApiLogic(CharmAi.java:58)
   at forge.ai.SpellAbilityAi.canPlayWithoutRestrict(SpellAbilityAi.java:83)
   at forge.ai.SpellAbilityAi.canPlayAI(SpellAbilityAi.java:53)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:634)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:618)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1142)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1114)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1094)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:951)
   at forge.game.GameAction.startGame(GameAction.java:1565)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
   at java.lang.Thread.run(Thread.java:818)
Screenshot_2017-08-27-01-08-58-111_forge.app.png

Re: Bug Reports (snapshot builds)

PostPosted: 26 Aug 2017, 18:18
by Agetian
@kevlahnota: Thanks! Fixed in r35238. Please retest using that revision, if possible (shouldn't NPE anymore).

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 29 Aug 2017, 21:13
by Bog Wraith
In XLN DB, Admiral Beckett Brass is missing the second "T" in Beckett.

Re: Bug Reports (snapshot builds)

PostPosted: 31 Aug 2017, 18:36
by Seravy
Description: Tried adding an Afterlife to my hand.

Error | Open
Code: Select all
Forge Version:    1.6.3-SNAPSHOT-r35316Mu
Operating System: Windows XP 5.1 x86
Java Version:     1.8.0_131 Oracle Corporation

java.lang.Error: Unresolved compilation problems:
   Cannot refer to the non-final local variable targetZone defined in an enclosing scope
   Cannot refer to the non-final local variable targetZone defined in an enclosing scope
   Cannot refer to the non-final local variable forgeCard defined in an enclosing scope
   Cannot refer to the non-final local variable forgeCard defined in an enclosing scope
   Cannot refer to the non-final local variable forgeCard defined in an enclosing scope
   Cannot refer to the non-final local variable forgeCard defined in an enclosing scope
   Cannot refer to the non-final local variable repeatLast defined in an enclosing scope
   Cannot refer to the non-final local variable forgeCard defined in an enclosing scope
   Cannot refer to the non-final local variable targetZone defined in an enclosing scope

   at forge.player.PlayerControllerHuman$DevModeCheats$6.run(PlayerControllerHuman.java:2157)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)

Re: Bug Reports (snapshot builds)

PostPosted: 31 Aug 2017, 19:15
by Agetian
Tried to fix this upstream.

- Agetian

Re: Bug Reports (snapshot builds)

PostPosted: 01 Sep 2017, 23:11
by tjtillman
r35335

Claim // Fame is mismarked as an instant (should be sorcery)

Re: Bug Reports (snapshot builds)

PostPosted: 03 Sep 2017, 20:30
by Seravy
Description: AI played Spike Warrior

Error | Open
Code: Select all
Forge Version:    1.6.3-SNAPSHOT-r35383Mu
Operating System: Windows XP 5.1 x86
Java Version:     1.8.0_131 Oracle Corporation

java.lang.Error: Unresolved compilation problem:
   Type mismatch: cannot convert from List<capture#1-of ? extends Object> to List<String>

   at forge.ai.ComputerUtilCard.shouldPumpCard(ComputerUtilCard.java:1245)
   at forge.ai.ability.PumpAi.checkApiLogic(PumpAi.java:355)
   at forge.ai.SpellAbilityAi.canPlayWithoutRestrict(SpellAbilityAi.java:83)
   at forge.ai.SpellAbilityAi.canPlayAI(SpellAbilityAi.java:53)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:656)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:640)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1164)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1136)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1116)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:952)
   at forge.game.GameAction.startGame(GameAction.java:1574)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)

Re: Bug Reports (snapshot builds)

PostPosted: 04 Sep 2017, 04:11
by Agetian
Seravy wrote:Description: AI played Spike Warrior

Error | Open
Code: Select all
Forge Version:    1.6.3-SNAPSHOT-r35383Mu
Operating System: Windows XP 5.1 x86
Java Version:     1.8.0_131 Oracle Corporation

java.lang.Error: Unresolved compilation problem:
   Type mismatch: cannot convert from List<capture#1-of ? extends Object> to List<String>

   at forge.ai.ComputerUtilCard.shouldPumpCard(ComputerUtilCard.java:1245)
   at forge.ai.ability.PumpAi.checkApiLogic(PumpAi.java:355)
   at forge.ai.SpellAbilityAi.canPlayWithoutRestrict(SpellAbilityAi.java:83)
   at forge.ai.SpellAbilityAi.canPlayAI(SpellAbilityAi.java:53)
   at forge.ai.SpellAbilityAi.canPlayAIWithSubs(SpellAbilityAi.java:36)
   at forge.ai.AiController.canPlaySa(AiController.java:656)
   at forge.ai.AiController.canPlayAndPayFor(AiController.java:640)
   at forge.ai.AiController.chooseSpellAbilityToPlayFromList(AiController.java:1164)
   at forge.ai.AiController.getSpellAbilityToPlay(AiController.java:1136)
   at forge.ai.AiController.chooseSpellAbilityToPlay(AiController.java:1116)
   at forge.ai.PlayerControllerAi.chooseSpellAbilityToPlay(PlayerControllerAi.java:411)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:952)
   at forge.game.GameAction.startGame(GameAction.java:1574)
   at forge.game.Match.startGame(Match.java:87)
   at forge.match.HostedMatch$2.run(HostedMatch.java:224)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Should be fixed, if I correctly understand what's going on. Please retest using the latest revision :)

- Agetian