Species Mod JSON Format
Species JSON supports a variety of parameters to create custom transformations.
NOTE - Species Modding is planned to be introduced for build r24.
A "type" of "SPECIES" should be used when creating an entity mod.
An "id" field should also be specified with the name of the transformation. Be careful not to use the same id as another mod -- if you use the same mod name as your mod wiki page, you can be assured of no conflicts.
A field of "transformedBodyPartDescriptions" can contain definitions for each body part, OR a lua function can be defined for 'getBodyPartDescription'. Usually transformedBodyPartDescriptions is used, unless you need to handle a multi-phased transformation for a particular body part (for instance, growing a small tail, then the tail becoming bigger).
Return Type | Parameter |
---|---|
string | getBodyPartDescription(string bodyPartName, int severity)
Gets description of body part of that species, ie cat ears are "protruding pink and white fur covered triangular ears" NOTE - If transformedBodyPartDescriptions is used, it will be used instead of this function, unless the body part is undefined. |
void | causeTF
Causes the player to be transformed a little bit. This function should find some body part (or multiple body parts), change their state, and output relevant text to the screen. If the player is fully transformed already, it should not output any text. This function should be defined by every species. |
boolean | getIsFullyTransformed
This function should return whether or not player is 100% the target form. Often used to determine whether to continue calling causeTF() in a forced transformation sequence (ie: lose to a transforming monster). This function should be defined by every species. |
void | speciesNatureTick
If player is more than 50% this type of species, then this will be called during gameTick(). This can be useful for species-specific features like turning on/off heat for catgirls, or starting a pregnancy for dragon queens. |
bodyPartTick
TODO | |
hasAlternateVoice
TODO | |
getAlternateVocal
TODO |