promotional bannermobile promotional banner

Dynamic Trees - Au Naturel Edit

Trees that grow and change - with fixes and performance edits
Back to Files

DynamicTrees-1.20.1-1.4.9.jar

File nameDynamicTrees-1.20.1-1.4.9.jar
Uploader
acowadonisacowadonis
Uploaded
Dec 27, 2025
Downloads
1.9K
Size
3.6 MB
Mod Loaders
Forge
File ID
7383660
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:dynamic-trees-au-naturel-edit-1406388:7383660")

Learn more about Curse Maven

What's new

Corrected versioning.

Latest total changes (may also include changes from last version):

Thread-Safety Improvements (C2ME Compatibility)

  • Fixed ClassCastException crash during parallel chunk generation with C2ME/Chunky
  • LevelPoissonDiscProvider: Replaced HashMap with ConcurrentHashMap and atomic computeIfAbsent()
  • PoissonDiscChunkSet: Added volatile modifiers for cross-thread visibility
  • JoCodeRegistry: Converted to ConcurrentHashMap for thread-safe code registration
  • BiomeDatabases: Converted to ConcurrentHashMap with thread-safe Set

Worldgen Performance

  • BiomeDatabase: Eliminated double map lookup (containsKey + get → single get)
  • DynamicTreeFeature: Cached biome lookups, replaced forEach lambdas with traditional loops
  • CaveRootedTreeFeature: Cached biome lookups, replaced forEach with for loop
  • LevelPoissonDiscProvider: Reuse TreeMap across iterations instead of per-iteration allocation
  • JoCode: Use MutableBlockPos in generateFork(), cache Direction.values(), use int overloads in smother()

General Performance

  • DynamicLeavesBlock: Cache Direction.values(), use MutableBlockPos in fallOn(), early exit optimization in getExactSpecies()

Client-Side Rendering

  • FallingTreeEntityModelTrackerCache: Replaced stream-based cleanup with efficient removeIf()
  • FallingTreeEntityModel: Added RGB color caching to reduce redundant bit operations

This mod has no additional files