-
Notifications
You must be signed in to change notification settings - Fork 9
Objects
Objects are constructed and managed from entries.
Objects are recognizable by their dot-separated keys path in the World Information interface.
Objects provide a flexible and dynamic framework for displaying information to the AI on-demand and by fine-tuned condition(s).
An Object's condition(s) and functionalities are determined from within its self-contained <root>._synonyms path.
Click for Details
- Objects execute their attribute functions if the condition(s) within
<root>._synonymsqualifies. - By default,
<root>._synonymsconsists of<root>#[t]to execute the trailing positional attribute when<root>is mentioned. - Properties and values of an Object are only displayed if permission from the whitelist or contextual synonyms conditions is obtained.
Info Dump
-
<root> - is the identifier and access point of the Object.
-
<root>can be arbitrarily named as the script is agnostic to its existence. - e.g
johninjohn.characteris the<root>of the Object.
-
-
<paths> - is any of the child Object(s) in the paths of
<root>.- e.g
characterinjohn.characteris a path ofjohn. -
<paths>holds the values to present when qualified.- e.g
Johnwithinjohn.characteris the value of the path.
- e.g
-
<paths>are displayed to the AI simultaneously as its values.- Label your
<paths>with an identifier to the value it holds. - e.g
john.characterhints that it contains a character,John
- Label your
- e.g
-
_synonyms - is an internal path that holds the condition(s) the Object should adhere to.
- By default,
<root>becomes the<root>._synonymswith an automatic application of the#[t]attribute.- An example is
john._synonymsdefaulting tojohn#[t]
- An example is
-
<root>._synonymscan hold individual conditions per line-break and run separate functions on demand.- The lowest positioned line is the one executed if qualified.
- By default,
There are three methods of Object creation to facilitate various workflows.
For first time setups, ensure that the properties created are added to the whitelist!
-
Manipulation of Objects via the World Information interface.
-
Dot-separated
keysassign theentry's content to the Object. -
! prefixed
keysis an alternate method that parses theentry's content into dot-separated entries.Click for Examples
-
Dot-separated
keys entry john.character John john.traits Wizard, Sage, Alchemist john.type Legendary Mage john.outfit Withered Robe john.status Stunned john.effects Radiant Light [{"character": "John", "traits": "Wizard, Sage, Alchemist", "type": "Legendary Mage", "outfit": "Withered Robe", "status": "Stunned", "effects": "Radiant Light"}]
-
! Prefixed
keys entry !john [{"character": "John", "traits": "Wizard, Sage, Alchemist", "type": "Legendary Mage", "outfit": "Withered Robe", "status": "Stunned", "effects": "Radiant Light"}] [{"character": "John", "traits": "Wizard, Sage, Alchemist", "type": "Legendary Mage", "outfit": "Withered Robe", "status": "Stunned", "effects": "Radiant Light"}]
-
- Manipulation of Objects via the input field.
- See the list of commands.
- As Objects are handled via
worldEntries, importing.JSONfiles into AI Dungeon is an option. - Create and fill in the mandatory
keys,entry, and optionalisNotHiddenandidfields. - Use the formats described in World Information Interface for the file's
keysandentryfields.
-
List of Attributes
- [d] Descriptor
- [f] Filter
- [i] Ignore
- [l] Length
- [p] Positional
- [m] Memory Positional
- [t] Trailing Positional
- [r] Random Selector
- [x] Exclude