Giant Trees

Plugin Image

With the death of Bukkit, I will no longer be supporting this plugin. If it still works for you, fantastic. If not, you are on your own. All the source will remain available on GitHub. Farewell, -DeltaHat

Giant Trees

Giant Trees is a plugin for adding procedurally generated giant trees to your world. Giant trees are generated in three ways:

  • Giant trees are grown in creative/survival mode by planting saplings and fertilizing with bone meal
  • Giant trees are summoned with a command
  • Giant trees naturally grow when new forested biomes spawn

Tutorials in other languages:

Planting Giant Trees

To plant a giant tree in creative/survival mode, perform the following steps:

  1. Flatten a 5x5 area of dirt
  2. Surround an emerald block with two rings of saplings
  3. Fertilize a sapling with a stack of 64 bone meal
  4. Stand back

The type of sapling fertilized will determine the species of giant tree that grows.

planting giant trees


To create a giant tree with a command, use the /tree-create or /gt command, followed by the name of the tree. Tree names are found in the plugin's data directory. For example, to summon a giant acacia tree, use the command

/gt tree.ACACIA

To edit the model for an existing tree, or create a new tree model, use the /tree-edit command. This command can only be used from the server console.

/tree-edit tree.ACACIA

Naturally Growing Trees

By default, Giant Trees will grow naturally in newly generated chunks in the default overworld (the world called "world"). To add giant trees to more worlds, increase the frequency of tree growth, or disable natural tree growth altogether, edit the plugin's config.yml.

Tree Species

For the beta the following species of trees can be summoned with the /gt command:

  • tree.ACACIA
  • tree.BIRCH
  • tree.DARK_OAK
  • tree.JUNGLE
  • tree.OAK
  • tree.SPRUCE

More tree species will be added in future releases.

Undoing Giant Trees

Trees summoned with the /gt command can be undone using WorldEdit's //undo command. This feature is automatically enabled if WorldEdit is installed.

Making Your Own Giant Tree Species

You can make your own species of giant tree. Start by using the /tree-edit command from the server console, giving it the name of the tree you want to edit or create. (For new trees, ignore the file not found error). As an alternative, you can double-click the Giant Trees plugin .jar file to start the visual tree editor.

editing a tree

Design your tree using the visual tree editor. When you are done, click save and exit the visual editor. To add roots to your tree, create another tree with the same name as your tree, with .root added to the end. For example, /tree-edit tree.ACACIA.root. Root trees are rendered upside down in the world and scaled to match their tree.

Is your new tree really awesome? If so, PM me the model and I'll include it in the next version of the plugin.


  • gianttrees.create (default OP) - Allows the creation of a giant tree using the tree-create command.
  • gianttrees.grow (default true) - Allows a player to grow a giant tree by fertilizing a grid of saplings.

Source Code


