It is currently 24 May 2025, 21:55
   
Text Size

Bug Reports (snapshot builds)

Post MTG Forge Related Programming Questions Here

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

Re: Bug Reports (snapshot builds)

Postby Hei » 19 May 2013, 21:39

Using the latest build of OS X - whenever I use Tendrils of Agony, I get two instances of Storm triggers (eg. if I storm for 6, I get the original spell and two storm triggers - storm triggers placing 6 copies on the stack. Once those 6 copies resolve, storm triggers again and places 6 more copies on the stack.
Hei
 
Posts: 4
Joined: 17 May 2013, 08:04
Has thanked: 0 time
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby friarsol » 20 May 2013, 00:31

r21546

The AI cast a spell during his untap phase. I was unable to respond at the time, but now I have priority. This is a whole bunch of wrong.
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 Max mtg » 20 May 2013, 02:17

friarsol wrote:r21546

The AI cast a spell during his untap phase. I was unable to respond at the time, but now I have priority. This is a whole bunch of wrong.
How to reproduce this bug?
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Bug Reports (snapshot builds)

Postby slowe » 20 May 2013, 03:28

Max mtg wrote:
friarsol wrote:r21546

The AI cast a spell during his untap phase. I was unable to respond at the time, but now I have priority. This is a whole bunch of wrong.
How to reproduce this bug?
slowe wrote:I can confirm that the AI will cast spells during its untap step. As no one's supposed to get priority, it resolves immediately and you can't respond. Simple steps to repro: give AI a Doom Blade in hand and enough mana sources in play to cast it, making sure they're tapped. Give yourself a nonblack creature. Pass the turn.
I've also seen AI cast Swords to Plowshares and Naturalize, as well as activate Wasteland, during untap.
If it matters for tracking down the source of the bug, Diogenes mentioned it on the 13th, and I first noticed it r21481.
slowe
 
Posts: 127
Joined: 05 Jan 2010, 14:04
Has thanked: 6 times
Been thanked: 10 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 20 May 2013, 03:29

Max mtg wrote:
friarsol wrote:r21546

The AI cast a spell during his untap phase. I was unable to respond at the time, but now I have priority. This is a whole bunch of wrong.
How to reproduce this bug?
Looks like I can repro with the following:

1) Cheat a Mountain into play for AI using devmode
2) Tap it via devmode
3) Set your life to <=5 (i'd recommend not lower than 4 since the bolt will resolve and you won't be able to see the bolt being cast via the log)
4) Give AI a Lightning Bolt (make sure the land is tapped!) using devmode
5) End your turn.

I'd like to note that when I saw this earlier today, I just had a 2/2 creature and the AI cast some type of destruction spell on it, and devmode was not used at all.
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 Max mtg » 20 May 2013, 08:57

I have r21547: did both tests (lightning bolt and doom blade) - could not reproduce the bug. AI casts its spell during upkeep that seems pretty legal, I also get pass priority prompt.

If that might matter - no autoskip is turned on for any phase on my system. Does the repro depend on that on your systems?
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 20 May 2013, 12:19

Max mtg wrote:If that might matter - no autoskip is turned on for any phase on my system. Does the repro depend on that on your systems?
Could be, I have a bunch of my phases turned off.

I have more than this, but the only relevant ones are probably: My End Turn, Cleanup. AI Upkeep, Draw turned off.
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 Diogenes » 21 May 2013, 09:46

Max mtg wrote:If that might matter - no autoskip is turned on for any phase on my system. Does the repro depend on that on your systems?
I'm not using any auto-skip, just repro'd with today's daily.

I also just checked and the AI does not gain priority during cleanup steps, just untap.
Diogenes
 
Posts: 201
Joined: 12 Jul 2012, 00:54
Has thanked: 39 times
Been thanked: 23 times

Re: Bug Reports (snapshot builds)

Postby JuzamLover » 21 May 2013, 22:29

