gg.infinitetavern.chronicle.replay

infinitetavern.gg

{
  "id": "gg.infinitetavern.chronicle.replay",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "lobbyId",
          "seasonNumber",
          "roundCount",
          "playedAt",
          "rounds"
        ],
        "properties": {
          "rounds": {
            "type": "array",
            "items": {
              "ref": "#roundSnapshot",
              "type": "ref"
            },
            "description": "Ordered array of round snapshots, one per combat round."
          },
          "lobbyId": {
            "type": "string",
            "description": "Server-assigned lobby UUID identifying the tavern battle."
          },
          "playedAt": {
            "type": "string",
            "format": "datetime",
            "description": "ISO 8601 UTC timestamp when the battle concluded."
          },
          "roundCount": {
            "type": "integer",
            "minimum": 1,
            "description": "Total number of combat rounds in the battle."
          },
          "seasonNumber": {
            "type": "integer",
            "minimum": 1,
            "description": "The season (campaign chapter) this battle took place in."
          }
        }
      },
      "description": "A magical scrying record that preserves the full round-by-round replay of a tavern battle. Written to the bot account's PDS; referenced by chronicle entries and herald battle reports for playback."
    },
    "pairing": {
      "type": "object",
      "required": [
        "playerA",
        "playerB",
        "winnerDid"
      ],
      "properties": {
        "playerA": {
          "type": "string",
          "format": "did",
          "description": "DID of the first combatant."
        },
        "playerB": {
          "type": "string",
          "format": "did",
          "description": "DID of the second combatant."
        },
        "winnerDid": {
          "type": "string",
          "format": "did",
          "description": "DID of the round winner."
        },
        "damageDealt": {
          "type": "integer",
          "minimum": 0,
          "description": "Damage dealt to the loser."
        }
      },
      "description": "A single combat pairing between two adventurers in a round."
    },
    "roundSnapshot": {
      "type": "object",
      "required": [
        "roundNumber",
        "pairings"
      ],
      "properties": {
        "pairings": {
          "type": "array",
          "items": {
            "ref": "#pairing",
            "type": "ref"
          },
          "description": "Combat pairings for this round."
        },
        "roundNumber": {
          "type": "integer",
          "minimum": 1,
          "description": "1-indexed round number."
        },
        "eliminations": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "did"
          },
          "description": "DIDs of adventurers eliminated after this round."
        }
      },
      "description": "A snapshot of one combat round — the pairings and outcomes."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against gg.infinitetavern.chronicle.replay

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:vxwgn77hp5ikvbiggm5es3rv
CID
bafyreihzsrxlqqcfwuqdsqmpuicc347rdahnzer5hav4sv7ax4r6vgry74
Indexed At
2026-04-13 22:54 UTC
AT-URI
at://did:plc:vxwgn77hp5ikvbiggm5es3rv/com.atproto.lexicon.schema/gg.infinitetavern.chronicle.replay

Lexicon Garden

@