Skip to content

Match accept / ready-check before the ban phase #493

Description

@ChronoFinale

Status: needs triage (feature / epic — client + server)

Summary

When matchmaking finds a match, the client auto-joins the lobby immediately (match_found → auto-join in the matchmaking dispatch, BalatroMultiplayerAPI api/matchmaking/dispatch.lua) and drops straight into the ban phase. There is no confirmation step, so a player who queued and walked away is silently committed, and neither player can decline.

Proposal

On match found, present both players an accept prompt with a countdown instead of auto-joining. Both accept → proceed to the ban phase. One declines, or the timer expires → the match is cancelled. Server-authoritative (the server owns matchmaking and would hold the pending-accept state).

Open questions

  • Timer length. Baseline ~30s. Idea: scale the accept window with time spent in queue (a 30-minute queue earns a longer window than a 30-second one).
  • What happens to the player(s) who accepted when the other declines/times out — auto-requeue (ideally at the front) vs back to menu. Leaning auto-requeue.
  • Penalty for declining/timing out — TBD. Accept happens before bans, so no matchup is visible to dodge; the only thing being caught is AFK/timeout. Possibly a light escalating cooldown on repeated timeouts only.
  • Either player can also cancel out of this state.

Leaving after accepting is tracked separately: Balatro-Multiplayer/BalatroMultiplayerAPI-Server#38

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions