It is currently 25 May 2025, 02:21
   
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 myk » 23 Feb 2013, 15:48

Max mtg wrote:It's interesting to know where the focus is set by default as application starts.

WTR: Start Forge (contructed mode window shows up), Press ENTER -> The window closes (though I expected a match to start)
Yeah, it's one of my next tasks to go through and set focus properly for each screen and dialog. I've already done the Duels page to work like that (focus starts on the first duel in the list, enter starts the match).
myk
 
Posts: 439
Joined: 17 Jan 2013, 02:39
Location: California
Has thanked: 38 times
Been thanked: 57 times

Re: Bug Reports (snapshot builds)

Postby Max mtg » 23 Feb 2013, 21:28

I am able to transform a card on battlefield by clicking that 'flip' button over CardDetailPanel.
Was probably introduced in 19842

Backside of doublefaced card also didn't have a picture (but that's definitelly my own issue)
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 moomarc » 24 Feb 2013, 07:44

Max mtg wrote:I am able to transform a card on battlefield by clicking that 'flip' button over CardDetailPanel.
Was probably introduced in 19842
This bug has actually been around since the flip action was first introduced. Not only does it flip the card, it also triggers any Transform triggers.
-Marc
User avatar
moomarc
Pixel Commander
 
Posts: 2091
Joined: 04 Jun 2010, 15:22
Location: Johannesburg, South Africa
Has thanked: 371 times
Been thanked: 372 times

Re: Bug Reports (snapshot builds)

Postby Max mtg » 24 Feb 2013, 08:18

Ahh... it's doublestrike's.
Fixed the flips by myself in 19853
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 Max mtg » 24 Feb 2013, 09:20

Backside picture fixed. 19858

I'll go somewhere out, looks like I am the only one who has left here.
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 Agetian » 24 Feb 2013, 18:13

It seems that in r19859, you can play as many lands per turn as you only have in your hand. - not a bug

- Agetian
Last edited by Agetian on 24 Feb 2013, 18:37, edited 1 time in total.
Agetian
Programmer
 
Posts: 3486
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 569 times

Re: Bug Reports (snapshot builds)

Postby Max mtg » 24 Feb 2013, 18:20

Agetian wrote:It seems that in r19859, you can play as many lands per turn as you only have in your hand.

- Agetian
Have you disabled developer mode?
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 Agetian » 24 Feb 2013, 18:32

Umm no, I wasn't aware that it was allowing me to play multiple lands per turn though. :) Did it always do that or is it a new thing? It's very handy by the way, just came unexpected on me. :D

- Agetian
Agetian
Programmer
 
Posts: 3486
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 569 times

Re: Bug Reports (snapshot builds)

Postby timmermac » 25 Feb 2013, 14:00

It's done it before. Occasionally when a snapshot/beta got released, the play unlimited lands feature in developer mode was left on by accident. It was turned off for a while, but it seems to have snuck itself back on again.
"I just woke up, haven't had coffee, let alone a pee in 7 days, and I find out you stole my ass and made a ...mini-me! Carter, I should be irked currently, yes?" - Jack O'Neill
User avatar
timmermac
Tester
 
Posts: 1512
Joined: 17 May 2010, 20:36
Has thanked: 18 times
Been thanked: 95 times

Re: Bug Reports (snapshot builds)

Postby myk » 25 Feb 2013, 23:04

I was fighting the Backlash Machine and used a Paraselene to destroy both his Privileged Position enchantments and his Sanguine Bond, yet I gained 0 life instead of 3
myk
 
Posts: 439
Joined: 17 Jan 2013, 02:39
Location: California
Has thanked: 38 times
Been thanked: 57 times

Re: Bug Reports (snapshot builds)

Postby myk » 26 Feb 2013, 00:07

infinte loop in PlayerController, triggered when a Nearheath Pilgrim entered the battlefield and tried to target a creature for lifelink soulbonding:

