Serene Seasons

Serene Seasons

56M Downloads

(BUG) Serene Seasons [NPE] crash w/ Primitive Mobs Chameleon (Client/Server)

0xebjc opened this issue ยท 1 comments

commented

Problem:
At client remote login to the game server, client and/or server crashes, a null pointer exception is thrown on the client caused by serene seasons trying to identify the client season. Conflict between Serene Seasons (https://www.curseforge.com/minecraft/mc-mods/search?search=serene+seasons) and Primitive Mobs (https://www.curseforge.com/minecraft/mc-mods/primitive-mobs) chameleon entity.

My Guess, I'm assuming this is because the chameleon change color based on the block it's on, and serene seasons changes block (grass, etc.) based on the current season?

Game Version: Minecraft 1.12.2
Game Type: Client/Server
Forge Version: forge-1.12.2-14.23.5.2768-universal
Serene Seasons Version: SereneSeasons-1.12.2-1.2.17-universal
Primitive Mobs Version: primitivemobs-1.2.3a

Notes: I'm building a modpack and was using Serene Season v1.2.15 or v1.2.16 for a while and didn't notice any issues, but was doing much of the development on client only game and infrequently checking server reliability. I didn't notice this issues until upgrading to Serene Season v1.2.17 and I'm now also beta testing everything on server game only now, running in-game session on client/server longer causing the season to change. I noticed from the v1.2.17 update notes a new feature was added: to pause server season changes when no users are logged. Wondering it that is where the culprit bug is? I haven't noticed this on Client only mode, but I haven't been testing much in that mode recently either since I updated to v1.2.17 of this mod.

Stack Trace:

Description: Ticking entity

java.lang.NullPointerException: Ticking entity
	at sereneseasons.handler.season.SeasonHandler.getClientSeasonTime(SeasonHandler.java:80)
	at sereneseasons.init.ModHandlers.lambda$registerSeasonColourHandlers$0(ModHandlers.java:65)
	at net.minecraft.world.biome.BiomeColorHelper.func_180285_a(SourceFile:36)
	at net.minecraft.world.biome.BiomeColorHelper.func_180286_a(SourceFile:47)
	at net.minecraft.client.renderer.color.BlockColors$3.func_186720_a(BlockColors.java:73)
	at net.minecraft.client.renderer.color.BlockColors.func_186724_a(BlockColors.java:185)
	at net.daveyx0.primitivemobs.entity.passive.EntityChameleon.changeColor(EntityChameleon.java:188)
	at net.daveyx0.primitivemobs.entity.passive.EntityChameleon.func_70071_h_(EntityChameleon.java:106)
	at net.minecraft.world.World.func_72866_a(World.java:1993)
	at net.minecraft.world.World.func_72870_g(World.java:1955)
	at net.minecraft.world.World.func_72939_s(World.java:1759)
	at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1846)
	at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1097)
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:397)
	at net.minecraft.client.main.Main.main(SourceFile:123)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Client thread
Stacktrace:
	at sereneseasons.handler.season.SeasonHandler.getClientSeasonTime(SeasonHandler.java:80)
	at sereneseasons.init.ModHandlers.lambda$registerSeasonColourHandlers$0(ModHandlers.java:65)
	at net.minecraft.world.biome.BiomeColorHelper.func_180285_a(SourceFile:36)
	at net.minecraft.world.biome.BiomeColorHelper.func_180286_a(SourceFile:47)
	at net.minecraft.client.renderer.color.BlockColors$3.func_186720_a(BlockColors.java:73)
	at net.minecraft.client.renderer.color.BlockColors.func_186724_a(BlockColors.java:185)
	at net.daveyx0.primitivemobs.entity.passive.EntityChameleon.changeColor(EntityChameleon.java:188)
	at net.daveyx0.primitivemobs.entity.passive.EntityChameleon.func_70071_h_(EntityChameleon.java:106)
	at net.minecraft.world.World.func_72866_a(World.java:1993)
	at net.minecraft.world.World.func_72870_g(World.java:1955)

-- Entity being ticked --
Details:
	Entity Type: primitivemobs:chameleon (net.daveyx0.primitivemobs.entity.passive.EntityChameleon)
	Entity ID: 2234372
	Entity Name: Chameleon
	Entity's Exact location: -337.50, 63.00, 91.50
	Entity's Block location: World: (-338,63,91), Chunk: (at 14,3,11 in -22,5; contains blocks -352,0,80 to -337,255,95), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
	Entity's Momentum: 0.00, -0.08, 0.00
	Entity's Passengers: []
	Entity's Vehicle: ~~ERROR~~ NullPointerException: null
Stacktrace:
	at net.minecraft.world.World.func_72939_s(World.java:1759)

Full Crash Dump:
https://pastebin.com/f3xN2TNe

commented

Should be fixed now in the latest update (Released today)