{
"id": "at.turtleme.game.castReef",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"properties": {
"across": {
"type": "integer",
"maximum": 16,
"minimum": 4,
"description": "How many patches across the board is. Which reef to play is the player's preference; an unknown size falls back to the middle one."
}
}
},
"encoding": "application/json"
},
"output": {
"schema": {
"ref": "at.turtleme.game.defs#state",
"type": "ref"
},
"encoding": "application/json"
},
"description": "Anchor over a fresh reef. The board is made empty and the shoal goes down on the first sweep, clear of it, so the patch a round opens with is never the one that ends it. Where the shoal lies is never sent: the whole reason this is settled here is that a board laid out in the page is a board whose shoal is sitting in memory. Anchoring over a board that is still being played ends it first and pays its rest. Requires an atproto service auth token addressed to did:web:turtleme.at#turtle_game and naming this method, so a token issued for one call cannot be spent on another."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}