ReikaKalseki / Reika_Mods_Issues

The issue tracker for all of my mods - RotaryCraft, its addons, ChromatiCraft, and everything else.
46 stars 14 forks source link

[CC] Massive console spam from backup progression failure? #1878

Open Shahelion opened 6 years ago

Shahelion commented 6 years ago

I looted a blank fragment from a Desert Temple into my inventory right before this happened. My game froze, then crashed. The linked Gist is extremely long, but is mostly the same thing. It happened over the course of a few seconds, there was just that much of it.

https://gist.githubusercontent.com/Zsashas/5b336c839604b91d7aed09fdbe373c57/raw/b989cb8215f39ead8b5b2d8dbb8d4591d983967d/Progression%2520Backup%2520Spam%2520Crash

ReikaKalseki commented 6 years ago

What is goki.stats.lib.Helper? It is doing something with player data, which is where progression is stored.

Shahelion commented 6 years ago

Goki Stats is a mod where you can use exp to level up various passive abilities. Never had this issue before though, so no idea why it's popping up now. I'm looking for the mod page, but can't find it yet.

EDIT: Found it. https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1291587

Looks like it's for 1.7.2, actually, but it worked fine until now, everyone was saying it worked fine for 1.7.10 too. I guess it was inevitable that something would happen eventually. Just surprised it took over a year for an issue to pop up.

ReikaKalseki commented 6 years ago

How does it affect the player NBT?

Is the dev available on Github?

Shahelion commented 6 years ago

@gokiburikin ?

EDIT: It would seem not with that name, at least. From what I understand, the mod has a new author for the 1.12 port, and nothing between 1.7.2 and 1.12.

EDIT2: I didn't realize the ping actually worked. Well then.

gokiburikin commented 6 years ago

Yeah, sorry. Can't offer much input here since I left the modding scene after 1.7.2, so any work done to maintain the goki_ mods hasn't been mine.

EDIT: Looking at my backup 1.7.2 source code, assuming it hasn't been changed, the line in particular is an if statement

NBTTagCompound nbt; nbt = player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG); if (!nbt.hasKey(Reference.STAT_TAG))

It might be as simple as adding a nbt != null check to avoid this error though I can't explain why nbt is null to begin with. I'm no longer familiar with what the code is doing anymore or even how to rebuild the mod to make the necessary changes, so I can't do much even if this is a workable solution.

EDIT 2: I'm also not as familiar with Java anymore, but maybe there's a namespace import overlap with the Reference class? If the static Reference used by Helper isn't the right one (or for some reason isn't loading) it could be trying to access a bad value?

That's all I can come up with having not touched this stuff for almost 4 years.

ReikaKalseki commented 6 years ago

The error is happening due to CC writing to the NBT then those changes failing to "take".