{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "A Galaxius ruleset under a readable slug. Content records are immutable: changed rules are a new record under a new slug.",
"key": "any",
"record": {
"properties": {
"basedOn": {
"description": "The ruleset this one is based on, when there is one.",
"ref": "com.atproto.repo.strongRef",
"type": "ref"
},
"constants": {
"accept": [
"application/json"
],
"description": "The engine's canonical Ruleset JSON, byte for byte; the blob's CID pins it exactly.",
"maxSize": 1000000,
"type": "blob"
},
"constantsFormat": {
"description": "The format of the constants blob; an engine refuses one it does not know.",
"knownValues": [
"galaxius-ruleset/1"
],
"maxGraphemes": 64,
"type": "string"
},
"createdAt": {
"description": "When this record was created.",
"format": "datetime",
"type": "string"
},
"description": {
"description": "A short description of the ruleset.",
"maxGraphemes": 3000,
"type": "string"
},
"model": {
"description": "The game model the constants describe; the engine names its own.",
"knownValues": [
"classic-0.200"
],
"maxGraphemes": 64,
"type": "string"
},
"name": {
"description": "The ruleset's name.",
"maxGraphemes": 100,
"type": "string"
},
"version": {
"description": "The ruleset's own version, e.g. 0.200-reconstructed.",
"maxGraphemes": 64,
"type": "string"
}
},
"required": [
"name",
"version",
"model",
"constantsFormat",
"constants",
"createdAt"
],
"type": "object"
},
"type": "record"
}
},
"description": "A Galaxius ruleset: the engine's canonical constants, plus a name and a model.",
"id": "ink.igav.galaxius.temp.ruleset",
"lexicon": 1
}