This is a basic guide to the configuration representation of various objects in MagicSpells. By no means is this guaranteed to be complete but rather a quick reference on how to put together common details.
The vector format is x,y,z where each letter may be replaced with a double value.
The TargetBooleanState format is just a string which represents a 3 outcome type boolean state, on, off, and toggle.
The SpellFilter format is a configuration section which may contain any of the following:
spellsaccepts a list of the internal spell names to explicitly allow.denied-spellsaccepts a list of the internal spell names to explicitly deny.spell-tagsaccepts a list of strings to indicate spell tags to look for and allow.denied-spell-tagsaccepts a list of strings to indicate which spell tags to look for and deny.
Spells are checked against the options in this order.
- If none of the options are defined, it allows all spells to pass through it.
- If
spellsis defined and contains the spell being checked, the spell is allowed through the filter. - If
denied-spellsis defined and contains the spell being checked, the spell is not allowed through the filter. - If
denied-spell-tagsis defined and the spell being checked contains a tag that is denied, the spell is not allowed through the filter. - If
spell-tagsis defined and the spell being checked contains a tag in this collection, the spell is allowed through the filter. - If none of these have applied, a default handling is applied. The default handling is determined as follows:
- If
spellsorspell-tagsare defined, the default action is to block the spell when being checked. - If the previous has not applied, then if
denied-spellsordenied-spell-tagsis defined, the default action is to allow the checked spell through the filter. - If a default result has not been determined from the 2 above rules, the filter has no fields defined and is treated as being an open filter, meaning that it allows all spells to pass through it.
- If
prompt-typeaccepts astringand will fail if not set. Current valid values areregexfixed-setenum
In addition to any additional options specified by the format of the specific prompt type.
- Everything that MagicPromptResponder has
regexpaccepts astringand fails if not set to a valid regular expression.prompt-textaccepts astringto use as the prompt's message to the player.
- Everything that MagicPromptResponder has
optionsaccepts alistof strings and fails if not set.prompt-textaccepts astringto use as the prompt's message to the player.
- Everything that MagicPromptResponder has
enum-classaccepts astringof the class to load the value options from.prompt-textaccepts astringto use as the prompt's message to the player.
variable-nameaccepts astringof the variable name to save the validated prompt response to.
prefixaccepts astringand defaults to nothing.local-echoaccepts abooleanand defaults totrue.first-promptaccepts aconfiguration sectioninpromptformat.timeout-secondsaccepts anintegerand defaults to30.escape-sequenceaccepts astringand defaults to nothing.