aboutsummaryrefslogtreecommitdiff
path: root/building_guide
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-09-19 01:55:34 -0400
committerhistoria <[not public]>2026-09-19 01:55:34 -0400
commitcc33072eced3d5460512c09c42ec4531c807d7af (patch)
treeb1b451fa87fa389cb8343a3645372f3b43f5523e /building_guide
parent2c38386484cdb507c4687caceb37e0b963e33594 (diff)
downloadthehouseoficarus-cc33072eced3d5460512c09c42ec4531c807d7af.tar.gz
fix: casino stake preservation, world state reconciliation, casino game registration
Diffstat (limited to 'building_guide')
-rw-r--r--building_guide/rooms.md16
1 files changed, 11 insertions, 5 deletions
diff --git a/building_guide/rooms.md b/building_guide/rooms.md
index c70b379..719c09e 100644
--- a/building_guide/rooms.md
+++ b/building_guide/rooms.md
@@ -357,11 +357,17 @@ casino configurations. Raw file editing is not a validated save endpoint.
- IDs must be nonempty, have no surrounding whitespace, and be unique across
the room's tables and machines (including legacy slots table entries).
- Supported table games are `blackjack` and `baccarat`; machines use `slots`
- with the optional variant `huff_and_even_more_puff`.
-- Only one table/machine per game is addressable: a room is addressed by game
- name (`play blackjack`), so a second entry for the same game, or the same
- machine variant (including a legacy slots table alongside a slots machine),
- is rejected as unreachable content.
+ with the optional variant `huff_and_even_more_puff`. A machine variant is
+ registered in Go (`slotVariants` in `internal/casino/registry.go`); naming an
+ unregistered variant is a validation error.
+- A multiplayer table is addressed by its game name (`play blackjack`), so a
+ room may host only one table per game; a legacy slots table still collides
+ with a slots machine.
+- A machine is addressed by its `variant` when one is declared, so a room may
+ host several variants of one game, each reached by its own variant name. A
+ bare game name addresses a machine only when it is the sole machine of that
+ game (or declares no variant). Two variant-less machines of one game, or two
+ machines sharing a variant, are rejected as unreachable duplicates.
- Omitted/zero numeric values keep their existing defaults. Negative bets,
timers, seat counts, split counts, decks, and payouts are rejected.
- An explicit `max_bet` must be at least `min_bet`. An omitted or zero