lorddusk / HQM

Hardcore Questing Mode
GNU Lesser General Public License v3.0
77 stars 61 forks source link

[BUG] Crash when cklicking on the party button (but only first time) #651

Closed canitzp closed 2 years ago

canitzp commented 2 years ago

HQM: HQM-1.18.1-5.9.1-forge.jar

No other mods installed, just clicked on the party button and then it crashed. Didn't happen second time.

Possible fix is to make this list https://github.com/lorddusk/HQM/blob/1.17/common/src/main/java/hardcorequesting/common/team/TeamLiteStat.java#L14 have an default value (new ArrayList<>();).

Exception ---- Minecraft Crash Report ---- // Daisy, daisy... Time: 2/10/22, 9:54 AM Description: Rendering screen java.lang.NullPointerException: Cannot invoke "java.util.List.size()" because the return value of "hardcorequesting.common.forge.team.TeamLiteStat.getTeamStats()" is null at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.isArrowEnabled(TeamListGraphic.java:87) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.drawArrow(TeamListGraphic.java:80) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.draw(TeamListGraphic.java:42) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.Graphic.drawFull(Graphic.java:28) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading,pl:runtimedistcleaner:A} at hardcorequesting.common.forge.client.interfaces.GuiQuestBook.m_6305_(GuiQuestBook.java:164) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraftforge.client.ForgeHooksClient.drawScreenInternal(ForgeHooksClient.java:395) ~[forge-1.18.1-39.0.75-universal.jar%2357!/:?] {re:classloading} at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:388) ~[forge-1.18.1-39.0.75-universal.jar%2357!/:?] {re:classloading} at net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:886) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1040) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:660) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$launchService$0(CommonClientLaunchHandler.java:45) ~[fmlloader-1.18.1-39.0.75.jar%2323!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace: at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.isArrowEnabled(TeamListGraphic.java:87) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.drawArrow(TeamListGraphic.java:80) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.TeamListGraphic.draw(TeamListGraphic.java:42) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading} at hardcorequesting.common.forge.client.interfaces.graphic.Graphic.drawFull(Graphic.java:28) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading,pl:runtimedistcleaner:A} at hardcorequesting.common.forge.client.interfaces.GuiQuestBook.m_6305_(GuiQuestBook.java:164) ~[HQM-1.18.1-5.9.1-forge.jar%2352!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraftforge.client.ForgeHooksClient.drawScreenInternal(ForgeHooksClient.java:395) ~[forge-1.18.1-39.0.75-universal.jar%2357!/:?] {re:classloading} at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:388) ~[forge-1.18.1-39.0.75-universal.jar%2357!/:?] {re:classloading} -- Screen render details -- Details: Screen name: hardcorequesting.common.forge.client.interfaces.GuiQuestBook Mouse location: Scaled: (347, 202). Absolute: (1389.000000, 807.000000) Screen size: Scaled: (480, 253). Absolute: (1920, 1009). Scale factor of 4.000000 Stacktrace: at net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:886) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1040) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:660) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$launchService$0(CommonClientLaunchHandler.java:45) ~[fmlloader-1.18.1-39.0.75.jar%2323!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} -- Affected level -- Details: All players: 1 total; [LocalPlayer['MichuGamesYT'/257, l='ClientLevel', x=-326.50, y=70.00, z=-185.50]] Chunk stats: 961, 609 Level dimension: minecraft:overworld Level spawn location: World: (-336,68,-192), Section: (at 0,4,0 in -21,4,-12; chunk contains blocks -336,-64,-192 to -321,319,-177), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,-64,-512 to -1,319,-1) Level time: 1004 game time, 1004 day time Server brand: forge Server type: Integrated singleplayer server Stacktrace: at net.minecraft.client.multiplayer.ClientLevel.m_6026_(ClientLevel.java:407) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91354_(Minecraft.java:2248) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:677) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[client-1.18.1-20211210.034407-srg.jar%2353!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$launchService$0(CommonClientLaunchHandler.java:45) ~[fmlloader-1.18.1-39.0.75.jar%2323!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.0.jar%235!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} -- Last reload -- Details: Reload number: 1 Reload reason: initial Finished: Yes Packs: Default, Mod Resources -- System Details -- Details: Minecraft Version: 1.18.1 Minecraft Version ID: 1.18.1 Operating System: Windows 10 (amd64) version 10.0 Java Version: 17.0.1, Microsoft Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft Memory: 588932528 bytes (561 MiB) / 3305111552 bytes (3152 MiB) up to 8589934592 bytes (8192 MiB) CPUs: 12 Processor Vendor: GenuineIntel Processor Name: 11th Gen Intel(R) Core(TM) i5-11400F @ 2.60GHz Identifier: Intel64 Family 6 Model 167 Stepping 1 Microarchitecture: unknown Frequency (GHz): 2.59 Number of physical packages: 1 Number of physical CPUs: 6 Number of logical CPUs: 12 Graphics card #0 name: NVIDIA GeForce RTX 3060 Graphics card #0 vendor: NVIDIA (0x10de) Graphics card #0 VRAM (MB): 4095.00 Graphics card #0 deviceId: 0x2503 Graphics card #0 versionInfo: DriverVersion=30.0.15.1123 Memory slot #0 capacity (MB): 16384.00 Memory slot #0 clockSpeed (GHz): 2.67 Memory slot #0 type: DDR4 Virtual memory max (MB): 30601.61 Virtual memory used (MB): 20760.93 Swap memory total (MB): 14336.00 Swap memory used (MB): 447.07 JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx8192m -Xms256m Launched Version: forge-39.0.75 Backend library: LWJGL version 3.2.2 SNAPSHOT Backend API: NVIDIA GeForce RTX 3060/PCIe/SSE2 GL version 3.2.0 NVIDIA 511.23, NVIDIA Corporation Window size: 1920x1009 GL Caps: Using framebuffer using OpenGL 3.2 GL debug messages: Using VBOs: Yes Is Modded: Definitely; Client brand changed to 'forge'; Server brand changed to 'forge' Type: Integrated Server (map_client.txt) Graphics mode: fancy Resource Packs: Current Language: English (US) CPU: 12x 11th Gen Intel(R) Core(TM) i5-11400F @ 2.60GHz Server Running: true Player Count: 1 / 8; [ServerPlayer['MichuGamesYT'/257, l='ServerLevel[New World]', x=-326.50, y=70.00, z=-185.50]] Data Packs: vanilla, mod:hardcorequesting, mod:forge ModLauncher: 9.1.0+9.1.0+main.6690ee51 ModLauncher launch target: forgeclient ModLauncher naming: srg ModLauncher services: mixin PLUGINSERVICE eventbus PLUGINSERVICE object_holder_definalize PLUGINSERVICE runtime_enum_extender PLUGINSERVICE capability_token_subclass PLUGINSERVICE accesstransformer PLUGINSERVICE runtimedistcleaner PLUGINSERVICE mixin TRANSFORMATIONSERVICE fml TRANSFORMATIONSERVICE FML Language Providers: minecraft@1.0 javafml@null Mod List: client-1.18.1-20211210.034407-srg.jar |Minecraft |minecraft |1.18.1 |DONE |Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f HQM-1.18.1-5.9.1-forge.jar |Hardcore Questing Mode |hardcorequesting |1.18.1-5.9.1 |DONE |Manifest: NOSIGNATURE forge-1.18.1-39.0.75-universal.jar |Forge |forge |39.0.75 |DONE |Manifest: 84:ce:76:e8:45:35:e4:0e:63:86:df:47:59:80:0f:67:6c:c1:5f:6e:5f:4d:b3:54:47:1a:9f:7f:ed:5e:f2:90 Crash Report UUID: a144259b-26b6-401d-9be2-55e596b9dc1a FML: 39.0 Forge: net.minecraftforge:39.0.75
kirderf1 commented 2 years ago

Looks like it has to do with https://github.com/lorddusk/HQM/blob/1.18/common/src/main/java/hardcorequesting/common/quests/QuestLine.java#L136 where specifically the TeamStatsMessage packet should have been sent to all players, including the singleplayer/lan host. Then as you saw, if that packet doesn't get sent properly, it may crash.