This plugin utilizes Hidendra's plugin metrics system. the following information is collected and sent to unless opted out:

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • Plugin's version
  • Server's version
  • OS version/name and architecture
  • core count for the CPU
  • Number of players online
  • Metrics version

Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Jabberwockie666 Jabberwockie666 Sep 30, 2015 at 17:35 UTC - 0 likes

    Baby steps to victory.

    Step 1. Make sure make a biome.TREETYPE.xml copy/edit for each of the 60+ Biomes.

    Step 2. Do not expect to give this to your members. (GT command fails for most in 1.8.1+?) Get it to make trees manually where you want them OR natually %chance based every chunk. Step 2.B WORLD BORDER. To avoid massive FPS drops and chunk loading lag or slowly growing facepalm palm trees?? Make sure your naturally grow trees is working. (Preferably with a new world) Now flood fill your radius border and it will generate ALL chunks and ALL trees without anyone even ever being there. This massively decreases the above FPS drops and dire new chunk load lag and makes it very smooth.

    Issues? After making sure all your root type trees match the surface log types /facepalm ... ... Please note the decay/check decay of the leaves. *GASP!* If some rambo leeroy jenkins tries to actually chop down the 100ft acacia? The leaves will not despawn. Hrmm. replacenear 30 18 0 will clear these flying Bio-Clouds. If you have a tree type 30 blocks high with variant of 10 blocks some? MCMMO will treefeller these leaving the leaves. :/ :/ !!

    Fear the shadow forest!! Black as the sky of night at 11 in the morning? MOBS. MANY. Depending on the design of your trees they can become serious darkspawn areas high up in branches too. They cast major shadows below. Mobs everywhere.

    You can still get it to spit out 100s of tree variations naturally in a per biome. It looks gorgeous. Do it right and nobody lags ever. You can make seriously mad trees. Use world edit to turn 100block high spidery spiral twisting upward spiked trees into freaky stone temples etc. This plugin is all about the custom trees and per biome settings!

    To the "bukkit died" commenters? Bukkit death? Spigot IS Bukkit. However.. sadly.. the trolls can only keep changing the code every new "snapshot" version taking it further away from Bukkit all the time getting fatter with junk and unfinished code. Trying to match Mojang's evertrollface shifty code. It attempts tp enforce the 1.7.8 "NO" EULA.

    Spigot blows chunks. It does hower still work and keep us all up to date with MC versions but It cannot seem to release a single "Final release" since bukkit discontinued. Always snapshot borderline dev "updates". Bukkit didnt die, it was killed. Microsoft baught Minecraft and then bukkit dropped dead. Have fun! Game over. Go play realms or MC Xbox. The only thing that kept Spigot alive (same takedown notice) was legal fee support through donations and taking a % for plugins sales. :/ This is one of many plugins designed for 1.7.9 ish era bukkit. Reliability fell below standard when Bukkit was killed. Spigot vs Microsoft. K then.

    With the evertrollface shifty code? Spigot keep having to shift thier code. This makes thier new version break many plugins at a time. How are devs supposed to rely on that? - End.

    When 1.9 new API comes out we and many more devs are history. Enjoy the trees...

    Last edited Sep 30, 2015 by Jabberwockie666
  • Avatar of ke4zzy ke4zzy Jul 18, 2015 at 01:50 UTC - 0 likes

    Works to perfection. We use it on our server and for new trees as you traverse through the wilderness on chance of spawn. Works great on 1.8.7 thanks so much You can check it out at ip:

  • Avatar of phoenixlzx phoenixlzx May 16, 2015 at 06:40 UTC - 0 likes

    it works fine on my spigot-1.8.3 server with manual grid placement method. Commands seems not work.

    +1 for @seanskroht, you dont need to stop this great plugin. if you need a hand, i would like to help.

  • Avatar of seanskroht seanskroht May 02, 2015 at 04:05 UTC - 0 likes

    Hi DeltaHat,

    Thank you for developing this great plugin in the past, however I don't think it's necessary to signal it's death based on Craftbukkit not continuing to be developed, which is simply not true.

    Spigot is continuing to maintain bukkit which can be downloaded from their website and compiled with Git Bash. If you don't wish to continue with it simply because you've lost interest or don't have time, then fair enough, otherwise take a serious look at Spigot.

    It would be nice if developers became more aware of Spigot so these fantastic plugins can continue.

    Last edited May 02, 2015 by seanskroht
  • Avatar of Ceress Ceress Apr 16, 2015 at 15:09 UTC - 1 like

    If anyone is curious, I am currently running this plugin on my 1.8 Spigot server. Random generation of massive trees out in the world works just fine in new chunks. Both the planting and command methods of adding them, however, does not. Luckily, my current maps are all brand new.

  • Avatar of pokekart2014 pokekart2014 Apr 05, 2015 at 19:33 UTC - 0 likes

    It's really like one of those mineplex servers, where you have giant trees at spawn...
    Well, Bukkit is still developed by the Spigot team, and isn't completely dead.
    Please update this plugin to 1.8,
    I'm looking really forward to it!

    public void onEnable() {
    getLogger().info("Bringing out Rex the Test Dog...");
    getLogger().info("Feeding him...");
    getLogger().info("Reasurring him...");
    getLogger().info("Sending Rex the Test Dog...");
    getLogger().info("Buying new Rex...");
    getLogger().info("Plugin intialization complete.");
    } ZBDH80da9df1ac9a4c11872f7d782aa9084c

  • Avatar of Liger_XT5 Liger_XT5 Mar 03, 2015 at 03:51 UTC - 1 like

    Though the original bukkit is dead, it's still being easily and frequently updated by Spigot.

    MCDen @
    Details at PMC!

  • Avatar of cricketcricketcricket cricketcricketcricket Feb 20, 2015 at 05:56 UTC - 0 likes

    Update this, don't be a turd like the rest

  • Avatar of syberia97 syberia97 Jan 13, 2015 at 21:24 UTC - 0 likes

    [22:21:28] [Server thread/WARN]: [GiantTrees] Task #8767 for GiantTrees v1.1 generated an exception java.lang.VerifyError: class com.ryanmichela.trees.history.NoChangeBukkitWorld overrides final method setBlockType.(Lcom/sk89q/worldedit/Vector;I)Z at java.lang.ClassLoader.defineClass1(Native Method) [?:1.7.0_65] at java.lang.ClassLoader.defineClass( [?:1.7.0_65] at [?:1.7.0_65] at [?:1.7.0_65] at$100( [?:1.7.0_65] at$ [?:1.7.0_65] at$ [?:1.7.0_65] at Method) [?:1.7.0_65] at [?:1.7.0_65] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at java.lang.ClassLoader.loadClass( [?:1.7.0_65] at java.lang.ClassLoader.loadClass( [?:1.7.0_65] at com.ryanmichela.trees.rendering.WorldChangeTracker.applyChanges( [?:?] at com.ryanmichela.trees.rendering.Draw3d.applyChanges( [?:?] at com.ryanmichela.trees.rendering.TreeRenderer$1$ [?:?] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at org.bukkit.craftbukkit.v1_8_R1.scheduler.CraftScheduler.mainThreadHeartbeat( [spigot1.8.jar:git-Spigot-13716d9-0899683] at net.minecraft.server.v1_8_R1.MinecraftServer.z( [spigot1.8.jar:git-Spigot-13716d9-0899683] at net.minecraft.server.v1_8_R1.DedicatedServer.z( [spigot1.8.jar:git-Spigot-13716d9-0899683] at net.minecraft.server.v1_8_R1.MinecraftServer.y( [spigot1.8.jar:git-Spigot-13716d9-0899683] at [spigot1.8.jar:git-Spigot-13716d9-0899683] at [?:1.7.0_65]

  • Avatar of dddylan98 dddylan98 Dec 27, 2014 at 01:02 UTC - 0 likes

    @Liger_XT5: Go

    Using /gt tree.TREETYPE with WorldEdit on my server allows me to do it fine. I have yet to try it with randomly spawned trees or using the saplings.

    Using Spigot 1.8


Date created
Aug 24, 2011
Last update
Aug 20, 2014
Development stage
  • enUS
GNU General Public License version 2 (GPLv2)
Curse link
Giant Trees
Recent files



Optional dependency