SERVER - game error
- Dominant language
- Java
- Stars
- 2.4k
- Forks
- 940
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 160
Description
Error type: SERVER - game error
Client version: 1.4.57-V2 (build: 2025-04-19 14:23)
Java version: 1.8.0_201
Default charset: UTF-8
Game error occurred:
java.lang.NullPointerException
Server version: 1.4.57-V2 (build: 2025-04-19 14:23)
Stack trace:
mage.abilities.TriggeredAbilities.lambda$processingEnd$2(TriggeredAbilities.java:163)
java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:439)
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566)
mage.abilities.TriggeredAbilities.processingEnd(TriggeredAbilities.java:166)
mage.abilities.TriggeredAbilities.checkTriggers(TriggeredAbilities.java:117)
mage.game.GameState.handleEvent(GameState.java:1042)
mage.game.GameImpl.fireEvent(GameImpl.java:3482)
mage.players.PlayerImpl.moveCards(PlayerImpl.java:4990)
mage.players.PlayerImpl.moveCards(PlayerImpl.java:4868)
mage.game.GameImpl.leave(GameImpl.java:3376)
mage.game.GameImpl.checkConcede(GameImpl.java:877)
mage.game.GameImpl.checkConcede(GameImpl.java:866)
mage.player.human.HumanPlayer.waitForResponse(HumanPlayer.java:351)
mage.player.human.HumanPlayer.priority(HumanPlayer.java:1362)
mage.game.GameImpl.playPriority(GameImpl.java:1717)
mage.game.turn.Step.priority(Step.java:73)
mage.game.turn.Phase.playStep(Phase.java:205)
mage.game.turn.Phase.play(Phase.java:91)
mage.game.turn.Turn.play(Turn.java:129)
mage.game.GameImpl.playTurn(GameImpl.java:1157)
mage.game.GameImpl.play(GameImpl.java:1064)
mage.game.GameImpl.start(GameImpl.java:1040)
mage.server.game.GameWorker.call(GameWorker.java:35)
mage.server.game.GameWorker.call(GameWorker.java:16)
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:750)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by inspecting mage/abilities/TriggeredAbilities.java at lines 163 and 166, then trace the trigger processing reached from GameState.handleEvent and GameImpl.leave/checkConcede. Reproduce with the reported Java 8 and server/client versions if possible; done means the reported flow no longer throws this NullPointerException and the behavior is verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend, game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100