reference schemas - cheaterbob/CR-Guide GitHub Wiki
Schema index
JSON Schemas under Docs/Modding/schemas define document structure, required properties, field types, enumerations, and numeric limits. Runtime validation remains authoritative for rules that depend on other files, loaded Core templates, asset dimensions, or content IDs.
For a browsable table of every root property and reusable definition, use the generated field-by-field API reference.
Pack and distribution contracts
| Schema | Used for |
|---|---|
manifest.schema.json |
Pack identity, version, dependencies, conflicts, content roots, previews, and generated bundle metadata |
catalog-v1.schema.json |
Community catalog listings and immutable releases; not a pack content document |
asset-patch.schema.json |
Explicit replacement of published asset slots |
Content contracts
| Schema | Content type |
Guide |
|---|---|---|
challenge.schema.json |
challenge |
Rules |
clothing.schema.json |
clothing |
Clothing |
difficulty.schema.json |
difficulty |
Rules |
enemy.schema.json |
enemy |
Enemies |
enemy-animation.schema.json |
enemyAnimation |
Enemies |
player-animation.schema.json |
playerAnimation |
Enemies |
player-attachment.schema.json |
playerAttachment |
Clothing |
rule-profile.schema.json |
ruleProfile |
Rules |
stage.schema.json |
stage |
Stages and maps |
stage-script.schema.json |
stageScript |
Stage scripts |
usable.schema.json |
usable |
Weapons and items |
weapon.schema.json |
weapon |
Weapons and items |
Tooling and map contracts
| Schema | Used for |
|---|---|
enemy-rig-reference.schema.json |
Frozen Core-enemy rig reference exchanged with authoring tools |
player-rig.schema.json |
Normalized player rig data |
tiled-map.schema.json |
Supported Tiled JSON map subset |
tiled-tileset.schema.json |
External Tiled JSON/TSJ tilesets |
Which source wins?
Use this order when sources seem to disagree:
- Runtime parser and cross-file validation for what the current build accepts.
- JSON Schema for structural validation and limits.
- Public wiki for workflows and explanation.
- Example packs for practical composition.
- Internal planning documents for design history only.
Report any disagreement between the first three as a documentation or schema defect. Do not work around it by depending on an undocumented parser behavior.
Validation
From the repository root:
dotnet run --project Tools/ModSchemaValidator -- .
To validate one loose pack:
dotnet run --project Tools/ModSchemaValidator -- . Mods/example.my-mod
See Validation and errors for the difference between schema and runtime validation.