Fabric Seasons

Fabric Seasons

13M Downloads

[1.16.5-1.1.1] Seasons mod adds properties to blocks in a dangerous manner that blows up vanilla processor files

TelepathicGrunt opened this issue ยท 5 comments

commented

Hello! I am the developer of Repurposed Structures. I received a bug report about my mod's processor files failing to be parsed and thus, my structures pool files dies and causes a crash during worldgen
TelepathicGrunt/RepurposedStructures-Quilt#108

After receiving the modpack, I narrowed down the issue to being a conflict between Seasons and my mod. Specifically, the issue is caused by how Season is adding additional properties to blocks like this:
https://github.com/lucaargolo/fabric-seasons/blob/032e542bbf51d044f5ce07ee37351d0849acd7bc/src/main/java/io/github/lucaargolo/seasons/mixin/IceBlockMixin.java
https://github.com/lucaargolo/fabric-seasons/blob/032e542bbf51d044f5ce07ee37351d0849acd7bc/src/main/java/io/github/lucaargolo/seasons/mixin/SnowBlockMixin.java

Basically, never add properties directly to blocks like this lol. The reason is that the vanilla datapack worldgen system is quite fragile when it comes to specifying blocks in processor_lists or other json files. If the block is missing even 1 property, the file blows up. Since my mod uses ice and snow in some of its processor files, the addition of a new property added by Seasons make MC think the file is invalid and kills my mod as a result.

However, there are ways of attaching properties to blocks in a safe manner that does not blow up processor files. Towelette by Virtuoel can add any property to any block and works with vanilla's datapack json just fine. You can ask him for how to incorporate Towelette's system into your mod so you can add the properties that you need to the blocks.

I hope this helps!

commented

Oh hi, sorry about that, yeah that was a feature that was prone to break. I never thought about another way of implementing it tho, so I did it that way and hoped for the best. Looking back at it now, I could've just added a new type of snow and ice with the same loot table as the vanilla one but that melts when the season change and then used it in the snow logic. ๐Ÿคฆ
I'll fix this asap.

commented

Yes, I'm fully aware of this problem, I still have to finish one thing before I can focus on fixing this but I'm pretty sure I can get it done in less than a week.

commented

I'm gonna be a bad person and bump this.

commented

Awesome thank you! Iโ€™ll close my issue reports about this too on my repos

commented

Completely changed how the ice and snow melting logic works! No longer adding properties to the vanilla block. Instead, I'm adding my own block with the melting logic. That should fix all the issues with mods and datapacks that rely on the default Ice and Snow block states. Sorry for all the trouble and for taking too long to fix this.