| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- {
- "$schema": "http://json-schema.org/draft-06/schema#",
- "properties": {
- "name": {"type": "string"},
- "player": {"type": "string"},
- "classes": {
- "items": {"$ref": "#/definitions/classDetail"},
- "type": "array"
- },
- "race": {"type": "string"},
- "alignment": {
- "type": "string",
- "enum": [
- "LG", "NG", "CG", "LN", "TN", "CN", "LE", "NE", "CE"
- ]
- },
- "deity": {"type": "string"},
- "size": {
- "type": "string",
- "enum": [
- "F", "D", "T", "S", "M", "L", "H", "G", "C"
- ]
- },
- "age": {"type": "integer"},
- "gender": {"type": "string", "enum": ["M", "F", "N"]},
- "height": {"type": "string"},
- "weight": {"type": "number"},
- "eyes": {"type": "string"},
- "hair": {"type": "string"},
- "skin": {"type": "string"},
- "experience": {"type": "integer"},
- "health": {"$ref": "#/definitions/hitpoints"},
- "abilities": {
- "propertyNames": {
- "type": "string",
- "enum": ["str", "dex", "con", "int", "wis", "cha"]
- },
- "additionalProperties": {
- "properties": {
- "base": {"$ref": "#/definitions/abilityScore"},
- "temp": {"$ref": "#/definitions/abilityScore"}
- },
- "additionalProperties": false,
- "type": "object"
- }
- },
- "skills": {
- "items": {"$ref": "#/definitions/skill"},
- "type": "array"
- },
- "inventory": {"$ref": "file:inventory.json#"}
- },
- "type": "object",
- "definitions": {
- "abilityScore": {
- "type": "integer",
- "oneOf": [
- {"const": -1},
- {"exclusiveMinimum": 0}
- ]
- },
- "classDetail": {
- "properties": {
- "level": {"type": "integer", "minimum": 1},
- "name": {"type": "string"},
- "spellBook": {"$ref": "file:spellbook.json#"}
- },
- "type": "object"
- },
- "hitpoints": {
- "properties": {
- "total": {"type": "integer", "minimum": 1},
- "rolled": {"type": "integer", "minimum": 1},
- "current": {"type": "integer", "minimum": -10},
- "temp": {"type": "integer", "minimum": 0},
- "nonlethal": {"type": "integer", "minimum": 0}
- },
- "type":"object"
- },
- "skill": {
- "properties": {
- "name": {"type": "string"},
- "ranks": {"type": "integer"},
- "pointsSpent": {"type": "integer"}
- },
- "type": "object"
- }
- }
- }
|