magefree / magefree/mage

Could not play any planeswalkers with Fist of the Five Suns and Jodah Archmage on the field.

Open
#11,042 4 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
2.4k
Forks
940
Avg merge
2d 12h
Merged PRs (30d)
160

Description

When playing a planeswalker I was asked to pay WUBRG instead of the normal cost. this error occurred for multiple planeswalkers. the following is the stack trace for the event and was the same for each attempt to cast.

The game exception occurred:

java.util.ConcurrentModificationException
Server version: 1.4.52-V5-beta4 (build: 2023-08-25 15:34)
Stack trace:
java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909)
java.util.ArrayList$Itr.next(ArrayList.java:859)
mage.abilities.AbilityImpl.activateAlternateOrAdditionalCosts(AbilityImpl.java:482)
mage.abilities.AbilityImpl.activate(AbilityImpl.java:284)
mage.abilities.ActivatedAbilityImpl.activate(ActivatedAbilityImpl.java:266)
mage.game.stack.Spell.activate(Spell.java:148)
mage.players.PlayerImpl.cast(PlayerImpl.java:1213)
mage.players.PlayerImpl.activateAbility(PlayerImpl.java:1469)
mage.player.human.HumanPlayer.activateAbility(HumanPlayer.java:2164)
mage.player.human.HumanPlayer.activateAbility(HumanPlayer.java:2187)
mage.player.human.HumanPlayer.priority(HumanPlayer.java:1252)
mage.game.GameImpl.playPriority(GameImpl.java:1602)
mage.game.turn.Step.priority(Step.java:66)
mage.game.turn.Phase.playStep(Phase.java:204)
mage.game.turn.Phase.play(Phase.java:90)
mage.game.turn.Turn.play(Turn.java:137)
mage.game.GameImpl.playTurn(GameImpl.java:1095)
mage.game.GameImpl.play(GameImpl.java:1002)
mage.game.GameImpl.start(GameImpl.java:978)
mage.server.game.GameWorker.call(GameWorker.java:34)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at mage/abilities/AbilityImpl.java:482 and trace the alternate-cost activation path from the stack trace. Reproduce the interaction with Fist of the Five Suns, Jodah Archmage, and a planeswalker, then verify that planeswalkers can be cast with the expected cost without a ConcurrentModificationException.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.