Monster Advanced JSON Mod Format: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''Monster Advanced''' is a special type of entity which combines the power of LUA driven entities with the existing Monster Mods system. | '''Monster Advanced''' is a special type of entity which combines the power of LUA driven entities with the existing Monster Mods system. It is one of the hardest types of entities to create, so it is recommended to start with a simpler mod type before creating a Monster Advanced. | ||
Monster Advanced JSON supports a variety of parameters to create custom monsters. JSON definitions can specify each as programmable (LUA) or literal values. | Monster Advanced JSON supports a variety of parameters to create custom monsters. JSON definitions can specify each as programmable (LUA) or literal values. | ||
Line 5: | Line 5: | ||
(All [[Entity Mod JSON Format|Entity JSON]] parameters are also supported!) | (All [[Entity Mod JSON Format|Entity JSON]] parameters are also supported!) | ||
Note that Monster Advanced entities uses a type of 'MONSTERADVANCED' instead of 'ENTITY' | == Fixed Fields == | ||
Note that Monster Advanced entities uses a '''type''' of 'MONSTERADVANCED' instead of 'ENTITY' | |||
'''id''' and '''customPublicFunctions''' are also supported (see entity JSON docs for details), don't forget to set id if you plan to have multiple custom monsters loaded at a time. | |||
=== initialValues === | |||
This collection of values follow the format of Monster Mods. These key-value pairs are supported: | |||
* name | |||
* escapeChance | |||
* hp | |||
* lustMax | |||
* meleeAttackPlayerDamage | |||
* meleeAttackPlayerAccuracy | |||
* lustAttackPlayerDamage | |||
* lustAttackPlayerAccuracy | |||
* lustAttackChance | |||
* meleeAttackMonsterAccuracy | |||
* lustAttackMonsterAccuracy | |||
* inseminationAttemptOnPlayerVictory | |||
* inseminationAttemptOnPlayerDefeat | |||
defaultText | |||
This collection of text follows the format of Monster Mods. These key-value pairs are supported: | |||
* alert | |||
* lustOk | |||
* lustFails | |||
* attackOk | |||
* attackFails | |||
* playerUse | |||
* playerDefeat | |||
== Dynamic Fields == | |||
In addition to the usual Entity JSON fields, monster fields are also included: | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 25: | Line 57: | ||
This should almost certainly be a literal string -- changing this value during run-time will lead to unknown results. | This should almost certainly be a literal string -- changing this value during run-time will lead to unknown results. | ||
|} | |} | ||
Note that while the usual '''name''' field is supported, it is not recommenced to be used. If set, it will not update when the monster is defeated or asleep. Instead, use the fixed field initialValues.name (see above). |
Revision as of 06:42, 28 December 2018
Monster Advanced is a special type of entity which combines the power of LUA driven entities with the existing Monster Mods system. It is one of the hardest types of entities to create, so it is recommended to start with a simpler mod type before creating a Monster Advanced.
Monster Advanced JSON supports a variety of parameters to create custom monsters. JSON definitions can specify each as programmable (LUA) or literal values.
(All Entity JSON parameters are also supported!)
Fixed Fields
Note that Monster Advanced entities uses a type of 'MONSTERADVANCED' instead of 'ENTITY'
id and customPublicFunctions are also supported (see entity JSON docs for details), don't forget to set id if you plan to have multiple custom monsters loaded at a time.
initialValues
This collection of values follow the format of Monster Mods. These key-value pairs are supported:
- name
- escapeChance
- hp
- lustMax
- meleeAttackPlayerDamage
- meleeAttackPlayerAccuracy
- lustAttackPlayerDamage
- lustAttackPlayerAccuracy
- lustAttackChance
- meleeAttackMonsterAccuracy
- lustAttackMonsterAccuracy
- inseminationAttemptOnPlayerVictory
- inseminationAttemptOnPlayerDefeat
defaultText
This collection of text follows the format of Monster Mods. These key-value pairs are supported:
- alert
- lustOk
- lustFails
- attackOk
- attackFails
- playerUse
- playerDefeat
Dynamic Fields
In addition to the usual Entity JSON fields, monster fields are also included:
Return Type | Parameter |
---|---|
boolean | isVulnerableToMasculineTheft
If true, this item can be lost in situations where masculine clothes are lost (currently only the thief scene). |
boolean | isConcealableClothing
If true, this item can conceal a transformation in the slot it is in (true for most clothing items). |
string | getSlot
Which slot the clothes exists in. This should almost certainly be a literal string -- changing this value during run-time will lead to unknown results. |
Note that while the usual name field is supported, it is not recommenced to be used. If set, it will not update when the monster is defeated or asleep. Instead, use the fixed field initialValues.name (see above).