v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

Editing User:JT/Token Wishlist

Jump to navigation Jump to search

Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.


The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 123: Line 123:
  
 
: '''Arguments:'''
 
: '''Arguments:'''
:* ''target'': The creature ID or creature class of the species where eggs are injected, or ANY for any dead body.
+
:* ''target'': The creature ID or creature class of the species where eggs are injected, or NONE for any dead body.
  
 
: The species lays its eggs inside the corpse of another creature, which carries the eggs to term.  The eggs then hatch and the litter emerges from the corpse.  Implies OVIPOSITOR.
 
: The species lays its eggs inside the corpse of another creature, which carries the eggs to term.  The eggs then hatch and the litter emerges from the corpse.  Implies OVIPOSITOR.
Line 171: Line 171:
 
: This is intended to represent the behaviour of pandas, where they may occasionally have multiple births but will adopt only the strongest of their infants.  Creatures with this tag will choose the offspring in the litter that has the highest average attributes.  Theoretically this helps ensure the survival of the species, however barbaric it may seem to we humans who care so deeply about our own offspring (but then again, it hasn't exactly worked out well for pandas so far -- and actually, as carnivores that live in mountainous areas and prefer to eat bamboo that grows on flatter ground, they really are a species that just doesn't want to survive...).
 
: This is intended to represent the behaviour of pandas, where they may occasionally have multiple births but will adopt only the strongest of their infants.  Creatures with this tag will choose the offspring in the litter that has the highest average attributes.  Theoretically this helps ensure the survival of the species, however barbaric it may seem to we humans who care so deeply about our own offspring (but then again, it hasn't exactly worked out well for pandas so far -- and actually, as carnivores that live in mountainous areas and prefer to eat bamboo that grows on flatter ground, they really are a species that just doesn't want to survive...).
  
=====''[ALPHA_REPRODUCTION]''=====
+
===General Tokens===
 
 
: This tag forces only one mated pair per population cluster (i.e., CLUSTER_NUMBER) to reproduce.  Only the female with the highest attributes will bear offspring, with all other females in the group simply being suppressed from mating.  This inborn social control reduces overpopulation among animals that bear large numbers of offspring.
 
 
 
=====''[SOULMATE]''=====
 
 
 
: This tag causes a species to have only one mate at a time.  Once it has found a mate, it will remain with that mate, and it will not reproduce unless its mate is accessible.  If its mate is killed or passes away naturally, it will receive an unhappy thought even if it is not an [INTELLIGENT] species, but it will then be capable of finding another mate.  Most humanoids demonstrate this behaviour.
 
 
 
=====''[SOULMATE_PERMANENT]''=====
 
 
 
: This tag causes a species to seek only one mate during its lifetime.  It will receive an indefinite unhappy thought when its soulmate dies, and will never again seek another mate.  Seahorses fit this behaviour.
 
  
=====''[SEASONAL_REPRODUCTION:season...]''=====
+
=====''[INNATESKILL:skillid:level]''=====
  
 
: '''Arguments:'''
 
: '''Arguments:'''
:* ''season'': ANY, or one or more of SPRING, SUMMER, AUTUMN, and/or WINTER separated by colons.
+
:* ''skillid'': The skill possessed.
 +
:* ''level'': The level of the skill.
  
: This tag means that the species is only seasonally fertile, in that it will reproduce only in certain seasons; e.g., [SEASONAL_REPRODUCTION:SPRING].  When a fertile season begins, the animal resumes normal computation of its fertility cycles.  When the season ends (and the next season is no longer fertile), the being is suppressed from mating; the fertility cycle counter halts, to resume from where it left off in the next fertile season.
+
: This variation on the SWIMS_INNATE tag would allow creatures always to possess a minimum level of a given skill.
  
: This allows limiting certain species' reproductive intervals to reduce overpopulation due to year-round reproduction.
+
: ''Example:''
 
+
: (Kobold)
: Default is [SEASONAL_REPRODUCTION:ANY].
+
:: [INNATESKILL:AMBUSHER:2]
 
+
:: Kobolds are natural at sneakingEach one is an "Ambusher" (as opposed to "Novice Ambusher" at rank 1 or "Dabbling Ambusher" at rank 0).
=====''[TEMPERATE_REPRODUCTION:weather...]''=====
 
 
 
: '''Arguments:'''
 
:* ''season'': ANY; one or more of SCORCHING, HOT, WARM, TEMPERATE, COOL, COLD, or FREEZING, separated by colons; or a specific temperature range ''min'':''max'' in degrees Urist.
 
 
 
: e.g., [TEMPERATE_REPRODUCTION:ANY], [TEMPERATE_REPRODUCTION:SCORCHING:HOT:WARM], [TEMPERATE_REPRODUCTION:10000:10060]
 
 
 