Description: Everytime a creature from the AI dies in combat, I get this error; I tried to destroy those creatures with a spell or an artifact and they die normally, but whenever I kill a creature with one of my own creatures in combat, this error pops and the game crashes. The last time I got this error, only basic lands, dual lands and Sea Serpent were on the AI's battlefield (Order of the Ebon Hand had recently died in combat); dual lands, Mana Crypt, a 4-counters Clearwater Goblet, Nivmagus Elemental, Nightscape Apprentice, Bloodflow Connoisseur (all of them untapped) and a 16/16 Solarion (tapped and attacking)

EDIT: I was in Gauntlet Mode

EDIT 2: The crash appears in the SVN releases of May 19th, May 20th and also in the last one (May 21st)

NullPointerException | Open
Code: Select all
Forge Version:    1.3.17-SNAPSHOT-r21571
Operating System: Windows XP 5.1 x86
Java Version:     1.7.0_21 Oracle Corporation

java.lang.NullPointerException
   at java.util.TreeMap.getEntry(Unknown Source)
   at java.util.TreeMap.containsKey(Unknown Source)
   at java.util.TreeMap$KeySet.contains(Unknown Source)
   at forge.Card.hasProperty(Card.java:6008)
   at forge.Card.isValid(Card.java:5119)
   at forge.GameEntity.isValid(GameEntity.java:295)
   at forge.card.trigger.TriggerChangesZone.performTest(TriggerChangesZone.java:78)
   at forge.card.trigger.TriggerHandler.canRunTrigger(TriggerHandler.java:298)
   at forge.card.trigger.TriggerHandler.runNonStaticTriggersForPlayer(TriggerHandler.java:258)
   at forge.card.trigger.TriggerHandler.runWaitingTrigger(TriggerHandler.java:229)
   at forge.card.trigger.TriggerHandler.runWaitingTriggers(TriggerHandler.java:184)
   at forge.game.GameAction.checkStateEffects(GameAction.java:1056)
   at forge.game.phase.PhaseHandler.handleBeginPhase(PhaseHandler.java:351)
   at forge.gui.InputProxy$1.run(InputProxy.java:69)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Sengir Clan
{B} The night is ours {B}
User avatar
JuzamLover
 
Posts: 4
Joined: 14 Mar 2011, 04:44
Location: Madrid
Has thanked: 0 time
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby Max mtg » 22 May 2013, 04:12

AI won't get priority during UNTAP. r21577
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 22 May 2013, 08:11

"Death's Presence" does not work as it should with Tokens, for sample if i have an 1/1 Token with an +1/+1 counter and the token dies, "Death's Presence" does only add one counter to the target creature.
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 22 May 2013, 23:37

r21602
When I mulligan in the beginning of the game, the phases shift if they are set to autoskip (I think?)

Additionally, my triggers are automatically resolving in phases I set to autoskip. (Lorescale Coatl)
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 goonjamin » 23 May 2013, 00:23

R21601:

I was trying out Momir Basic and got the following error when I tried to get a cmc = 13 creature (I meant to only tap 12 but that isn't really important). I bet this fails because there are no cmc = 13 creatures but it would be nice if you got a message rather than a crash report. Also once dismissing the crash report the game is waiting for input and you cannot continue. I had to force quit forge and restart.

BTW, nice job on Momir Basic! If the AI can learn to hold onto lands so they can play creatures later in the game this will be perfect.

Code: Select all
Description: [describe what you were doing when the crash occurred]

[spoiler=NullPointerException][code]
Forge Version:    1.3.17-SNAPSHOT-r21601
Operating System: Windows 7 6.1 x86
Java Version:     1.6.0_35 Sun Microsystems Inc.

java.lang.NullPointerException
   at forge.card.ability.effects.ChooseCardNameEffect.resolve(ChooseCardNameEffect.java:77)
   at forge.card.ability.AbilityApiBased.resolve(AbilityApiBased.java:62)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1057)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1034)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:613)
   at forge.game.phase.PhaseHandler$1.run(PhaseHandler.java:748)
   at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:756)
   at forge.game.player.PlayerController.passPriority(PlayerController.java:76)
   at forge.game.ai.AiController.onPriorityRecieved(AiController.java:850)
   at forge.game.ai.AiInputCommon$1.run(AiInputCommon.java:73)
   at forge.control.input.InputQueue$1.run(InputQueue.java:222)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
