It is currently 10 Nov 2025, 14:07
   
Text Size

Bug Reports (snapshot builds)

Post MTG Forge Related Programming Questions Here

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

Re: Bug Reports (snapshot builds)

Postby Bog Wraith » 04 Feb 2016, 20:36

It had been awhile since I last played with a Shared Fate in play, but with tomorrows Pro Tour OGW being a Draft & Modern format, I wanted to test my Shared Fate deck to see if the bug that crashed the game repeatedly earlier had been squashed. I used the same deck that I had previously posted in an earlier bug report in this thread.

I was able to play a bit, but the same kind of crash occurred once again when I attempted to cast the A.I's exiled card Jeskai Charm, using my Exotic Orchard to pay for the red mana cost of it when the crash happened:

RuntimeException | Open
Code: Select all
Forge Version:    1.5.49-SNAPSHOT-r30806
Operating System: Mac OS X 10.10.5 x86_64
Java Version:     1.8.0_71 Oracle Corporation

java.lang.RuntimeException: AbilityFactory : getAbility -- no API in :
   at forge.game.ability.AbilityFactory.getAbility(AbilityFactory.java:106)
   at forge.game.ability.effects.CharmEffect.makePossibleOptions(CharmEffect.java:39)
   at forge.player.PlayerControllerHuman.chooseModeForAbility(PlayerControllerHuman.java:1086)
   at forge.game.ability.effects.CharmEffect.makeChoices(CharmEffect.java:82)
   at forge.player.HumanPlay.playSpellAbility(HumanPlay.java:101)
   at forge.player.PlayerControllerHuman.playChosenSpellAbility(PlayerControllerHuman.java:938)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:957)
   at forge.game.GameAction.startGame(GameAction.java:1479)
   at forge.game.Match.startGame(Match.java:96)
   at forge.match.HostedMatch$2.run(HostedMatch.java:220)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   at java.lang.Thread.run(Thread.java:745)
Attachments
Shared Fate Deck.jpg
Shared Fate Kaboom!
'Twas in the bogs of Cannelbrae
My mate did meet an early grave
'Twas nothing left for us to save
In the peat-filled bogs of Cannelbrae.
User avatar
Bog Wraith
Global Mod 1 (Ret)
 
Posts: 1108
Joined: 28 May 2008, 22:40
Location: Shandalar
Has thanked: 425 times
Been thanked: 153 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 04 Feb 2016, 20:43

Bog Wraith wrote:I was able to play a bit, but the same kind of crash occurred once again when I attempted to cast the A.I's exiled card Jeskai Charm, using my Exotic Orchard to pay for the red mana cost of it when the crash happened:
Ah thanks for the reminder. I meant to take a look but then OGW came out and absorbed all of my time with adding colorless mana.

Edit: Do you have the deck you were playing against handy?
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby Bog Wraith » 05 Feb 2016, 04:35

The deck I'm playing against is a Standard deck, but the same type of crashes happened when I played a number of Modern decks as well. I'm sure that doesn't matter, but I just wanted to mention it.

It's a Jeskai deck by Ryoichi Tamada that he played at Pro Tour BFZ.
Attachments
Jeskai_Ryoichi Tamada-PTBFZ.dck.zip
Jeskai_Standard
(637 Bytes) Downloaded 219 times
'Twas in the bogs of Cannelbrae
My mate did meet an early grave
'Twas nothing left for us to save
In the peat-filled bogs of Cannelbrae.
User avatar
Bog Wraith
Global Mod 1 (Ret)
 
Posts: 1108
Joined: 28 May 2008, 22:40
Location: Shandalar
Has thanked: 425 times
Been thanked: 153 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 05 Feb 2016, 17:53

I'm not sure if this is correct or not (but I think it's not): Yasova Dragonclaw asks you to specify the target first, then asks to pay the mana. This results in the following side effect: if you target a creature that has a trigger on it (e.g. the one that says "when this creature becomes a target of an ability, sacrifice it"), then the trigger fires and the creature gets sacrificed even if you don't pay the mana.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 05 Feb 2016, 19:05

