
Dynamic Trees Compat
Beta Build — Active Development
Dynamic Trees Compat is a Forge 1.20.1 mod that automatically detects vanilla and modded trees and generates Dynamic Trees compatibility for them.
The goal is to avoid needing a separate compatibility addon for every tree mod.
Instead of relying only on block names, the mod reads the actual configured features, registries, blockstates, models, and worldgen data used by Minecraft.
Features
- Automatically detects compatible trees from installed mods
- Detects logs, stripped logs, leaves, saplings, branches, and other tree components
- Generates Dynamic Trees families, species, leaves, branches, seeds, saplings, assets, and worldgen data
- Keeps the original tree's log and leaf blocks
- Resolves textures from the original blockstates and models
- Replaces supported source trees in world generation with Dynamic Trees versions
- Filters out false positives such as planks, boards, bundles, bamboo, air, and non-tree wood features
Tree Shapes
The mod also tries to preserve the original shape of each tree.
When enough information is available from the configured feature, the tree topology is translated into a Dynamic Trees version.
If the exact shape cannot be reproduced, the mod selects the closest available Dynamic Trees profile based on things such as:
- Height
- Trunk size
- Canopy size
- Foliage placement
- Branch structure
- Tree type
This includes profiles for trees such as palms, conifers, acacias, large trees, shrubs, and broad-canopy trees.
If there is not enough information, an oak-like Dynamic Trees shape is used as the final fallback while still keeping the original tree's materials.
World Generation
Supported source tree features are replaced with their generated Dynamic Trees species.
The mod also contains a diagnostic system for finding trees that are still generating outside the replacement system, which helps improve compatibility with unusual worldgen implementations.
Restart Required
Newly detected trees are generated into a pending resource pack and become active after restarting Minecraft.
This is required because Dynamic Trees registers its generated blocks and species during startup.
The first launch after migrating from an older version may show a Restart Required screen. Simply quit Minecraft and launch it again.
Required Dependencies
- Minecraft Forge 47+
- Dynamic Trees 1.20.1-1.3.0+
- Moonlight Lib 1.20-2.16.23+
- GabouLibs 1.8.2+
GabouLibs also require Architectury API.
Current Limitations
This mod is still in beta.
Generated sapling textures are still a work in progress. The mod currently does not have a reliable way to dynamically create unique sapling textures for every detected tree, so some generated saplings may use temporary or generic visuals.
Some mods use custom Java worldgen features that do not expose enough information to perfectly reproduce their tree shapes. These trees currently use the closest available Dynamic Trees shape.
Existing chunks are not converted. Changes only affect newly generated terrain.
Planned
- Custom topology JSON files
- More support for unusual custom tree generators
- Better handling of nested worldgen features
- More accurate automatic shape conversion
- Continued compatibility improvements
- Improved automatic sapling texture generation

