Dynamic Trees: Universal Compat

Adds broad compatibility between Dynamic Trees and modded wood types. Automatically detects trees, registers species, and integrates growth systems. Built as a scalable framework to support many mods without requiring individual compat patches.
Back to Files

Forge-2.0

File namedynamictreescompat-2.0.jar
Uploader
GaboouuGaboouu
Uploaded
Aug 20, 2026
Downloads
81
Size
347.1 KB
Mod Loaders
Forge
File ID
8689621
Type
B
Beta
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:dynamic-trees-universal-compat-1504017:8689621")

Learn more about Curse Maven

What's new

Dynamic Trees: Universal Compat - Development Update

Added

  • Configured-feature-first tree component discovery using the actual trunk, foliage, branch, and provider block states used by Minecraft worldgen
  • Generic topology fingerprinting and Dynamic Trees archetype selection for exact, approximate, and generic fallback generation
  • Client model/texture resolution through source blockstates, models, parents, and texture aliases
  • Explicit per-candidate compatibility results: generated exact, generated approximate, generic fallback, already supported, intentionally unsupported, incomplete, or failed
  • Worldgen execution tracer for claimed-but-still-generating and unclaimed source feature diagnostics
  • Persisted runtime observations and source-feature overrides for later restart processing
  • Generated-pack staging: newly discovered resources are written to generated_trees_pending_restart and activated before Dynamic Trees scans them on the next restart
  • Mandatory client restart screen during the one-time migration from the legacy generated-pack layout
  • GabouLibs as a required runtime dependency

Fixed

  • Prevented minecraft:air from being accepted as a tree component or worldgen probe block
  • Prevented structural false positives such as boards, planks, and bundles from becoming trees
  • Preserved source-specific descriptors even where different source features share the same primitive materials
  • Prevented Dynamic Trees seed/sapling null-registry crashes caused by adding newly discovered species to an already-live resource pack
  • Restricted runtime tree worldgen matching to strong vegetation/tree evidence, avoiding fluid, lake, and unrelated feature contamination
  • Excluded bamboo from automatic tree conversion

Important restart behavior

  • Dynamic Trees registers generated branch, leaves, seed, and sapling blocks only during startup.
  • The first launch after migrating from the old generated-pack format intentionally has no active generated compat trees. A non-dismissible screen requires quitting Minecraft; the following launch activates the staged pack.
  • Later discovery changes are also staged for a full restart rather than applied through a live datapack reload.

Earlier development additions

  • Initial Dynamic Trees compatibility system for modded trees
  • Automatic detection of unsupported trees from loaded mods
  • First working integration with Atmospheric (rosewood)
  • Runtime generation of Dynamic Trees data (species, families, seeds, leaves)
  • World generation replacement system for supported trees
  • Client asset generation for branches, leaves, saplings, and seeds
  • Debug logging for detection, registration, and worldgen

Fixed

  • Missing textures for generated trees (pink/black rendering)
  • Incorrect asset paths for branch and leaves models
  • Worldgen registration not being applied due to incorrect DT data structure
  • Feature canceller not handling multiple namespaces properly

Improved

  • Switched to proper Dynamic Trees datapack-based registration instead of direct registry usage
  • Improved worldgen replacement logic using DT biome database
  • More reliable detection of wood types using Moonlight integration
  • Better logging for debugging generation and replacement issues

Known Issues

  • Opaque custom worldgen features may not expose enough topology for an exact Dynamic Trees translation and can use an approximate archetype
  • Some source placed features remain unclaimed until the tracer/runtime observation pipeline has enough strong identity evidence
  • Existing chunks are not retroactively converted

Upcoming

  • User-provided custom topology JSON files for exact overrides of approximate trees
  • Additional registered topology resolvers for mod-specific custom feature codecs
  • Further worldgen mapping and cancellation coverage for opaque/nested feature graphs
  • Continued asset-model compatibility improvements for unusual blockstate/model layouts

This mod has no additional files