HomeJavaModsSpawn C2ME Fix
Spawn C2ME Fix
ModsJava

Spawn C2ME Fix

by Bramblejack · on CurseForge

Fixes chunk deadlock and game crash when using Spawn and C2ME together.

Which build do you need?

This mod ships a separate file for every mod loader and every version of the game. Pick both, then download — the wrong build installs fine and then does nothing in the game.

Mod loader

Minecraft version

⬇ Download for 1.21.1 · NeoForge⬇ Download for 1.20.1 · Forge
I don't know my version or loader
Open the Minecraft launcher and look at the profile you play on — it names both, like fabric-loader-1.21.4. The version also shows in the bottom-right corner of the game's main menu.
No loader in the profile name? Then it's plain Minecraft, and these mods won't run — you need Fabric or NeoForge installed first.

Description

This mod patches AnimalVariantManager.chooseWeightedVariant() in the Spawn mod to use the entity's own thread-safe RandomSource instead of Level.random.

This prevents a ConcurrentModificationException when C2ME calls finalizeSpawn from a worker thread during chunk generation, which would otherwise deadlock further chunk loading.

Known issues

The original approach was meant to make the animal variants deterministic, meaning you would always encounter the same variant in the same place in the world in the same seed. The fix breaks this behaviour and makes the variants completely random. Generating a world with the same seed will give you a different outcome each time.

There probably is a way to solve this more gracefully, but it would require much deeper integration which for me personally is out of scope.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more