Agetian wrote:I'm not sure if this is correct or not (but I think it's not): Yasova Dragonclaw asks you to specify the target first, then asks to pay the mana. This results in the following side effect: if you target a creature that has a trigger on it (e.g. the one that says "when this creature becomes a target of an ability, sacrifice it"), then the trigger fires and the creature gets sacrificed even if you don't pay the mana.

- Agetian
Yes it's right. To be added to the stack all SAs and Triggers need their targets assigned. If this happens to do something to a Phantom creature, well that's too bad and the Trigger will just fizzle.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 05 Feb 2016, 19:51

Oh, very interesting! :) Thanks a lot for the clarification, Sol!

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 06 Feb 2016, 17:06

r30809: A hard crash (NPE) happens every time the AI tries to attack with Tromokratis, it's impossible to continue playing after this NPE and the only way out is to restart Forge. Couldn't figure out a way to fix this (the attacking band appears to be null at the time it's queried, but I'm not sure how to best approach fixing this issue since I'm not very well-versed in combat code...).

NullPointerException | Open
Code: Select all
Forge Version:    SVN
Operating System: Linux 3.8.0-26-generic amd64
Java Version:     1.7.0_51 Oracle Corporation

java.lang.NullPointerException
   at forge.game.combat.CombatUtil.canAttackerBeBlockedWithAmount(CombatUtil.java:1017)
   at forge.ai.AiAttackController.shouldAttack(AiAttackController.java:989)
   at forge.ai.AiAttackController.declareAttackers(AiAttackController.java:818)
   at forge.ai.AiController.declareAttackers(AiController.java:1228)
   at forge.ai.PlayerControllerAi.declareAttackers(PlayerControllerAi.java:387)
   at forge.game.phase.PhaseHandler.declareAttackersTurnBasedAction(PhaseHandler.java:474)
   at forge.game.phase.PhaseHandler.onPhaseBegin(PhaseHandler.java:269)
   at forge.game.phase.PhaseHandler.startFirstTurn(PhaseHandler.java:1000)
   at forge.game.GameAction.startGame(GameAction.java:1479)
   at forge.game.Match.startGame(Match.java:96)
   at forge.match.HostedMatch$2.run(HostedMatch.java:220)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
   at java.lang.Thread.run(Thread.java:744)
EDIT: In r30810, I implemented a NPE prevention mechanism that at least makes the game stop hard-crashing in an unrecoverable way. However, the problem is not truly fixed, a better fix is necessary in that location. Please take a look if you think you know how to correct this.

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby ndlarsen » 07 Feb 2016, 10:22

Description: Playing the 3rd EDH game in a row. Sluggish game behavior started (or at least got noticable) during the second game.

OutOfMemoryError | Open
Code: Select all
Forge Version:    1.5.49-SNAPSHOT-r30804
Operating System: Windows 7 6.1 amd64
Java Version:     1.8.0_71 Oracle Corporation

java.lang.OutOfMemoryError: GC overhead limit exceeded
   at java.nio.HeapCharBuffer.<init>(Unknown Source)
   at java.nio.CharBuffer.allocate(Unknown Source)
   at sun.net.www.ParseUtil.decode(Unknown Source)
   at sun.net.www.protocol.file.Handler.openConnection(Unknown Source)
   at sun.net.www.protocol.file.Handler.openConnection(Unknown Source)
   at java.net.URL.openConnection(Unknown Source)
   at sun.net.www.protocol.jar.JarFileFactory.getConnection(Unknown Source)
   at sun.net.www.protocol.jar.JarFileFactory.getPermission(Unknown Source)
   at sun.net.www.protocol.jar.JarFileFactory.getCachedJarFile(Unknown Source)
   at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source)
   at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
   at sun.net.www.protocol.jar.JarURLConnection.getInputStream(Unknown Source)
   at java.net.URL.openStream(Unknown Source)
   at java.lang.ClassLoader.getSystemResourceAsStream(Unknown Source)
   at java.lang.Class.getResourceAsStream(Unknown Source)
   at sun.util.locale.provider.RuleBasedBreakIterator$1.run(Unknown Source)
   at sun.util.locale.provider.RuleBasedBreakIterator$1.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at sun.util.locale.provider.RuleBasedBreakIterator.readFile(Unknown Source)
   at sun.util.locale.provider.RuleBasedBreakIterator.readTables(Unknown Source)
   at sun.util.locale.provider.RuleBasedBreakIterator.<init>(Unknown Source)
   at sun.util.locale.provider.BreakIteratorProviderImpl.getBreakInstance(Unknown Source)
   at sun.util.locale.provider.BreakIteratorProviderImpl.getLineInstance(Unknown Source)
   at java.text.BreakIterator.createBreakInstance(Unknown Source)
   at java.text.BreakIterator.createBreakInstance(Unknown Source)
   at java.text.BreakIterator.getBreakInstance(Unknown Source)
   at java.text.BreakIterator.getLineInstance(Unknown Source)
   at javax.swing.text.GlyphView.getBreaker(Unknown Source)
   at javax.swing.text.GlyphView.getBreakSpot(Unknown Source)
   at javax.swing.text.GlyphView.getBreakWeight(Unknown Source)
   at javax.swing.text.html.InlineView.getBreakWeight(Unknown Source)
   at javax.swing.text.FlowView$LogicalView.getPreferredSpan(Unknown Source)
