Bug Closed · Resolved

[Bug Report] NullPointerException when leaving a dungeon

#3249 opened by Unknown 4 years ago

Unknownreported this bug

Sometimes will get this error when leaving a dungeon

[16:50:21 WARN]: [MythicDungeons] Plugin MythicDungeons v1.0.2 generated an exception while executing task 57293
java.lang.NullPointerException: Nodes must be provided.
        at org.yaml.snakeyaml.nodes.NodeTuple.<init>(NodeTuple.java:28) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.representMapping(BaseRepresenter.java:164) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.SafeRepresenter$RepresentMap.representData(SafeRepresenter.java:321) ~[snakeyaml-1.30.jar:?]
        at org.bukkit.configuration.file.YamlRepresenter$RepresentConfigurationSerializable.representData(YamlRepresenter.java:42) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.representData(BaseRepresenter.java:95) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.represent(BaseRepresenter.java:65) ~[snakeyaml-1.30.jar:?]
        at org.bukkit.configuration.file.YamlConfiguration.toNodeTree(YamlConfiguration.java:190) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.configuration.file.YamlConfiguration.saveToString(YamlConfiguration.java:78) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.configuration.file.FileConfiguration.save(FileConfiguration.java:65) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at net.playavalon.mythicdungeons.dungeons.Dungeon.lambda$savePlayerData$7(Dungeon.java:659) ~[MythicDungeons-1.0.2.jar:?]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.18.2.jar:git-Paper-379]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.18.2.jar:git-Paper-379]
        at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.18.2.jar:git-Paper-379]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]
Unknowncommented

Hmm, how strange... this looks to me like a corrupted player data file. Could you share with my the player data YAML file for the player in question who is producing this error when leave? You can find it inside the dungeon's folder under players.

Unknowncommented

@MarcatoSound I can still get the error in the v1.0.3 dev version. Please check this attachment.

[21:53:50 INFO]: [MythicDungeons] [STDOUT] §x[Dungeons] Cleaning up instance 'shenqikuangche_0'...
[21:53:50 WARN]: Nag author(s): '[MarcatoSound]' of 'MythicDungeons' about their usage of System.out/err.print. Please use your plugin's logger instead (JavaPlugin#getLogger).
[21:53:51 WARN]: [Multiverse-Core] Hmm Multiverse does not know about this world but it's loaded in memory.
[21:53:51 WARN]: [Multiverse-Core] To let Multiverse know about it, use:
[21:53:51 WARN]: [Multiverse-Core] /mv import shenqikuangche_0 NORMAL
[21:53:51 INFO]: [MythicDungeons] [STDOUT] §x-= Unloading world shenqikuangche_0 processed in 3ms. =-
[21:53:51 INFO]: [MythicDungeons] [STDOUT] §x-= Cleaning up shenqikuangche_0 processed in 77ms. =-
[21:53:51 WARN]: [MythicDungeons] Plugin MythicDungeons v1.0.3-SNAPSHOT generated an exception while executing task 1187164
java.lang.NullPointerException: Nodes must be provided.
        at org.yaml.snakeyaml.nodes.NodeTuple.<init>(NodeTuple.java:28) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.representMapping(BaseRepresenter.java:164) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.SafeRepresenter$RepresentMap.representData(SafeRepresenter.java:321) ~[snakeyaml-1.30.jar:?]
        at org.bukkit.configuration.file.YamlRepresenter$RepresentConfigurationSerializable.representData(YamlRepresenter.java:42) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.representData(BaseRepresenter.java:95) ~[snakeyaml-1.30.jar:?]
        at org.yaml.snakeyaml.representer.BaseRepresenter.represent(BaseRepresenter.java:65) ~[snakeyaml-1.30.jar:?]
        at org.bukkit.configuration.file.YamlConfiguration.toNodeTree(YamlConfiguration.java:190) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.configuration.file.YamlConfiguration.saveToString(YamlConfiguration.java:78) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.configuration.file.FileConfiguration.save(FileConfiguration.java:65) ~[paper-api-1.18.2-R0.1-SNAPSHOT.jar:?]
        at net.playavalon.mythicdungeons.dungeons.Dungeon.lambda$savePlayerData$7(Dungeon.java:659) ~[MythicDungeons-1.0.3-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.18.2.jar:git-Paper-379]
        at org.bukkit.craftbukkit.v1_18_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.18.2.jar:git-Paper-379]
        at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.18.2.jar:git-Paper-379]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]

[Legacy attachment omitted]

Unknowncommented

The latest dev build has a possible fix for this. Delete the existing player data for the dungeon and please give it a try and let me know if the issue still persists.

Sign in to join the discussion.