- Create screen: choose キャッシュオンリー (real cards, chips only), 友人戦
(server deals and settles) or CPU戦 (友人戦 plus 1–8 CPU players); replaces
the card toggle. The lobby shows each table's type
- Poker AI written from scratch (server/ai.js, no libraries): fast 7-card
evaluator (checked against bestHand), Monte Carlo equity, and decisions from
hand rank, pot odds, raise count, opponents and a per-CPU style (aggression,
bluff rate); continuation bets via the last aggressor. It never sees other
players' hole cards
- CPU seats: think time of 0.7–1.8s (faster when no human is left in the hand),
automatic rebuy, never the host, no new hand unless a human is playing,
re-think after pause
- Play UI: robot avatars and a "考えています…" status for CPU turns
- Tests for the evaluator, equity, legality of AI actions and CPU tables
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- New "カードを配る" switch on the create-table screen (default off); the lobby
shows "カードあり" for tables that use it
- Card mode (server/cards.js restored): crypto-shuffled deck kept server-side,
hole cards sent only to their owner until showdown/all-in reveal, board dealt
per street with burns, all-in runout on a timer (frozen while paused)
- Showdown is evaluated and every pot (incl. side pots, split pots) is paid out
automatically; host winner selection is only used when card mode is off
- Play UI: board, hole cards, own cards in the action bar, hand names, winning
cards highlighted; layout tuned for 7+ seats and short screens
- Playing-card styles use .pcard so they don't clash with the existing .card panel
- Tests for hand evaluation, card privacy, runout, side pots, ties and random play
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Showdown winners can now be chosen only by the table host (others see
"ホストが勝者を選んでいます"); if the host leaves, the next host does it
- START / pause moved into the header to the right of the table name
(pause is an icon button), freeing the row they used to occupy
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Optional ADMIN_KEY (6 digits, distinct from ACCESS_KEY): entering it on the
key screen signs in as admin (role-specific HMAC cookie; member cookies
stay valid). Logged-in members can open /key?admin to enter it.
- /range (range chart + color/category quiz, ported from poker-hand and
restyled to the site design) and its files under admin/ are served only to
admins; everyone else gets 404. Card images cached privately for a day.
- Lobby shows a link to the page for admins only (GET /api/me).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Link /assets/favicon.ico from every page and serve /favicon.ico without
requiring the access key (browsers request it on their own).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Fix body to the viewport (position: fixed) and fit the whole table screen
to the screen height; overflow: hidden alone does not stop iOS scrolling
- Cancel one-finger touchmove to stop iOS rubber-band scrolling
(range slider and an overflowing action bar are exempt; pinch zoom kept)
- touch-action: manipulation to stop double-tap zoom
- Compact layout for short screens (iPhone SE size) and 7+ players
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Remove the deck, hole cards, board, hand evaluator and reveal logic
(cards are dealt physically; the site only tracks bets, pots and stacks)
- Showdown now waits for a winner per pot (main/side), chosen by a player
still in the hand or the host; multiple winners split the pot
- All-in with no further betting goes straight to showdown
- Remove the 30s action clock / auto sit-out (everyone is at the same table)
- UI: winner picker panel (main winner auto-fills side pots), compact table
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Hand engine (server/hand.js): crypto-shuffled deck kept server-side,
blinds (heads-up button = SB), min-raise rules incl. incomplete all-in,
uncalled bet refunds, side pots, split pots, all-in runout
- Hand evaluator (server/cards.js) and node:test suite (npm test)
- Table flow: hands auto-continue after host START, 30s action clock
(timeout = check/fold + sit out), sit out / sit in, rebuy, mid-hand leave
folds and keeps the seat reserved until the hand ends, pause freezes all clocks
- Only each player's own hole cards are sent until a showdown/runout reveal;
all actions validated server-side
- Play UI: board, hole cards, bets, action tags, turn timer, raise panel with
presets, showdown results with winning cards highlighted, compact 7+ layout
- Remove the host crown and the temporary "next phase" control
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>