Milo thanks a lot! and luck with the newborn lua interpreter!
That
[OBJECT:PLANT]
{!TEMPLATE;PROTOTYPE;object;name;variety;seed;color;growdur;clustersize;
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};NAME;[NAME:%{name} %{variety}]}
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};NAME_PLURAL;[NAME_PLURAL:%{name}s %{variety}]}
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};ADJ:[ADJ:%{name}] %{variety}}
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};SEED;[SEED:%{name} %{variety} %{seed}:%{name} %{variety} %{seed}s:%{color}:LOCAL_PLANT_MAT:SEED]}
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};GROWDUR;[GROWDUR:%{growdur}]}
{SHARED_OBJECT_REPLACE_TAG;PLANT:%{object}_%{variety};CLUSTERSIZE;[CLUSTERSIZE:%{clustersize}]}}
{!SHARED_OBJECT_DUPLICATE;PLANT:MUSHROOM_HELMET_PLUMP;PLANT:MUSHROOM_HELMET_PLUMP_sprouting;true;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:MUSHROOM_HELMET_PLUMP;PLANT:MUSHROOM_HELMET_PLUMP_intensive;true;true}
{PROTOTYPE;MUSHROOM_HELMET_PLUMP;plump helmet;sprouting;spawn;4:0:1;60;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;MUSHROOM_HELMET_PLUMP;plump helmet;intensive;spawn;4:0:1;3900;65} # multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{!SHARED_OBJECT_DUPLICATE;PLANT:GRASS_TAIL_PIG;PLANT:GRASS_TAIL_PIG_sprouting;true;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:GRASS_TAIL_PIG;PLANT:GRASS_TAIL_PIG_intensive;true;true}
{PROTOTYPE;GRASS_TAIL_PIG;pig tail;sprouting;seed;0:0:1;60;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_TAIL_PIG;pig tail;intensive;seed;0:0:1;3900;65} # multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{!SHARED_OBJECT_DUPLICATE;PLANT:GRASS_WHEAT_CAVE;PLANT:GRASS_WHEAT_CAVE_sprouting;true;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:GRASS_WHEAT_CAVE;PLANT:GRASS_WHEAT_CAVE_intensive;true;true}
{PROTOTYPE;GRASS_WHEAT_CAVE;cave wheat;sprouting;seed;6:0:0;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_WHEAT_CAVE;cave wheat;intensive;seed;6:0:0;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{!SHARED_OBJECT_DUPLICATE;PLANT:POD_SWEET;PLANT:POD_SWEET_sprouting;true;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:POD_SWEET;PLANT:POD_SWEET_intensive;true;true}
{PROTOTYPE;POD_SWEET;pod sweet;sprouting;seed;2:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;POD_SWEET;pod sweet;intensive;seed;2:0:1;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{!SHARED_OBJECT_DUPLICATE;PLANT:BUSH_QUARRY;PLANT:BUSH_QUARRY_sproutingtrue;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:BUSH_QUARRY;PLANT:BUSH_QUARRY_intensive;true;true}
{PROTOTYPE;BUSH_QUARRY;bush quarry;sprouting;nut;7:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;BUSH_QUARRY;bush quarry;intensive;nut;7:0:1;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{!SHARED_OBJECT_DUPLICATE;PLANT:MUSHROOM_CUP_DIMPLE;PLANT:MUSHROOM_CUP_DIMPLE_sprouting;true;true}
{!SHARED_OBJECT_DUPLICATE;PLANT:MUSHROOM_CUP_DIMPLE;PLANT:MUSHROOM_CUP_DIMPLE_intensive;true;true}
{PROTOTYPE;MUSHROOM_CUP_DIMPLE;dimple cup;sprouting;spawn;5:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;MUSHROOM_CUP_DIMPLE;dimple cup;intensive;spawn;5:0:1;4000;65} # multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
Works like a charm and generates
plant_test3
# Automatically generated, do not edit!
# Source: addons:dir:humble/Test/test03/plant_test3.txt
[OBJECT:PLANT]
[PLANT:MUSHROOM_HELMET_PLUMP_sprouting]
[NAME:plump helmet sprouting][NAME_PLURAL:plump helmets sprouting][ADJ:plump helmet]
Every plant needs a structural material so that the game knows how it behaves when it's alive.
Here the material is added to the plant, using a template from the material file.
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
Here the material is marked as the structural material (this could be below the edible tags which come next). In general, you can use LOCAL_PLANT_MAT|<token>, PLANT_MAT|<plant>|<token>, CREATURE_MAT|<creature>|<token> or INORGANIC|IRON (though the game might hiccup for a while specifically on plants that aren't structurally plants).
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
We also modify it a bit to make the plant edible. Any token material can be used here to modify the material that was created from the template.
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[USE_MATERIAL_TEMPLATE:MUSHROOM:MUSHROOM_TEMPLATE]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PICKED_TILE:6][PICKED_COLOR:5:0:0]
[GROWDUR:60][VALUE:2]
Next we establish an alcohol material in much the same way as the structural material.
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
The material template is just called "alcohol" so we need to give it a proper name.
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven wine]
[STATE_NAME_ADJ:LIQUID:dwarven wine]
[STATE_NAME_ADJ:GAS:boiling dwarven wine]
We also set a few more numbers to distinguish the alcohol from the template.
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:5:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
The seed material and information is established in a similar fashion. Other plants (including trees) add materials in the same way, though trees cannot be used at this time with seeds/thread/drink etc. They just use the TREE tag to obtain a wood material (they also have a structural material for their live form).
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:plump helmet sprouting spawn:plump helmet sprouting spawns:4:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN][WINTER]
[FREQUENCY:100]
[CLUSTERSIZE:1]
[PREFSTRING:rounded tops]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:5:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
[PLANT:MUSHROOM_HELMET_PLUMP_intensive]
[NAME:plump helmet intensive][NAME_PLURAL:plump helmets intensive][ADJ:plump helmet]
Every plant needs a structural material so that the game knows how it behaves when it's alive.
Here the material is added to the plant, using a template from the material file.
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
Here the material is marked as the structural material (this could be below the edible tags which come next). In general, you can use LOCAL_PLANT_MAT|<token>, PLANT_MAT|<plant>|<token>, CREATURE_MAT|<creature>|<token> or INORGANIC|IRON (though the game might hiccup for a while specifically on plants that aren't structurally plants).
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
We also modify it a bit to make the plant edible. Any token material can be used here to modify the material that was created from the template.
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[USE_MATERIAL_TEMPLATE:MUSHROOM:MUSHROOM_TEMPLATE]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PICKED_TILE:6][PICKED_COLOR:5:0:0]
[GROWDUR:3900][VALUE:2]
Next we establish an alcohol material in much the same way as the structural material.
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
The material template is just called "alcohol" so we need to give it a proper name.
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven wine]
[STATE_NAME_ADJ:LIQUID:dwarven wine]
[STATE_NAME_ADJ:GAS:boiling dwarven wine]
We also set a few more numbers to distinguish the alcohol from the template.
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:5:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
The seed material and information is established in a similar fashion. Other plants (including trees) add materials in the same way, though trees cannot be used at this time with seeds/thread/drink etc. They just use the TREE tag to obtain a wood material (they also have a structural material for their live form).
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:plump helmet intensive spawn:plump helmet intensive spawns:4:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN][WINTER]
[FREQUENCY:100]
[CLUSTERSIZE:65]
[PREFSTRING:rounded tops]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:5:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
[PLANT:GRASS_TAIL_PIG_sprouting]
[NAME:pig tail sprouting][NAME_PLURAL:pig tails sprouting][ADJ:pig tail]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[MATERIAL_REACTION_PRODUCT:PRESS_PAPER_MAT:LOCAL_PLANT_MAT:THREAD]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:231][PICKED_COLOR:7:0:0]
[GROWDUR:60][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven ale]
[STATE_NAME_ADJ:LIQUID:dwarven ale]
[STATE_NAME_ADJ:GAS:boiling dwarven ale]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:7:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:pig tail sprouting seed:pig tail sprouting seeds:0:0:1:LOCAL_PLANT_MAT:SEED]
[SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:1]
[USE_MATERIAL_TEMPLATE:THREAD:THREAD_PLANT_TEMPLATE]
[STATE_NAME_ADJ:SOLID:pig tail]
[STATE_NAME_ADJ:SOLID_PASTE:pig tail slurry]
[STATE_NAME_ADJ:SOLID_PRESSED:pig tail paper]
[PREFIX:NONE]
[REACTION_CLASS:PAPER_SLURRY]
[MATERIAL_VALUE:2]
[THREAD:LOCAL_PLANT_MAT:THREAD]
[PREFSTRING:twisting stalks]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
[PLANT:GRASS_TAIL_PIG_intensive]
[NAME:pig tail intensive][NAME_PLURAL:pig tails intensive][ADJ:pig tail]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[MATERIAL_REACTION_PRODUCT:PRESS_PAPER_MAT:LOCAL_PLANT_MAT:THREAD]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:231][PICKED_COLOR:7:0:0]
[GROWDUR:3900][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven ale]
[STATE_NAME_ADJ:LIQUID:dwarven ale]
[STATE_NAME_ADJ:GAS:boiling dwarven ale]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:7:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:pig tail intensive seed:pig tail intensive seeds:0:0:1:LOCAL_PLANT_MAT:SEED]
[SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:65]
[USE_MATERIAL_TEMPLATE:THREAD:THREAD_PLANT_TEMPLATE]
[STATE_NAME_ADJ:SOLID:pig tail]
[STATE_NAME_ADJ:SOLID_PASTE:pig tail slurry]
[STATE_NAME_ADJ:SOLID_PRESSED:pig tail paper]
[PREFIX:NONE]
[REACTION_CLASS:PAPER_SLURRY]
[MATERIAL_VALUE:2]
[THREAD:LOCAL_PLANT_MAT:THREAD]
[PREFSTRING:twisting stalks]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
[PLANT:GRASS_WHEAT_CAVE_sprouting]
[NAME:cave wheat sprouting][NAME_PLURAL:cave wheats sprouting][ADJ:cave wheat]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:231][PICKED_COLOR:7:0:1]
[GROWDUR:100][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven beer]
[STATE_NAME_ADJ:LIQUID:dwarven beer]
[STATE_NAME_ADJ:GAS:boiling dwarven beer]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dwarven wheat flour]
[STATE_COLOR:ALL_SOLID:WHITE]
[DISPLAY_COLOR:7:0:1]
[MATERIAL_VALUE:20]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:cave wheat sprouting seed:cave wheat sprouting seeds:6:0:0:LOCAL_PLANT_MAT:SEED]
[SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:1]
[PREFSTRING:stalks]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
[PLANT:GRASS_WHEAT_CAVE_intensive]
[NAME:cave wheat intensive][NAME_PLURAL:cave wheats intensive][ADJ:cave wheat]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:231][PICKED_COLOR:7:0:1]
[GROWDUR:4000][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven beer]
[STATE_NAME_ADJ:LIQUID:dwarven beer]
[STATE_NAME_ADJ:GAS:boiling dwarven beer]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dwarven wheat flour]
[STATE_COLOR:ALL_SOLID:WHITE]
[DISPLAY_COLOR:7:0:1]
[MATERIAL_VALUE:20]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:cave wheat intensive seed:cave wheat intensive seeds:6:0:0:LOCAL_PLANT_MAT:SEED]
[SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:40]
[PREFSTRING:stalks]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
[PLANT:POD_SWEET_sprouting]
[NAME:pod sweet sprouting][NAME_PLURAL:pod sweets sprouting][ADJ:sweet pod]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:232][PICKED_COLOR:4:0:1]
[GROWDUR:100][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven rum]
[STATE_NAME_ADJ:LIQUID:dwarven rum]
[STATE_NAME_ADJ:GAS:boiling dwarven rum]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:5:0:1]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dwarven sugar]
[STATE_COLOR:ALL_SOLID:WHITE]
[DISPLAY_COLOR:6:0:0]
[MATERIAL_VALUE:20]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:EXTRACT:PLANT_EXTRACT_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven syrup]
[STATE_NAME_ADJ:LIQUID:dwarven syrup]
[STATE_NAME_ADJ:GAS:boiling dwarven syrup]
[MATERIAL_VALUE:20]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[EXTRACT_STORAGE:BARREL]
[PREFIX:NONE]
[EXTRACT_BARREL:LOCAL_PLANT_MAT:EXTRACT]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:pod sweet sprouting seed:pod sweet sprouting seeds:2:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER]
[FREQUENCY:100]
[CLUSTERSIZE:1]
[PREFSTRING:round shape]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:4:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
[PLANT:POD_SWEET_intensive]
[NAME:pod sweet intensive][NAME_PLURAL:pod sweets intensive][ADJ:sweet pod]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[MATERIAL_REACTION_PRODUCT:DRINK_MAT:LOCAL_PLANT_MAT:DRINK]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:232][PICKED_COLOR:4:0:1]
[GROWDUR:4000][VALUE:2]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven rum]
[STATE_NAME_ADJ:LIQUID:dwarven rum]
[STATE_NAME_ADJ:GAS:boiling dwarven rum]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:5:0:1]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dwarven sugar]
[STATE_COLOR:ALL_SOLID:WHITE]
[DISPLAY_COLOR:6:0:0]
[MATERIAL_VALUE:20]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:EXTRACT:PLANT_EXTRACT_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen dwarven syrup]
[STATE_NAME_ADJ:LIQUID:dwarven syrup]
[STATE_NAME_ADJ:GAS:boiling dwarven syrup]
[MATERIAL_VALUE:20]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[EXTRACT_STORAGE:BARREL]
[PREFIX:NONE]
[EXTRACT_BARREL:LOCAL_PLANT_MAT:EXTRACT]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:pod sweet intensive seed:pod sweet intensive seeds:2:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER]
[FREQUENCY:100]
[CLUSTERSIZE:40]
[PREFSTRING:round shape]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:4:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
[PLANT:BUSH_QUARRY_sproutingtrue]
[NAME:quarry bush][NAME_PLURAL:quarry bushes][ADJ:quarry bush]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[ITEM_REACTION_PRODUCT:BAG_ITEM:PLANT_GROWTH:LEAVES:LOCAL_PLANT_MAT:LEAF]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:5][PICKED_COLOR:7:0:0]
[GROWDUR:500][VALUE:2]
[USE_MATERIAL_TEMPLATE:OIL:PLANT_OIL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen rock nut oil]
[STATE_NAME_ADJ:LIQUID:rock nut oil]
[STATE_NAME_ADJ:GAS:boiling rock nut oil]
[PREFIX:NONE]
[MATERIAL_VALUE:5]
[EDIBLE_COOKED]
[USE_MATERIAL_TEMPLATE:SOAP:PLANT_SOAP_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:rock nut soap]
[STATE_NAME_ADJ:LIQUID:melted rock nut soap]
[STATE_NAME_ADJ:GAS:n/a]
[PREFIX:NONE]
[MATERIAL_VALUE:5]
[USE_MATERIAL_TEMPLATE:LEAF:LEAF_TEMPLATE]
[MATERIAL_VALUE:5]
[EDIBLE_COOKED]
[STOCKPILE_PLANT_GROWTH]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:rock nut]
[STATE_NAME_ADJ:SOLID_PASTE:rock nut paste]
[STATE_NAME_ADJ:SOLID_PRESSED:rock nut press cake]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[MATERIAL_REACTION_PRODUCT:PRESS_LIQUID_MAT:LOCAL_PLANT_MAT:OIL]
[PREFIX:NONE]
[STOCKPILE_GLOB_PASTE]
[STOCKPILE_GLOB_PRESSED]
[SEED:rock nut:rock nuts:7:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:5]
[PREFSTRING:gray leaves]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
[GROWTH:LEAVES]
[GROWTH_NAME:quarry bush leaf:quarry bush leaves]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:LEAF]
[GROWTH_DENSITY:1000]
[GROWTH_PRINT:0:6:7:0:0:NONE]
[PLANT:BUSH_QUARRY_intensive]
[NAME:bush quarry intensive][NAME_PLURAL:bush quarrys intensive][ADJ:quarry bush]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[ITEM_REACTION_PRODUCT:BAG_ITEM:PLANT_GROWTH:LEAVES:LOCAL_PLANT_MAT:LEAF]
[MATERIAL_REACTION_PRODUCT:SEED_MAT:LOCAL_PLANT_MAT:SEED]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:5][PICKED_COLOR:7:0:0]
[GROWDUR:4000][VALUE:2]
[USE_MATERIAL_TEMPLATE:OIL:PLANT_OIL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen rock nut oil]
[STATE_NAME_ADJ:LIQUID:rock nut oil]
[STATE_NAME_ADJ:GAS:boiling rock nut oil]
[PREFIX:NONE]
[MATERIAL_VALUE:5]
[EDIBLE_COOKED]
[USE_MATERIAL_TEMPLATE:SOAP:PLANT_SOAP_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:rock nut soap]
[STATE_NAME_ADJ:LIQUID:melted rock nut soap]
[STATE_NAME_ADJ:GAS:n/a]
[PREFIX:NONE]
[MATERIAL_VALUE:5]
[USE_MATERIAL_TEMPLATE:LEAF:LEAF_TEMPLATE]
[MATERIAL_VALUE:5]
[EDIBLE_COOKED]
[STOCKPILE_PLANT_GROWTH]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:rock nut]
[STATE_NAME_ADJ:SOLID_PASTE:rock nut paste]
[STATE_NAME_ADJ:SOLID_PRESSED:rock nut press cake]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_RAW]
[EDIBLE_COOKED]
[MATERIAL_REACTION_PRODUCT:PRESS_LIQUID_MAT:LOCAL_PLANT_MAT:OIL]
[PREFIX:NONE]
[STOCKPILE_GLOB_PASTE]
[STOCKPILE_GLOB_PRESSED]
[SEED:bush quarry intensive nut:bush quarry intensive nuts:7:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN]
[FREQUENCY:100]
[CLUSTERSIZE:40]
[PREFSTRING:gray leaves]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:7:0:0]
[DEAD_SHRUB_COLOR:0:0:1]
[GROWTH:LEAVES]
[GROWTH_NAME:quarry bush leaf:quarry bush leaves]
[GROWTH_ITEM:PLANT_GROWTH:NONE:LOCAL_PLANT_MAT:LEAF]
[GROWTH_DENSITY:1000]
[GROWTH_PRINT:0:6:7:0:0:NONE]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
[PLANT:MUSHROOM_CUP_DIMPLE_sprouting]
[NAME:dimple cup sprouting][NAME_PLURAL:dimple cups sprouting][ADJ:dimple cup]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:3][PICKED_COLOR:1:0:1]
[GROWDUR:100][VALUE:2]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dimple dye]
[STATE_COLOR:ALL_SOLID:MIDNIGHT_BLUE]
[DISPLAY_COLOR:1:0:1]
[MATERIAL_VALUE:20]
[POWDER_DYE:MIDNIGHT_BLUE]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:dimple cup sprouting spawn:dimple cup sprouting spawns:5:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN][WINTER]
[FREQUENCY:100]
[CLUSTERSIZE:1]
[PREFSTRING:soothing color]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:1:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
[PLANT:MUSHROOM_CUP_DIMPLE_intensive]
[NAME:dimple cup intensive][NAME_PLURAL:dimple cups intensive][ADJ:dimple cup]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:3][PICKED_COLOR:1:0:1]
[GROWDUR:4000][VALUE:2]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:dimple dye]
[STATE_COLOR:ALL_SOLID:MIDNIGHT_BLUE]
[DISPLAY_COLOR:1:0:1]
[MATERIAL_VALUE:20]
[POWDER_DYE:MIDNIGHT_BLUE]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:1]
[EDIBLE_VERMIN]
[EDIBLE_COOKED]
[SEED:dimple cup intensive spawn:dimple cup intensive spawns:5:0:1:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN][WINTER]
[FREQUENCY:100]
[CLUSTERSIZE:65]
[PREFSTRING:soothing color]
[WET][DRY]
[BIOME:SUBTERRANEAN_WATER]
[UNDERGROUND_DEPTH:1:3]
[SHRUB_TILE:58]
[DEAD_SHRUB_TILE:58]
[SHRUB_COLOR:1:0:1]
[DEAD_SHRUB_COLOR:0:0:1]
# divide by 5, good for exp, yearly output more or less maintained, except for the seeds
# multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
As intended. I am happy!
Before that I had tried the less verbose and more maintainable
[OBJECT:PLANT]
{!TEMPLATE;PROTOTYPE;object;name;variety;seed;color;growdur;clustersize;
{!SHARED_OBJECT_DUPLICATE;PLANT:%{object};PLANT:%{object}_%{variety};true;true}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};NAME;[NAME:%{name} %{variety}]}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};NAME_PLURAL;[NAME_PLURAL:%{name}s %{variety}]}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};ADJ:[ADJ:%{name} %{variety}]}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};SEED;[SEED:%{name} %{variety} %{seed}:%{name} %{variety} %{seed}s:%{color}:LOCAL_PLANT_MAT:SEED]}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};GROWDUR;[GROWDUR:%{growdur}]}
{SHARED_OBJECT_REPLACE_TAG;%{object}_%{variety};CLUSTERSIZE;[CLUSTERSIZE:%{clustersize}]}}
{PROTOTYPE;MUSHROOM_HELMET_PLUMP;plump helmet;sprouting;spawn;4:0:1;60;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;MUSHROOM_HELMET_PLUMP;plump helmet;intensive;spawn;4:0:1;3900;65} # multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_TAIL_PIG;pig tail;sprouting;seed;0:0:1;60;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_TAIL_PIG;pig tail;intensive;seed;0:0:1;3900;65} # multiply by 13, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_WHEAT_CAVE;cave wheat;sprouting;seed;6:0:0;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;GRASS_WHEAT_CAVE;cave wheat;intensive;seed;6:0:0;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{PROTOTYPE;POD_SWEET;pod sweet;sprouting;seed;2:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;POD_SWEET;pod sweet;intensive;seed;2:0:1;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{PROTOTYPE;BUSH_QUARRY;bush quarry;sprouting;nut;7:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;BUSH_QUARRY;bush quarry;intensive;nut;7:0:1;4000;40} # multiply by 8, good for FPS (bigger stacks - 4024 GROWDUR units in a year) yearly output more or less maintained, except for the seeds
{PROTOTYPE;MUSHROOM_CUP_DIMPLE;dimple cup;sprouting;spawn;5:0:1;100;1} # divide by 5, good for exp, yearly output more or less maintained, except for the seeds
{PROTOTYPE;MUSHROOM_CUP_DIMPLE;dimple cup;intensive;spawn;5:0:1;4000;65}
That fail however with
Error: Attempt to parse pre template in main parse stage. Please ensure that this template is not nested in a later parse stage template.
UI Transition: "/log"
Problem with nested templates?! Not so sure because next one works
{!TEMPLATE;MILITIA_COMMANDER;name;plural;soldier;soldiers;[POSITION:MILITIA_COMMANDER]
[NAME:%{name}:%{plural}][SITE][NUMBER:1][SQUAD:10:%{soldier}:%{soldiers}][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][RESPONSIBILITY:MILITARY_STRATEGY][COMMANDER:MILITIA_CAPTAIN:ALL][PRECEDENCE:120][DO_NOT_CULL]
[DUTY_BOUND]}
{!TEMPLATE;MILITIA_CAPTAIN;name;plural;soldier;soldiers;[POSITION:MILITIA_CAPTAIN]
[NAME:%{name}:%{plural}][SITE][NUMBER:AS_NEEDED][SQUAD:10:%{soldier}:%{soldiers}][APPOINTED_BY:MILITIA_COMMANDER][PRECEDENCE:200][DO_NOT_CULL][DUTY_BOUND][MILITARY_SCREEN_ONLY]}
{!TEMPLATE;SHERIFF;name;plural;[POSITION:SHERIFF]
[NAME:%{name}:%{plural}][SITE][NUMBER:1][RESPONSIBILITY:LAW_ENFORCEMENT][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][REPLACED_BY:CAPTAIN_OF_THE_GUARD][PRECEDENCE:130][DO_NOT_CULL][COLOR:1:0:1][ACCOUNT_EXEMPT]
[DUTY_BOUND][REQUIRED_BOXES:1][REQUIRED_CABINETS:1][REQUIRED_RACKS:1][REQUIRED_STANDS:1][REQUIRED_OFFICE:100][REQUIRED_BEDROOM:100][REQUIRED_DINING:100]}
{!TEMPLATE;CAPTAIN_OF_THE_GUARD;name;plural;soldier;soldiers;[POSITION:CAPTAIN_OF_THE_GUARD]
[NAME:%{name}:%{plural}][SITE][NUMBER:1][RESPONSIBILITY:LAW_ENFORCEMENT][SQUAD:10:%{soldier}:%{soldiers}][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][REQUIRES_POPULATION:50][REQUIRES_MARKET][PRECEDENCE:105]
[DO_NOT_CULL][COLOR:1:0:1][ACCOUNT_EXEMPT][DUTY_BOUND][REQUIRED_BOXES:1][REQUIRED_CABINETS:1][REQUIRED_RACKS:1][REQUIRED_STANDS:1][REQUIRED_OFFICE:250][REQUIRED_BEDROOM:250][REQUIRED_DINING:250]}
{!TEMPLATE;EXPEDITION_LEADER;name;plural;[POSITION:EXPEDITION_LEADER]
[NAME:%{name}:%{plural}][SITE][NUMBER:1][REPLACED_BY:MAYOR][RULES_FROM_LOCATION][RESPONSIBILITY:MEET_WORKERS][RESPONSIBILITY:RECEIVE_DIPLOMATS][RESPONSIBILITY:MILITARY_GOALS][PRECEDENCE:110][DO_NOT_CULL][ACCOUNT_EXEMPT]
[DUTY_BOUND]}
{!TEMPLATE;MAYOR;name;plural;[POSITION:MAYOR]
[NAME:%{name}:%{plural}][SITE][NUMBER:1][RESPONSIBILITY:MEET_WORKERS][RESPONSIBILITY:RECEIVE_DIPLOMATS][RESPONSIBILITY:MILITARY_GOALS][REQUIRES_POPULATION:50][RULES_FROM_LOCATION][ELECTED][PRECEDENCE:60][FLASHES]
[BRAG_ON_KILL][CHAT_WORTHY][DO_NOT_CULL][KILL_QUEST][COLOR:5:0:0][ACCOUNT_EXEMPT][DUTY_BOUND][DEMAND_MAX:2][MANDATE_MAX:1][REQUIRED_BOXES:2][REQUIRED_CABINETS:1][REQUIRED_RACKS:1][REQUIRED_STANDS:1][REQUIRED_OFFICE:500]
[REQUIRED_BEDROOM:500][REQUIRED_DINING:500]}
{!TEMPLATE;MANAGER;name;plural;[POSITION:MANAGER]
[NAME:%{name}:%{plural}][SITE][REQUIRES_MARKET][NUMBER:1][RESPONSIBILITY:MANAGE_PRODUCTION][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][PRECEDENCE:160][DO_NOT_CULL][COLOR:5:0:0][DUTY_BOUND][REQUIRED_OFFICE:1]}
{!TEMPLATE;CHIEF_MEDICAL_DWARF;name;plural;[POSITION:CHIEF_MEDICAL_DWARF]
[NAME:%{name}:%{plural}][SITE][REQUIRES_MARKET][NUMBER:1][RESPONSIBILITY:HEALTH_MANAGEMENT][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][PRECEDENCE:165][DO_NOT_CULL][COLOR:5:0:0][DUTY_BOUND]}
{!TEMPLATE;BROKER;name;plural;[POSITION:BROKER]
[NAME:%{name}:%{plural}][SITE][REQUIRES_MARKET][NUMBER:1][RESPONSIBILITY:TRADE][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][PRECEDENCE:170][DO_NOT_CULL][COLOR:5:0:0][DUTY_BOUND]}
{!TEMPLATE;BOOKKEEPER;name;plural;[POSITION:BOOKKEEPER]
[NAME:%{name}:%{plural}][SITE][REQUIRES_MARKET][NUMBER:1][RESPONSIBILITY:ACCOUNTING][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][PRECEDENCE:180][DO_NOT_CULL][COLOR:5:0:0][DUTY_BOUND][REQUIRED_OFFICE:1]}
{!TEMPLATE;OUTPOST_LIAISON;name;plural;[POSITION:OUTPOST_LIAISON]
[NAME:%{name}:%{plural}][NUMBER:1][RESPONSIBILITY:ESTABLISH_COLONY_TRADE_AGREEMENTS][APPOINTED_BY:DRUID][PRECEDENCE:80][MENIAL_WORK_EXEMPTION][SLEEP_PRETENSION][PUNISHMENT_EXEMPTION][ACCOUNT_EXEMPT]
[DO_NOT_CULL][COLOR:7:0:1][DUTY_BOUND][DEMAND_MAX:3][REQUIRED_BOXES:3][REQUIRED_CABINETS:2][REQUIRED_RACKS:2][REQUIRED_STANDS:2][REQUIRED_OFFICE:1500][REQUIRED_BEDROOM:1500][REQUIRED_DINING:1500]}
{!TEMPLATE;HAMMERER;name;plural;[POSITION:HAMMERER]
[NAME:%{name}:%{plural}][SITE][REQUIRES_MARKET][NUMBER:1][RESPONSIBILITY:EXECUTIONS][EXECUTION_SKILL:AXE][APPOINTED_BY:EXPEDITION_LEADER][APPOINTED_BY:MAYOR][PRECEDENCE:150][DO_NOT_CULL][COLOR:0:0:1][DUTY_BOUND]}
{ENTITY_ADD_NOBLE;FOREST;
{MILITIA_COMMANDER;militia commander;militia commanders;militia-elf;militia-elves}
{MILITIA_CAPTAIN;militia captain;militia captains;militia-elf;militia-elves}
{SHERIFF;forest watcher;forest watchers}
{CAPTAIN_OF_THE_GUARD;forest guard captain;forest guard captains;forest guard;forest guards}
{EXPEDITION_LEADER;expedition leader;expedition leaders}
{MAYOR;retreat leader;retreat leaders}
{MANAGER;manager;managers}
{CHIEF_MEDICAL_DWARF;chief healer;chief healers}
{BROKER;broker;brokers}
{BOOKKEEPER;record maker;record makers}
{OUTPOST_LIAISON;outpost liaison;outpost liaisons}
{HAMMERER;seer;seers}
}
{ENTITY_ADD_NOBLE;PLAINS;
{MILITIA_COMMANDER;militia commander;militia commanders;militia-soldier;militia-soldiers}
{MILITIA_CAPTAIN;militia captain;militia captains;militia-soldier;militia-soldiers}
{SHERIFF;hearthperson;hearthpeople}
{CAPTAIN_OF_THE_GUARD;hearthcaptain;hearthcaptains;hearthperson;hearthpersons}
{EXPEDITION_LEADER;expedition leader;expedition leaders}
{MAYOR;lord;lords}
{MANAGER;manager;managers}
{CHIEF_MEDICAL_DWARF;chief doctor;chief doctors}
{BROKER;broker;brokers}
{BOOKKEEPER;bookkeeper;bookkeepers}
{OUTPOST_LIAISON;outpost liaison;outpost liaisons}
{HAMMERER;executioner;executioners}
}
{ENTITY_ADD_NOBLE;EVIL;
{MILITIA_COMMANDER;militia commander;militia commanders;militia-goblin;militia-goblins}
{MILITIA_CAPTAIN;militia captain;militia captains;militia-goblin;militia-goblins}
{SHERIFF;enforcer;enforcers}
{CAPTAIN_OF_THE_GUARD;master of enforcers;masters of enforcers;enforcer;enforcers}
{EXPEDITION_LEADER;expedition leader;expedition leaders}
{MAYOR;lord;lords}
{MANAGER;manager;managers}
{CHIEF_MEDICAL_DWARF;chief medicine goblin;chief medicine goblins}
{BROKER;broker;brokers}
{BOOKKEEPER;bookkeeper;bookkeepers}
{OUTPOST_LIAISON;outpost liaison;outpost liaisons}
{HAMMERER;torturer;torturers}
}
Knowing that macro or template expansion is very hard to do right, with all the stages involved (lexical parsing, syntactic AST, semantic, ...) I am happy with an intermediate solution that works!!!
It seems that it does not like nested
{!SHARED_OBJECT_DUPLICATE;PLANT:%{object};PLANT:%{object}_%{variety};true;true}