UberForest
General
A highly configurable forest plugin. Forests spread naturally at a configurable rate based purely on sapling growth! Spruce and Birch saplings can also grow very large variants similar to oak and jungle trees (and they look good too)! Overcrowding algorithms allow you to configure how dense or sparse forests can grow. You can even configure a world with massive dense forests that players need to work at to keep them from spreading too thick.
Maintenance free reforestation on well used larger Minecraft servers is now a possibility!
Time Lapse Video
See UberForest in action! This was using very agressive growth settings with no overcrowding protection enabled ;) The forest at ground level was so thick you'd need shears to get anywhere in it! UberForest time-lapse video
YouTube Reviews
- ServerMiner gives a concise and to the point summary of UberForest ServerMiner Review
- Andrew and James from UltiByte review UberForest! Utilitbyte Review
- The Russians review UberForest (I think?) Uncraftables Review
Uber Trees
- Spruce Trees up to 24 blocks tall
- Birch Trees up to 16 blocks tall
- Checks if the conditions are good for growing an Uber tree (similar to the normal Minecraft tree checking algorithm)
- Trees will not destroy any non-nature blocks
- Trees requiring a larger base will sometimes create "roots" one block down if needed
- No user interaction required! Works with or without bonemeal!
- Users can still farm trees! Torches placed within 2 blocks of a sapling will prevent it from growing Uber, yet still allow it to grow normally :)
Forest Growth
- Forests plant themselves, once a sapling grows into a tree, a new sapling (configurable) of that tree type is placed nearby on an appropriate tile.
- No user interaction required! Works with or without bonemeal!
- Players can easily manage UberForest growth by smacking away any saplings. No saplings = no spreading as the saplings only spawn when other saplings grow :)
- Adjust the rate of growth in specific biomes. Keep your plains plain!
- Overcrowding protection allows forests to grow "spaced" out or jam packed with trees and saplings. It's up to you! See the detailed configuration section for more details: here
- Use combinations of fence, cobble, smooth brick, torches, glowstone, crops and logs to stop spreading. These blocks will also work when placed 1 under the surface. Saplings will not spawn within whatever distance overcrowding radius is for these blocks. Complete List
Detailed Configuration Notes
You can view more detailed information on config.yml settings here.
Tips
- If you are running as separate tree chopping plugin you may want to test if the uber trees chop properly in it. If not then you can just disable the uber trees in the config and just leave sapling spreading enabled :)
- Remember ForestSpreadSaplings and UberForestSpreadSaplings are additive!
- Regenerate your config if you're upgrading from prior to 1.0 to see all the options available.
Future Improvements
- Implement a better way of players managing growth near their land.
- Mycelium/UberMushroom Growth!
- Sharks with Lasers (one day!)
@lastrachris
Found the bug! Was a tricky one ;) Fixing it right now, this fix will be included in 1.0.3!
@Tobyz28
Altitude restrictions are now added! By default saplings will not spread when growing below 60 or above 128. Regenerate the config if you wish to tweak these options!
1.0.3 Will now have some more overcrowding checks before placing a sapling. Fences, Fence Gates, Crops, Glowstone, Torches, Logs, Cobblestone, Smooth Brick and other Saplings will now prevent a sapling from growing if found anywhere within it's overcrowding radius. This means if you would like to create a sapling free protection zone you can use any of the above materials to keep saplings from spreading :) You can even place the above blocks underground to make an invisible wall :)
@UltiByte
Oh wow awesome! :D Toss me the link whenever you get to it and I'll have it up on the site in no time! :D
We've just filmed a video for your plugin by the way :P
I'll try to have it edited and uploaded by the end of the weekend at the latest. (It may even be up tonight!)
- Andrew
@lastrachris
Hey lastrachris, a few things!
I'll try a few tests on my own first to see if i can get it to happen. This is the first I've heard of that happening :) Update: Just finished testing and couldn't replicate it with the default config. Let me know the above bullets and i'll see what i can do!
Generally if a sapling was in a spot too crowded to grow, the grow tree event shouldn't have fired in the first place (which is what my plugin listens for). Do you have any other plugins relating to tree growth that may conflict?
Hello
Wonderful plugin, thank you for creating it. However I'm not sure if this is a bug or just a configurable feature, but a player right clicked a sapling (That was too crowded to grow) while having bonemeal in their hand and a massive amount of saplings began appearing. Let me tell you, there was enough trees planted to start a government take over. Is there anyway to turn this off?
Yea I'm going to implement version checking into the plugin so new versions add any new fields to your yml...
That did it, thanks! Just had to reload the config. I was wondering whyt I didn't have some of the option that were on your configuration page, lol.
@civ77
Hey Civ no it doesn't require a new world it works purely based on sapling growth to trigger spreading :) It won't cause any existing trees to die or be damaged (foliage can over lap though of course) The altitude idea is fantastic i'm going to implement this in the next release, but allow it to be more configurable... Right now saplings will not spread to blocks if they are 4 above or 4 below the sapling growing.
This plugin looks awesome, does it require a new world? Does it cause trees to die like in some other similar plugins or does it just spawn saplings on the ground near existing trees? Is it possible to resist tree growth based on altitude?
@Tobias2289
That is actually highly unlikely.. It would stress out initially for a moment, but the overcrowding algorithm used gets more efficient the more crowded the area becomes. The loaded chunks would populate very fast but that would be the extent of it :) Mind if your trying to set it up to crash a server you could certainly configure it to do that by setting overly aggressive growth areas and turning off overcrowding protection lol. :D Finally instant sapling growth is probably a block placed trigger, my plugin uses a sapling growth trigger - so you'll find they probably don't even conflict :)
Thanks for the feedback guys, usage for this plugin has skyrocketed...and I have no bug reports, crashes, server utilization issues or anything! Just a few great suggestions ;) Keep em coming!
Scary thought, This plugin + auto replant + instant growth = dead server.
This plugin is amazing. Its really fun to plant saplings around populated areas and see how the Forrest grow on dynmap. Our people on the server is struggling to keep the Forrest away from their fields.
Thx for this great plugin
@antikx
If SpreadRadius was set to 10, your cobblestone wall would at most need to be 10 Wide for normal and uber trees to not spawn on the other side. If the wall was 2 high, 9 wide should do the trick for most sapling types as any saplings planted on the other side will not grow with a 2 high block beside them (oak and jungle being the exception).
If SpreadRadius was set to 10, and your SaplingOvercrowdingRadius radius was set to 3, your wall was WOOD blocks it would at most need to be 6 Wide for normal and UberTrees to not spawn. This is because Wood is taken into account when calculating if a sapling being placed is in a "too crowded area" :)
Hopefully this clarifies things, there isn't really just one number, sorry i couldn't give a simpler response.. :) It varies based on the situation and the settings in the config!
I do want to develop this plugin with as few dependencies/measures for other plugins as possible so if i can find a solution to keep saplings from spreading via vanilla Minecraft blocks i will! Also open to suggestions, I run Grief Prevention on my server and would like to give users a way to "manage trees" as well :)
Thanks Tobz28. I appreciate your quick response. Ya, World Guard and/or Residence would be my preference. :) I was using fence in the strictest sense. If I were to build a border around a forest and make the border out of something like cobble stone, how many deep would it need to be in order to stop any tree from dropping a sapling on the other side?
@Xaphian
So in the config file, I would add '[Taiga]BiomeRateFactor 100' to reduce the growth in the taiga zones correct?
I would regenerate the config (it will generate the list of rate factors for you automatically and default them all to 100) and read the description in there on how to adjust.
Also, the higher the number at the end, the harder it would be for something to grow right?
The opposite actually 100% = Normal Full Growth Rate, 25% = 1/4 the regular growth rate(on average).
Also, adding the 'world' part to it, does it matter where I add this? and will it work for multiverse worlds as well?
Regenerate the config you'll see the worlds section clearly labelled :) This should work with multiverse just fine! I have not tested it myself though so please let me know how it works for you :D
Hope this helps! Here is an example of the default config that is generated :)
http://pastebin.com/FJvyiuZV
So in the config file, I would add '[Taiga]BiomeRateFactor 100' to reduce the growth in the taiga zones correct? Also, the higher the number at the end, the harder it would be for something to grow right? Since it has to check against a higher number? Also, adding the 'world' part to it, does it matter where I add this? and will it work for multiverse worlds as well?
@antikx
Currently it would depend on the type of tree for the most part (similar to regular Minecraft trees). Right now a fence, similar to real life, wouldn't stop a sapling from sprouting on the other side, but this sounds like a good Idea and I may add it as a future feature.
The trees / saplings themselves will not damage the fence though. If you have a fence made of Tree Stumps it would prevent any spawning within the overcrowding radius of the stump pieces, but this isn't really a pretty solution :)
I will need to think on how to best implement this ... it may be done by integrating with a few of the land claim systems /antigrief out there too!
This looks like a great plugin. thank you! Is there a way to artificially control the growth of the forest? You said: "Trees will not destroy any non-nature blocks" Would that include something like cobblestone? If I were to create a fence around the outside of the edge of where I want the forest to stop, how deep would I need to make the edges so that saplings won't land outside this "fence" and take root?
@RellHaiser
Hey RellHaiser! The next version has Biome specific factors to reduce growth in desired biomes just as you had suggested -with extreme flexibility!
The new version 1.0.0 has just been submitted for approval. It can be found here if you can't wait: http://dev.bukkit.org/server-mods/uberforest/files/16-uber-forest-1-0-0/