Concurrent Chunk Management Engine - Forge

This is a ported version of C2ME Fabric to Forge.
Back to Files

c2meforge-0.2.0-forge.9.9-all.jar

File namec2meforge-0.2.0-forge.9.9-all.jar
Uploader
Makki132Makki132
Uploaded
Oct 11, 2026
Downloads
4.4K
Size
1.3 MB
Mod Loaders
Forge
File ID
9139569
Type
B
Beta
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:concurrent-chunk-management-engine-forge-1610389:9139569")

Learn more about Curse Maven

What's new

C2ME-Forge 0.2.0-forge.9.9 (Minecraft 1.20.1) - build 2026-10-11

On top of forge.9.8: the End with End's Phantasm, a crash with DRG Flares, faster world generation on CPUs with 8 threads or fewer and in Lost Cities worlds, and every setting in c2me.toml now works. World generation only changes where it was wrong (the End with End's Phantasm); chunks that already exist are not touched.

Fixed
• The End generated as long straight strips of terrain with End's Phantasm (reported with a full analysis of the cause). End's Phantasm puts a cache_once at the top of the End's terrain function, and C2ME's terrain compiler filled it block by block, so every block of a terrain cell got the first block's value. Such cells are now filled the way vanilla fills them; nothing else changes. Compared with the same End generated without C2ME (16,129 chunks), forge.9.8 got 5.3% of the blocks wrong; forge.9.9 matches (99.996% of blocks identical, the same as with C2ME's terrain compiler switched off). Any mod or datapack with cache_once above "interpolated" in its terrain was affected the same way. Chunks generated before the update keep the strips; new chunks are correct
• Crash "Async entity unload" in singleplayer when a mod removes server entities from the client tick. Spamming DRG Flares triggered it (reported by Hinky). Such removals now happen on the server thread instead, and the log names the entity the first time it happens
• Several settings in config/c2me.toml had no effect on Forge and now work: threadedWorldGen.enabled, ioSystem.replaceImpl and ioSystem.async (false switches the feature off); generalOptimizations.autoSave.mode (in any case: "periodic" works as well as "PERIODIC"); generalOptimizations.midTickChunkTasksInterval (-1 used to make mid-tick chunk tasks run as often as possible instead of disabling them, as the config says; -1 now disables them); fixes.disableLoggingShutdownHook; ioSystem.recoverFromErrors (a value set here used to be deleted from the file at startup); vanillaWorldGenOptimizations.optimizeAquifer, vanillaWorldGenOptimizations.useEndBiomeCache and ioSystem.chunkStreamVersion (now also listed in c2me.toml). The log says which settings switched something off. Settings left at "default" behave as before
• Mods that C2ME's config marks as incompatible with a setting now switch that setting off, as c2me.toml already said (for example, with Radon installed, ioSystem.async is now off)
• A c2me.toml with a typo used to be replaced by a default one without a word. C2ME now keeps your file as c2me.toml.broken-<number>, says so in the log, and starts with default settings. Values outside the allowed range are reported in the log instead of being reset silently

Faster
• CPUs with 8 threads or fewer now use all of their threads for world generation. Measured with a 16,129-chunk pregen: 4 cores / 4 threads 172-178 s -> 117-123 s (about 30% faster), 6 cores / 6 threads 92-93 s -> 80-81 s (about 13% faster). CPUs with more than 8 threads are unchanged
• Lost Cities 7.5 and newer: its buildings now generate in parallel with the rest of the world instead of one at a time. Lost Cities worlds pregenerate about 17% faster (4,225 chunks: 26 s -> 21-22 s), with the same results as before. Older Lost Cities versions keep the previous one-at-a-time path. -Dc2me.lanes.forceLostCities=true keeps the old path for every version

Diagnostics
• The terrain compiler's verify mode (-Dc2me.dfc.verify=true) now compares whole terrain cells with vanilla, which is how the End's Phantasm problem shows up (32 million mismatching values before the fix, none after)
• Test-only switches (off unless set): -Dc2me.dfc.vanillaCellFill=false brings back the old cell fill for comparisons; -Dc2me.debug.noiseCostX2=true samples noise twice to measure what noise costs (the world is unchanged)

Tip
• C2ME generates about 5% faster and uses about a quarter less memory on Java 21 than on Java 17, the Java that launchers give Forge 1.20.1 by default. If your launcher lets you pick Java 21, try it; switch back if a mod in your pack refuses to start

Drop-in update, recommended for everyone on forge.9.x. No config changes needed.
Support: https://discord.gg/s7BYs6Njj5

This mod has no additional files