CaveSpeedThing

Multithreads YUNG's Better Caves + Better Mineshafts worldgen on Cleanroom/1.12.2 so cave generation stops eating your server's CPU.
Mymod + cleanroom

Mymod + cleanroom

vanilla

vanilla

CaveSpeedThingLogo.png

CaveSpeedThingLogo.png

Description

CaveSpeedThing

MC 1.12.2 // CLEANROOM

 

tl;dr

world gen on 1.12.2 is slow because BetterCaves does everything on one thread like it's 2019 and cores don't exist. this mixins that into actually using your CPU.

 

what this mod actually does

    • multithreaded carving, cave + cavern noise runs on a dedicated ForkJoinPool instead of one thread
    • vanilla noise, NoiseGeneratorOctaves parallelized too, when it's worth it
    • biome lookups, cached ID-based lookups instead of vanilla's slow registry walk, for BetterCaves + BetterMineshafts
    • corner noise dedup, shared corners between a chunk's carving cells get computed once, not up to 4x
    • crash-safe (i hope lol, no im kidding), errors fall back to single-thread carving instead of taking your world down

~2.8x faster cave/cavern carving vs vanilla BetterCaves, from a very unprofessional single-run test (small pack, no averaging, take it with a grain of salt).

Also stress-tested compatibility by clean-booting alongside a 400-mod pack at 16 render distance; no Mixin conflicts, startup crashes, or worldgen issues observed.

config

  • min CPU threads before parallel noise kicks in
  • optional debug logging for the mineshaft biome cache hit rate — off by default, only useful if you're chasing a perf issue

requirements

1.12.2 / Cleanroom (uses Cleanroom's native Mixin/MixinBooter, this is NOT a regular Forge jar) / BetterCaves + BetterMineshafts installed (this is mixins on top of them, not a replacement)

server-side (client doesn't care, but put it wherever, it's harmless)

install

  1. jar in mods/
  2. launch
  3. caves generate faster, world doesn't explode

 

why this exists / where it's at

goal was basically: optimize YUNG's Better Caves + Better Mineshafts as much as i reasonably could, because on my modpack they were eating a stupid amount of heap/CPU during worldgen. spent about 5 days on this on and off. i'm not gonna sit here and tell you it's the greatest mod ever, but at this point i think i've hit diminishing returns, everything left on the table is probably another 2-3%, maybe, and getting more would mean actually touching BetterCaves/BetterMineshafts source instead of mixin-ing around it, which i don't want to do.

should be compatible with basically everything, including stuff like Celeritas, but i haven't tested every combo under the sun.

if it crashes or does something weird: profile it yourself with flare first if you can, then paste the log via https://mclo.gs/ in the comments and I'll take a look when I get to it. peace out.


// ≈ "works on my machine."

The CaveSpeedThing Team

profile avatar
  • 1
    Followers
  • 2
    Projects
  • 104
    Downloads

Expert (PhD) & Modpack creator. "I have an IQ of 85... of 85? Now I'm confusing myself because of the 38. I have an IQ of 35... uh, 85. Or was it 58? I don't even remember anymore."

More from ChristKind_v1

  • SuperWithJava25 project image

    SuperWithJava25

    SuperWithJava25 is a lightweight compatibility coremod for Minecraft 1.7.10 that allows Fisk's Superheroes to run on modern Java versions (Java 21 through Java 25+) when using LWJGL3ify.

    • 87
    • July 24, 2026
  • SuperWithJava25 project image

    SuperWithJava25

    SuperWithJava25 is a lightweight compatibility coremod for Minecraft 1.7.10 that allows Fisk's Superheroes to run on modern Java versions (Java 21 through Java 25+) when using LWJGL3ify.

    • 87
    • July 24, 2026