# ink.igav.galaxius.temp.ruleset

> Published by [galaxius-gm.igav.ink](https://lexicon.garden/identity/did:plc:whg4cehv5lzx6yorjkwzbk56)

✓ This is the authoritative definition for this NSID.

## Description

A Galaxius ruleset: the engine's canonical constants, plus a name and a model.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:whg4cehv5lzx6yorjkwzbk56/ink.igav.galaxius.temp.ruleset)
- [Documentation](https://lexicon.garden/lexicon/did:plc:whg4cehv5lzx6yorjkwzbk56/ink.igav.galaxius.temp.ruleset/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:whg4cehv5lzx6yorjkwzbk56/ink.igav.galaxius.temp.ruleset/examples)

## Definitions

### `ink.igav.galaxius.temp.ruleset`

**Type**: `record`

A Galaxius ruleset under a readable slug. Content records are immutable: changed rules are a new record under a new slug.

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `basedOn` | `ref` → `com.atproto.repo.strongRef` | No | The ruleset this one is based on, when there is one. |
| `constants` | `blob` | Yes | The engine's canonical Ruleset JSON, byte for byte; the blob's CID pins it exactly. |
| `constantsFormat` | `string` | Yes | The format of the constants blob; an engine refuses one it does not know. |
| `createdAt` | `string` (datetime) | Yes | When this record was created. |
| `description` | `string` | No | A short description of the ruleset. |
| `model` | `string` | Yes | The game model the constants describe; the engine names its own. |
| `name` | `string` | Yes | The ruleset's name. |
| `version` | `string` | Yes | The ruleset's own version, e.g. 0.200-reconstructed. |

## Raw Schema

```json
{
  "$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
}
```