StackOverflowError | Open
Code: Select all
Forge Version:    1.3.9-SNAPSHOT-r19879M
Operating System: Linux 3.6.11-gentoo amd64
Java Version:     1.6.0_24 Sun Microsystems Inc.

java.lang.StackOverflowError
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
        ...
myk
 
Posts: 439
Joined: 17 Jan 2013, 02:39
Location: California
Has thanked: 38 times
Been thanked: 57 times

Re: Bug Reports (snapshot builds)

Postby Max mtg » 26 Feb 2013, 04:54

myk wrote:infinte loop in PlayerController, triggered when a Nearheath Pilgrim entered the battlefield and tried to target a creature for lifelink soulbonding:

StackOverflowError | Open
Code: Select all
Forge Version:    1.3.9-SNAPSHOT-r19879M
Operating System: Linux 3.6.11-gentoo amd64
Java Version:     1.6.0_24 Sun Microsystems Inc.

java.lang.StackOverflowError
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
   at forge.game.player.PlayerController.chooseSingleCardForEffect(PlayerController.java:95)
        ...
That's very awful! I am very guilty for that endless recusion - it should have called a different overload - as commited in r19885
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 swordshine » 26 Feb 2013, 15:32

Are cards like Annihilating Fire not compatible with damage prevention effects?
swordshine
 
Posts: 682
Joined: 11 Jul 2010, 02:37
Has thanked: 116 times
Been thanked: 87 times

Re: Bug Reports (snapshot builds)

Postby myk » 27 Feb 2013, 09:08

Description: exception while fighting Hobbes in the main quest world. Hobbes had just activated the Bazaar of Baghdad and brought a Narcomoeba in from the graveyard. Screenshot and game log attached.

IndexOutOfBoundsException | Open
Code: Select all
Forge Version:    1.3.9-SNAPSHOT-r19905u
Operating System: Mac OS X 10.8.2 x86_64
Java Version:     1.6.0_37 Apple Inc.

java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
   at java.util.ArrayList.RangeCheck(ArrayList.java:547)
   at java.util.ArrayList.get(ArrayList.java:322)
   at forge.game.ai.ComputerUtil.chooseSacrificeType(ComputerUtil.java:443)
   at forge.card.cost.CostSacrifice.decideAIPayment(CostSacrifice.java:218)
   at forge.card.cost.CostPayment.payComputerCosts(CostPayment.java:304)
   at forge.game.ai.ComputerUtil.handlePlayingSpellAbility(ComputerUtil.java:115)
   at forge.game.ai.AiInputCommon.playSpellAbilities(AiInputCommon.java:164)
   at forge.game.ai.AiInputCommon.showMessage(AiInputCommon.java:106)
   at forge.gui.GuiInput.setInput(GuiInput.java:71)
   at forge.gui.GuiInput.update(GuiInput.java:54)
   at java.util.Observable.notifyObservers(Observable.java:142)
   at java.util.Observable.notifyObservers(Observable.java:98)
   at forge.util.MyObservable.updateObservers(MyObservable.java:38)
   at forge.game.zone.MagicStack.finishResolving(MagicStack.java:996)
   at forge.card.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1004)
   at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1196)
   at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:995)
   at forge.game.zone.MagicStack.resolveStack(MagicStack.java:844)
   at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:735)
   at forge.game.player.PlayerController.passPriority(PlayerController.java:70)
   at forge.control.input.InputPassPriority.selectButtonOK(InputPassPriority.java:77)
   at forge.gui.GuiInput.selectButtonOK(GuiInput.java:80)
   at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:57)
   at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
   at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)
   at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
   at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
   at javax.swing.AbstractButton.doClick(AbstractButton.java:389)
   at javax.swing.AbstractButton.doClick(AbstractButton.java:337)
   at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:87)
   at java.awt.Component.processKeyEvent(Component.java:6340)
   at javax.swing.JComponent.processKeyEvent(JComponent.java:2809)
   at java.awt.Component.processEvent(Component.java:6159)
   at java.awt.Container.processEvent(Container.java:2083)
   at java.awt.Component.dispatchEventImpl(Component.java:4744)
   at java.awt.Container.dispatchEventImpl(Container.java:2141)
   at java.awt.Component.dispatchEvent(Component.java:4572)
   at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1856)
   at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:722)
   at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1000)
   at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:865)
   at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:686)
   at java.awt.Component.dispatchEventImpl(Component.java:4616)
   at java.awt.Container.dispatchEventImpl(Container.java:2141)
   at java.awt.Window.dispatchEventImpl(Window.java:2489)
   at java.awt.Component.dispatchEvent(Component.java:4572)
   at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:704)
   at java.awt.EventQueue.access$400(EventQueue.java:82)
   at java.awt.EventQueue$2.run(EventQueue.java:663)
   at java.awt.EventQueue$2.run(EventQueue.java:661)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
   at java.awt.EventQueue$3.run(EventQueue.java:677)
   at java.awt.EventQueue$3.run(EventQueue.java:675)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
   at java.awt.EventQueue.dispatchEvent(EventQueue.java:674)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
   at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
   at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
   at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
