games.atplay.game.release
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"assets": {
"properties": {
"files": {
"items": {
"ref": "#file",
"type": "ref"
},
"minLength": 1,
"type": "array"
},
"intent": {
"description": "The intended purpose of these assets.",
"knownValues": [
"games.atplay.game.release#webDisplay"
],
"maxLength": 128,
"minLength": 1,
"type": "string"
}
},
"required": [
"intent",
"files"
],
"type": "object"
},
"attributes": {
"description": "Static metadata about the game itself, surfaced to potential players when they're deciding whether to play it. Distinct from `parameters`, which configures gameplay.",
"properties": {
"complexity": {
"description": "Rules and decision-space complexity, equivalent to BoardGameGeek's complexity weighting. 1 = trivial to learn and play, 5 = heavy ruleset with deep strategy.",
"maximum": 5,
"minimum": 1,
"type": "integer"
},
"players": {
"description": "Supported player counts. One element means an exact count (e.g. [2] = exactly two players); two elements mean an inclusive range (e.g. [2, 4] = two to four players); three elements mean a range with the middle number being the recommended number (e.g. [2, 3, 5] = two to five players, plays best with three).",
"items": {
"minimum": 1,
"type": "integer"
},
"maxLength": 3,
"minLength": 1,
"type": "array"
},
"skill": {
"description": "How much of the outcome is determined by player skill rather than chance. 0 = pure luck (e.g. snakes and ladders), 10 = pure skill (e.g. chess, with no random elements).",
"maximum": 10,
"minimum": 0,
"type": "integer"
},
"tags": {
"description": "Tags describing the game's style, theme, and mechanics.",
"items": {
"knownValues": [
"games.atplay.taxonomy.mechanic#acting",
"games.atplay.taxonomy.mechanic#actionEvent",
"games.atplay.taxonomy.mechanic#actionDrafting",
"games.atplay.taxonomy.mechanic#actionPoints",
"games.atplay.taxonomy.mechanic#actionQueue",
"games.atplay.taxonomy.mechanic#actionRetrieval",
"games.atplay.taxonomy.mechanic#actionTimer",
"games.atplay.taxonomy.mechanic#advantageToken",
"games.atplay.taxonomy.mechanic#alliances",
"games.atplay.taxonomy.mechanic#areaMajorityInfluence",
"games.atplay.taxonomy.mechanic#areaMovement",
"games.atplay.taxonomy.mechanic#areaImpulse",
"games.atplay.taxonomy.mechanic#auctionBidding",
"games.atplay.taxonomy.mechanic#auctionCompensation",
"games.atplay.taxonomy.mechanic#auctionDexterity",
"games.atplay.taxonomy.mechanic#auctionDutch",
"games.atplay.taxonomy.mechanic#auctionDutchPriority",
"games.atplay.taxonomy.mechanic#auctionEnglish",
"games.atplay.taxonomy.mechanic#auctionFixedPlacement",
"games.atplay.taxonomy.mechanic#auctionMultipleLot",
"games.atplay.taxonomy.mechanic#auctionOnceAround",
"games.atplay.taxonomy.mechanic#auctionSealedBid",
"games.atplay.taxonomy.mechanic#auctionTurnOrderUntilPass",
"games.atplay.taxonomy.mechanic#automaticResourceGrowth",
"games.atplay.taxonomy.mechanic#bettingAndBluffing",
"games.atplay.taxonomy.mechanic#bias",
"games.atplay.taxonomy.mechanic#bidsAsWagers",
"games.atplay.taxonomy.mechanic#bingo",
"games.atplay.taxonomy.mechanic#bribery",
"games.atplay.taxonomy.mechanic#campaignBattleCardDriven",
"games.atplay.taxonomy.mechanic#cardPlayConflictResolution",
"games.atplay.taxonomy.mechanic#catchTheLeader",
"games.atplay.taxonomy.mechanic#chaining",
"games.atplay.taxonomy.mechanic#chitPullSystem",
"games.atplay.taxonomy.mechanic#closedDrafting",
"games.atplay.taxonomy.mechanic#closedEconomyAuction",
"games.atplay.taxonomy.mechanic#commandCards",
"games.atplay.taxonomy.mechanic#commoditySpeculation",
"games.atplay.taxonomy.mechanic#communicationLimits",
"games.atplay.taxonomy.mechanic#connections",
"games.atplay.taxonomy.mechanic#constrainedBidding",
"games.atplay.taxonomy.mechanic#contracts",
"games.atplay.taxonomy.mechanic#cooperativeGame",
"games.atplay.taxonomy.mechanic#crayonRailSystem",
"games.atplay.taxonomy.mechanic#criticalHitsAndFailures",
"games.atplay.taxonomy.mechanic#cubeTower",
"games.atplay.taxonomy.mechanic#deckConstruction",
"games.atplay.taxonomy.mechanic#deckBagAndPoolBuilding",
"games.atplay.taxonomy.mechanic#deduction",
"games.atplay.taxonomy.mechanic#delayedPurchase",
"games.atplay.taxonomy.mechanic#diceRolling",
"games.atplay.taxonomy.mechanic#dieIconResolution",
"games.atplay.taxonomy.mechanic#differentDiceMovement",
"games.atplay.taxonomy.mechanic#drawing",
"games.atplay.taxonomy.mechanic#elapsedRealTimeEnding",
"games.atplay.taxonomy.mechanic#enclosure",
"games.atplay.taxonomy.mechanic#endGameBonuses",
"games.atplay.taxonomy.mechanic#events",
"games.atplay.taxonomy.mechanic#finaleEnding",
"games.atplay.taxonomy.mechanic#flicking",
"games.atplay.taxonomy.mechanic#follow",
"games.atplay.taxonomy.mechanic#forceCommitment",
"games.atplay.taxonomy.mechanic#gridCoverage",
"games.atplay.taxonomy.mechanic#gridMovement",
"games.atplay.taxonomy.mechanic#handManagement",
"games.atplay.taxonomy.mechanic#hexagonGrid",
"games.atplay.taxonomy.mechanic#hiddenMovement",
"games.atplay.taxonomy.mechanic#hiddenRoles",
"games.atplay.taxonomy.mechanic#hiddenVictoryPoints",
"games.atplay.taxonomy.mechanic#highestLowestScoring",
"games.atplay.taxonomy.mechanic#hotPotato",
"games.atplay.taxonomy.mechanic#iCutYouChoose",
"games.atplay.taxonomy.mechanic#impulseMovement",
"games.atplay.taxonomy.mechanic#income",
"games.atplay.taxonomy.mechanic#increaseValueOfUnchosenResources",
"games.atplay.taxonomy.mechanic#induction",
"games.atplay.taxonomy.mechanic#interrupts",
"games.atplay.taxonomy.mechanic#investment",
"games.atplay.taxonomy.mechanic#killSteal",
"games.atplay.taxonomy.mechanic#kingOfTheHill",
"games.atplay.taxonomy.mechanic#ladderClimbing",
"games.atplay.taxonomy.mechanic#layering",
"games.atplay.taxonomy.mechanic#legacyGame",
"games.atplay.taxonomy.mechanic#lineDrawing",
"games.atplay.taxonomy.mechanic#lineOfSight",
"games.atplay.taxonomy.mechanic#loans",
"games.atplay.taxonomy.mechanic#loseATurn",
"games.atplay.taxonomy.mechanic#mancala",
"games.atplay.taxonomy.mechanic#mapAddition",
"games.atplay.taxonomy.mechanic#mapDeformation",
"games.atplay.taxonomy.mechanic#mapReduction",
"games.atplay.taxonomy.mechanic#market",
"games.atplay.taxonomy.mechanic#matching",
"games.atplay.taxonomy.mechanic#measurementMovement",
"games.atplay.taxonomy.mechanic#meldingAndSplaying",
"games.atplay.taxonomy.mechanic#memory",
"games.atplay.taxonomy.mechanic#minimapResolution",
"games.atplay.taxonomy.mechanic#modularBoard",
"games.atplay.taxonomy.mechanic#moveThroughDeck",
"games.atplay.taxonomy.mechanic#movementPoints",
"games.atplay.taxonomy.mechanic#movementTemplate",
"games.atplay.taxonomy.mechanic#movingMultipleUnits",
"games.atplay.taxonomy.mechanic#multiUseCards",
"games.atplay.taxonomy.mechanic#multipleMaps",
"games.atplay.taxonomy.mechanic#narrativeChoiceParagraph",
"games.atplay.taxonomy.mechanic#negotiation",
"games.atplay.taxonomy.mechanic#neighborScope",
"games.atplay.taxonomy.mechanic#networkAndRouteBuilding",
"games.atplay.taxonomy.mechanic#oncePerGameAbilities",
"games.atplay.taxonomy.mechanic#openDrafting",
"games.atplay.taxonomy.mechanic#orderCounters",
"games.atplay.taxonomy.mechanic#ordering",
"games.atplay.taxonomy.mechanic#ownership",
"games.atplay.taxonomy.mechanic#paperAndPencil",
"games.atplay.taxonomy.mechanic#passedActionToken",
"games.atplay.taxonomy.mechanic#patternBuilding",
"games.atplay.taxonomy.mechanic#patternMovement",
"games.atplay.taxonomy.mechanic#patternRecognition",
"games.atplay.taxonomy.mechanic#physicalRemoval",
"games.atplay.taxonomy.mechanic#pickUpAndDeliver",
"games.atplay.taxonomy.mechanic#piecesAsMap",
"games.atplay.taxonomy.mechanic#playerElimination",
"games.atplay.taxonomy.mechanic#playerJudge",
"games.atplay.taxonomy.mechanic#pointToPointMovement",
"games.atplay.taxonomy.mechanic#predictiveBid",
"games.atplay.taxonomy.mechanic#prisonersDilemma",
"games.atplay.taxonomy.mechanic#programmedMovement",
"games.atplay.taxonomy.mechanic#pushYourLuck",
"games.atplay.taxonomy.mechanic#questionsAndAnswers",
"games.atplay.taxonomy.mechanic#race",
"games.atplay.taxonomy.mechanic#randomProduction",
"games.atplay.taxonomy.mechanic#ratioCombatResultsTable",
"games.atplay.taxonomy.mechanic#reRollingAndLocking",
"games.atplay.taxonomy.mechanic#realTime",
"games.atplay.taxonomy.mechanic#relativeMovement",
"games.atplay.taxonomy.mechanic#resourceQueue",
"games.atplay.taxonomy.mechanic#resourceToMove",
"games.atplay.taxonomy.mechanic#rockPaperScissors",
"games.atplay.taxonomy.mechanic#rolePlaying",
"games.atplay.taxonomy.mechanic#rolesWithAsymmetricInformation",
"games.atplay.taxonomy.mechanic#rollSpinAndMove",
"games.atplay.taxonomy.mechanic#rondel",
"games.atplay.taxonomy.mechanic#scenarioMissionCampaignGame",
"games.atplay.taxonomy.mechanic#scoreAndResetGame",
"games.atplay.taxonomy.mechanic#secretUnitDeployment",
"games.atplay.taxonomy.mechanic#selectionOrderBid",
"games.atplay.taxonomy.mechanic#semiCooperativeGame",
"games.atplay.taxonomy.mechanic#setCollection",
"games.atplay.taxonomy.mechanic#simulation",
"games.atplay.taxonomy.mechanic#simultaneousActionSelection",
"games.atplay.taxonomy.mechanic#singing",
"games.atplay.taxonomy.mechanic#singleLoserGame",
"games.atplay.taxonomy.mechanic#slidePush",
"games.atplay.taxonomy.mechanic#soloSolitaireGame",
"games.atplay.taxonomy.mechanic#speedMatching",
"games.atplay.taxonomy.mechanic#spelling",
"games.atplay.taxonomy.mechanic#squareGrid",
"games.atplay.taxonomy.mechanic#stackingAndBalancing",
"games.atplay.taxonomy.mechanic#statCheckResolution",
"games.atplay.taxonomy.mechanic#staticCapture",
"games.atplay.taxonomy.mechanic#stockHolding",
"games.atplay.taxonomy.mechanic#storytelling",
"games.atplay.taxonomy.mechanic#suddenDeathEnding",
"games.atplay.taxonomy.mechanic#tags",
"games.atplay.taxonomy.mechanic#takeThat",
"games.atplay.taxonomy.mechanic#targetedClues",
"games.atplay.taxonomy.mechanic#teamBasedGame",
"games.atplay.taxonomy.mechanic#techTreesTechTracks",
"games.atplay.taxonomy.mechanic#threeDimensionalMovement",
"games.atplay.taxonomy.mechanic#tilePlacement",
"games.atplay.taxonomy.mechanic#trackMovement",
"games.atplay.taxonomy.mechanic#trading",
"games.atplay.taxonomy.mechanic#traitorGame",
"games.atplay.taxonomy.mechanic#trickTaking",
"games.atplay.taxonomy.mechanic#tugOfWar",
"games.atplay.taxonomy.mechanic#turnOrderAuction",
"games.atplay.taxonomy.mechanic#turnOrderClaimAction",
"games.atplay.taxonomy.mechanic#turnOrderPassOrder",
"games.atplay.taxonomy.mechanic#turnOrderProgressive",
"games.atplay.taxonomy.mechanic#turnOrderRandom",
"games.atplay.taxonomy.mechanic#turnOrderRoleOrder",
"games.atplay.taxonomy.mechanic#turnOrderStatBased",
"games.atplay.taxonomy.mechanic#turnOrderTimeTrack",
"games.atplay.taxonomy.mechanic#variablePhaseOrder",
"games.atplay.taxonomy.mechanic#variablePlayerPowers",
"games.atplay.taxonomy.mechanic#variableSetUp",
"games.atplay.taxonomy.mechanic#victoryPointsAsAResource",
"games.atplay.taxonomy.mechanic#voting",
"games.atplay.taxonomy.mechanic#workerPlacement",
"games.atplay.taxonomy.mechanic#workerPlacementWithDiceWorkers",
"games.atplay.taxonomy.mechanic#workerPlacementDifferentWorkerTypes",
"games.atplay.taxonomy.mechanic#zoneOfControl",
"games.atplay.taxonomy.category#abstractStrategy",
"games.atplay.taxonomy.category#actionDexterity",
"games.atplay.taxonomy.category#adventure",
"games.atplay.taxonomy.category#ageOfReason",
"games.atplay.taxonomy.category#americanCivilWar",
"games.atplay.taxonomy.category#americanIndianWars",
"games.atplay.taxonomy.category#americanRevolutionaryWar",
"games.atplay.taxonomy.category#americanWest",
"games.atplay.taxonomy.category#ancient",
"games.atplay.taxonomy.category#animals",
"games.atplay.taxonomy.category#arabian",
"games.atplay.taxonomy.category#aviationFlight",
"games.atplay.taxonomy.category#bluffing",
"games.atplay.taxonomy.category#book",
"games.atplay.taxonomy.category#cardGame",
"games.atplay.taxonomy.category#childrensGame",
"games.atplay.taxonomy.category#cityBuilding",
"games.atplay.taxonomy.category#civilWar",
"games.atplay.taxonomy.category#civilization",
"games.atplay.taxonomy.category#collectibleComponents",
"games.atplay.taxonomy.category#comicBookStrip",
"games.atplay.taxonomy.category#deduction",
"games.atplay.taxonomy.category#dice",
"games.atplay.taxonomy.category#economic",
"games.atplay.taxonomy.category#educational",
"games.atplay.taxonomy.category#electronic",
"games.atplay.taxonomy.category#environmental",
"games.atplay.taxonomy.category#exploration",
"games.atplay.taxonomy.category#fantasy",
"games.atplay.taxonomy.category#farming",
"games.atplay.taxonomy.category#fighting",
"games.atplay.taxonomy.category#gameSystem",
"games.atplay.taxonomy.category#horror",
"games.atplay.taxonomy.category#humor",
"games.atplay.taxonomy.category#industryManufacturing",
"games.atplay.taxonomy.category#koreanWar",
"games.atplay.taxonomy.category#mafia",
"games.atplay.taxonomy.category#math",
"games.atplay.taxonomy.category#matureAdult",
"games.atplay.taxonomy.category#maze",
"games.atplay.taxonomy.category#medical",
"games.atplay.taxonomy.category#medieval",
"games.atplay.taxonomy.category#memory",
"games.atplay.taxonomy.category#miniatures",
"games.atplay.taxonomy.category#modernWarfare",
"games.atplay.taxonomy.category#moviesTvRadioTheme",
"games.atplay.taxonomy.category#murderMystery",
"games.atplay.taxonomy.category#music",
"games.atplay.taxonomy.category#mythology",
"games.atplay.taxonomy.category#napoleonic",
"games.atplay.taxonomy.category#nautical",
"games.atplay.taxonomy.category#negotiation",
"games.atplay.taxonomy.category#novelBased",
"games.atplay.taxonomy.category#number",
"games.atplay.taxonomy.category#partyGame",
"games.atplay.taxonomy.category#pikeAndShot",
"games.atplay.taxonomy.category#pirates",
"games.atplay.taxonomy.category#political",
"games.atplay.taxonomy.category#postNapoleonic",
"games.atplay.taxonomy.category#prehistoric",
"games.atplay.taxonomy.category#printAndPlay",
"games.atplay.taxonomy.category#puzzle",
"games.atplay.taxonomy.category#racing",
"games.atplay.taxonomy.category#realTime",
"games.atplay.taxonomy.category#religious",
"games.atplay.taxonomy.category#renaissance",
"games.atplay.taxonomy.category#scienceFiction",
"games.atplay.taxonomy.category#spaceExploration",
"games.atplay.taxonomy.category#spiesSecretAgents",
"games.atplay.taxonomy.category#sports",
"games.atplay.taxonomy.category#territoryBuilding",
"games.atplay.taxonomy.category#trains",
"games.atplay.taxonomy.category#transportation",
"games.atplay.taxonomy.category#travel",
"games.atplay.taxonomy.category#trivia",
"games.atplay.taxonomy.category#videoGameTheme",
"games.atplay.taxonomy.category#vietnamWar",
"games.atplay.taxonomy.category#wargame",
"games.atplay.taxonomy.category#wordGame",
"games.atplay.taxonomy.category#worldWarI",
"games.atplay.taxonomy.category#worldWarII",
"games.atplay.taxonomy.category#zombies"
],
"maxLength": 128,
"minLength": 1,
"type": "string"
},
"type": "array"
}
},
"required": [
"players",
"complexity",
"skill",
"tags"
],
"type": "object"
},
"file": {
"properties": {
"contents": {
"maxSize": 2097152,
"type": "blob"
},
"path": {
"description": "The path this file should be accessible at",
"maxLength": 256,
"minLength": 1,
"type": "string"
}
},
"type": "object"
},
"main": {
"description": "A release of a playable game, and its logic",
"key": "tid",
"record": {
"properties": {
"assets": {
"items": {
"ref": "#assets",
"type": "ref"
},
"type": "array"
},
"attributes": {
"ref": "#attributes",
"type": "ref"
},
"createdAt": {
"description": "When this version of this game was released",
"format": "datetime",
"type": "string"
},
"description": {
"description": "A description of this game, and why people might choose to play it",
"maxGraphemes": 300,
"maxLength": 3000,
"minGraphemes": 1,
"type": "string"
},
"gamelogic": {
"accept": [
"application/javascript"
],
"description": "Javascript IIFE module containing game logic conforming to the AtPlay standard",
"type": "blob"
},
"id": {
"description": "An ID for this game which will be used to refer to it in technical contexts. Must be the same as the ID of the release in 'replaces' if present, there can be one latestRelease record per ID",
"format": "record-key",
"type": "string"
},
"name": {
"description": "The name of the game being played. Must match what the blob returns",
"maxGraphemes": 64,
"maxLength": 640,
"minGraphemes": 1,
"type": "string"
},
"parameters": {
"ref": "#parameters",
"type": "ref"
},
"replaces": {
"ref": "#replaces",
"type": "ref"
},
"version": {
"description": "The game logic's version number in the format 'X.Y' or 'X.Y-alpha'. An increment in X means gameplay is intentionally (likely incompatibly) different, an increment in Y means a compatible fix (players could and may wish to upgrade mid-game). The presence of a hyphen + alpha string means unstable game logic, which may or may not be compatible with the subsequently released game logic vX.Y.",
"maxLength": 32,
"minLemgth": 3,
"type": "string"
}
},
"required": [
"name",
"id",
"version",
"gamelogic",
"attributes"
],
"type": "object"
},
"type": "record"
},
"parameters": {
"description": "The configurable parameters for this game. Their defaults when in a game.release, or their values for a given game elsewhere.",
"properties": {},
"type": "object"
},
"replaces": {
"description": "A statement that this game logic is intended to replace this previous version for new games",
"properties": {
"changeNotes": {
"description": "A description of what changed between the referenced previous version, and this one. Supports markdown.",
"maxGraphemes": 1000,
"maxLength": 10000,
"type": "string"
},
"previous": {
"ref": "com.atproto.repo.strongRef",
"type": "ref"
}
},
"required": [
"previous",
"changeNotes"
],
"type": "object"
},
"webDisplay": {
"description": "These assets are intended to display this game on the web.",
"type": "token"
}
},
"id": "games.atplay.game.release",
"lexicon": 1
}
Metadata
- DID
-
did:plc:xawtkr77srkxlwhxjf7whbml - CID
-
bafyreiewdv7tfilkufzzo6hh47ec2l3ycweo3kd3t2dq5quew6oic6iq2q - Indexed At
- 2026-04-11 21:27 UTC
- AT-URI
-
at://did:plc:xawtkr77srkxlwhxjf7whbml/com.atproto.lexicon.schema/games.atplay.game.release
Version History (3 versions)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
A pointer to the latest release of a game
-
lol.folk.game record
A game, published by the developer that made it. One per repo: the record lives in the developer's own repository and is the canonical, self-asserted definition of the game. Player-side records reference it by AT-URI.
-
A game definition: what it is, what a player needs to play it, and what records it uses.
-
games.atplay.game.title record
A game, as distinct from any one release of it. There is one of these per game per developer, and its record key is the game's id — so its AT-URI is a permanent name for the game, which releases point back at (ADR 003…