ndlarsen
 
Posts: 23
Joined: 12 Sep 2013, 12:43
Has thanked: 4 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby ndlarsen » 07 Feb 2016, 10:51

1.5.49-SNAPSHOT-r30804

Meteor Blast prompts you to select up to 3 creatures and/or players with no regard to the amount of mana spent on X.
ndlarsen
 
Posts: 23
Joined: 12 Sep 2013, 12:43
Has thanked: 4 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby Agetian » 07 Feb 2016, 11:52

ndlarsen wrote:1.5.49-SNAPSHOT-r30804

Meteor Blast prompts you to select up to 3 creatures and/or players with no regard to the amount of mana spent on X.
Fixed (r30829).

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 07 Feb 2016, 19:14

Lavaball Trap seems to be broken ... the AI does play it for it cheaper cost, but i didnt play two lands this turn
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby tjtillman » 09 Feb 2016, 17:11

Saw in revision 30849 that Ondu War Cleric removed from AI decks.

There were some other Cohort cards that were removed as well for using the cohort ability sub-optimally (for example, tapping Drana's Chosen pre-blocks).

However, I'm not sure why Ondu War Cleric was removed. In the playtesting I was able to get in, the AI would leave it untapped until the end of the AI's opponent's turn or right after the War Cleric is declared as a blocker, which is generally how you'd want to AI to use it. I'm not saying there may be some other facet to why Ondu War Cleric was removed from AI decks, really just curious as to why it was though.
tjtillman
 
Posts: 202
Joined: 16 Sep 2013, 17:47
Has thanked: 0 time
Been thanked: 2 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 09 Feb 2016, 17:16

in v.1.5.49 s30850, Haven of the Spirit Dragon does not work for me. I have in my graveyard Shieldhide Dragon, I want to sacrifice it to return the creature to my hand but won't let me... it does nothing though I have the mana to pay the cost...
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 09 Feb 2016, 17:52

fmartel wrote:in v.1.5.49 s30850, Haven of the Spirit Dragon does not work for me. I have in my graveyard Shieldhide Dragon, I want to sacrifice it to return the creature to my hand but won't let me... it does nothing though I have the mana to pay the cost...
Works fine for me. What else is in play?
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 09 Feb 2016, 18:42

friarsol wrote:
fmartel wrote:in v.1.5.49 s30850, Haven of the Spirit Dragon does not work for me. I have in my graveyard Shieldhide Dragon, I want to sacrifice it to return the creature to my hand but won't let me... it does nothing though I have the mana to pay the cost...
Works fine for me. What else is in play?
Image
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: Terrylen and 44 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 45 users online :: 1 registered, 0 hidden and 44 guests (based on users active over the past 10 minutes)
Most users ever online was 9824 on 10 Nov 2025, 04:33

Users browsing this forum: Terrylen and 44 guests

Login Form