[/code][/spoiler]
goonjamin
 
Posts: 133
Joined: 19 Aug 2010, 19:51
Has thanked: 39 times
Been thanked: 5 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 23 May 2013, 00:46

goonjamin wrote:R21601:

I was trying out Momir Basic and got the following error when I tried to get a cmc = 13 creature (I meant to only tap 12 but that isn't really important). I bet this fails because there are no cmc = 13 creatures but it would be nice if you got a message rather than a crash report. Also once dismissing the crash report the game is waiting for input and you cannot continue. I had to force quit forge and restart.
Should be fixed now.
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 friarsol » 23 May 2013, 02:13

r21605

Description: Clicking through the cards I own in my deck quest editor. Since I just selected this row, I repeatedly get this crash until I exit.

IllegalStateException | Open
Code: Select all
Forge Version:    SVN
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_21 Oracle Corporation

java.lang.IllegalStateException: Card Thromok the Insatiable (352) has no means to determine the game it belongs to!
   at forge.Card.getGame(Card.java:8308)
   at forge.card.cardfactory.CardFactoryUtil.parseKeywords(CardFactoryUtil.java:3158)
   at forge.card.cardfactory.CardFactory.buildAbilities(CardFactory.java:280)
   at forge.card.cardfactory.CardFactory.getCard(CardFactory.java:233)
   at forge.item.CardPrinted.toForgeCard(CardPrinted.java:249)
   at forge.item.CardPrinted.getMatchingForgeCard(CardPrinted.java:238)
   at forge.gui.match.controllers.CDetail.showCard(CDetail.java:55)
   at forge.gui.deckeditor.CDeckEditorUI.setCard(CDeckEditorUI.java:87)
   at forge.gui.deckeditor.tables.EditorTableModel.showSelectedCard(EditorTableModel.java:193)
   at forge.gui.deckeditor.tables.EditorTableModel$1.valueChanged(EditorTableModel.java:208)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:184)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:164)
   at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:211)
   at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:405)
   at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:415)
   at javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionModel.java:459)
   at javax.swing.JTable.changeSelectionModel(JTable.java:2388)
   at javax.swing.JTable.changeSelection(JTable.java:2457)
   at javax.swing.plaf.basic.BasicTableUI$Actions.actionPerformed(BasicTableUI.java:559)
   at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1664)
   at javax.swing.JComponent.processKeyBinding(JComponent.java:2879)
   at javax.swing.JTable.processKeyBinding(JTable.java:5258)
   at javax.swing.JComponent.processKeyBindings(JComponent.java:2940)
   at javax.swing.JComponent.processKeyEvent(JComponent.java:2842)
   at java.awt.Component.processEvent(Component.java:6282)
   at java.awt.Container.processEvent(Container.java:2229)
   at java.awt.Component.dispatchEventImpl(Component.java:4861)
   at java.awt.Container.dispatchEventImpl(Container.java:2287)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:762)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1027)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:899)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:727)
   at java.awt.Component.dispatchEventImpl(Component.java:4731)
   at java.awt.Container.dispatchEventImpl(Container.java:2287)
   at java.awt.Window.dispatchEventImpl(Window.java:2719)
   at java.awt.Component.dispatchEvent(Component.java:4687)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:729)
   at java.awt.EventQueue.access$200(EventQueue.java:103)
   at java.awt.EventQueue$3.run(EventQueue.java:688)
   at java.awt.EventQueue$3.run(EventQueue.java:686)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
   at java.awt.EventQueue$4.run(EventQueue.java:702)
   at java.awt.EventQueue$4.run(EventQueue.java:700)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:699)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 30 guests


Who is online

In total there are 30 users online :: 0 registered, 0 hidden and 30 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 30 guests

Login Form