game log | Open
Final: Won: 1, Lost: 1
Final: You have conceded
Final: Hobbes has won because all opponents have lost
Final: You Lost
ResolveStack: When Narcomoeba is put into your graveyard from your library, you may put it onto the battlefield.
AddToStack: Hobbes activated Narcomoeba (10).
ResolveStack: Bazaar of Baghdad (45) - Hobbes draws (2). Hobbes discards (3).
AddToStack: Hobbes activated Bazaar of Baghdad (45).
ResolveStack: When Narcomoeba is put into your graveyard from your library, you may put it onto the battlefield.
AddToStack: Hobbes activated Narcomoeba (12).
ResolveStack: Careful Study (34) - Hobbes draws (2). Hobbes discards (2).
AddToStack: Hobbes cast Careful Study (34).
Phase: Hobbes Main2
Phase: Hobbes EndCombat
Phase: Hobbes Combat Damage
Phase: Hobbes First Strike Damage
Phase: Hobbes Declare Blockers - Play Instants and Abilities
Phase: Hobbes Declare Blockers
Phase: Hobbes Declare Attackers - Play Instants and Abilities
Phase: Hobbes Declare Attackers
Phase: Hobbes BeginCombat
Phase: Hobbes Main1
Phase: Hobbes Draw
Phase: Hobbes Upkeep
Turn: Turn 9 (Hobbes)
Phase: Hobbes Untap
Phase: Human Cleanup
ResolveStack: Bazaar of Baghdad (45) - Hobbes draws (2). Hobbes discards (3).
AddToStack: Hobbes activated Bazaar of Baghdad (45).
Phase: Human End of Turn
Phase: Human Main2
Phase: Human EndCombat
Phase: Human Combat Damage
Damage: Dealing 3 damage to Hobbes.
Phase: Human First Strike Damage
Combat: Hobbes assigned <nothing> to block Wolf Pet (64).
Phase: Human Declare Blockers - Play Instants and Abilities
Phase: Human Declare Blockers
Combat: Human declared Wolf Pet (64) attacking Hobbes.
Phase: Human Declare Attackers - Play Instants and Abilities
Phase: Human Declare Attackers
Phase: Human BeginCombat
ResolveStack: Whenever an Angel enters the battlefield under your control, you gain 1 life.
AddToStack: Human activated Seraph Sanctuary (120).
ResolveStack: Firemane Avenger - Creature 3 / 3
AddToStack: Human cast Firemane Avenger (113).
Mana: Seraph Sanctuary (120) - Tap: Add 1 to your mana pool.
Mana: Cavern of Souls (66) - Tap: Add one mana of any color to your mana pool. Spend this mana only to cast a creature spell of the chosen type, and that spell can't be countered.
Mana: Clifftop Retreat (85) - Tap: Add R to your mana pool.
Mana: Plains (101) - Tap: Add W to your mana pool.
ResolveStack: When Seraph Sanctuary enters the battlefield, you gain 1 life.
AddToStack: Human activated Seraph Sanctuary (120).
Land: Human played Seraph Sanctuary (120)
Phase: Human Main1
Phase: Human Draw
Phase: Human Upkeep
Turn: Turn 8 (Human)
Phase: Human Untap
Phase: Hobbes Cleanup
ResolveStack: Plant Wall (62) - Human gains 1 life.
AddToStack: Human activated Plant Wall (62).
Phase: Hobbes End of Turn
Phase: Hobbes Main2
Phase: Hobbes EndCombat
Phase: Hobbes Combat Damage
Phase: Hobbes First Strike Damage
Phase: Hobbes Declare Blockers - Play Instants and Abilities
Phase: Hobbes Declare Blockers
Phase: Hobbes Declare Attackers - Play Instants and Abilities
Phase: Hobbes Declare Attackers
Phase: Hobbes BeginCombat
ResolveStack: Landfall - Whenever a land enters the battlefield under your control, you may return Bloodghast from your graveyard to the battlefield.
AddToStack: Hobbes activated Bloodghast (6).
Land: Hobbes played Tropical Island (24)
Phase: Hobbes Main1
Phase: Hobbes Draw
Phase: Hobbes Upkeep
Turn: Turn 7 (Hobbes)
Phase: Hobbes Untap
Phase: Human Cleanup
ResolveStack: Bazaar of Baghdad (45) - Hobbes draws (2). Hobbes discards (3).
AddToStack: Hobbes activated Bazaar of Baghdad (45).
Phase: Human End of Turn
Phase: Human Main2
Phase: Human EndCombat
Phase: Human Combat Damage
Damage: Dealing 3 damage to Hobbes.
Phase: Human First Strike Damage
Combat: Hobbes assigned <nothing> to block Wolf Pet (64).
Phase: Human Declare Blockers - Play Instants and Abilities
Phase: Human Declare Blockers
Combat: Human declared Wolf Pet (64) attacking Hobbes.
Phase: Human Declare Attackers - Play Instants and Abilities
Phase: Human Declare Attackers
Phase: Human BeginCombat
ResolveStack: Skyblinder Staff (121) - Attach to Wolf Pet (64)
AddToStack: Human activated Skyblinder Staff (121) targeting Wolf Pet (64) .
Mana: Cavern of Souls (66) - Tap: Add 1 to your mana pool.
Mana: Clifftop Retreat (85) - Tap: Add R to your mana pool.
Mana: Plains (101) - Tap: Add W to your mana pool.
Land: Human played Cavern of Souls (66)
ReplacementEffect: As CARDNAME enters the battlefield, choose a creature type.
Phase: Human Main1
Phase: Human Draw
Phase: Human Upkeep
Turn: Turn 6 (Human)
Phase: Human Untap
Phase: Hobbes Cleanup
ResolveStack: Plant Wall (62) - Human gains 1 life.
AddToStack: Human activated Plant Wall (62).
Phase: Hobbes End of Turn
Phase: Hobbes Main2
Phase: Hobbes EndCombat
Phase: Hobbes Combat Damage
Phase: Hobbes First Strike Damage
Phase: Hobbes Declare Blockers - Play Instants and Abilities
Phase: Hobbes Declare Blockers
Phase: Hobbes Declare Attackers - Play Instants and Abilities
Phase: Hobbes Declare Attackers
Phase: Hobbes BeginCombat
Land: Hobbes played Tropical Island (23)
Phase: Hobbes Main1
Phase: Hobbes Draw
Phase: Hobbes Upkeep
Turn: Turn 5 (Hobbes)
Phase: Hobbes Untap
Phase: Human Cleanup
ResolveStack: Bazaar of Baghdad (45) - Hobbes draws (2). Hobbes discards (3).
AddToStack: Hobbes activated Bazaar of Baghdad (45).
Phase: Human End of Turn
Phase: Human Main2
Phase: Human EndCombat
Phase: Human Combat Damage
Damage: Dealing 2 damage to Hobbes.
Phase: Human First Strike Damage
Combat: Hobbes assigned <nothing> to block Wolf Pet (64).
Phase: Human Declare Blockers - Play Instants and Abilities
Phase: Human Declare Blockers
Combat: Human declared Wolf Pet (64) attacking Hobbes.
Phase: Human Declare Attackers - Play Instants and Abilities
Phase: Human Declare Attackers
Phase: Human BeginCombat
Land: Human played Clifftop Retreat (85)
Phase: Human Main1
Phase: Human Draw
Phase: Human Upkeep
Turn: Turn 4 (Human)
Phase: Human Untap
Phase: Hobbes Cleanup
Phase: Hobbes End of Turn
Phase: Hobbes Main2
Phase: Hobbes EndCombat
Phase: Hobbes Combat Damage
Phase: Hobbes First Strike Damage
Phase: Hobbes Declare Blockers - Play Instants and Abilities
Phase: Hobbes Declare Blockers
Phase: Hobbes Declare Attackers - Play Instants and Abilities
Phase: Hobbes Declare Attackers
Phase: Hobbes BeginCombat
Land: Hobbes played Bazaar of Baghdad (45)
Phase: Hobbes Main1
Phase: Hobbes Draw
Phase: Hobbes Upkeep
Turn: Turn 3 (Hobbes)
Phase: Hobbes Untap
Phase: Human Cleanup
Phase: Human End of Turn
Phase: Human Main2
Phase: Human EndCombat
Phase: Human Combat Damage
Phase: Human First Strike Damage
Phase: Human Declare Blockers - Play Instants and Abilities
Phase: Human Declare Blockers
Phase: Human Declare Attackers - Play Instants and Abilities
Phase: Human Declare Attackers
Phase: Human BeginCombat
ResolveStack: Skyblinder Staff
AddToStack: Human cast Skyblinder Staff (121).
Mana: Plains (101) - Tap: Add W to your mana pool.
Land: Human played Plains (101)
Phase: Human Main1
Phase: Human Draw
Phase: Human Upkeep
Turn: Turn 2 (Human)
Phase: Human Untap
Phase: Hobbes Cleanup
Phase: Hobbes End of Turn
Phase: Hobbes Main2
Phase: Hobbes EndCombat
Phase: Hobbes Combat Damage
Phase: Hobbes First Strike Damage
Phase: Hobbes Declare Blockers - Play Instants and Abilities
Phase: Hobbes Declare Blockers
Phase: Hobbes Declare Attackers - Play Instants and Abilities
Phase: Hobbes Declare Attackers
Phase: Hobbes BeginCombat
Land: Hobbes played Tropical Island (22)
Phase: Hobbes Main1
Phase: Hobbes Draw
Phase: Hobbes Upkeep
Turn: Turn 1 (Hobbes)
Phase: Hobbes Untap
Mulligan: Hobbes has mulliganed down to 5 cards.
Mulligan: Hobbes has mulliganed down to 6 cards.

Screen Shot 2013-02-27 at 1.08.35 am.png
myk
 
Posts: 439
Joined: 17 Jan 2013, 02:39
Location: California
Has thanked: 38 times
Been thanked: 57 times

Re: Bug Reports (snapshot builds)

Postby Max mtg » 27 Feb 2013, 10:04

Could not understand how that method should work. =(

Line number that generated exception is now 441
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: Google [Bot] and 43 guests


Who is online

In total there are 44 users online :: 1 registered, 0 hidden and 43 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: Google [Bot] and 43 guests

Login Form