games.cavu.game

chris.pardy.family

Documentation

Cavu's sidecar to a game's games.atmosphere.define record: how the game launches and what it may do with a player's account. Same rkey as the define record: the game's slug (e.g. 'haiku-day'), which scopes everything the game may write (games.cavu.score / games.cavu.save at '<slug>[:...]', actor.rpg.stats at '<slug>'). The game's name, description, art and links live in the define record.

main record

Cavu's sidecar to a game's games.atmosphere.define record: how the game launches and what it may do with a player's account. Same rkey as the define record: the game's slug (e.g. 'haiku-day'), which scopes everything the game may write (games.cavu.score / games.cavu.save at '<slug>[:...]', actor.rpg.stats at '<slug>'). The game's name, description, art and links live in the define record.

Record Key any Any valid record key

Properties

capabilities array of ref games.cavu.defs#capability Required

Everything the game may do through a player's host. Shown before launch.

define string at-uri Required

The games.atmosphere.define record this extends (same repo, same rkey).

guests boolean Required

Whether the game can be played without signing in (nothing is saved).

launchService string did Required

DID whose document names the launch service endpoint (#cavu_launch) and its grant-signing key.

pack string at-uri Optional

The games.cavu.pack this game runs (Lua + assets).

View raw schema
{
  "description": "Cavu's sidecar to a game's games.atmosphere.define record: how the game launches and what it may do with a player's account. Same rkey as the define record: the game's slug (e.g. 'haiku-day'), which scopes everything the game may write (games.cavu.score / games.cavu.save at '<slug>[:...]', actor.rpg.stats at '<slug>'). The game's name, description, art and links live in the define record.",
  "key": "any",
  "record": {
    "properties": {
      "capabilities": {
        "description": "Everything the game may do through a player's host. Shown before launch.",
        "items": {
          "ref": "games.cavu.defs#capability",
          "type": "ref"
        },
        "type": "array"
      },
      "define": {
        "description": "The games.atmosphere.define record this extends (same repo, same rkey).",
        "format": "at-uri",
        "type": "string"
      },
      "guests": {
        "description": "Whether the game can be played without signing in (nothing is saved).",
        "type": "boolean"
      },
      "launchService": {
        "description": "DID whose document names the launch service endpoint (#cavu_launch) and its grant-signing key.",
        "format": "did",
        "type": "string"
      },
      "pack": {
        "description": "The games.cavu.pack this game runs (Lua + assets).",
        "format": "at-uri",
        "type": "string"
      }
    },
    "required": [
      "define",
      "launchService",
      "guests",
      "capabilities"
    ],
    "type": "object"
  },
  "type": "record"
}

Lexicon Garden

@