Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 20 21 [22] 23 24 ... 62

Author Topic: [MODDING] General modding questions thread  (Read 153962 times)

chipathingy

  • Bay Watcher
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #315 on: February 23, 2020, 12:24:10 am »

Hi all. I'm trying to make a creature that has multiple successive transformations that are triggered in combat. Any idea on how to do this? Are transformed creatures still not able to be transformed again or has that changes in the latest version?
Logged
Author of Fantastic Fantasy Fortress (http://www.bay12forums.com/smf/index.php?topic=180748.0)

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #316 on: February 23, 2020, 01:05:07 am »

Hi all. I'm trying to make a creature that has multiple successive transformations that are triggered in combat. Any idea on how to do this? Are transformed creatures still not able to be transformed again or has that changes in the latest version?

You cannot transform an already transformed creature, but you can make a single syndrome that applies a new transformation after the old one ends. The timing will be unchangeable once it starts though.

Fi

  • Bay Watcher
  • φ
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #317 on: February 23, 2020, 01:13:45 am »

If I change an entity's "birth_year" via DFHack, do I need to change their "birth_time" as well?

How does "birth_time" work anyway? It is a very large number, so I assumed that it counts up from the exact moment in time the entity was conceived, but the numbers did not make sense to me because my Elven Adventurer was born in -128 but her birth time is less than her Elven Companion's "birth_time" despite him being younger than her—his "birth_year" being -115.

This is assuming I am reading the negative numbers correctly since a negative "birth_year" would mean that the entity with the lowest number would be the eldest while the entity with highest number would be the youngest unless... the creation of a world and birth of an entity start from zero which means counting downward from zero into the negative numbers means -115 would be the firstborn and the -128 would be the second to be born while the creation of a world starts at a positive number which would be one, but this confusing since... I do not know how an entity could be born before the world they inhabit is created.

E: Typo, and added additional musings directly above.
« Last Edit: February 23, 2020, 02:25:08 am by Fi »
Logged

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #318 on: February 23, 2020, 05:32:06 am »

Having done some... interesting experiments with time travel in DF (note that this was several versions back, but I see no reason why it should have changed) it seems that DF is surprisingly resilient when it comes to chronological meddling. Units do not have their age stored anywhere - their age at a given moment is simply their birth time subtracted from the world's age, and is called when needed.

Units generated at the beginning of the world are created with random ages - which means that functionally, they were born before the world was created, and therefore have negative birthdays.  This also means that if you set a unit's birthday after the current date, or set the world's age backward to before the unit was born, the unit will show a negative age on their unit screen. The game takes this in stride. I guess age is just a number.

(The time travel script used by the old Masterwork gnomes did cause units to vanish in a puff of logic if their ages were set to a negative value, but that was added behavior.)

ZM5

  • Bay Watcher
  • Accomplished RAW Engineer
    • View Profile
    • Steam
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #319 on: February 23, 2020, 06:12:16 am »

Is NIGHT_CREATURE_EXPERIMENTER a token that can only be added via syndrome (similarly to STERILE) or can it be applied to a creature with no issues? If the latter, is it caste level or creature level?

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #320 on: February 23, 2020, 08:02:06 am »

Is NIGHT_CREATURE_EXPERIMENTER a token that can only be added via syndrome (similarly to STERILE) or can it be applied to a creature with no issues? If the latter, is it caste level or creature level?

It can be added to creatures and is apparently considered a valid tag, but it doesn't actually work. It doesn't work with modded syndromes either.

http://www.bay12games.com/dwarves/mantisbt/view.php?id=11401

ZM5

  • Bay Watcher
  • Accomplished RAW Engineer
    • View Profile
    • Steam
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #321 on: February 23, 2020, 10:26:41 am »

Is NIGHT_CREATURE_EXPERIMENTER a token that can only be added via syndrome (similarly to STERILE) or can it be applied to a creature with no issues? If the latter, is it caste level or creature level?

It can be added to creatures and is apparently considered a valid tag, but it doesn't actually work. It doesn't work with modded syndromes either.

http://www.bay12games.com/dwarves/mantisbt/view.php?id=11401
Thats a shame - also what would the raws look like for experiment creation? Not for ghoul-type ones that are just normal races with a syndrome but those procgenned ones that are separate creatures - thinking of both the interaction type itself and the creature too - last I checked world.dat I couldn't seem to find  tokens marking creatures as experiment.

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #322 on: February 23, 2020, 03:23:49 pm »

Is NIGHT_CREATURE_EXPERIMENTER a token that can only be added via syndrome (similarly to STERILE) or can it be applied to a creature with no issues? If the latter, is it caste level or creature level?

It can be added to creatures and is apparently considered a valid tag, but it doesn't actually work. It doesn't work with modded syndromes either.

http://www.bay12games.com/dwarves/mantisbt/view.php?id=11401
Thats a shame - also what would the raws look like for experiment creation? Not for ghoul-type ones that are just normal races with a syndrome but those procgenned ones that are separate creatures - thinking of both the interaction type itself and the creature too - last I checked world.dat I couldn't seem to find  tokens marking creatures as experiment.

There are no generated creatures that perform experiments, as far as I can find.
Here is an example of a generated secret, prettified and formatted:

There are many variations on this, but they are all basically the same: all necromancers can animate the dead, summon bogeymen, resurrect a RAISED_UNDEAD with experiments and convert a living creature into a GHOUL with experiments.  RAISED_UNDEAD have a handful of miscellaneous powers, and GHOULs can spread their condition by biting.

Feel free to try and get a modded version to work, but I have never seen any modded creature or secret keeper create experiments.

Fi

  • Bay Watcher
  • φ
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #323 on: February 23, 2020, 05:56:17 pm »

I added these reactions from this post into my installation of Dwarf Fortress (...Dwarf Fortress\raw\objects) before I created worlds, but despite Dwarf Fortress carrying over the separate "reaction_???.txt" file that contains those new reactions, they won't show up under "x" in Adventure Mode—only the default reactions are there.

Is there something wrong with those reactions, or did I incorrectly add them into my installation of Dwarf Fortress? I removed the [CATEGORY] tags since they apparently have no effect in Adventure Mode.

Code: [Select]
reaction_adv_freelancer

[OBJECT:REACTION]

[REACTION:MAKE_WOOD_SCROLL_ROLLERS_ADV]
[NAME:make wood scroll rollers]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
[PRODUCT:100:1:TOOL:ITEM_TOOL_SCROLL_ROLLERS:GET_MATERIAL_FROM_REAGENT:wood:NONE]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_FIGURINE_ADV]
        [NAME:carve wood figurine]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:FIGURINE:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:figurine]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_RING_ADV]
        [NAME:carve wood ring]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:RING:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:ring]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_EARRING_ADV]
        [NAME:carve wood earring]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:EARRING:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:earring]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_SCEPTER_ADV]
        [NAME:carve wood scepter]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:SCEPTER:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:scepter]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_AMULET_ADV]
        [NAME:carve wood amulet]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:AMULET:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:amulet]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_BRACELET_ADV]
        [NAME:carve wood bracelet]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:BRACELET:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:bracelet]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_CROWN_ADV]
        [NAME:carve wood crown]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:CROWN:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:crown]
