This suggestion is aimed at the Premium release, or, at the latest, the tail of it, prior to the Big Wait. In order to make that as realistic as possible, the suggestion is to make as small changes as possible, while still allow the plants to be viable for farming. Thus various improvements (such as adjustment of farming periods, additional produce, etc.) are out of the scope and are better suited for other suggestion threads.
Relevant bugs:
- 6940 (long standing bug with varying contents as parts have been fixed and new plants introduced)
- 8226 (Preference string for oats being "beer" when it doesn't produce beer and won't). Included only because the file is affected anyway.
- 10581 (Trees yielding no wood never show up). One of the "trees" is the banana plant, and its absence means the absence of banana and the booze made from it, apart from luck with elven imports.
Proposed implementation:
- Modify plants that produce inedible seed "containers" to directly produce the seeds, taking a cue from nut bearing trees.
- Add explicit seeds to plants that produce edible seeds, but do not have working seed extraction byproduct reactions (for some reason the absence of a usable "structure" component knocks out this functionality).
- Introduce two new reactions for the Farmer's Workshop to extract seeds from plants and "fruit" that can not be "repaired" through the mechanisms above. This affects plants that can only be cooked and whose seeds are inedible, as well as "fruit" without a usable "structure" part and whose seeds are inedible, and thus won't be collected by plant gatherers.
- Add the new reactions to the dwarven section of entity_defaults.txt.
Details:
Reactions, to be added to reaction_other.txt (I placed them last, but there may be a more logical placement)
-- Attempt to add reactions to extract seeds from plants and fruit that do not have
-- reactions that extract seeds as byproducts, such as things that can only be cooked.
-- The reaction class Explicit Seed Extraction has to be applied to those plants and
-- growths that should be valid targets for these reactions, as we don't want to
-- destroy "normal" ones along the ones we need to process separately. The number of
-- seeds extracted is set to double to expected amount to allow dabbling farmers to
-- set aside half of the crop for seed extraction and the other half for cooking and
-- still be able to get enough seeds to keep farming going.
[REACTION:PROCESS_EXTRACT_SEED_FROM_PLANT]
[NAME:extract seed from plant]
[BUILDING:FARMER:CUSTOM_X]
[REAGENT:plant:1:PLANT:NONE:NONE:NONE]
[REACTION_CLASS:EXPLICIT_SEED_EXTRACTION]
[HAS_MATERIAL_REACTION_PRODUCT:SEED_MAT]
[UNROTTEN]
[PRODUCT:100:2:SEEDS:NONE:GET_MATERIAL_FROM_REAGENT:plant:SEED_MAT]
[SKILL:PROCESSPLANTS]
[REACTION:PROCESS_EXTRACT_SEED_FROM_PLANT_GROWTH]
[NAME:extract seed from fruit]
[BUILDING:FARMER:CUSTOM_SHIFT_X]
[REAGENT:plant:1:PLANT_GROWTH:NONE:NONE:NONE]
[REACTION_CLASS:EXPLICIT_SEED_EXTRACTION]
[HAS_MATERIAL_REACTION_PRODUCT:SEED_MAT]
[UNROTTEN]
[PRODUCT:100:2:SEEDS:NONE:GET_MATERIAL_FROM_REAGENT:plant:SEED_MAT]
[SKILL:PROCESSPLANTS]
Lines to be added to entity_defaults.txt:
[PERMITTED_REACTION:PROCESS_EXTRACT_SEED_FROM_PLANT] -- Bug 6940
[PERMITTED_REACTION:PROCESS_EXTRACT_SEED_FROM_PLANT_GROWTH] -- Bug 6940
Modified plant_garden.txt (file too large to be posted directly):
https://www.dropbox.com/s/phptxvygymrqbfl/plant_garden.txt?dl=0Modified plant_crops.txt (ditto):
https://www.dropbox.com/s/bx7y2cpzgk163jf/plant_crops.txt?dl=0Both of the files above have modified and added lines clearly marked.
Replace the first two entries in plant_new_trees.txt with
[PLANT:ABACA] Musa textilis
[NAME:abaca tree][NAME_PLURAL:abaca trees][ADJ:abaca tree]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
no wood
[USE_MATERIAL_TEMPLATE:LEAF:LEAF_TEMPLATE]
[STATE_COLOR:ALL:EMERALD]
[DISPLAY_COLOR:2:0:0]
*** abaca fiber here
[USE_MATERIAL_TEMPLATE:FLOWER:FLOWER_TEMPLATE]
[STATE_COLOR:ALL:CHESTNUT]
[DISPLAY_COLOR:6:0:0]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[SEED:abaca seed:abaca seeds:6:0:0:LOCAL_PLANT_MAT:SEED]
[TREE:NONE:NONE][TREE_TILE:226][DEAD_TREE_TILE:226]
[SAPLING_COLOR:2:6:1][DEAD_SAPLING_COLOR:6:6:0]
[TRUNK_PERIOD:10]
[HEAVY_BRANCH_DENSITY:0]
[BRANCH_DENSITY:0]
[MAX_TRUNK_HEIGHT:5]
[TRUNK_BRANCHING:0]
[MAX_TRUNK_DIAMETER:1]
[TRUNK_WIDTH_PERIOD:200]
[ROOT_DENSITY:5]
[ROOT_RADIUS:3]
[STANDARD_TILE_NAMES]
[PREFSTRING:leaves]
[DRY]
[BIOME:ANY_TROPICAL]
[SAPLING]
[GROWTH:LEAVES]
[GROWTH_NAME:abaca leaf:abaca leaves]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:LEAF]
[GROWTH_DENSITY:1000]
[GROWTH_HOST_TILE:TRUNK]
[GROWTH_HOST_TILE:SAPLING]
[GROWTH_PRINT:0:6:2:0:0:ALL:1]
[GROWTH:FLOWERS]
[GROWTH_NAME:abaca flower:STP]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:FLOWER]
[GROWTH_DENSITY:1000]
[GROWTH_HOST_TILE:TRUNK]
[GROWTH_TIMING:60000:119999]
[GROWTH_PRINT:5:5:4:2:1:60000:119999:2]
[PLANT:BANANA] musa acuminata, ancestor of cultivated bananas
[NAME:banana tree][NAME_PLURAL:banana trees][ADJ:banana tree]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[USE_MATERIAL_TEMPLATE:WOOD:WOOD_TEMPLATE]
[STATE_NAME:ALL_SOLID:banana wood]
[STATE_ADJ:ALL_SOLID:banana wood]
[PREFIX:NONE]
[SOLID_DENSITY:550]
[STATE_COLOR:ALL_SOLID:FLAX]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen banana beer] also wine
[STATE_NAME_ADJ:LIQUID:banana beer]
[STATE_NAME_ADJ:GAS:boiling banana beer]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:LEAF:LEAF_TEMPLATE]
[STATE_COLOR:ALL:EMERALD]
[DISPLAY_COLOR:2:0:0]
[USE_MATERIAL_TEMPLATE:FLOWER:FLOWER_TEMPLATE]
[STATE_COLOR:ALL:MAUVE]
[DISPLAY_COLOR:4:0:0]
[USE_MATERIAL_TEMPLATE:FRUIT:FRUIT_TEMPLATE]
[STATE_COLOR:ALL:GOLDENROD]
[DISPLAY_COLOR:6:0:1]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[STOCKPILE_PLANT_GROWTH]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[SEED:banana seed:banana seeds:6:0:0:LOCAL_PLANT_MAT:SEED]
[TREE:LOCAL_PLANT_MAT:WOOD][TREE_TILE:226][DEAD_TREE_TILE:226] -- Hacked to add wood.
[SAPLING_COLOR:2:6:1][DEAD_SAPLING_COLOR:6:6:0]
[TRUNK_PERIOD:10]
[HEAVY_BRANCH_DENSITY:0]
[BRANCH_DENSITY:0]
[MAX_TRUNK_HEIGHT:5]
[TRUNK_BRANCHING:0]
[MAX_TRUNK_DIAMETER:1]
[TRUNK_WIDTH_PERIOD:200]
[ROOT_DENSITY:5]
[ROOT_RADIUS:3]
[STANDARD_TILE_NAMES]
[PREFSTRING:fruit]
[DRY]
[BIOME:ANY_TROPICAL]
[SAPLING]
[GROWTH:LEAVES]
[GROWTH_NAME:banana leaf:banana leaves]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:LEAF]
[GROWTH_DENSITY:1000]
[GROWTH_HOST_TILE:TRUNK]
[GROWTH_HOST_TILE:SAPLING]
[GROWTH_PRINT:0:6:2:0:0:ALL:1]
[GROWTH:FLOWERS]
[GROWTH_NAME:banana flower:STP]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:FLOWER]
[GROWTH_DENSITY:1000]
[GROWTH_HOST_TILE:TRUNK]
[GROWTH_TIMING:60000:119999]
[GROWTH_PRINT:5:5:4:2:0:60000:119999:2]
[GROWTH:FRUIT]
[GROWTH_NAME:banana:STP]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:FRUIT]
[GROWTH_DENSITY:1000]
[GROWTH_HOST_TILE:TRUNK]
[GROWTH_TIMING:120000:200000]
[GROWTH_DROPS_OFF_NO_CLOUD]
[GROWTH_PRINT:245:'%':2:14:0:120000:200000:3]
[GROWTH_HAS_SEED]
The change for both trees is an introduction of a WOOD material section. This results in the trees producing wood when felled (which they shouldn't), but without this sections DF refuses to generate any trees or saplings of these species.