Giant Trees
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:
- Flatten a 5x5 area of dirt
- Surround an emerald block with two rings of saplings
- Fertilize a sapling with a stack of 64 bone meal
- Stand back
The type of sapling fertilized will determine the species of giant tree that grows.
Commands
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.
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.
Permissions
- 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/Issues
https://github.com/rmichela/GiantTrees
Metrics
This plugin utilizes Hidendra's plugin metrics system. the following information is collected and sent to mcstats.org 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.
@bigmommulgrew
That is very, very cool :D
Excellent work!
Hi Thought you might like to see what I've done with your mod
http://mulgrewenterprises.co.uk/minecraft/?q=node/23
@bigmommulgrew
No prob, have fun :D
Ah didn't catch the bit about the block IDs. Just growing a TNT tree now to test it out :)
Thanks for the help
@bigmommulgrew
It is a very alpha feature so expect crashes. I will look into the name issue this weekend, thank you for reporting it.
Please look at this page: https://github.com/CMahaff/Giant-Trees/wiki/Commands
Correct format is to use a Block ID, not "diamond"
I've travelled miles. I've created a new world test1. after adding it to the config file it created trees fine. Although with the chance set to 100% it bombed me out while it caught up, then gave up and crashed with an out of memory error. Then I created a new world "test 2" with a space in the name and in this world it does not grow giant trees
I also just tried creating a custom tree /gt 16 4 diamond gold
just to test it out. All I get is invalid tree
@bigmommulgrew
Are you exploring new areas? They won't just spawn into old chunks, you need to explore around a bit. It may take time as well since it does them one at a time and it's often out of site. Try making a new world, walking around a bit, and then letting it sit for a bit. See if you get anything.
Make sure you have it enabled in your config as well.
Hi I'm having trouble getting giant trees to generate naturally. I evenb tried setting the chance to 100%.
Could it be because my world name has a space in it. I've tried enclosing it in quotes.
@KingCold999
You'll need to do a lot higher than 18. 18 is the total height of the tree. You will get shrubs if you do low values like that.
Unfortunately there is no way to change how wide the tree top is beyond choosing the smallest width value.
And I avoided block:datavalue because A. Not all blocks store data the same way (or didn't when I wrote the plugin) and B. I didn't want people to have to check the wiki to make a tree. Especially since most people do not understand data values.
@CMahaff
Trying to generate moderately tall, thin trees. I went for a height of 18 and radius of 4. I expected a tall tree with a bulb of leaves at the top, but what I got is a giant shrub, 18 in height it seems but with leaves about 36 across, >8 times the size of the actual trunk, thats a bit more than 2.5x... how would I accomplish this? :S
Also Block:DataValue is usually the accepted norm for all plugins, so 17:0 would be oak, 17:1 would be spruce etc, so thats probably what he meant. :P
@Crunkatog
Height should be the total height = trunk + tree top
Width is the diameter of the trunk
Not sure where you got "17:3" from, but it is always just the block number. The only "special" values are "oak, birch, spruce, and jungle" which you would put instead of, for example, "17". So ex. /gt 24 4 jungle jungle.
Density of 0 has no leaves. I wrote this a while ago and the spawn code for trees is not great, hence their sometimes "squarish" appearance. But the Density basically means how often "tree sections" (one log block surrounded by leaves, to stop decay) is spawned in within the predefined treetop. So setting the density to 35 on small trees leads to very square trees. On bigger trees it can help fill out certain sections. I'm afraid what you talk about with diamond blocks isn't currently possible, though you could (manually) use worldedit to switch out logs in that area with diamond. Just an idea.
The radius is determined by the width of the tree. If I remember correctly it is 2.5 times the width in size. There aren't any options other than the default tree type I'm afraid. I originally planned on creating an API but quickly realized that developer support just wouldn't be around for a project this small. The code for this plugin isn't great and if I could do it over I would and will. For now it is in a code freeze until the official Minecraft API comes out - then I'll be re-writing it to work with that. Hopefully that will have some better options for threading, etc. than Bukkit which could really help with performance. It's a very basic plugin, and if I can improve the leaf spawning code I will definitely consider a way for users to define more complex trees with specific shapes, branches, etc. I can imagine a "formula" of sorts that could be added in a separate file to control these things while it would still be random.
Thanks for your well-thought out comment and sorry for the late response! College!
Hi, new to this plugin.
Few clarification questions on your params for tree creation:
Height: Is this the height from rootbase to the top of the crown? Or just the height from the rootbase to the centre of crown/top of trunk? From cadika_orade's comments it would seem to me, height = total tree height from rootbase to top of crown.
Width: This is confusing. Is this the diameter, or the radius, of the trunk? I want the trunks to be roomy enough across so that players can cut respectable treehouses out of them.
Logtype, leaftype: It appears that block ID's with damage values appended to them, simply give inconsistent results. For example, using "jungle" works, but using "17:3" does not, nor does specifying coloured wools, or Huge Mushroom blocks in a particular orientation.
Density: How does this work? If I set density to 0, do I get no leaves and all logs? Do I get a thin shell of leaves on the outside of a spheroid crown, that's otherwise completely filled with logs? Conversely, if I set density to 35, what does that mean in terms of the distribution of leaf blocks throughout the crown? What I'm getting at here, is this: does this value represent a percentage of the crown's random composition, or a particular spatial distribution, or what?
Tangent to that, say users want to create a tree whose crown is entirely made up of diamond blocks. Can the density be made so that users can specify a density higher than 35 for special trees whose leafblock value is a block that won't decay without log support?
Finally, how is the crown generation done? Is it possible for a user to make a tree with a crown of a customizable radius, or non-spherical or asymmetric crown? How about a crown with a custom geometric shape, e.g. a flattened ellipsoid or even a conical shape? (I realize these would be user-driven add-ons to the basic plugin; just wondering about how the generator calculates a crown's size and whether that's something I can alter.)
Thanks for your thoughts in advance.
@CoffeeNutz
Sorry this plugin isn't adding new features until the release of the official Minecraft API.
There is a tree generator that you can turn on. Find a seed with mostly grass and delete the map. Re-generate the map under the same seed with the tree generation for Giant Trees turned on. Walk around a bit until you're satisfied with the tree coverage. Then stop the server and disable that feature in Giant Trees. Bam. Giant Trees on grassland.
This will put a lot of stress on the server though, just a warning. I know it's complicated but currently it's your only option.
hey do you think you can create it to be used as a generator with Multi verse
so that i can hav it create a world with only giant trees or spare little trees.
Trying to get a graasland ish seed with giant trees for a world design of a huge ass forested world
@Hiramas
I just tried the plugin on my home computer (far inferior to your server) and the latest 1.3.1 dev build. It ran with no issues (other than major lag for me :P).
Try it out and let me know if the problem still exists. If it does feel free to open a ticket and we can work on it.
@Hiramas
Thanks for the info! Clarification about the RAM, it can't be 640mb. 6 gb maybe? Just a little confused. Do you know what your launch settings are? java -xMx etc.
Glad it worked in the past. Assuming the RAM is high enough your server should be more than powerful enough to handle Giant Trees even in the biggest sizes.
Again, sorry, I haven't had time to get in front of an IDE yet today to test things myself.
no problem, here they are:
Server: Server #175 CPU: Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz (8 Cores) Mit Serverkomponenten (1HE Rackserver) Uplink: 1000 Mbit
Nitrado standard server, RAM should be about 640.
No issues in 1.2.5, I have that server still running and it works.
@Hiramas
I'll take a look at it myself, but currently it's just spitting out of memory errors. Have you had issues before? It could be a bug in 1.3.1. That or 1.3.1 is much more memory intensive and now you don't have enough memory.
Can I get your server specs?
Hey, just wanted to get a short info around: In 1.3.1 craftbukkit dev version, nearly every tree size crashes the server. Got an error log for you: http://pastebin.com/k56k1asa
@SomeITGuy
Sorry for the late reply.
For the type you either want birch, spruce, jungle, or normal.
So in your case: /gt 30 4 birch birch
If you were doing a block you'd replace birch with a block number.