Gt-new-horizons-modpack: Crash/Kick when harvest infused seed from Thaumic Tinkerer

Created on 31 Aug 2018  路  7Comments  路  Source: GTNewHorizons/GT-New-Horizons-Modpack

Which modpack version are you using?

2.0.4.9
#

If in multiplayer; On which server does this happen?

SP and private MP
#

What did you try to do, and what did you expect to happen?

Try to harvest mature infused seed from Thaumic Tinkerer to refresh soil and get loot
#

What happend instead? (Attach screenshots if needed)

Crash on SP.
Kick from MP, didn't get no seeds/loots

Crash report : Here !
#

What do you suggest instead/what changes do you propose?

Try to fix it (this issue make infused seed useless) => I will do more test tomorrow about that.

Need more Info question

All 7 comments

Please re-test this, the crashlog appears to be a random crash. Does it apply to all Seeds or only special ones? Does it ever worked?

It's not random crash, that's appear every time when i try to broke this seed ^^.

Does it apply to all Seeds or only special ones?

The problem here i am stuck with primal seeds (aer, aqua, perditio, ordo, terra, ignis) because when i harvest them, they didn't drop residue on soil (forget to mention that, sorry).. seeds/loots either, as i said.
So i can't mutate seeds :(
But the bug appear on all primal seeds indeed.

Does it ever worked?

Nope :( But i already use theses seeds on another modpack and hadn't no issues/crashs (with build ThaumicTinkerer-2.5-1.7.10-517)

EDIT : If you want logs for my server when i try to broke infused seed -> Here !

EDIT 2 : Try on new GTNH instance (without mods added) => Same issue on SP.

Test with build 517 (Available here) => Works perfectly.

Test with build GTNH 553 and 554 => Same issue.

This error does not occur if the seeds are collected as otherwise (water flow, golems, etc.).

Indeed, that's work with somes items/mechanics but i test with Block Breaker from ProjectRed for example => Server crash.

I will use water flow waiting for a fix so... Thanks @CalterOK :)

had this exact same crash to me on my client, and also crashed the server i play on (The fully toasted community's server) like that by mistake.
after A LOT of digging, i can say a few things about why i think the crash might be happening.
line 133 in https://github.com/GTNewHorizons/ThaumicTinkerer/blob/085c9b553e8b5da2a68116399496ac55f15f7cee/src/main/java/thaumic/tinkerer/common/block/BlockInfusedGrain.java is throwing a NullPointerException according to the log.
so after investigating https://github.com/GTNewHorizons/ThaumicTinkerer/blob/085c9b553e8b5da2a68116399496ac55f15f7cee/src/main/java/thaumic/tinkerer/common/item/ItemInfusedSeeds.java a bit, and it's "setAspectTendencies" method, i saw that the method creates a new "NBTTagCompound" with it's default, empty constructor. went and looked a bit at what i could find about that class, and it seems that if you create an NBTTagCompound like that, it doesn't work properly consistently. i could be waaaaaaaaaaaaaaaaaaaaaaaaay off on this, but this is my best guess at this point, and i'm hoping maybe what i found will help someone else find something and maybe fix the issue.
also, i'm guessing that the reason for some things crashing and some not is probably who's breaking the block and how, but this part is really just a hunch.

really hoping this can be fixed, as we had many cool ideas for the infused seeds on our server, but right now i'm kinda scared to even touch them after they crashed my client a couple of times and the server once when i tried using a block breaker.

(also, apologies if the way i linked those things is not how you use github, i'm still learning my way around github)

I investigated the problem. Cause of crash is the "race" between breakBlock() and getDrops() method in class thaumic.tinkerer.common.block.BlockInfusedGrain

breakBlock() method deletes related TileEntity from the world, but getDrops() method depends on the tile's fields. In case of manual harvesting breakBlock() called first.

Hotfix is saving the reference to TileEntity in block's private field. But block and entity interaction should be refactoried on the long term imo to prevent ambiguous behavior.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Jaalte picture Jaalte  路  3Comments

TimeConqueror picture TimeConqueror  路  3Comments

SKYCATV587 picture SKYCATV587  路  3Comments

chochem picture chochem  路  3Comments

Del0lafe picture Del0lafe  路  3Comments