Pre-generate Your World with Chunky#
Chunky pre-generates world chunks before players explore them, eliminating lag caused by real-time chunk generation.
Why Pre-generate?#
When players explore new areas, your server must generate terrain on the fly. This causes:
- TPS drops during exploration
- Rubber-banding for players
- Increased CPU usage
Pre-generation handles this work in advance, resulting in smooth gameplay.
Installation#
Download Chunky from Modrinth and install it like any other mod or plugin.
See Uploading Mods and Plugins for installation steps.
Basic Usage#
Step 1: Select Your World#
Specify which dimension to generate:
Paper servers:
chunky world world
chunky world world_nether
chunky world world_the_end
Fabric/Forge servers:
chunky world overworld
chunky world the_nether
chunky world the_end
Step 2: Set the Radius#
Define how many blocks to generate in each direction from spawn:
chunky radius 10000
Storage Requirements#
| Radius | Approximate Size |
|---|---|
| 5,000 blocks | ~5 GB |
| 10,000 blocks | ~17 GB |
| 15,000 blocks | ~38 GB |
| 20,000 blocks | ~68 GB |
Warning
Large pre-generation tasks require significant storage. Check your available disk space before starting.
Step 3: Start Generation#
chunky start
Generation can take many hours for large radii. The server remains playable during this process, though with slightly reduced performance.
Reduce Console Spam#
chunky silent
Control Commands#
| Command | Description |
|---|---|
chunky pause | Temporarily stop generation |
chunky continue | Resume generation |
chunky cancel | Abandon generation entirely |
chunky progress | Check current progress |
Important Notes#
Generated vs Loaded Chunks#
Pre-generated chunks are not loaded. They're saved to disk but require a player nearby to become active.
This means:
- Mob farms still need player presence
- Automated systems don't run in unloaded chunks
- Generation only eliminates the creation lag, not loading lag
Always-Loaded Chunks#
For chunks that need to stay active:
- Spawn chunks (small area around world spawn)
- Use
/forceloadto permanently load specific chunks
Alternative: World Border#
Set a world border before pre-generating to limit exploration:
worldborder center 0 0
worldborder set 20000
Then pre-generate only within that border.