texas-holdem

Texas Hold'em is a multi-player poker variant played at staffed poker tables. Two parallel tables exist on the shard, sharing identical rules but differing in stake currency:

  • A gold table.
  • A Sosarian Dollars table. Sosarian Dollars are an in-game stackable item (display name “Sosarian Dollars”).

A minimum of two seated players is required for a hand to start; play begins as soon as a second player joins.

Gambling losses are not refunded except in two explicit circumstances: a server crash, or a Game Master toggling the dealer to inactive. In both cases, the player's remaining stack is returned to the bank box.

Double-click an active poker dealer. If the dealer is active, has valid buy-in limits, and has open seats, a join gump is presented. Dealer NPCs are blessed and frozen, dressed in fancy shirt, long pants, shoes, and a body sash.

The join gump displays the table's small blind, big blind, minimum buy-in, maximum buy-in, and the player's bank balance. The player enters a buy-in amount that must satisfy:

  • The amount is at least the minimum buy-in and no more than the maximum buy-in.
  • The amount does not exceed the player's available funds. At the gold table, chips are withdrawn from the bank box. At the Sosarian Dollars table, the buy-in is taken directly from the player's backpack.

If the buy-in is invalid, the join request is rejected with a message stating the legal range.

Each hand cycles through the following phases:

Inactive → Deal Hole Cards → Pre-Flop → Flop → Pre-Turn → Turn → Pre-River → River → Pre-Showdown → Showdown

A standard 52-card deck is constructed and shuffled five times at the start of each hand. Each seated player in the round is dealt two hole cards. The flop adds three community cards, the turn one, and the river one.

The action gump offers four choices: Check/Call (whichever applies), Fold, All-In, and Bet/Raise. The bet text field defaults to the big-blind amount.

  • Bet requires at least the big-blind amount; betting your entire stack is automatically converted to All-In.
  • Raise must be at least 100 gold; a raise that consumes your entire stack is automatically converted to All-In.
  • Call matches the current bet; if the current bet meets or exceeds your stack, the action is converted to a forced All-In.
  • Fold abandons the hand; if only one player remains in the round, the showdown is invoked immediately.

Blinds and seating rotate each hand:

  • With two players in the round, only the dealer button and small blind are assigned; there is no big blind, and the small-blind player posts an amount equal to the big-blind value.
  • With three or more players, a dealer button, small blind, and big blind are assigned and rotate clockwise each hand.

Blind amounts are configured per dealer by staff.

A per-turn time limit is enforced. A player receives a warning after 45 seconds (“You have 15 seconds left to make a choice”); if no action is taken by 60 seconds, the player is auto-folded.

The supported hand ranks, from lowest to highest, are:

  • High card
  • One pair
  • Two pairs
  • Three of a kind
  • Straight (including the A-2-3-4-5 wheel)
  • Flush
  • Full house
  • Four of a kind
  • Straight flush
  • Royal flush

Ties between equal ranks are broken by kicker cards. A royal flush is treated as a single rank with no kicker comparison.

When the showdown resolves, the pot is paid out as follows:

  1. The dealer's rake (default 10%, capped at 50,000 gold on the gold dealer) is skimmed off the pot and added to the shared poker jackpot. The Sosarian Dollars dealer has both rake and rake cap set to 0, so the Sosarian Dollar table does not accumulate a jackpot from its pots.
  2. Side-pot equalization: any winner's surplus contribution above the lowest contributing winner is returned to them.
  3. The remaining pot is split evenly among all winners with matching rank.

The Poker Jackpot display board shows the current jackpot total and the leading hand on file. Double-click it within 4 tiles to view. The award itself is paid into the winning player's bank box as a bank check.

A player may request to leave through the leave gump. The request is honored at the next round boundary, where the player is folded and removed from the table. On removal, any remaining stack is returned:

  • Gold table: deposited into the player's bank box.
  • Sosarian Dollars table: dropped into the player's backpack as a stack of Sosarian Dollars.

The player is then teleported to the dealer's configured exit location.

If the server crashes mid-game, or the dealer is set to inactive, every seated player is removed with their full remaining stack returned to the bank box.

Joining and leaving the gold table broadcasts a notification to a Discord webhook.