reference api manifest - cheaterbob/CR-Guide GitHub Wiki

Captivity Reloaded Mod Manifest

Generated from manifest.schema.json. Runtime validation remains authoritative for cross-file and engine-dependent rules.

Authoring schema for Mod API v1 manifest.json files.

Root fields

Field Type Required Stability Constraints and meaning
schemaVersion const: 1 yes stable
id ref: packId yes stable
displayName string yes stable min length: 1
version ref: semanticVersion yes stable
modApiVersion const: 1 yes stable
authors array of string no stable
description string no stable
previewImages array of string no stable max items: 8; unique items
dependencies ref: dependencies no stable
optionalDependencies ref: dependencies no stable
loadAfter ref: packIdList no stable
loadBefore ref: packIdList no stable
conflicts ref: packIdList no stable
overrides array of ref: contentId no stable unique items
priority integer no stable min: -100000; max: 100000; default: 0
contentRoots array of string yes stable min items: 1; unique items
assetBundles array of ref: assetBundle no experimental max items: 3; unique items; Generated by Captivity Mod Packager. Do not author this field manually.

Definition: packId

Schema form: string.

Constraints: pattern: ^[a-z0-9][a-z0-9._-]*$.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.

Definition: contentId

Schema form: string.

Constraints: max length: 160; pattern: ^[a-z0-9][a-z0-9._-]*:[a-z0-9][a-z0-9-]*(?:/[a-z0-9][a-z0-9-]*)*$.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.

Definition: semanticVersion

Schema form: string.

Constraints: pattern: ^(0\|[1-9][0-9]*)\.(0\|[1-9][0-9]*)\.(0\|[1-9][0-9]*)(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.

Definition: versionRange

Schema form: string.

Constraints: pattern: ^(?:>=\s*)?(0\|[1-9][0-9]*)\.(0\|[1-9][0-9]*)\.(0\|[1-9][0-9]*)(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.

Definition: dependency

Schema form: object.

Field Type Required Stability Constraints and meaning
id ref: packId yes
version ref: versionRange yes

Definition: dependencies

Schema form: array of ref: dependency.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.

Definition: assetBundle

Schema form: object.

Field Type Required Stability Constraints and meaning
platform enum: windows, android, webgl yes
path string yes pattern: ^bundles/(windows|android|webgl)/[^/]+\.[Bb][Uu][Nn][Dd][Ll][Ee]$
sha256 string yes pattern: ^[0-9a-fA-F]{64}$
sizeBytes integer yes min: 1; max: 268435456

Definition: packIdList

Schema form: array of ref: packId.

Constraints: unique items.

Field Type Required Stability Constraints and meaning
No named properties This definition is composed through references or conditional schemas.