Original Plugin: https://dev.bukkit.org/bukkit-plugins/botany/
- Tested Minecraft Versions:
Botany is a server plugin that attempts to recreate natural plant regrowth in the Minecraft world.
PLEASE NOTE: THE RESIDENCE SECTION IN THE CONFIG DOES NOT DO ANYTHING AT THIS TIME, THIS WILL BE INTEGRATED AT A LATER DATE
Reasons to use Botany Reborn
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 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 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.
Botany Reborn is compatible with Factions, Towny, Feudal and WorldGuard!
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.
Information about commands, permissions, and config.yml switches are found in the spoiler below.
Information about the plants.csv file format and how it works can be found on the plants.csv spoiler below.
the plugin knows one command with several subcommands: /bot or /botany
Display statistics about plant growth.
/botany enable|disable <world>
Enable or disable the plugin for the listed world
List the worlds that the plugin will grow plants in
Display a statistical analysis of the area around you and what plants are growing there
Allows use of the botany command. Default: op
The default values defined in the config.yml are:
Explanation of each parameter:
- blocks: how many attempts per tick are made to plant a new plant.
- ticks: interval (Minecraft ticks) between planting attempts (1/20 of a second)
- density: scale each plant density with this factor - values between 0.0 and 1.0 mean lower plant densities, values higher than 1.0 mean higher plant densities.
- saplings: enable planting of saplings
- cacti: enable planting of cacti
- trees: plant whole trees instead of saplings. This prevents saplings from being placed in a place where they can't grow due to space, and also allows mega trees and tall jungle variants to grow, proper swap trees, etc. (This is an experimental option and not recommended)
- protect: enable all protection plugins. If this is disabled the other protect_* options have no effect.
- protect_factions: enable factions protection
- protect_towny: enable towny protection
- protect_worldguard: enable worldguard protection
- protect_residence: enable residence protection
- worlds: a list of worlds that Botany will consider planting in
How to change
Edit the plants.csv file in the plugin's configuration folder. The file is editable with a text editor but also can be edited with a spreadsheet application permitted that it creates the same format when storing.
The default plants.csv file will be installed in the plugin configuration folder when you first run the plugin.
From v7 on, plants.csv contains a VERSION marker that will allow the plugin to spot an outdated file, and will warn you when the plugin loads on the console. In doubt, please remove your plants.csv and let the plugin install a new default version for you.
How it works
At startup, the plugin reads the plants.csv file and parses each line. Each line starts with a Biome name (e.g. FOREST) and then "the plant to plant", plus some parameters. This combination allows you to plant any type of plant in any Biome, and have different densities for a plant in a forest vs. in a field, or plant something on sand instead of dirt, or even on top of gravel.
Empty lines are ignored. Lines with '#" anywhere are ignored entirely. No spaces may be present in fields.
Proper entries have 5 fields. Each field has specific meaning and requirements.
the format looks like this:
- Biome: A valid bukkit Biome enum name. You do not need to distinguish between MESA and MESA_*, as the plugin considers them equivalent, so for instance a TAIGA is considered identical to a COLD_TAIGA.
- target-plant: A valid bukkit Material enum name. Example: LONG_GRASS
- target-byte: A required data byte for target-plant. Example: for normal grass this is 1.
- base-block-type: A valid bukkit Material enum name. Example: DIRT or GRASS. The plant will only be planted if the block underneath it is exactly this Material.
- scan-block-type: A valid bukkit Material enum name. Example: LONG_GRASS. This field allows you to scan for one type of block, and plant another, allowing you to look at LEAVES but plant a SAPLING.
- scan-byte: A required data byte for scan-plant. Example: for a sunflower this is 0.
- density: A float value (0.0 to 1.0) that defines how dense this plant may be planted. If the density of this plant type is higher than the value given here, the plant will not be planted.
Many Biome's have primary and derivative sub-biomes, like TAIGA and TAIGA_HILLS. They are essentially planted in exactly the same densities and plant varieties, so Botany treats them equally. Here is a table of which Biomes are treated identical.
BIRCH_FOREST: BIRCH_FOREST_HILLS, BIRCH_FOREST_MOUNTAINS, BIRCH_FOREST_HILLS_MOUNTAINS
TAIGA: TAIGA_MOUNTAINS, COLD_TAIGA, COLD_TAIGA_HILLS, MEGA_TAIGA, MEGA_TAIGA_HILLS, TAIGA_HILLS, COLD_TAIGA_MOUNTAINS, MEGA_SPRUCE_TAIGA, MEGA_SPRUCE_TAIGA_HILLS:
JUNGLE: JUNGLE_HILLS, JUNGLE_EDGE, JUNGLE_MOUNTAINS, JUNGLE_EDGE_MOUNTAINS
SAVANNA: SAVANNA_PLATEAU, SAVANNA_MOUNTAINS, SAVANNA_PLATEAU_MOUNTAINS
MESA: MESA_PLATEAU_FOREST, MESA_PLATEAU, MESA_BRYCE, MESA_PLATEAU_FOREST_MOUNTAINS, MESA_PLATEAU_MOUNTAINS
DESERT: DESERT_HILLS, DESERT_MOUNTAINS
BEACH: STONE_BEACH, COLD_BEACH
OCEAN: DEEP_OCEAN, FROZEN_OCEAN
EXTREME_HILLS: SMALL_MOUNTAINS, EXTREME_HILLS_PLUS, EXTREME_HILLS_MOUNTAINS, EXTREME_HILLS_PLUS_MOUNTAINS:
How to read/use this table: If you put SWAMPLAND in plants.csv, then the plant defined in that line will be planted in both SWAMPLAND and SWAMPLAND_MOUNTAINS.
If you would like to leave a rating and a review, I would be very greatful!
I would just like to thank @Sidias for kindly donating to the project!!
Botany Reborn 3
Botany Botany is a plugin that attempts to recreate natural plant regrowth in the Minecraft World