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:
- Install Sable 2.0.3 + Sable Companion 1.6.0 on NeoForge 1.21.1 server
- Install Twilight Forest 4.8.3345
- Enter the Twilight Forest dimension
- Explore/generate chunks until a chunk containing
tfyeti (Yeti Cave) or tfhill (Hollow Hill) structure tries to load
- 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
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
NoSuchElementExceptionwhen attempting to load structure pieces (tfyetiandtfhill). The crash occurs during thefeaturesgeneration stage when placingplant_rootsfeatures.Steps to Reproduce:
tfyeti(Yeti Cave) ortfhill(Hollow Hill) structure tries to loadjava.util.NoSuchElementExceptioninStructureSpeleothemConfigs.getConfigHolder()Expected Behavior:
Chunks should generate without crashing, structures should load correctly.
Actual Behavior:
IllegalStateException: Unable to calculate boundingbox without piecesNoSuchElementException: No value presentatStructureSpeleothemConfigs.getConfigHolder()tfyetiandtfhillCrash Report / Logs
Stack trace excerpt:
Sable mixins present in crash:
Full crash report attached below (or pastebin link).
Environment
Mod List (relevant):
Additional Context
StructureSpeleothemConfigs, which appears to be missing registry entries for structure config holders.twilightforest:tfhill,twilightforest:tfyetiPossible Root Cause
Sable's
plotsystem orChunkMapmixins may be interfering with Twilight Forest's structure piece loading/registration process, causingConfigHolderlookups to fail when the system attempts to deserialize saved structure pieces.Related Error Messages
Proposed Fix (from user side)
Notes for maintainer:
Crash Report
https://mclo.gs/u0ZNE51