hyperborea-character-sheet/schemas-yaml/character.yml

48 lines
1.0 KiB
YAML
Raw Normal View History

2022-04-26 16:44:25 +00:00
$id: https://hyperboria.babyl.ca/character.json
title: Hyperboria character sheet
type: object
2022-04-26 16:57:57 +00:00
additionalProperties: false
required:
- name
- player
2022-04-26 17:50:56 +00:00
- statistics
2022-04-26 20:24:37 +00:00
- class
2022-04-26 21:43:26 +00:00
- level
- health
2022-04-26 16:57:57 +00:00
properties:
name: &string
type: string
player: *string
2022-04-26 20:24:37 +00:00
class: { $ref: '/classes.json' }
2022-04-26 17:50:56 +00:00
statistics:
type: object
allRequired: true
properties:
strength: &stat
$ref: '#/$defs/statistic'
dexterity: *stat
constitution: *stat
intelligence: *stat
wisdom: *stat
charisma: *stat
2022-04-26 21:43:26 +00:00
level: { type: number, minimum: 1 }
health: { $ref: '#/$defs/health' }
2022-04-26 17:50:56 +00:00
$defs:
statistic:
type: number
minimum: 1
maximum: 20
2022-04-26 21:43:26 +00:00
health:
type: object
required: [ max ]
properties:
max: { type: number }
current: { type: number }
log:
type: array
description: history of health rolls
items: { type: number }
minItems: { $data: /level }
maxItems: { $data: /level }
2022-04-26 17:50:56 +00:00