[SKILL:CARPENTRY]

[REACTION:MAKE_WOOD_GEM_ADV]
        [NAME:carve wood cabochon]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:wood:1:WOOD:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:GEM:NONE:GET_MATERIAL_FROM_REAGENT:wood:NONE][PRODUCT_TOKEN:gem]
[SKILL:CARPENTRY]

[REACTION:MAKE_STONE_SCROLL_ROLLERS_ADV]
[NAME:make stone scroll rollers]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
[PRODUCT:100:1:TOOL:ITEM_TOOL_SCROLL_ROLLERS:GET_MATERIAL_FROM_REAGENT:rock:NONE]
[SKILL:STONECRAFT]

[REACTION:MAKE_STONE_FIGURINE_ADV]
        [NAME:carve stone figurine]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:FIGURINE:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:figurine]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_RING_ADV]
        [NAME:carve stone ring]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:RING:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:ring]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_EARRING_ADV]
        [NAME:carve stone earring]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:EARRING:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:earring]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_SCEPTER_ADV]
        [NAME:carve stone scepter]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:SCEPTER:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:scepter]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_AMULET_ADV]
        [NAME:carve stone amulet]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:AMULET:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:amulet]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_BRACELET_ADV]
        [NAME:carve stone bracelet]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:BRACELET:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:bracelet]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_CROWN_ADV]
        [NAME:carve stone crown]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:CROWN:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:crown]
        [SKILL:STONECRAFT]

