Bug Reports (snapshot builds)
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Bug Reports (snapshot builds)
by Max mtg » 15 May 2013, 03:57
The spell ability always has activatingPlayer field... so if it didn't work properly - does it turn out that AI at certain times writes to this field?Sloth wrote:@Max: It looks like you've removed the activatingPlayer variable of SpellAbilityStackInstances in r21468. How should the game know who activated the spell or ability later?slowe wrote:Another weird bug: whenever I use any Deathrite Shaman ability, AI gets the benefit (I haven't tried against multiple opponents; not sure what would happen). Interestingly, the stack description correctly says who will gain/lose life or add mana. I've checked, and it doesn't matter whose cards are exiled.
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)
by friarsol » 15 May 2013, 12:07
The SpellAbility is what is on the card and what is activated. The SAStackInstance is what actual choices are made for each activation of a SA. Since the original SA is always reused (by you and the AI), we needed a different object to maintain the choices made by objects on the stack.Max mtg wrote:The spell ability always has activatingPlayer field... so if it didn't work properly - does it turn out that AI at certain times writes to this field?
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Bug Reports (snapshot builds)
by swordshine » 15 May 2013, 12:44
r21486, "T:Mode$ SpellCast | ValidCard$ Card.Self" still triggers twice (Emrakul, Kozilek, etc.)
- swordshine
- Posts: 682
- Joined: 11 Jul 2010, 02:37
- Has thanked: 116 times
- Been thanked: 87 times
Re: Bug Reports (snapshot builds)
by Diogenes » 15 May 2013, 15:14
Another UI issue: the counterspell targeting window lists all the valid targets by their effect, but you can't see which effect belongs to which card/spell (you can suss it out by their order in case of very similar effects, like in a counterspell war, but you still don't get confirmation on their targets from within the list.) It would help if clicking on the potential counterspell targets brought the targeted card to focus in the details and image panels (being able to click on your target directly on the stack would be ideal, but that's wishful thinking. ^_^)
Also, Exalted abilities that go on the stack use the attacker as the source of the ability rather than the permanent which has Exalted.
Also, Exalted abilities that go on the stack use the attacker as the source of the ability rather than the permanent which has Exalted.
Last edited by Diogenes on 15 May 2013, 15:18, edited 1 time in total.
Re: Bug Reports (snapshot builds)
by Pux » 15 May 2013, 15:18
r21480:
It is impossible to equip a creature with Lightning Greaves (the equip ability fizzles).
It is impossible to equip a creature with Lightning Greaves (the equip ability fizzles).
Last edited by Chris H. on 15 May 2013, 16:12, edited 1 time in total.
Reason: mouse-over
Reason: mouse-over
Re: Bug Reports (snapshot builds)
by Hei » 17 May 2013, 08:05
Description: [describe what you were doing when the crash occurred]
- ClassCastException | Open
- Code: Select all
Forge Version: 1.3.16-SNAPSHOT-r21372
Operating System: Mac OS X 10.8.2 x86_64
Java Version: 1.6.0_37 Apple Inc.
java.lang.ClassCastException: forge.gui.ListChooser$2 cannot be cast to forge.Card
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolveHuman(ChangeZoneEffect.java:759)
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:601)
at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:355)
at forge.card.ability.AbilityApiBased.resolve(AbilityApiBased.java:62)
at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1060)
at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1039)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:618)
at forge.game.phase.PhaseHandler$1.run(PhaseHandler.java:743)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:751)
at forge.game.player.PlayerController.passPriority(PlayerController.java:82)
at forge.game.ai.AiController.onPriorityRecieved(AiController.java:831)
at forge.game.ai.AiInputCommon$1.run(AiInputCommon.java:74)
at forge.FThreads$1.run(FThreads.java:113)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
- Hei
- Posts: 4
- Joined: 17 May 2013, 08:04
- Has thanked: 0 time
- Been thanked: 0 time
Re: Bug Reports (snapshot builds)
by Sloth » 17 May 2013, 10:14
I can't reproduce this.Pux wrote:r21480:
It is impossible to equip a creature with Lightning Greaves (the equip ability fizzles).
I can't reproduce this.Hei wrote:Description: [describe what you were doing when the crash occurred]Sacrificed Armillary Sphere and it wouldn't let me select lands while searching, and then the game crashed.
- ClassCastException | Open
- Code: Select all
Forge Version: 1.3.16-SNAPSHOT-r21372
Operating System: Mac OS X 10.8.2 x86_64
Java Version: 1.6.0_37 Apple Inc.
java.lang.ClassCastException: forge.gui.ListChooser$2 cannot be cast to forge.Card
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolveHuman(ChangeZoneEffect.java:759)
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:601)
at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:355)
at forge.card.ability.AbilityApiBased.resolve(AbilityApiBased.java:62)
at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1060)
at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1039)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:618)
at forge.game.phase.PhaseHandler$1.run(PhaseHandler.java:743)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:751)
at forge.game.player.PlayerController.passPriority(PlayerController.java:82)
at forge.game.ai.AiController.onPriorityRecieved(AiController.java:831)
at forge.game.ai.AiInputCommon$1.run(AiInputCommon.java:74)
at forge.FThreads$1.run(FThreads.java:113)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: Bug Reports (snapshot builds)
by Bog Wraith » 17 May 2013, 20:16
Description: [Playing in a Draft game, AI's turn. The bug occurred after AI casts Viashino Shanktail]
- ArrayIndexOutOfBoundsException | Open
- Code: Select all
Forge Version: 1.3.15-r21351
Operating System: Mac OS X 10.8.3 x86_64
Java Version: 1.6.0_45 Apple Inc.
java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
at java.util.Vector.get(Vector.java:694)
at forge.game.zone.MagicStack.peekAbility(MagicStack.java:890)
at forge.gui.match.views.VStack.updateStack(VStack.java:141)
at forge.gui.match.controllers.CStack$1.run(CStack.java:43)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:708)
at java.awt.EventQueue.access$400(EventQueue.java:82)
at java.awt.EventQueue$2.run(EventQueue.java:669)
at java.awt.EventQueue$2.run(EventQueue.java:667)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:678)
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)
'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.
My mate did meet an early grave
'Twas nothing left for us to save
In the peat-filled bogs of Cannelbrae.
-
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)
by Max mtg » 17 May 2013, 20:24
This version is outdated, get a fresh beta 1.3.16 where the issue is fixed, or appears to be.
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)
by Bog Wraith » 17 May 2013, 20:27
I just saw that a new Beta was released today. I'm getting it as I write this.
'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.
My mate did meet an early grave
'Twas nothing left for us to save
In the peat-filled bogs of Cannelbrae.
-
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)
by Hei » 17 May 2013, 22:18
Description: [describe what you were doing when the crash occurred]
- ClassCastException | Open
- Code: Select all
Forge Version: 1.3.16-SNAPSHOT-r21372
Operating System: Mac OS X 10.8.2 x86_64
Java Version: 1.6.0_37 Apple Inc.
java.lang.ClassCastException: forge.gui.ListChooser$2 cannot be cast to forge.Card
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolveHuman(ChangeZoneEffect.java:759)
at forge.card.ability.effects.ChangeZoneEffect.changeHiddenOriginResolve(ChangeZoneEffect.java:601)
at forge.card.ability.effects.ChangeZoneEffect.resolve(ChangeZoneEffect.java:355)
at forge.card.spellability.AbilitySub.resolve(AbilitySub.java:130)
at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1060)
at forge.card.ability.AbilityUtils.resolveSubAbilities(AbilityUtils.java:1053)
at forge.card.ability.AbilityUtils.resolveApiAbility(AbilityUtils.java:1066)
at forge.card.ability.AbilityUtils.resolve(AbilityUtils.java:1039)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:618)
at forge.game.phase.PhaseHandler$1.run(PhaseHandler.java:743)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:751)
at forge.game.player.PlayerController.passPriority(PlayerController.java:82)
at forge.control.input.InputBase$1.run(InputBase.java:78)
at forge.FThreads$1.run(FThreads.java:113)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
- Hei
- Posts: 4
- Joined: 17 May 2013, 08:04
- Has thanked: 0 time
- Been thanked: 0 time
Re: Bug Reports (snapshot builds)
by Max mtg » 18 May 2013, 05:36
The problems refer to a weeks old daily build. The recently released 1.3.16 beta (code revision over 21500) does not contain this error.Hei wrote:Description: [describe what you were doing when the crash occurred]
/*skipped*/
Got a very similar bug to the Armillary Sphere bug. My opponent PtE'd me, and the game asked for me to search my library, and it showed the full list of cards. After I selected Forest, it showed another search menu with only basic lands, but wouldn't let me select. When I clicked cancel out of that menu, the game crashed.
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)
by Pux » 18 May 2013, 07:36
Yeah, it seems to be fixed.Sloth wrote:I can't reproduce this.Pux wrote:r21480:
It is impossible to equip a creature with Lightning Greaves (the equip ability fizzles).
Re: Bug Reports (snapshot builds)
by friarsol » 18 May 2013, 23:55
r21522
AI appearing to cast Harvest Gwyllion with only three mana available.
AI had 4 land in play, 2 Swamps the W/B Guildgate and Arcane Sanctum. However, the Sanctum was just played this turn, so it was tapped. Not sure if the AI thought it could afford the spell before the land was tapped as it ETB?
AI appearing to cast Harvest Gwyllion with only three mana available.
AI had 4 land in play, 2 Swamps the W/B Guildgate and Arcane Sanctum. However, the Sanctum was just played this turn, so it was tapped. Not sure if the AI thought it could afford the spell before the land was tapped as it ETB?
- PayManaCost Crash | Open
- java.lang.RuntimeException: ComputerUtil : payManaCost() cost was not paid for Harvest Gwyllion. Didn't find what to pay for 1
at forge.game.ai.ComputerUtilMana.payManaCost(ComputerUtilMana.java:171)
at forge.game.ai.ComputerUtilMana.payManaCost(ComputerUtilMana.java:55)
at forge.card.cost.CostPartMana.payAI(CostPartMana.java:161)
at forge.card.cost.CostPayment.payComputerCosts(CostPayment.java:190)
at forge.game.ai.ComputerUtil.handlePlayingSpellAbility(ComputerUtil.java:115)
at forge.game.ai.AiController.playSpellAbilities(AiController.java:878)
at forge.game.ai.AiController.onPriorityRecieved(AiController.java:826)
at forge.game.ai.AiInputCommon$1.run(AiInputCommon.java:74)
at forge.FThreads$1.run(FThreads.java:115)
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:722)
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Bug Reports (snapshot builds)
by Hei » 19 May 2013, 03:20
Description: [describe what you were doing when the crash occurred]
- IllegalArgumentException | Open
- Code: Select all
Forge Version: 1.3.16-r21506
Operating System: Mac OS X 10.8.2 x86_64
Java Version: 1.6.0_37 Apple Inc.
java.lang.IllegalArgumentException: No CardRules limitations could be parsed from: rares
at forge.quest.BoosterUtils.parseRulesLimitation(BoosterUtils.java:216)
at forge.quest.BoosterUtils.parseReward(BoosterUtils.java:237)
at forge.quest.BoosterUtils.generateCardRewardList(BoosterUtils.java:306)
at forge.quest.QuestEvent.getCardRewardList(QuestEvent.java:109)
at forge.gui.match.QuestWinLose.awardSpecialReward(QuestWinLose.java:659)
at forge.gui.match.QuestWinLose.awardChallengeWin(QuestWinLose.java:648)
at forge.gui.match.QuestWinLose.populateCustomPanel(QuestWinLose.java:182)
at forge.gui.match.ViewWinLose.<init>(ViewWinLose.java:129)
at forge.game.MatchController$1.run(MatchController.java:128)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:702)
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.awt.EventQueue.dispatchEvent(EventQueue.java:672)
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)
- Hei
- Posts: 4
- Joined: 17 May 2013, 08:04
- Has thanked: 0 time
- Been thanked: 0 time
Who is online
Users browsing this forum: No registered users and 9 guests