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!)
@Vettexl
The next update will address that with biome specific factors that reduce growth in desired biomes. :) Also only active loaded chunks will repopulate. Unloaded chunks are not affected.
A very cool plugin & idea, but what's to stop the plugin from eventually populating every chunk with forests?
@Battelman2
Hey Battleman2 this is the timelapse here :)
Video
It's been at the top of this page just above the picture for a few days now :D
The time-lapse was made using fairly aggressive growth settings and no overcrowding protection. It's pretty cool to watch :D I think i'll make a few more with different settings using a newer version... Also if anyone thinks they can make a good time lapse on their server with live players in an active area I'll gladly post a link with credit up on this page for you :D
@Tobyz28
Hello Tobyz28 I like this plugin and was wondering if you posted that video you said U made of a time lapse. I think it would look cool too so i wanna see it :D
- Best Regards (keep up the good work) Battelman2
FYI for anyone wanting the latest file pushes the moment they're up (before they're approved), subscribe to file update alerts for this plugin. The good folks running the site are very busy so some approvals may take >20 hours before being reviewed.
@ray73864
Hey Ray, I've added this functionality just for you in 0.1.4 :) I've uploaded it now and it's pending approval! Regenerate the config.yml to see.
@Faldonboy
Faldonboy I just looked into world guard integration, it's not so simple to do as the events are not triggered by a player but rather by the world growing saplings themselves(with the exception of saplings sprouted by bonemeal - Which would only be 50% of the problem solved). I'll have to ask the worldguard guys if they have any suggestions on how to implement this when I have some time.
This plugin sounds awesome. One question though, is it possible to restrict what worlds this can operate in?
Any chance this can be hooked into worldguard? I'd really like it if tree's can't spread into protected regions if they weren't planted in said region to begin with.
Hey Everyone ran a test (and did a time-lapse video) of a spruce forest spreading with overcrowding protection on and it really looks amazing! No real issues with CPU over-utilization reported yet, and non I could see on our medium sized Minecraft server!
@RellHaiser Hey RellHaiser, that looks like a fantastic idea! I'll see if I can put that into the next release.
This is an amazing plugin, well done sir. I do foresee a potential issue with forest spreading though, and I also bring a simple solution...
You may not really want forests to expand too much into certain biomes, such as plains. I propose adding a percentage chance depending on biome that any saplings will be spawned at all on tree growth. Using the default ForestSpreadSaplings value of 1 any chance of less than 100% should be sufficient to slow forests down and stop them from "wiping out" biomes such as plains.
@fuzyfeet
Hey Fuzyfeet I know exactly what your talking about with regards to clear cutting, I have yet to find a good one either! I could probably EASILY modify this to allow for mycelium / mushroom spreading :) Let me add that to my to-do list. This weekend is pretty buys for me so haven't had a lot of time to get to the improvements i want to add!
@Rgre1
Hey Rgre1 I found the image on an icon site (I have the graphics skills of a 3 year old baby with fingerpaints), it looks to be the same lol. I'll look to augmenting mine to avoid any copyright issues :)
Wow, I've seen many people try to combat player clear cutting (anything from protected areas, to replanting a sapling where a tree was) but this is awesome. It doesn't feel forced and even adds a mild element of fighting nature's encroachment. Any possibility of this being adapted to mushrooms in their own biome (or any where Mycelium is placed)?
This doesn't happen to be the Forrst logo, would it?
@UltiByte Try installing Java 7 and let me know ;) This was compiled in java 7 ... ill have to make a java 6 version soon though!
If this solves it please report back so I know for sure :). I'm still learning the ropes with the varying bukkit setups people have :)
Hi, firstly I'd like to thank you for making this plugin, I've been waiting for over a year for a plugin like this to be made, and now one's arrived :D
However, I implemented it into my test server, with no other plugins in, running the latest version of craftbukkit, and it threw out this error:
[SEVERE] Could not load 'plugins\UberForest.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: me/tobyz28/UberForest/UberForest : Unsupported major.minor version 51.0 at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:154) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:223) at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:199) at net.minecraft.server.ServerConfigurationManagerAbstract.<init>(ServerConfigurationManagerAbstract.java:50) at net.minecraft.server.ServerConfigurationManager.<init>(SourceFile:11) at net.minecraft.server.DedicatedServer.init(DedicatedServer.java:105) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:377) at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) Caused by: java.lang.UnsupportedClassVersionError: me/tobyz28/UberForest/UberForest : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:44) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:143) ... 9 more
I really hope this is fixable, as I really love the idea of this plugin.
@linwetalion
Currently trees cannot break building blocks :) I'll look at other plugin integration/compatibility further down the road so that I can focus on the remaining UberForest features first.
@titen96
Thanks tinten, I was thinking about hooking into that, just haven't got around to see whats involved...
@Tobyz28
if you want to know how many servers use this you should implement plugin metrics
dont forget to make limitations so that trees don't break buildings and WG regions
Major update awaiting approval! The UberSpruce plugin will be renamed to UberForest!
Thanks for the positive feedback you guys, this next release i'm really excited about. Natural forest growth! We also have Uber spruce trees, faster code, and way more config.yml settings to play with!
I'm going to look into optimizing a little more of the checking logic next then see what I can do with the other tree types. Jungle may be tricky with the lack of grass and vines to generate, Oak already does a good job of growing Uber, perhaps i can find a way to increase the odds of Oak growing larger.
If you guys like the plugin please let me know, also if this is running on any very large servers id like some feedback on the performance.
P.S. Delete the old UberForest.jar/Config folder. The plugin file is now UberForest.jar :)
this is nice :) but when u run it with treeassist it gives unlimited wood :S hehe gona try version 1.0.3 to see if fixed that Thanks ! Edit : Latest version fixes the issue THANKS !
@Yandols
Just use BO2 plugins for TerrainControl, which offer a lot more trees than just UberSpruce.