[REACTION:MAKE_STONE_GEM_ADV]
        [NAME:carve stone cabochon]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:rock:1:ROCK:NONE:NONE:NONE][NO_EDGE_ALLOWED]
        [REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [PRODUCT:100:1:GEM:NONE:GET_MATERIAL_FROM_REAGENT:rock:NONE][PRODUCT_TOKEN:gem]
        [SKILL:STONECRAFT]

[REACTION:TAN_HIDE_ADV]
[NAME:tan a hide]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:raw hide:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][UNROTTEN]
[HAS_MATERIAL_REACTION_PRODUCT:TAN_MAT]
[PRODUCT:100:1:SKIN_TANNED:NONE:GET_MATERIAL_FROM_REAGENT:raw hide:TAN_MAT]
[SKILL:TANNER]

[REACTION:REFIT_HELM_ADV]
[NAME:refit headwear]
[ADVENTURE_MODE_ENABLED]
[REAGENT:item:1:HELM:NONE:NONE:NONE]
[REAGENT:leather:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:item:NONE]
[SKILL:ARMOR]

[REACTION:REFIT_GLOVES_ADV]
[NAME:refit gloves]
[ADVENTURE_MODE_ENABLED]
[REAGENT:first item:1:GLOVES:NONE:NONE:NONE]
[REAGENT:second item:1:GLOVES:NONE:NONE:NONE]
[REAGENT:leather:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:first item:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:second item:NONE]
[SKILL:ARMOR]

[REACTION:REFIT_ARMOR_ADV]
[NAME:refit bodywear]
[ADVENTURE_MODE_ENABLED]
[REAGENT:item:1:ARMOR:NONE:NONE:NONE]
[REAGENT:leather:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:item:NONE]
[SKILL:ARMOR]

[REACTION:REFIT_PANTS_ADV]
[NAME:refit legwear]
[ADVENTURE_MODE_ENABLED]
[REAGENT:item:1:PANTS:NONE:NONE:NONE]
[REAGENT:leather:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:item:NONE]
[SKILL:ARMOR]

[REACTION:REFIT_SHOES_ADV]
[NAME:refit footwear]
[ADVENTURE_MODE_ENABLED]
[REAGENT:first item:1:SHOES:NONE:NONE:NONE]
[REAGENT:second item:1:SHOES:NONE:NONE:NONE]
[REAGENT:leather:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:first item:NONE]
[PRODUCT:100:1:GET_ITEM_DATA_FROM_REAGENT:second item:NONE]
[SKILL:ARMOR]

[REACTION:SEW_LEATHER_ARMOR_ADV]
[NAME:sew leather armor]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:ARMOR:ITEM_ARMOR_LEATHER:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_CLOAK_ADV]
[NAME:sew leather cloak]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:ARMOR:ITEM_ARMOR_CLOAK:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_HOOD_ADV]
[NAME:sew leather hood]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:HELM:ITEM_HELM_HOOD:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_LEGGINGS_ADV]
[NAME:sew leather leggings]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:PANTS:ITEM_PANTS_LEGGINGS:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_LOW_BOOTS_ADV]
[NAME:sew leather low boots]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:2:SHOES:ITEM_SHOES_BOOTS_LOW:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_HIGH_BOOTS_ADV]
[NAME:sew leather high boots]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:2:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:2:SHOES:ITEM_SHOES_BOOTS:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_BACKPACK_ADV]
[NAME:sew leather backpack]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:BACKPACK:NONE:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_WATERSKIN_ADV]
[NAME:sew leather waterskin]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:FLASK:NONE:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:SEW_LEATHER_QUIVER_ADV]
[NAME:sew leather quiver]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tanned hide:1:SKIN_TANNED:NONE:NONE:NONE]
[PRODUCT:100:1:QUIVER:NONE:GET_MATERIAL_FROM_REAGENT:tanned hide:NONE]
[SKILL:LEATHERWORK]

