⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠ You can decompress Drawing data with the command palette: ‘Decompress current Excalidraw file’. For more info check in plugin settings under ‘Saving’

Excalidraw Data

Text Elements

GET /sync-series-state {board: [] score: number current_doubled_state: number is_your_turn: bool best_of: number }

PUT /board-state { player_id: moves: [(start, offset), … 4x] } → 201/422

POST /double?action=propose/accept/decline

POST /emote?id=X

TODO:

  • Frontend needs to autoroll dice to start game to assign turn

Events come through SSE

POST /start-series {best_of: number}

  • Saves score
  • Save best_of
  • Rolls 2 dice
  • Determine who goes first
  • Initializes boilerplate

Player 1 hits start game

player_1

GET / sync-series-state

player_1 wins dice roll

PUT /board-state

if score has not changed

player_1

When turn is over

POST /double?action=propose

block client from acting until proposal is accepted or declined

POST /emote?id=X