: In addition to a blacklist based on SEASONAL_REPRODUCTION, a species may also have its fertility blacklist set to certain weather, to prevent it from reproducing in environmental conditions that are hostile to it or its offspring.  It is intended more for fortress mode (and ostensibly adventure mode in the far future), to prevent species that have been imported from breeding successfully in hostile environments, as BIOME already serves as an adequate limiter on worldgen populations.
 
 
 
: Default is [TEMPERATE_REPRODUCTION:ANY].
 
 
 
=====''[CONDITIONAL_FERTILITY:population]''=====
 
 
 
: '''Arguments:'''
 
:* ''population'': The population limit of the species within the region.
 
 
 
: This tag allows a population to be conditionally fertile, based on its population number per unit area; if the population exceeds the specified number, all fertility cycles halt until the population falls.  Aside from its metagame usefulness for controlling populations for better frame rates, it represents those species in reality which are genuinely capable of conditional fertilityAs with other caps, it is a soft cap -- multiple births in a litter or pre-existing pregnancies can bring the population over the cap.
 
 
 
=====''[REPRODUCTION_FREQUENCY:days:duration]''=====
 
 
 
: '''Arguments:'''
 
:* ''days'': The number of days between subsequent fertility cycles.
 
:* ''duration'': The length of days (overlapping with the ''days'' parameter) during which the animal is fertile.
 
 
 
: This controls the frequency of a species' reproductive cycles, blacklisting animals from becoming pregnant outside of their fertility periods.
 
 
 
: For code simplicity, since the oestrus event itself wouldn't simulated (although simulating it would be of particular realism interest for keen-sensed animals, especially bloodthirsty animals like sharks or ''Pitch Black''-style blind predators), it would be easier just to make the "fertile" period begin immediately when the cycle begins, rather than halfway through.
 
 
 
: The default is the standard human 28-day cycle, [REPRODUCTION_FREQUENCY:28:5] -- the female is fertile for 5 days out of every 28-day period.  If a fertility check falls on this interval... congratulations!
 
 
 
=====''[REPRODUCTION_SUCCESS:permille]''=====
 
 
 
: '''Arguments:'''
 
:* ''permille'': Chance of becoming pregnant on a pregnancy check.
 
 
 
: This allows finer control over successful reproduction even when blacklisting based on season, temperature/climate, fertility cycle, and population are taken into account, to allow species that tend to reproduce too quickly to be fine-tuned for greater realism.
 
 
 
: Default is whatever the current pregnancy chance is set to, which is probably buried deeply in the code somewhere...
 
 
 
===General Tokens===
 
 
 
=====''[BRACHIATOR:frequency]]''=====
 
 
 
: Arguments:
 
:* ''frequency'': Percentage of time preferably spent in trees
 
 
 
: A brachiating creature will prefer to climb and jump versus travelling over open ground, although it will occasionally climb down to ground level during random wandering or foraging, or if there are no more trees available in a given direction.  It will also automatically succeed in grasping any tree branch in its own tile, regardless of climbing skill.  Intended for chimpanzees and tree squirrels.
 
 
 
=====''[ARBOREAL]]''=====
 
 
 
: An arboreal creature will climb trees during random movement, and will prefer to flee into trees to avoid danger, climbing back down when safe.  Intended for cats.
 
 
 
=====''[CLIMBER]''=====
 
 
 
: A climber is similar to an arboreal, but will randomly climb ''any'' surface -- e.g., cliff faces -- rather than trees only.
 
 
 
=====''[GAIT:GLIDE:...]''=====
 
 
 
: A gliding gait (taking the same arguments as a typical gait) gives a creature the ability to glide.  It cannot fly up (optionally: unless it builds up momentum?), but can fly laterally or choose to descend faster, decreasing in altitude every 100(?) ticks.  A gliding lifeform will also never hurt itself when gliding onto ground level unless it is stunned in mid-air.  Intended for flying squirrels.
 
 
 
=====''[FLYING_HEIGHT:height]''=====
 
 
 
: Arguments:
 
:* ''height'': The desired height for the flying creature to maintain, as a matter of preference.
 
 
 
: This controls the altitude that the creature (caste?) will prefer to maintain.  Smaller birds will tend to remain closer to ground level except when a predator threatens them, whereas raptors will prefer to remain higher for better sight lines.
 
 
 
=====''[MIN_AIRSPEED:velocity]''=====
 
 
 
: Arguments:
 
:* ''velocity'': Minimum airspeed velocity in millimetres per second.
 
 
 