[REACTION:MAKE_BONE_HELM_ADV]
[NAME:make bone helm]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:HELM:ITEM_HELM_HELM:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_BREASTPLATE_ADV]
[NAME:make bone breastplate]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:ARMOR:ITEM_ARMOR_BREASTPLATE:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_LEGGINGS_ADV]
[NAME:make bone leggings]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:PANTS:ITEM_PANTS_LEGGINGS:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_GREAVES_ADV]
[NAME:make bone greaves]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:PANTS:ITEM_PANTS_GREAVES:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_BOW_ADV]
[NAME:make bone bow]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:WEAPON:ITEM_WEAPON_BOW:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BOWYER]


[REACTION:MAKE_BONE_ARROWS_ADV]
[NAME:make bone arrows]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:5:AMMO:ITEM_AMMO_ARROWS:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_BOLTS_ADV]
[NAME:make bone bolts]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:5:AMMO:ITEM_AMMO_BOLTS:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_CRUTCH_ADV]
[NAME:make bone crutch]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[PRODUCT:100:1:CRUTCH:NONE:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:MAKE_BONE_SCROLL_ROLLERS_ADV]
        [NAME:make bone scroll rollers]
        [ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
        [PRODUCT:100:1:TOOL:ITEM_TOOL_SCROLL_ROLLERS:GET_MATERIAL_FROM_REAGENT:bone:NONE]
        [SKILL:BONECARVE]


[REACTION:DECORATE_WITH_GEM_ADV]
[NAME:decorate with large gem]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:gem:1:GEM:NONE:NONE:NONE]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:gem:NONE]
[SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_GEM_BANDS_ADV]
[NAME:decorate with bands of large gem]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:gem:1:GEM:NONE:NONE:NONE]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:gem:NONE]
[SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_GEM_RINGS_ADV]
[NAME:decorate with rings of large gem]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:gem:1:GEM:NONE:NONE:NONE]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:gem:NONE]
[SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_GEM_SPIKES_ADV]
[NAME:decorate with spikes of large gem]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:gem:1:GEM:NONE:NONE:NONE]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:gem:NONE]
[SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_SMALLGEM_ADV]
[NAME:decorate with small gem]
        [ADVENTURE_MODE_ENABLED]
        [REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [REAGENT:gem:1:SMALLGEM:NONE:NONE:NONE]
        [IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:gem:NONE]
        [SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_SMALLGEM_BANDS_ADV]
[NAME:decorate with bands of small gem]
        [ADVENTURE_MODE_ENABLED]
        [REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [REAGENT:gem:1:SMALLGEM:NONE:NONE:NONE]
        [IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:gem:NONE]
        [SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_SMALLGEM_RINGS_ADV]
[NAME:decorate with rings of small gem]
        [ADVENTURE_MODE_ENABLED]
        [REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [REAGENT:gem:1:SMALLGEM:NONE:NONE:NONE]
        [IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:gem:NONE]
        [SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_SMALLGEM_SPIKES_ADV]
[NAME:decorate with spikes of small gem]
        [ADVENTURE_MODE_ENABLED]
        [REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
        [REAGENT:gem:1:SMALLGEM:NONE:NONE:NONE]
        [IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:gem:NONE]
        [SKILL:ENCRUSTGEM]


[REACTION:DECORATE_WITH_BONE_ADV]
[NAME:decorate with bone]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_BONE_BANDS_ADV]
[NAME:decorate with bands of bone]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_BONE_RINGS_ADV]
[NAME:decorate with rings of bone]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_BONE_SPIKES_ADV]
[NAME:decorate with spikes of bone]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:bone:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_BONE_MATERIAL]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:bone:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_HORN_ADV]
[NAME:decorate with horn]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:horn:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_HORN_MATERIAL]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:horn:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_HORN_BANDS_ADV]
[NAME:decorate with bands of horn]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:horn:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_HORN_MATERIAL]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:horn:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_HORN_RINGS_ADV]
[NAME:decorate with rings of horn]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:horn:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_HORN_MATERIAL]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:horn:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_HORN_SPIKES_ADV]
[NAME:decorate with spikes of horn]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:horn:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_HORN_MATERIAL]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:horn:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_TOOTH_ADV]
[NAME:decorate with ivory]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tooth:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_TOOTH_MATERIAL]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:tooth:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_TOOTH_BANDS_ADV]
[NAME:decorate with bands of ivory]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tooth:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_TOOTH_MATERIAL]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:tooth:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_TOOTH_RINGS_ADV]
[NAME:decorate with rings of ivory]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tooth:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_TOOTH_MATERIAL]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:tooth:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_TOOTH_SPIKES_ADV]
[NAME:decorate with spikes of ivory]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:tooth:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_TOOTH_MATERIAL]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:tooth:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_SHELL_ADV]
[NAME:decorate with shell]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:shell:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_SHELL_MATERIAL]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:shell:NONE]
[SKILL:BONECARVE]

