{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/FatePaths/fatedefinition-v1.json", "title": "FATE Definition V1", "description": "A FATE farming definition", "type": "object", "properties": { "$schema": { "type": "string", "const": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/FatePaths/fatedefinition-v1.json" }, "Name": { "description": "Display name of the FATE", "type": "string" }, "Description": { "description": "Description of the FATE activity", "type": "string" }, "TerritoryId": { "description": "Territory ID where the FATE takes place", "type": "integer", "minimum": 1 }, "Aetheryte": { "description": "Nearest aetheryte for teleporting", "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-aetheryte.json" }, "Position": { "description": "Position to navigate to for the FATE", "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-vector3.json" }, "Targets": { "description": "List of FATE targets and actions to perform on them", "type": "array", "items": { "type": "object", "properties": { "DataId": { "type": "integer", "minimum": 1 }, "Action": { "type": "string" } }, "required": [ "DataId", "Action" ], "additionalProperties": false }, "minItems": 1 }, "RequiredStatusId": { "description": "Status effect required to participate in the FATE", "type": "string" }, "TransformNpcDataId": { "description": "NPC to interact with to obtain the required status", "type": "integer", "minimum": 1 }, "TransformNpcPosition": { "description": "Position of the transform NPC", "$ref": "https://github.com/WigglyMuffin/Questionable/raw/refs/heads/main/Questionable.Model/common-vector3.json" }, "EventExpiry": { "description": "If this is a seasonal/event FATE, the date and time (in UTC) when it is no longer available. Date-only values are treated as ending at daily reset (14:59:59 UTC).", "format": "date-time", "type": [ "string", "null" ] }, "TransformDialogueChoices": { "description": "Dialogue choices when interacting with the transform NPC", "type": "array", "items": { "type": "object", "properties": { "Type": { "type": "string", "enum": [ "YesNo", "List" ] }, "ExcelSheet": { "type": "string" } }, "required": [ "Type" ], "allOf": [ { "if": { "properties": { "Type": { "const": "YesNo" } } }, "then": { "properties": { "Prompt": { "type": [ "string", "integer" ] }, "PromptIsRegularExpression": { "type": "boolean" }, "Yes": { "type": "boolean", "default": true } }, "required": [ "Prompt", "Yes" ] } }, { "if": { "properties": { "Type": { "const": "List" } } }, "then": { "properties": { "Prompt": { "type": [ "string", "integer", "null" ] }, "PromptIsRegularExpression": { "type": "boolean" }, "Answer": { "type": [ "string", "integer" ] }, "AnswerIsRegularExpression": { "type": "boolean" } }, "required": [ "Prompt", "Answer" ] } } ] } } }, "required": [ "$schema", "Name", "Description", "TerritoryId", "Aetheryte", "Position", "Targets" ], "additionalProperties": false }