games.cavu.tier-madness.move

One secret move by a player, written (by the game server, on the player's behalf, or by the player) to the round's secret space (skey `{game}-r{round}`). Only the game server can read it until that round's reveal, when the game's players can too (round 0, the category vote, opens at game end). Its CID is published as a games.cavu.tier-madness.commitment (same rkey) in the game's commitment space, so the move can't be changed later. The nonce stops anyone from guessing a low-entropy move (e.g. a tier) by hashing every possibility.

Repository @pardy.at did:plc:dp7v5b5kejmmzzpwmqyf5wj6 namespace authority
Details · record, key tid
Kindrecord
Record keytid
Authoritytier-madness.cavu.games
Indexed

Record

record · key tid

Properties

action

requiredunion

createdAt

requiredstring · datetime

game

requiredstring

The game's id.

  • maxLength: 64

nonce

requiredstring

Random, at least 128 bits (base64url).

  • minLength: 16
  • maxLength: 64

round

requiredinteger

Round number; 0 is the pre-game category vote.

  • minimum: 0
  • maximum: 20

#double

object

The item the player doubles: bonus if it matches the group's tier, penalty if not. Absent when the player didn't double.

Properties

item

string
  • maxLength: 300

#place

object

Placing the index'th dealt card: a rating, embedded rather than written as a garden.lexicon.dazzling-boarfish.rating.rate record. Its scale is the game record's and its prompt is the round's. Placements are final once committed.

Properties

index

requiredinteger

Deal order, from 0.

  • minimum: 0
  • maximum: 19

item

requiredref

The full card as dealt, so a game can be replayed from moves alone.

subject

requiredref

What's rated: the card's source (its Wikipedia article).

value

requiredref

The tier, as a value on the game's scale.

#swap

object

The round's one swap: two items in different tiers trade places. Empty when the player skipped it.

Properties

items

requiredarray
  • minLength: 0
  • maxLength: 2
itemsstring
  • maxLength: 300

#vote

object

Secret pre-game vote for favourite categories. Carries the full ballot shown, so the vote can be replayed on its own.

Properties

ballot

requiredarray

Every category offered, in the order shown.

  • minLength: 1
  • maxLength: 20
itemsstring
  • maxLength: 300

categories

requiredarray

The ones this player picked (a subset of ballot).

  • minLength: 1
  • maxLength: 3
itemsstring
  • maxLength: 300

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Public commitment to a secret games.cavu.tier-madness.move, written to the game's commitment space (readable by the game's players) under the same rkey as the move. Anyone can later check a revealed move hashes to this CID.

  • An end-of-game superlative and the bonus points it paid.

  • Declares a game: the roster in seat order and the ballot. Written by the host player, from their own PDS, to the game's commitment space (rkey = game id). With each player's round records and moves it is enough to replay the game: replay checks every player's records agree.

  • One player's secret moves for one round of a Tier Madness game (one space per round, keyed {game}-r{round}). Only the player can read it until the game server opens the round at its reveal.

  • One player's account of a finished round, written by every player from their own PDS to the game's commitment space (rkey = `{game}-r{round}`) once the round's reveal starts. Written at the end rather than the start so it can't leak the deal order. Replay checks every player's round records agree.