: The creature must maintain the specified airspeed (1000 = Adventure Mode 1.0).  If the creature becomes tired due to flight, it will attempt to find somewhere to land.
 
 
 
=====''[STANCE_GRIP:angle]''=====
 
 
 
: Arguments:
 
:* ''angle'': STANDARD, LATERAL, or INVERTED.
 
 
 
: The creature has the ability to ''grip'' onto any surface with its STANCE parts, but is unable to ''climb''.  In other words, it can fly into any tile, then choose to "hold on", and can then choose to "release hold" and fly away, but it cannot move to another tile while holding on.
 
 
 
: If the creature has STANCE_GRIP:STANDARD, it can hold onto its own tile.  If the creature has STANCE_GRIP:LATERAL, it can hold onto its own tile or onto any adjacent tile in the eight cardinal directions.  If the creature has STANCE_GRIP:INVERTED, it can hold onto its own tile, any adjacent tile, or the tile directly above.
 
 
 
=====''[SLEEP_ROOST]''=====
 
 
 
: The creature will prefer to find tree branches to roost in, preferring higher branches over lower ones.  It is able to sleep in tree branches without falling out.  Implies STANCE_GRIP:STANDARD (does not imply STANCE_CLIMBER). Intended for most avians.
 
 
 
=====''[SLEEP_STANDING]''=====
 
 
 
: The creature has locking joints that allow it to sleep while standing up, instead of having to lie down.  Intended for most equines.
 
 
 
=====''[SLEEP_INVERTED]''=====
 
 
 
: The creature prefers to sleep on ceilings and against wall surfaces in open spaces that are at least 2 Z levels above any floor.  It has locking claws that allow it to sleep without falling off the surface it is hanging on.  Implies STANCE_GRIP:INVERTED.  Intended for bats.
 
 
 
=====''[TUMBLE:altitude]''=====
 
 
 
: Arguments:
 
:* ''altitude'': The number of Z levels that can be fallen.
 
 
 
: A creature that can tumble can fall the specified number of Z levels without coming to harm.  Intended for cats.
 
 
 
=====''[HIBERNATION:season...]''=====
 
 
 
: '''Arguments:'''
 
:* ''season'': ANY, or one or more of SPRING, SUMMER, AUTUMN, and/or WINTER separated by colons.
 
 
 
: A species which hibernates will not spawn on the map outside of the valid seasons -- it will remain comfortably within the site populations instead.  Species which hibernate will automatically go to sleep during fortress mode and remain asleep, requiring no food or water, until the end of the season.  At the end of the season, however, they will be set automatically to Hungry and Thirsty and will seek food to eat.  (Though many species which hibernate remain awake, and do eat and drink while hibernating, this implementation is far simpler to simulate.)
 
  
 
=====''[CORPSE_SPECHEAT]'' / ''[CORPSE_LAYERING]'' / ''[CORPSE_CORPSE_BOILING_POINT]'' / etc.=====
 
=====''[CORPSE_SPECHEAT]'' / ''[CORPSE_LAYERING]'' / ''[CORPSE_CORPSE_BOILING_POINT]'' / etc.=====
Line 332: Line 215:
 
: As per CHILD_CONVERTER, but for any member of the targetted species.  The converted creature will become a faction member instead of a dynastic member.
 
: As per CHILD_CONVERTER, but for any member of the targetted species.  The converted creature will become a faction member instead of a dynastic member.
  
=====''[APPLY_CASTE_VARIATION:variation]''=====
+
=====''[ADD_BODY_TAG:caste:...]'' =====
  
 
: '''Arguments:'''
 
: '''Arguments:'''
:* ''variation'': The creature variation to apply to this specific caste (i.e., not affecting any other caste).
+
:* ''caste'': Caste within the current creature object to append additional body tokens to
 +
:* ''...'': Colon-separated list of [[body tokens|body templates]]
 +
 
 +
: This is an ''appendix'' of the creature's BODY token which allows you to add additional body parts to male or female members of the creature, instead of being required to redefine the caste through SELECT_CASTE and override the BODY token already present.  There is presently no way of using creature variations to add new body parts to the BODY tag, only to replace existing parts within the tag (e.g., I can convert the fingers to talons, but I can't add three adamantium spikes to the existing hands and fingers).
 +
 
 +
: Whenever a creature is created, it receives all of the body parts from the BODY token, plus all of the body templates from each ADD_BODY token in sequence that matches its caste.
  
