plants.csv

Defining your own set of plants

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.

Format

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>,<target-plant>:<target-byte>,<base-block-type>,<scan-block-type>:<scan-byte>,<density>
  • 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.

Biome equivalents

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.

SWAMPLAND: SWAMPLAND_MOUNTAINS
FOREST: FOREST_HILLS
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
RIVER: FROZEN_RIVER
EXTREME_HILLS: SMALL_MOUNTAINS, EXTREME_HILLS_PLUS, EXTREME_HILLS_MOUNTAINS, EXTREME_HILLS_PLUS_MOUNTAINS:
ROOFED_FOREST: ROOFED_FOREST_MOUNTAINS
ICE_PLAINS: ICE_MOUNTAINS
MUSHROOM_ISLAND: MUSHROOM_SHORE

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.

Share

Please post comments on this page with new plants that you'd like to see added to the default plant.csv file! If you post them here, I can include them with plugin updates.


Comments

Posts Quoted:
Reply
Clear All Quotes