Files
talemate/talemate-scene-schema.json
2025-12-19 21:47:05 +00:00

187 lines
4.2 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"description": {
"type": "string"
},
"intro": {
"type": "string"
},
"name": {
"type": "string"
},
"history": {
"type": "array",
"items": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"id": {
"type": "integer"
},
"typ": {
"type": "string"
},
"source": {
"type": "string"
}
},
"required": ["message", "id", "typ", "source"]
}
},
"environment": {
"type": "string"
},
"archived_history": {
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"ts": {
"type": "string"
}
},
"required": ["text", "ts"]
}
},
"character_states": {
"type": "object"
},
"characters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"greeting_text": {
"type": "string"
},
"base_attributes": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"details": {
"type": "object"
},
"gender": {
"type": "string"
},
"color": {
"type": "string"
},
"example_dialogue": {
"type": "array",
"items": {
"type": "string"
}
},
"history_events": {
"type": "array",
"items": {
"type": "object"
}
},
"is_player": {
"type": "boolean"
},
"cover_image": {
"type": ["string", "null"]
}
},
"required": ["name", "description", "greeting_text", "base_attributes", "details", "gender", "color", "example_dialogue", "history_events", "is_player", "cover_image"]
}
},
"goal": {
"type": ["string", "null"]
},
"goals": {
"type": "array",
"items": {
"type": "object"
}
},
"context": {
"type": "string"
},
"world_state": {
"type": "object",
"properties": {
"characters": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"snapshot": {
"type": ["string", "null"]
},
"emotion": {
"type": "string"
}
},
"required": ["snapshot", "emotion"]
}
},
"items": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"snapshot": {
"type": ["string", "null"]
}
},
"required": ["snapshot"]
}
},
"location": {
"type": ["string", "null"]
}
},
"required": ["characters", "items", "location"]
},
"assets": {
"type": "object",
"properties": {
"cover_image": {
"type": "string"
},
"assets": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"file_type": {
"type": "string"
},
"media_type": {
"type": "string"
}
},
"required": ["id", "file_type", "media_type"]
}
}
},
"required": ["cover_image", "assets"]
},
"ts": {
"type": "string"
}
},
"required": ["description", "intro", "name", "history", "environment", "archived_history", "character_states", "characters", "context", "world_state", "assets", "ts"]
}