61 lines
1.2 KiB
Markdown
61 lines
1.2 KiB
Markdown
# SessionZero Data System
|
|
|
|
## Layout
|
|
|
|
Data is seperated into 3 main chunks; systems, games, and datasets. Each of these work together but hold varying information.
|
|
|
|
The flow goes as such:
|
|
|
|
1. Create a System
|
|
i. Define a character template
|
|
ii. Define data templates
|
|
2. Create a Dataset
|
|
i. Reference an existing system for availible templates
|
|
ii. Create data instances based on the availible templates
|
|
3. Create a Game
|
|
i. 'Install' an existing system
|
|
ii. 'Install' various datasets that use the same system
|
|
iii. Install plugins (future feature)
|
|
iv. Create a character from the system template
|
|
|
|
|
|
### System:
|
|
- Character Template
|
|
- Data templates
|
|
|
|
```text
|
|
author.system_name/
|
|
- system.sz (A TOML file with metadata)
|
|
- character_template.szt (sessionzero template file)
|
|
- templates/
|
|
- template_name.szt
|
|
```
|
|
|
|
Example `system.sz` file
|
|
```toml
|
|
id = "szcore"
|
|
display_name = "SZ Core System"
|
|
version = "1.0"
|
|
description = """
|
|
A simple core system to base others off of
|
|
"""
|
|
```
|
|
|
|
Example `character_template.szt` file
|
|
```toml
|
|
template_type = "character"
|
|
```
|
|
|
|
### Games:
|
|
- System
|
|
- Plugins
|
|
- Datasets
|
|
- Player Data
|
|
- Character Instances
|
|
- Gamestate/Data
|
|
|
|
### Datasets:
|
|
- Reference to a System and its templates
|
|
- Data Instance
|
|
|