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.54-V3 (build: 2024-09-25 12:58)
Game error occurred:
java.lang.NullPointerException
Server version: 1.4.54-V3 (build: 2024-09-25 12:58)
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:1011)
mage.game.GameImpl.fireEvent(GameImpl.java:3437)
mage.players.PlayerImpl.moveCards(PlayerImpl.java:4949)
mage.players.PlayerImpl.moveCards(PlayerImpl.java:4827)
mage.game.GameImpl.leave(GameImpl.java:3331)
mage.game.GameImpl.checkConcede(GameImpl.java:872)
mage.game.GameImpl.checkConcede(GameImpl.java:861)
mage.player.human.HumanPlayer.waitForResponse(HumanPlayer.java:335)
mage.player.human.HumanPlayer.chooseTarget(HumanPlayer.java:978)
mage.target.common.TargetCardInLibrary.choose(TargetCardInLibrary.java:84)
mage.players.PlayerImpl.searchLibrary(PlayerImpl.java:2936)
mage.players.PlayerImpl.searchLibrary(PlayerImpl.java:2858)
mage.abilities.effects.common.search.SearchLibraryPutOnLibraryEffect.apply(SearchLibraryPutOnLibraryEffect.java:45)
mage.abilities.AbilityImpl.resolveMode(AbilityImpl.java:222)
mage.abilities.AbilityImpl.resolve(AbilityImpl.java:209)
mage.game.stack.Spell.resolve(Spell.java:311)
mage.game.GameImpl.resolve(GameImpl.java:1805)
mage.game.GameImpl.playPriority(GameImpl.java:1728)
mage.game.turn.Step.priority(Step.java:67)
mage.game.turn.Phase.playStep(Phase.java:205)
mage.game.turn.Phase.play(Phase.java:91)
mage.game.turn.Turn.play(Turn.java:137)
mage.game.GameImpl.playTurn(GameImpl.java:1152)
mage.game.GameImpl.play(GameImpl.java:1059)
mage.game.GameImpl.start(GameImpl.java:1035)
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 with mage/abilities/TriggeredAbilities.java at lines 163, 166, and 117, then trace the event path through GameState and GameImpl shown in the stack trace. Reproduce the server game error with the reported versions if possible; done means the NullPointerException no longer occurs in this path and the failure is covered by a regression test.
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
- Needs clarification
- Newbie friendliness
- 25/100