Play or watch a game
Pick who sits where. Take seat 1 yourself, or fill every seat with bots and watch. Bots think for real, so the search bots pause a moment per move.
Your move.
Arena
Play many games between bots and see who wins. Seats rotate every game so nobody benefits from going first. An even share is 100% divided by the number of seats.
| Bot | Wins | Win rate | Avg. final strokes |
|---|
Bots
Every bot on this page, roughly from weakest to strongest. Native
bots run inside the C++ engine compiled to WebAssembly; the others
are plain JavaScript in bots.js.
Write a bot
The code below must return a class that extends Bot.
Decide is called on your turn with the card showing and
whether you may draw, and must return 0 to quit, 1 to draw, 2 to
play the current card, or 3 to play the next card. Illegal moves
crash the game. Your bot sees the same bookkeeping every bot keeps:
this.my_card_counts, this.score_in_hand,
this.num_cards_each_player,
this.players_fold_status,
this.num_seen_cards_discard,
this.draw_pile_size, and this.score.
Added bots show up in the seat lists and are kept in this browser.