Skip to content

[NeoForge 1.21.1] Sable + Twilight Forest 4.8.3345 - Structure loading crashes during world generation (tfyeti/tfhill) #1478

Description

@ljmrhj

Context

Summary:
When Sable is installed alongside Twilight Forest on a NeoForge 1.21.1 server, chunk generation in the Twilight Forest dimension crashes with NoSuchElementException when attempting to load structure pieces (tfyeti and tfhill). The crash occurs during the features generation stage when placing plant_roots features.

Steps to Reproduce:

  1. Install Sable 2.0.3 + Sable Companion 1.6.0 on NeoForge 1.21.1 server
  2. Install Twilight Forest 4.8.3345
  3. Enter the Twilight Forest dimension
  4. Explore/generate chunks until a chunk containing tfyeti (Yeti Cave) or tfhill (Hollow Hill) structure tries to load
  5. Server crashes with java.util.NoSuchElementException in StructureSpeleothemConfigs.getConfigHolder()

Expected Behavior:
Chunks should generate without crashing, structures should load correctly.

Actual Behavior:

  • Server crashes with IllegalStateException: Unable to calculate boundingbox without pieces
  • Caused by NoSuchElementException: No value present at StructureSpeleothemConfigs.getConfigHolder()
  • Multiple structure types affected: tfyeti and tfhill

Crash Report / Logs

Stack trace excerpt:

java.util.NoSuchElementException: No value present
	at java.base/java.util.Optional.get(Optional.java:143)
	at twilightforest.init.custom.StructureSpeleothemConfigs.getConfigHolder(StructureSpeleothemConfigs.java:49)
	at twilightforest.world.components.structures.HollowHillComponent.<init>(HollowHillComponent.java:59)
	at twilightforest.world.components.structures.YetiCaveComponent.<init>(YetiCaveComponent.java:28)
	at net.minecraft.world.level.levelgen.structure.pieces.PiecesContainer.load(PiecesContainer.java:73)

Sable mixins present in crash:

sable.mixins.json:plot.ChunkMapMixin
sable.mixins.json:plot.serialization.ChunkMapMixin
sable-neoforge.mixins.json:compatibility.create.inventory_manipulation.ChuteBlockEntityMixin

Full crash report attached below (or pastebin link).

Environment

Component Version
Minecraft 1.21.1
NeoForge 21.1.248
Sable 2.0.3
Sable Companion 1.6.0
Twilight Forest 4.8.3345
Create 6.0.10
Carpet (NeoForged) 1.4.147+v1.0.8-251027
Java 21.0.10 (Oracle)
OS Linux (amd64)

Mod List (relevant):

  • Create 6.0.10
  • Create Aeronautics 1.3.0
  • Create: Flight Control 0.6.2
  • Create: Connected 1.3.2
  • Create: Copycats+ 3.0.4
  • Steam 'n' Rails 0.2.1
  • Supplementaries 1.21.1-3.8.10
  • YUNG's Better Dungeons/Desert Temples/etc.
  • Cataclysm 3.32

Additional Context

  • The issue only occurs when Sable is active. Disabling Sable (and Sable Companion) resolves the crash.
  • The crash happens during chunk generation, not during chunk loading of existing chunks.
  • The error originates from StructureSpeleothemConfigs, which appears to be missing registry entries for structure config holders.
  • Affected structure IDs: twilightforest:tfhill, twilightforest:tfyeti
  • Similar issue reported by other users with Sable + Twilight Forest combination (no known fix yet).

Possible Root Cause

Sable's plot system or ChunkMap mixins may be interfering with Twilight Forest's structure piece loading/registration process, causing ConfigHolder lookups to fail when the system attempts to deserialize saved structure pieces.

Related Error Messages

// Please make sure this issue is not caused by Sable before reporting it to other mod authors.
If you cannot reproduce it without Sable, file a report on the issue tracker
https://github.com/ryanhcode/sable/issues

Proposed Fix (from user side)

  • Disabling Sable fixes the crash
  • Removing corrupted structure entries from region files (using NBTExplorer) allows generation to continue, but requires manual intervention for every affected chunk

Notes for maintainer:

  • This seems to be a compatibility issue between Sable's world modification system (plot/chunk management) and Twilight Forest's structure config initialization
  • The error is consistently reproducible on a fresh world with Sable + Twilight Forest
  • May be related to registry synchronization timing during chunk loading

Crash Report

https://mclo.gs/u0ZNE51

Metadata

Metadata

Assignees

No one assigned

    Labels

    type: crashSomething crashes my game

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions