CaveBlock#
No sky. No surface. Just stone in every direction and a pickaxe in your hand.
CaveBlock flips the island game on its head: instead of building up into the open air, players carve out their world from solid underground. Dig for ores, hollow out a home, expand through the dark. It's the same satisfying island progression — challenges, levels, teammates — but the whole thing plays out underground. Dwarves Players everywhere love it.
Created and maintained by BONNe.
Useful links
Installation#
- Install BentoBox and run it on the server at least once to create its data folders.
- Place this jar in the addons folder of the BentoBox plugin.
- Restart the server.
- The addon will create worlds and a data folder and inside the folder will be a config.yml.
- Stop the server .
- Edit the config.yml how you want.
- Delete any worlds that were created by default if you made changes that would affect them.
- Restart the server.
Configuration#
The main config.yml file contains basic information about game-mode addon setup.
config.yml#
After addon is successfully installed, it will create config.yml file. Every option in this file comes with comments about them. Please check file for more information.
You can find the latest config file: config.yml
World generation reworked in 1.21.0
Since 1.21.0 the overworld is carved by Minecraft's own vanilla 1.18+ noise generator, so islands run through genuine cheese, spaghetti, lush, dripstone and deep-dark caves — complete with vanilla ores, decorations, structures and underground biomes. Every column is then capped so the world stays solid rock with no open sky. Because the server now handles carving, ores and biomes, the old block-replacement generation options (generation-tries, use-new-material-generator, the per-dimension blocks lists, and the natural-* toggles) were removed. The Nether and End keep a fill-and-decorate approach with a new ore-vein populator. See the changelog at the bottom of this page before upgrading.
Description
The depth of world indicates till which height blocks will be generated in world. Setting it to -64 will create just a basic void world.
Allows to create some fresh air above your cave.
Description
Added in 1.23.0. A map of vanilla structures that may generate in the overworld cave world. Set a structure to false to stop it generating; structures not listed here generate as normal. Use the vanilla structure key, for example ancient_city, trial_chambers, mineshaft, mineshaft_mesa, stronghold, mansion, monument, pillager_outpost, ruined_portal, trail_ruins, village_plains, desert_pyramid, jungle_pyramid, igloo, swamp_hut.
Large structures like Ancient Cities and Trial Chambers can fill or unbalance a solid cave world, so they are disabled by default. Only affects newly generated overworld chunks.
Default:
structures:
ancient_city: false
trial_chambers: false
mansion: false
mineshaft: true
stronghold: true
Description
Added in 1.23.0. Overworld cave density. Vanilla generates a dense 1.18+ cave network (cheese and spaghetti caves) which, on a solid cave world, can feel like "nothing but passageways". This re-solidifies a fraction of that cave air after generation using a low-frequency noise field, so whole regions close up into separate chambers rather than punching random single holes.
0.0keeps every vanilla cave (densest, the original behaviour).1.0fills nearly all caves (almost solid).- Try
0.4–0.6to thin them out.
Underground biomes, ores, decorations and structures are kept either way. Only affects newly generated chunks.
Default: 0.0
Description
Added in 1.23.0. Generate vanilla carver caves (big ravines and long round tunnels) in the overworld. These stack on top of the noise caves. Set to false to remove the ravines and wide tunnels while keeping the noise caves.
Warning
BentoBox does not support changing this value mid-game. If you need to change it, do a full reset of your worlds and databases.
Default: true
Description
Allows toggling if overworld top block should be bedrock block. Otherwise, it will be made of stone.
Description
Allows toggling if overworld bottom block should be bedrock block. Otherwise, it will be made of stone.
Description
Main block used to cap the sky gaps above the vanilla-generated terrain. Vanilla cave carving, ores, structures and underground biomes (lush caves, dripstone caves, deep dark) are produced by the server; this setting only affects the material used to fill the surface layer. Setting it to AIR will leave open sky above the caves.
Description
Allows toggling if the nether top block should be bedrock block. Otherwise, it will be made of netherrack.
Description
Allows toggling if nether bottom block should be bedrock block. Otherwise, it will be made of netherrack.
Description
Allows setting main block that will be used for the nether world generation. Setting it to AIR will create void world. Ore veins (ancient debris, nether quartz, obsidian, glowstone and more) are placed on top of this by the vein populator.
Description
Allows toggling if the end top block should be bedrock block. Otherwise, it will be made of endstone.
Description
Allows toggling if the end bottom block should be bedrock block. Otherwise, it will be made of endstone.
Description
Allows setting main block that will be used for the end world generation. Setting it to AIR will create void world. Ore veins are placed on top of this by the vein populator.
Commands#
Tip
[player_command] and [admin_command] are commands that differ depending on the gamemode you are running.
The Gamemodes' config.yml file contains options that allows you to modify these values.
As an example, on CaveBlock, the default [player_command] is cave, and the default [admin_command] is cba.
Be aware, that this addon allows changing player commands aliases in addon config.yml file.
By default, BentoBox GameMode addons comes with the default sub-command set, however, each addon may introduce even more sub commands.
Complete CaveBlock Command List
Permissions#
Tip
[gamemode] prefix in every place for CaveBlock addon must be replaced with caveblock.
By default, BentoBox GameMode addons comes with the default sub-permission set, however, each addon may introduce even more sub-permissions.
Complete CaveBlock Permission List
Placeholders#
By default, BentoBox GameMode addons comes with default placeholders set, however, each addon may introduce even more placeholders.
Complete CaveBlock Placeholder List
Flags#
Addon introduces 1 BentoBox Settings flag:
SKY_WALKER_FLAG: flag in world settings that allows enabling/disabling player walking on cave roof.
FAQ#
Can you add a feature X?
Please add it to the list here.
I have a bug, where should I report it?
Please add it to the list here.
Changelog#
What's new in v1.23.1
Released: 2026-07-09
A bugfix release that closes the structure-suppression hole introduced in 1.23.0. Recommended for all servers running 1.23.0 that disable vanilla structures.
- 🔺 Disabled structures no longer freeze the server. Disabling a structure only cancelled its placement, not its placement rules, so structure searches (
/locate, Eyes of Ender, explorer/treasure maps, dolphins, villager map trades) kept scanning out to the radius cap and freezing the main thread. A newStructuresLocateEventhandler now removes disabled structures from the search up front, returning "not found" instantly. Fixes #116. - 🔺 Structures no longer slip through in the spawn area. The suppression listener is now registered early in
createWorlds(), before the first spawn chunks generate, so a disabled structure can no longer appear near spawn.
What's new in v1.23.0
Released: 2026-07-07
Hands admins direct control over what fills the overworld cave world, building on the 1.22.0 generation work.
- ⚙️ Configurable overworld structures. A new
structures:section inconfig.ymltoggles individual vanilla structures (Ancient Cities, Trial Chambers, Mansions, Mineshafts, Strongholds and more). The largest, world-filling structures are disabled by default. Fixes #112. - ⚙️ Overworld cave density control. A new
overworld-cave-fillsetting (0.0–1.0, default0.0) re-solidifies a fraction of the dense vanilla cave network so worlds feel less like endless passageways, while keeping biomes, ores, decorations and structures intact. Fixes #111. - ⚙️ Carver cave toggle. A new
overworld-carverssetting (defaulttrue) removes vanilla ravines and wide tunnels while keeping the noise caves. This one cannot be changed mid-game.
New options are written to config.yml automatically on first run and only affect newly generated chunks; defaults preserve the 1.22.0 behaviour, except that the largest structures are now off by default. See the Configuration section above.
What's new in v1.22.0 — Nether & End generation reworked
Released: 2026-07-06
Rebuilds how the Nether and The End are generated. Previously both dimensions were a solid block of rock peppered with random single blocks — including stray floating fire that caused lag — and had no real caves.
- 🔺 Nether & End generation overhaul. Both dimensions are now filled solid and carved by a 3D noise cave generator into connected tunnels and chambers, with a solid margin against the floor and roof.
- 🌋 Nether lava sea. The lowest cave voids fill with lava rather than open air; the floor and roof stay solid so the world stays enclosed.
- 🗺️ Natural Nether biomes. The five Nether biomes are shared into natural, roughly equal-area regions, so several biomes appear within a single island.
- 🌿 Biome-aware decorations. Crimson/warped nylium, roots, fungi and vines; soul sand valleys with soul fire and bones; basalt deltas with columns and magma fires; glowstone ceiling patches; end rods and chorus in The End.
- ⚡ No more laggy floating fire. Fire is now sparse and grounded on netherrack/magma.
🔺 World generation changed: The new generator only affects newly generated chunks. Existing Nether/End chunks keep the old look, so you may see a seam where old meets new. Regenerate those dimensions (or start fresh worlds) if you want a consistent look.
What's new in v1.21.0 — Breaking: world generation reworked
Released: 2026-06-27
A major generation overhaul. CaveBlock now targets Paper 1.21.11 on Java 21 and the BentoBox 3.14 API.
- 🔺 Vanilla cave world generation. The overworld delegates to Minecraft's own 1.18+ noise generator, so islands are carved through genuine cheese, spaghetti, lush, dripstone and deep-dark caves, complete with vanilla ores, decorations, structures (mineshafts, dungeons, trial chambers, amethyst geodes, ancient cities) and underground biomes. The sky is capped with stone so the world stays solid rock from bedrock to the roof.
- 💎 Reworked Nether & End ore veins. The Nether and End keep the fill-and-decorate approach with a new vein populator that places properly sized ore blobs (ancient debris, quartz, obsidian, glowstone and more) instead of single blocks.
- ⚙️ Config cleanup. World-generation settings were reworked and dead options removed —
generation-tries,use-new-material-generator, the per-dimensionblockslists, thenatural-surface/natural-caves/natural-bedrocktoggles and the oldnetherBlocks/endBlocks/debugsettings are gone. Back up your existingconfig.ymlbefore letting the addon write the new defaults. - 🔡 MiniMessage locales. All locale files were migrated from legacy colour codes to MiniMessage, and the height-limit message key was renamed to
caveblock.general.errors.cave-limit-reached. Regenerate your locale files if you have customised them. - 🧪 A full JUnit 5 + MockBukkit test suite was added to guard generation, height limits and addon lifecycle.
🔺 World generation changed: Newly generated overworld chunks now use vanilla noise caves instead of solid-fill carving. Already-generated chunks are untouched, but new terrain at the edges of your world will look different from older areas. Test on a copy first if this matters to you.
Translations#
Help us keep translations accurate
Most BentoBox and addon translations are now generated with the help of AI, so the bulk of the work is already done — but AI is not perfect. What we really need from the community is error reports and corrections.
- Spotted a mistake or awkward phrasing? Open an issue or a PR on the relevant repository at bentobox.world (a short link to our GitHub org), or tell us on Discord.
- Want to add a brand-new language? Open a PR adding a new locale file to
src/main/resources/locales/in the relevant repo, or ask on Discord and we'll get you started.
| Language | Language code | Progress |
|---|---|---|
| English (United States) | en-US | 100% (Default) |
| Chinese, China | zh-CN | 99% |
| Czech | cs | 99% |
| German | de | 100% |
| Indonesian | id | 0% |
| Japanese | ja | 99% |
| Latvian | lv | 99% |
| Polish | pl | 99% |
| Romanian | ro | 0% |
| Russian | ru | 100% |
| Spanish | es | 99% |
| Turkish | tr | 100% |
| Vietnamese | vi | 99% |