The main goal of Growing Trees Mod is create more dynamic, aesthetic, fun and natural looking trees while respecting the Minecraft graphic stylization and enforcing a narrow project scope that keeps things simple.
- A growing tree is a multi-block structure of rooty soil, branches, and leaves blocks that has many advances over the Vanilla Minecraft tree structures.
- The formation of the tree starts with a seed. This seed is either planted by hand much like a Vanilla sapling or the seed has a chance of planting itself if left on the ground in a suitable location.
- The tree then grows from a sapling, slowly increasing it’s size over time, into a full sized tree.
- The tree can then be chopped down at it’s base and all of the wood claimed at once.
- Take the place of vanilla saplings.
- Are dropped from tree branches slowly and at random.
- Have a chance of self planting if setting on a dirt/grass/podzol block and has a clear view of the sky above it.
Saplings (Oak, Spruce, Birch, Jungle, Acacia, and Dark Oak) and their respective seeds.
- Grow from seeds to fully grown trees over time.
- Grow in natural ways loosely modeled after real world trees and tend to grow in unique, believable ways.
- Grow around obstacles in a natural way.
- Are not just reskins but grow using different algorithms per species.
- Have growth rate and mature sizes that are biome, temperature and rainfall dependent.
- Drop seeds that can potentially plant themselves.
- Won’t grow in darkness. Leaves not connected to an outer tree branch or starved of light will die. Outer branches without leaves slowly rot away.
- Will die and rot in a dark place (some species produce mushrooms when they rot).
A sapling growing into a juvenile tree
Fully grown trees
Examples of various fully grown tree species.
- Provides nutrients to trees and can be depleted over time.
- Applied with bone meal will increase soil fertility and allows the tree to grow past it mature state.
- Applied with fermented spider eyes will destroy soil fertility and halt growth.
- Applied with Ghast tears turn the trees growing leaves into vanilla leaves and destroys soil fertility to freeze the tree how it is.
- Special effect particles are created on the entire tree when an acting substance is applied to the soil or bottom-most trunk block.
- Right click to get fertility level(0-15)
- As trees drop seeds the forest line spreads.
- Trees compete for sunlight when placed near each other and grow taller and skinnier than trees in the open. This produces a forest canopy effect.
- Canopies block skylight producing dark forests where mobs can spawn during the day and saplings fail to thrive.
- Podzol forms from dirt or grass under the dark forest canopies of some tree species. Podzol is meant to emulate forest leaf litter appearance.
Various examples of planted forests.
- Vanilla trees(leaves, logs, saplings) are not replaced and still spawn and function normally.
- All drops from growing trees are vanilla leaves, sticks, and logs. Growing tree parts are not obtainable in survival. Shears only obtain vanilla leaves.
- Rooty soil drops plain dirt when harvested or left without a tree it will return to plain dirt.
- Vanilla textures are used for wood and leaves making it compatible with resource packs that change wood or leaves textures.
- Seeds can be crafted from vanilla saplings and vice-versa.
- Fire spreads and burns at the same rate as vanilla tree fires.
- Works in multiplayer.
Under the hood:
- Trees grow using a combination of a cellular automata algorithm for leaves and branch network logic for trunk and branches.
- No tile entities are used. Rendering is done with ISimpleBlockRenderingHandler for better performance with large numbers of tree nodes.
- Blocks are only updated with updateTick() so chunks are re-rendered when dirty no more than with vanilla crops.
- Listener interface is used for bottom leaves blocks tick for creating seed drops and other effects. New listeners can be registered by other mods to expand tree behavior.
- All block states are encoded in the 4 bit metadata.
- Growing leaves blocks use 4 species sub-blocks to a Block using metadata encoding for conserving BlockIDs. This mod registers 9 blocks total.
- Trees and only trees.
- To provide advanced growing versions of vanilla trees.
- Zero to minimal configuration. Should work out of the box with sane settings or defaults.
- Provide interfaces for other mod developers to expand the mod with add-ons, new trees, effects, mobs and other things. If you need a hook then lemme know.
- Response to seasonal changes is considered inside the scope of the project.
- To achieve compatibility with other popular mods when appropriate.
- Stylization should not deviate from the Minecraft aesthetic. (All parts of a block model should be comprised of rectangular prisms with each face aligned to 1/16 meter)
- Optional world generation of growing trees to replace world gen of vanilla trees.
- Tree trunks thicker than 1 block and up to 3 blocks thick. Should be possible using special “shell” blocks. I haven’t worked out the details yet.
- Walking on leaves blocks should be slow and sinking. Falling on to leaves should prevent fall damage.
- Seasons. In autumn the trees turn fall colors, in winter leaves fall off completely and regrow in spring. Maybe work with Minecraft seasons mod.
- Falling leaf particles, especially in autumn.
- Cacti could be considered treelike and therefor not outside the bounds of implementation.
- Trees that fall over when harvested(special effect).
- Vanilla Tree Fruits (apples, cocoa beans)
- Comparator sensing of branch thickness
Examples of out of scope features:
- Species of trees not implemented in vanilla Minecraft (such as those in Forestry, Pam’s Harvestcraft, Natura, Biomes O’ Plenty)
- Creature entities, mobs, and/or particles (ents, squirrels, monkeys, fireflies, bees, etc)
- Fruit (other than vanilla Minecraft tree fruit products: apples, cocoa beans)
- Dungeon loot(pointless for this mod)
- Tree villages, villagers and/or trading posts
- Swings or other gadgets commonly attached to trees
- Magic, energy systems, XP drops, enchantments
- Tools and/or apparel(in survival, admin tools might be okay)
- Tree genetics and/or pollination , such as that in forestry
- Automatic fertilizers, detectors, or any kind of machine for interacting with the tree
I’m not suggesting that these are bad ideas or wouldn’t be fun but they are indeed outside the scope of what this project is meant to accomplish. Those wishing to implement out of scope features are welcome to do so in a separate mod. Popular mods tend to experience scope creep and featuritis. Ultimately, you end up with jet packs, metal ore trees, nyan cats, flaming super death cactus swords, and 15 kinds of creepers. I won’t have it. If you ignore this list and leave a comment asking for anything in the out of scope list, you will be ignored. Have fun talking to yourself.
How to install Growing Trees Mod:
- Download and install Minecraft Forge.
- Download the mod.
- Click on the Start Menu in Windows.
- Type run into the search box, and select the Run program at the top of the results.
- Type %appdata% into the Run program, and press Enter.
- Go to .minecraft/mods folder.
- Drag and drop the downloaded jar (zip) file into that.
- Enjoy the mod.