• Add briscola: classic two-player and briscola a quattro
    CI / Build and push docker image (push) Successful in 1m45s

    woggioni released this 2026-10-06 08:08:25 +02:00 | 21 commits to main since this release

    New tavolo-briscola distribution implementing briscola on the platform:

    • pure rules (state.py, engine.py): 3-card deals, a face-up trump that
      is the last card drawn, trump-first trick resolution (A > 3 > K > H >
      J > 7 > 6 > 5 > 4 > 2), 120 points per deal, 60-60 patta re-deals, a
      configurable target score (default 61), deal-end acknowledgements and
      turn auto-play;
    • BriscolaEngine (briscola, 2 players) and BriscolaQuattroEngine
      (briscola_a_quattro, 4 players in fixed partnerships) adapters;
    • registered in tavolo-app, packaged in the Docker image, documented.

    Platform fixes surfaced by a two-player lobby:

    • the websocket state and snapshot payloads now carry seats_open (they
      were only in the REST lobby payload), so lobbies with player counts
      other than four render correctly; seats_open is clamped at zero;
    • the web client logs unparseable server messages instead of silently
      dropping them.

    Web client: briscola table for both variants (stock, face-up trump,
    trick, last-trick banner), deal summary modal and game-over overlay.

    Tests: tavolo-briscola rules/adapter suites, app integration tests
    (lobby, websocket play, turn timeout, deal-end acks, persistence), a
    platform seats_open test and frontend model parsing tests.

    Downloads