[REACTION:DECORATE_WITH_SHELL_BANDS_ADV]
[NAME:decorate with bands of shell]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:shell:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_SHELL_MATERIAL]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:shell:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_SHELL_RINGS_ADV]
[NAME:decorate with rings of shell]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:shell:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_SHELL_MATERIAL]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:shell:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_SHELL_SPIKES_ADV]
[NAME:decorate with spikes of shell]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:shell:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_SHELL_MATERIAL]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:shell:NONE]
[SKILL:BONECARVE]


[REACTION:DECORATE_WITH_PEARL_ADV]
[NAME:decorate with pearl]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:pearl:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_PEARL_MATERIAL]
[IMPROVEMENT:100:target:COVERED:GET_MATERIAL_FROM_REAGENT:pearl:NONE]
[SKILL:LEATHERWORK]


[REACTION:DECORATE_WITH_PEARL_BANDS_ADV]
[NAME:decorate with bands of pearl]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:pearl:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_PEARL_MATERIAL]
[IMPROVEMENT:100:target:BANDS:GET_MATERIAL_FROM_REAGENT:pearl:NONE]
[SKILL:LEATHERWORK]


[REACTION:DECORATE_WITH_PEARL_RINGS_ADV]
[NAME:decorate with rings of pearl]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:pearl:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_PEARL_MATERIAL]
[IMPROVEMENT:100:target:RINGS_HANGING:GET_MATERIAL_FROM_REAGENT:pearl:NONE]
[SKILL:LEATHERWORK]


[REACTION:DECORATE_WITH_PEARL_SPIKES_ADV]
[NAME:decorate with spikes of pearl]
[ADVENTURE_MODE_ENABLED]
[REAGENT:target:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:pearl:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][ANY_PEARL_MATERIAL]
[IMPROVEMENT:100:target:SPIKES:GET_MATERIAL_FROM_REAGENT:pearl:NONE]
[SKILL:LEATHERWORK]


[REACTION:MAKE_PARCHMENT_SCROLL_ADV]
[NAME:make parchment scroll]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:raw hide:1:NONE:NONE:NONE:NONE][USE_BODY_COMPONENT][UNROTTEN]
[HAS_MATERIAL_REACTION_PRODUCT:PARCHMENT_MAT]
[REAGENT:scroll rollers:1:TOOL:ITEM_TOOL_SCROLL_ROLLERS:NONE:NONE]
[PRODUCT:100:1:TOOL:ITEM_TOOL_SCROLL:GET_MATERIAL_FROM_REAGENT:raw hide:PARCHMENT_MAT]
[PRODUCT_TOKEN:scroll]
[IMPROVEMENT:100:scroll:SPECIFIC:ROLLERS:GET_MATERIAL_FROM_REAGENT:scroll rollers:NONE]
[SKILL:BOOKBINDING]

