Reorganizing. adding cleaner headers, etc

This commit is contained in:
2026-08-01 10:18:53 -05:00
parent 35e127e611
commit b247c1896f

48
szds.md
View File

@@ -2,7 +2,7 @@
## Layout ## Layout
Data is seperated into 3 main chunks; systems, games, and datasets. Each of these work together but hold varying information. Data is separated into 3 main chunks: systems, games, and datasets. Each of these work together but hold varying information.
The flow goes as such: The flow goes as such:
@@ -10,33 +10,39 @@ The flow goes as such:
i. Define a character template i. Define a character template
ii. Define data templates ii. Define data templates
2. Create a Dataset 2. Create a Dataset
i. Reference an existing system for availible templates i. Reference an existing system for available templates
ii. Create data instances based on the availible templates ii. Create data instances based on the available templates
3. Create a Game 3. Create a Game
i. 'Install' an existing system i. 'Install' an existing system
ii. 'Install' various datasets that use the same system ii. 'Install' various datasets that use the same system
iii. Install plugins (future feature) iii. Install plugins (future feature)
iv. Create a character from the system template iv. Create a character from the system template
### File specifications ## File Specifications
Namespaces and IDs:
- There are 4 "namespaces" in the sz data pipeline; author, system, dataset, and 'template group' (working name, but essentialy is the data type which are grouped by folders in a dataset); in that order. ### Namespaces and IDs
- Namespaces are accessed with a trailing `:`, ex. the 'szcore' system, made by 'sz' would be `sz:szcore`
- All .sz, .szt, and .szo files are given IDs based on the file name when loaded into the local database, and must be unique to their scope. There are 4 "namespaces" in the sz data pipeline: author, system, dataset, and 'template group' (working name, but essentially is the data type, which are grouped by folders in a dataset), in that order.
- For instance a data template in the `szcore` system with the file name `item.szt` will be identified as `szcore:item` Namespaces are accessed with a trailing `:`, ex. the 'szcore' system, made by 'sz', would be `sz:szcore`.
- And a data instance in a dataset called `data` with the name `item/coin.szo` (with the `item` template, designated by the folder name) will be identified in the database as `sz:szcore:data:item:coin`
- Top level .sz files (system.sz, dataset.sz, and game.sz) are identified by the parent folder, for instance a system named `sz.szcore/` will be identified as `sz:szcore`
Fields: All .sz, .szt, and .szo files are given IDs based on the file name when loaded into the local database, and must be unique to their scope.
For instance, a data template in the `szcore` system with the file name `item.szt` will be identified as `szcore:item`.
And a data instance in a dataset called `data` with the name `item/coin.szo` (with the `item` template, designated by the folder name) will be identified in the database as `sz:szcore:data:item:coin`.
Top level .sz files (system.sz, dataset.sz, and game.sz) are identified by the parent folder, for instance a system named `sz.szcore/` will be identified as `sz:szcore`.
### Fields
A field is found within a data object, defined by a template. A field is found within a data object, defined by a template.
---
### System: ## System
Holds:
- Character Template - Character Template
- Data templates - Data templates
@@ -166,7 +172,11 @@ formula = 'base_damage + $PLAYER.stats.modifiers.{skill}'
``` ```
### Datasets: ---
## Datasets
Holds:
- Reference to a System and its templates - Reference to a System and its templates
- Data Instance - Data Instance
@@ -215,9 +225,13 @@ value = "10"
``` ```
### Games: ---
The Game type glues everything together
## Games
The Game type glues everything together.
Holds:
- System - System
- Plugins - Plugins
- Datasets - Datasets