: APPLY_CREATURE_VARIATION currently affects all castes, which doesn't suit gender dimorphism too well.  It would be great if there were a way to apply a creature variation to the currently selected caste instead of implicitly affecting the "all" caste.
+
: Note in particular that this would vastly simplify such things as sheep -- instead of having two define the body token twice, once under CASTE:FEMALE and once under CASTE:MALE, the body tag could be defined once under the root ("all") caste, and then an ADD_BODY_TAG:MALE:2HEAD_HORN tag anywhere after the CASTE:MALE has been defined.
  
 
=== Thought Tokens ===
 
=== Thought Tokens ===
Line 398: Line 286:
 
* To make a [http://insects.tamu.edu/fieldguide/cimg329.html parasitic wasp]-like creature which lays eggs inside other creatures at will, use [OVIPAROUS][PARASITE_EGG].
 
* To make a [http://insects.tamu.edu/fieldguide/cimg329.html parasitic wasp]-like creature which lays eggs inside other creatures at will, use [OVIPAROUS][PARASITE_EGG].
 
* If you want the above-mentioned parasitic wasp to squirt out its egg if it cannot do so inside another creature (due to lack of supply of other creatures), also include [INVOLUNTARY_EGGS] and the wasp will occasionally lay an egg (to die) in the open.  This will piss it off, and you don't want to piss off a wasp.
 
* If you want the above-mentioned parasitic wasp to squirt out its egg if it cannot do so inside another creature (due to lack of supply of other creatures), also include [INVOLUNTARY_EGGS] and the wasp will occasionally lay an egg (to die) in the open.  This will piss it off, and you don't want to piss off a wasp.
 
== Creature Variation Tokens ==
 
 
=====''[CVCT_APPEND:...]'' =====
 
 
: '''Arguments:'''
 
:* ''...'': Colon-separated list of additional parameters to append to end of CVCT_MASTER token's parameters
 
 
: As a fundamental improvement on my former ADD_BODY_TAG request, this would make use of existing CVCT functionality to allow appending parameters to existing tokens, with particular intention for use with a CVCT_MASTER:BODY (but fundamentally it should work with any tag, except perhaps for reciprocal creature variation tags).  There is presently no way of using creature variations to add new body parts to the BODY tag, only to replace existing parts within the tag (e.g., I can convert the fingers to talons, but I can't add three adamantium spikes to the existing hands and fingers ''unless I replace one of those existing body parts with itself while doing so''); this currently means that your creature variation tag must cover all possible usage scenarios instead of being properly generic -- i.e., instead of simply adding tags to the BODY, it has to target BASIC_1PARTBODY, BASIC_2PARTBODY, HUMANOID, HUMANOID_NECK, HUMANOID_HOOF, HUMANOID_NECK_HOOF, etc., etc....  The proposed new tag would neatly avoid that by allowing you to add any body part scot free, without worrying about what body parts are already there, proviso that you don't create an invalid body (which would simply appear in errorlog.txt as normal).
 
 
: Note in particular that this would vastly simplify such things as sheep:
 
 
[CREATURE_VARIATION:BASIC_2HORNS]
 
[CV_CONVERT_TAG]
 
[CVCT_MASTER:BODY]
 
[CVCT_APPEND:2HEAD_HORN]
 
 
: Instead of having two define the body token twice, once under CASTE:FEMALE and once under CASTE:MALE, the body tag could be defined once under the root ("all") caste, and then a CREATURE_VARIATION could be applied to the male caste, [APPLY_CREATURE_VARIATION:BASIC_2HORNS].  The fact that such a tag would be generically useful for such things as demon variations of humanoids, etc. is also of note.
 
  
 
== Body Tokens ==
 
== Body Tokens ==
Line 432: Line 302:
  
 
For REPRODUCTIVE_CONTRIBUTE, this allows some redundancy -- as long as there is at least one REPRODUCTIVE_CONTRIBUTE organ remaining, the animal can reproduce.  If all REPRODUCTIVE_CONTRIBUTE organs are missing, however, the creature can no longer reproduce.  Intended to allow gelding stallions and bulls or otherwise neutering male pets (removal of testes) or spaying female pets (removal of ovaries).
 
For REPRODUCTIVE_CONTRIBUTE, this allows some redundancy -- as long as there is at least one REPRODUCTIVE_CONTRIBUTE organ remaining, the animal can reproduce.  If all REPRODUCTIVE_CONTRIBUTE organs are missing, however, the creature can no longer reproduce.  Intended to allow gelding stallions and bulls or otherwise neutering male pets (removal of testes) or spaying female pets (removal of ovaries).
 
The less squicky version of this feature would simply implement the ability to spay/neuter animals or castrate historical figures by flagging the hist fig, without actually requiring all of the naughty bits to be simulated...
 

Please note that all contributions to Dwarf Fortress Wiki are considered to be released under the GFDL & MIT (see Dwarf Fortress Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel Editing help (opens in new window)