[REACTION:MAKE_PAPER_SCROLL_ADV]
[NAME:make paper scroll]
[ADVENTURE_MODE_ENABLED]
[REAGENT:tool:1:NONE:NONE:NONE:NONE][PRESERVE_REAGENT][HAS_EDGE]
[REAGENT:fiber plant:1:PLANT:NONE:NONE:NONE][UNROTTEN]
[HAS_MATERIAL_REACTION_PRODUCT:PRESS_PAPER_MAT]
[DOES_NOT_DETERMINE_PRODUCT_AMOUNT]
[REAGENT:scroll rollers:1:TOOL:ITEM_TOOL_SCROLL_ROLLERS:NONE:NONE]
[PRODUCT:100:1:TOOL:ITEM_TOOL_SCROLL:GET_MATERIAL_FROM_REAGENT:fiber plant:PRESS_PAPER_MAT]
[PRODUCT_TOKEN:scroll]
[IMPROVEMENT:100:scroll:SPECIFIC:ROLLERS:GET_MATERIAL_FROM_REAGENT:scroll rollers:NONE]
[SKILL:BOOKBINDING]

(Copied the above question from elsewhere since I couldn't get an answer.)

Having done some... interesting experiments with time travel in DF (note that this was several versions back, but I see no reason why it should have changed) it seems that DF is surprisingly resilient when it comes to chronological meddling. Units do not have their age stored anywhere - their age at a given moment is simply their birth time subtracted from the world's age, and is called when needed.

Units generated at the beginning of the world are created with random ages - which means that functionally, they were born before the world was created, and therefore have negative birthdays.  This also means that if you set a unit's birthday after the current date, or set the world's age backward to before the unit was born, the unit will show a negative age on their unit screen. The game takes this in stride. I guess age is just a number.

(The time travel script used by the old Masterwork gnomes did cause units to vanish in a puff of logic if their ages were set to a negative value, but that was added behavior.)

Oh, I see, then the "birth_year" (I guess this is the birthday) is an irrelevant number that third-party programs like Legends Viewer read for the sake of populating each entity's page with information?

If "birth_time" is subtracted from the world's age, how does that work? I guess that would mean that the max "birth_time" would be... 20,000 (if I'm remembering the number of digits correctly) subtracted from the world's age like you said and the "birth_year" of the entity from which it counts... down from the number derived from that equation, but I am most likely incorrect about that.

This means I will have to change the entity's "birth_time" if I want them to be older or younger, and the "birth_year" is merely flavor text? It is interesting and a bit humorous that entities go *poof* when their age is set into the negatives, though—if this was default behavior. If it wasn't, I think it should be a thing for creatures that weren't naturally born before the creation of a world.
Logged

chipathingy

  • Bay Watcher
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #324 on: February 24, 2020, 05:11:28 am »

Hi all. I'm trying to make a creature that has multiple successive transformations that are triggered in combat. Any idea on how to do this? Are transformed creatures still not able to be transformed again or has that changes in the latest version?

