Botany
Botany
Botany is a bukkit server plugin that attempts to recreate natural plant regrowth in the Minecraft world.
Reasons to use Botany
Ever got tired of having to use bone meal to make your landscapes look natural again? Fighting lots of spiders causing all your grass to break? Are your plains looking really, really plain? This bukkit plugin slowly and naturally will grow back plants that are natural to a biome, such as a thick grass cover in Savannas, flowers on plains, spruce trees in Ice Biomes.
Normal Minecraft worlds are very static - only players will cause changes to the world, perhaps an ender will move some blocks around. This plugin will, just like Sedimentology, create a more natural and dynamic world that adapts and behaves as the real world. If you mow your grass, it will slowly regrow over time. If you chop down trees, saplings will come up over time and regrow the forest.
Considerations
Currently, Botany plants most trees, grasses, ferns, and sunflowers. Most of the regular flowers are not planted due to the sheer number of possibilities and combinations, but they may be added in the future.
Some plants like to grow in little clusters, and Botany can not yet achieve this result, instead, Botany tries to litter plants of a type in a somewhat unordered way so that the density is close to the measured experimental values.
The list of plants that Botany plants in each Biome is configurable (see below) and can be modified by a server admin to exclude plants or add new plants that are not covered by the base list.
Do you like a more dynamic world? Please check out my Sedimentology plugin too!
Using this plugin together with other plugins?
Recommendations for other plugin's settings:
UberForest
- isForestGrowthEnabled: false
UberForest's way of growing forests is not compatible with Botany, make sure you set "isForestGrowthEnabled: false" in UberForest's config.yml. UberForest does nothing to prevent overgrowth of forests and will happily spread spread trees that do not belong in certain Biomes. Also, UberForest is not maintained and cannot properly create seedlings for Acacia and dark oak trees.
PwnPlantGrowth
PwnPlantGrowth modifies seedlings or plants, but doesn't interfere with how forests spread in the long run. The combination should be without any issues, and PwnPlantGrowth will create an even further natural simulation. Recommended!
Sedimentology
Goes without speaking that Sedimentology was designed to work well together with Botany. While they share code, the plugins do not depend on eachother, but the outcome of running both will enhance gameplay and create interesting benefits and drawbacks for users, creating a dynamic world that they will appreciate in the long term.
Configuration
Information about commands, permissions and config.yml switches are found on the Configuration page.
Information about the plants.csv file format and how it works can be found on the plants.csv page.
Someone updated it for 1.10, "Botany Reborn", and it's available for download. At the time of writing the dev isn't releasing the code or responding to queries at all.
Can you update it to 1.9.X? Now I cannot use it. :C
@Goooooogle
Yes, an update for 1.7.10 would be awesome
Is it possible that this plugin could be updated to support the latest WorldGuard API as this is what seems to be causing the error shown in the comment below. I would love to continue using this awesome plugin, thanks!
I get major console spam with this plugin as well using latest build with the latest spigot 1.8 build.
http://dev.bukkit.org/paste/11992/
@yurisuika
Just re-read that particular code section again, and it does indeed replace leaves blocks with plants as you said, there is just a check missing to see if the target block is air.
Hey, still using this plugin in 1.8, so very useful and downright cool. :)
However, I've realised something that kind of breaks its compatibility with the custom trees in my server. Back in 1.7 I noticed that mushrooms i had set to spread to logs were breaking leaves to do so (obvious on the low growing shrubs), so I simply commented that out in my config. I also noticed that somehow the shrubs were partially decaying on their own, but I didn't make the connection until now. In 1.8 I redid my terrain generation to have lots more low growing trees/shrubs, and I finally realised that the grass/ferns/etc set to spread over grass blocks were replacing the leaves as well.
Now, I wonder if this is an error in the plugin or if it is a happening of mechanics? Because grass normally dies to dirt with most blocks placed above it, but leaves let light through. Still, other blocks like walls and fences do the same but aren't replaced by the spreading grasses, nor are other plants like flowers or crops replaced. I would think that air should be the only block allowed to be replaced, but it seems that leaves are in that boat as well.
I don't know if it was coded to do this or not, but it seems like something that shouldn't be happening.
no more updates?
@mtdutch
The speed of planting is already configurable through settings.
Since this plugin doesn't plant trees, but saplings, you can already achieve different tree forms with a plugin like UberForest, so that isn't going to get implemented in Botany, as that would just duplicate functionality.
Making Botany go slower over time would be very complex, as it would mean that it has to retain state for chunks, which it currently does not.
Botany and Sedimentology are very low impact on a server. More players and larger maps do not make it cost more CPU resources, and the default settings are very conservative. You should, compared to a server without them, not see any CPU usage difference.
Hi ! I have an idea, plants/trees grow slower, and not as many in areas that Botany has already renewed for a few times.
And yes, custom shaped trees would be cool, perhaps some special ones in biomes that have very little to no trees, but this goes more towards terrain generation than to renewing it.
Anyway, can you give an estimate on how much this plugin affects server performance ? and how much Sedimentology does.
@s0f4r
Have you thought about releasing an API to hook into this, also going to be moving over to Spigot site, or maybe open up a Jenkins?
Ah, thank you. Well I'll report now by the way I use Sedimentology and Botany as well on the server, Spigot version 1.7.10-R0.1. Zero errors X).
I though am unfortunately unable to find any Bukkit Plugin that actually adds custom trees or plants into the game. If you know any that would be compatible with my server please let me know.
Or, feel free to PM if I could commission something like that off you for the community, IE: pay you to make it.
@asonofashadow
nope, adding custom plants is something that requires both a server plugin and a client side mod, and is something Botany in itself does not support, nor do I intend to add that functionality (there are already mods/plugins that do that).
I may not have been asking my question clearly enough. Is it possible with botany or will it be to add a custom plant which does not exist in minecraft or a installed plugin or mod? Say such as a new flower, say called dark sunflower, with a custom graphic via the plants.csv?
@asonofashadow
sorry, that's not something I can help you with - custom graphics are something that need to be done both server side and client side, and I haven't the faintest clue. All I know is that Bukkt-wise it works.
DARKSUNFLOWER_PLAINS,DOUBLE_PLANT:0,GRASS,DOUBLE_PLANT:0,0.01000 DARKSUNFLOWER_PLAINS,DOUBLE_PLANT:2,GRASS,DOUBLE_PLANT:2,0.01000 DARKSUNFLOWER_PLAINS,LONG_GRASS:1,GRASS,LONG_GRASS:1,0.25000
How would I set the above to use custom graphics on the server? Do I need to add them to a resource zip file? Thank you ahead of time.
@asonofashadow
Custom plants should already work, as long as the implementation of these plants properly extends the material enum (which I don't see how it could work otherwise).
All you need to do is determine the proper string value to use in plants.csv - you should be able to get this information from the mod.
Do you think it would be possible to define custom plants in the plants.csv next version to read materials or models from a folder or something of the sort?
@k3ldon
Haven't had the time to work on this problem, but I'll get to it at some point - sorry, things are just busy for me at the moment.
Hi S0f4r!
First, thanks for you awesome plugin!
There is a little error with botany and Mcore. I have desactivated protect_Factions for this moment. http://dev.bukkit.org/paste/10576/
Ciao
Edit Oops! I did not see theKeldon's comment about the same problem..sorry! :)