DimensionalTrees is a BentoBox add-on that makes trees grown in the Nether and End dimensions look like they belong there. Instead of regular wood and leaves, trees that grow from saplings in these dimensions are built from blocks native to the dimension — gravel and glowstone in the Nether, purpur and end stone in the End.
Fully customizable per dimension, with support for per-tree-type overrides, per-gamemode overrides, and weighted random block mixing. Works with any BentoBox game mode.
- Place the DimensionalTrees
.jarinto your BentoBoxaddonsfolder. - Restart your server.
- The addon will create an
addons/DimensionalTrees/config.ymlfile. - Edit
config.ymlto set the block types and tree species you want to transform. - Restart the server to apply your changes (or use
/dtrees reload).
The config.yml controls which blocks are used in each dimension and which tree types are affected.
These are the top-level switches. Set them first before customizing block replacements.
dimensionaltrees:
options:
enable_addon: true # Master switch — set to false to disable the addon entirelyend_trees: true # Enable/disable End dimension tree replacementnether_trees: true # Enable/disable Nether dimension tree replacementsendlog: true # Log debug info to the console (e.g. invalid material warnings)# Tree types to transform. Comment out any species to leave them as normal trees.tree_types:
- oak
- spruce
- acacia
- dark_oak
- jungle
- birchEach logs and leaves entry is a map of material name → weight (%).
dimensionaltrees:
blocks:
end:
logs:
purpur_block: 100# 100% purpur block for log replacements in the Endleaves:
end_stone: 100# 100% end stone for leaf replacements in the Endnether:
logs:
gravel: 100# 100% gravel for log replacements in the Netherleaves:
glowstone: 100# 100% glowstone for leaf replacements in the NetherAny valid Minecraft material name can be used. If an invalid material is configured, a warning is logged and the block is skipped.
You can mix multiple materials with percentage weights. Each block in the grown tree is independently randomised using these weights.
nether:
logs:
gravel: 70# 70% of log blocks become gravelnetherrack: 30# 30% of log blocks become netherrackleaves:
glowstone: 60soul_sand: 40Weight rules:
- Exactly 100% — each material appears at its stated probability.
- More than 100% — weights are scaled proportionally; no AIR is added. A warning is logged.
- Less than 100% — the remainder is filled with AIR (blocks are removed). A warning is logged.
Override the global block replacements for individual tree species. Useful when you want oak trees to look different from acacia trees in the same dimension.
Priority (highest to lowest): per-tree → per-gamemode → global default.
nether:
logs:
gravel: 100# global default for all Nether logsper-tree:
logs:
acacia:
netherrack: 80gravel: 20# acacia logs use a different mixleaves:
acacia:
soul_sand: 100# acacia leaves use soul sandSupported tree type keys: oak, spruce, birch, jungle, acacia, dark_oak.
If you run multiple BentoBox gamemodes (e.g. BSkyBlock and CaveBlock) on the same server, you can configure different block replacements per gamemode. Per-gamemode overrides fall back to the global default when a gamemode is not listed.
Priority (highest to lowest): per-tree → per-gamemode → global default.
nether:
logs:
gravel: 100# global defaultper-gamemode:
logs:
CaveBlock:
obsidian: 100# CaveBlock islands use obsidian for Nether logsAcidIsland:
netherrack: 100leaves:
CaveBlock:
nether_wart_block: 60glowstone: 40The gamemode key must exactly match the addon name as registered in BentoBox (e.g. BSkyBlock, CaveBlock, AcidIsland).
When a tree grows, the replacement block for each log or leaf is resolved in this order:
- Per-tree override for this specific tree species (highest priority)
- Per-gamemode override for the gamemode that owns the world
- Global default for the dimension (lowest priority)
dimensionaltrees.admin.* # Access to all DimensionalTrees admin commands
The admin command is available as /dtrees, /dimensionaltrees, or /dt.
| Command | Description |
|---|---|
/dtrees reload | Reloads the config.yml without restarting the server |
Please submit issues at GitHub Issues or ask in the BentoBox Discord.