You cannot transform an already transformed creature, but you can make a single syndrome that applies a new transformation after the old one ends. The timing will be unchangeable once it starts though.
That is unfortunate, I was hoping it would have changed I  the new version. I don't suppose there's a way to reverse a permanent transformation?
Current plan: creature gets transformed into a creature that immediately dies but also summons the next version in the same tick. I should be able to do this as many times as I like, right? It'll stuff up pets and clog the death list in fort mode but I can't think of any other drawbacks
Logged
Author of Fantastic Fantasy Fortress (http://www.bay12forums.com/smf/index.php?topic=180748.0)

Taras

  • Bay Watcher
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #325 on: February 24, 2020, 06:58:32 am »

Game now contains stalkres?! I generate one world, read legends - and in kills list of artifact are stalkers!
Logged

IndigoFenix

  • Bay Watcher
  • All things die, but nothing dies forever.
    • View Profile
    • Boundworlds: A Browser-Based Multiverse Creation and Exploration Game
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #326 on: February 24, 2020, 07:00:54 am »

Hi all. I'm trying to make a creature that has multiple successive transformations that are triggered in combat. Any idea on how to do this? Are transformed creatures still not able to be transformed again or has that changes in the latest version?

You cannot transform an already transformed creature, but you can make a single syndrome that applies a new transformation after the old one ends. The timing will be unchangeable once it starts though.
That is unfortunate, I was hoping it would have changed I  the new version. I don't suppose there's a way to reverse a permanent transformation?
Current plan: creature gets transformed into a creature that immediately dies but also summons the next version in the same tick. I should be able to do this as many times as I like, right? It'll stuff up pets and clog the death list in fort mode but I can't think of any other drawbacks

Yes, this should be doable - you can summon a creature and then transform the summoner into an instantly-evaporating dummy creature, and it will look like the creature went poof and turned into the new one.  Of course the new creature will not actually be the original one, so this method should be restricted to animals and the like.

Silverwing235

  • Bay Watcher
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #327 on: February 24, 2020, 08:56:10 am »

Please note, very minor My-First-Modding type of technique... Which may need some sanity-checking/further definiton, on reflection.
Therefore:
Code: [Select]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[MATERIAL_VALUE:7]
[SEED:valley herb seed:valley herb seeds:7:7:5:LOCAL_PLANT_MAT:SEED]
Logged

Untrustedlife

  • Bay Watcher
    • View Profile
    • My Website
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #328 on: February 24, 2020, 02:01:37 pm »

Is NIGHT_CREATURE_EXPERIMENTER a token that can only be added via syndrome (similarly to STERILE) or can it be applied to a creature with no issues? If the latter, is it caste level or creature level?

It can be added to creatures and is apparently considered a valid tag, but it doesn't actually work. It doesn't work with modded syndromes either.

http://www.bay12games.com/dwarves/mantisbt/view.php?id=11401

I have several secrets that add NIGHT_CREATURE_EXPERIMENTER and no experiment interaction and they amke the weird generated experiments so i think it does work. (though they may do it even without that token i havent teste dthat) so it probabbly dpes nothing lol. But it can be added via syndromes.
Logged
I am an indie game dev!
My Roguelike! With randomly generated creatures Roguelegends: Dark Realms
My Turn Based Strategy game! Which you can buy on steam now!DR4X
My website untrustedlife.com

Strik3r

  • Bay Watcher
  • Persistently work-in-progress.
    • View Profile
Re: [MODDING] 0.47.x General modding questions thread - lots of new stuff!
« Reply #329 on: February 24, 2020, 02:26:57 pm »

I think how the whole experiments thing works is confusing since there are two types of experiments, one that produces ghouls and one that produces mutants and they work differently.

Mutants are produced in vanilla by necromancers with NIGHT_CREATURE_EXPERIMENTER (note, not all necros have that tag) and there is no interaction associated with this. Modding this in works fine and causes histfigs to experiment on populations and produce proc-gen mutants just like vanilla necros with said tag.

Ghouls are produced in vanilla worldgen with interactions with I_SOURCE:EXPERIMENT. This part is the one thats broken as modding in any secrets with an interaction like this will not only cause this interaction to never be used, but also breaks the behaviour of any histfig that learns the secret.

At least that's what i've been able to gather since .47 dropped. Though i might have it backward and NIGHT_CREATURE_EXPERIMENTER might be the one that breaks stuff like tower building. I find it incredibly odd, since proc-gen secrets don't have any tags that modders cant use. so its strange that generated secrets work, but modded ones don't. I think Toady has acknowledged that its kinda broken right now, so fix soon... hopefully.
Logged
NOTICE: If you can't update your profile/signature, stop using a Imgur URL for your profile picture.
Upload it to somewhere else.

Pages: 1 ... 20 21 [22] 23 24 ... 62