aboutsummaryrefslogtreecommitdiff
path: root/building_guide/video_poker.md
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-10-01 14:38:08 -0400
committerhistoria <[not public]>2026-10-01 14:38:08 -0400
commit1082f3336085c15992ca83d5553c0ba52208d70a (patch)
tree4fcedaa90bc01c41456258a9d57f492f31754948 /building_guide/video_poker.md
parentd4eae333a8d8a96452bbf3617aa85b50466c11a7 (diff)
downloadthehouseoficarus-1082f3336085c15992ca83d5553c0ba52208d70a.tar.gz
feat: pai gow poker added to the casino
Diffstat (limited to 'building_guide/video_poker.md')
-rw-r--r--building_guide/video_poker.md48
1 files changed, 7 insertions, 41 deletions
diff --git a/building_guide/video_poker.md b/building_guide/video_poker.md
index 0faf8f3..497f64e 100644
--- a/building_guide/video_poker.md
+++ b/building_guide/video_poker.md
@@ -55,9 +55,6 @@ games. Some classic full schedules exceed 100% with optimal play.
than inventing a third tier. Other omissions are deliberately conservative,
not claims that no physical edition exists.
-The authored tier persists across occupants of the live cabinet.
-Multiplier banks for *all* tiers remain durable and separate.
-
| Edition | Supported hands |
|---|---|
| Classic Jacks or Better | 1, 3, 5, 10, 25, 50, 100 |
@@ -67,7 +64,7 @@ Multiplier banks for *all* tiers remain durable and separate.
| Super Times Pay | 1, 3, 5, 10 |
| Hot Roll | 3, 5, 10 |
-## Controls and presentation
+## Player controls
- `play <id>` seats you; `game` lists games; `game jacks` (or a full game name)
selects one. The house sets the payout tier when the cabinet is authored in
@@ -90,19 +87,6 @@ Multiplier banks for *all* tiers remain durable and separate.
`list` retains available-wagers semantics and is not a pay-table command.
- `stop` leaves between rounds. Disconnect completes the current holds.
-Pay tables use yellow Unicode borders and dotted hand-name leaders. Blue
-`#000269`, red `#fe0000` (selected coin column), and yellow `#f7e70e` are mapped
-to nearest xterm colors. HELD and wins are bold yellow; no-win text is bold
-white. Results are below cards. Bonus indicators and multipliers sit beside
-cards. Multi-hand art shrinks; hundred-play uses compact Unicode ranks/suits.
-
-Payouts are total coins including stake, not profit. Multiply by denomination
-for credits. Natural royals pay 250 per coin below five coins, 4000 at five.
-Other categories scale linearly. Only the highest-paying category pays.
-All games use fresh 52-card decks except Joker Poker's 53-card deck. Each line
-shares the deal/holds but draws from its own shuffled remaining deck, excluding
-**all five** original cards, including discards.
-
## Bonuses
Feature ON requires five base coins per hand. UX and Hot Roll add five coins
@@ -117,30 +101,9 @@ Feature ON requires five base coins per hand. UX and Hot Roll add five coins
- **Hot Roll:** a pre-deal 1/6 trigger rolls two fair dice; their sum multiplies
every line. STP and Hot Roll have no next-hand bank.
-## Shared banks and money safety
-
-Ultimate X multipliers belong to the **machine**, not the player. Another
-occupant inherits them. Files live at
-`data/casino/video_poker_banks/<room>_<cabinet>.yaml`. Within each file banks
-are keyed by game/tier/denomination/hand-count, preventing denomination or
-edition switching from amplifying an award. Fully consumed banks are removed.
-Missing files are new machines; corrupt/unreadable files block deals.
-
-`casino.PokerWallet` loads banks and atomically settles character credits,
-pending stake removal, and the cabinet file in a multi-file undo-journal
-transaction. There is no package-global persistence callback. The game owner
-serializes writes. The stake is durable before revealing cards; frozen final
-hands and awards survive payment retries without redraws or rerolls. Failed
-transactions leave the old live bank intact. Commit-point failures are recovered
-and reconciled before any retry; unrecoverable storage faults fail closed.
-Startup journal recovery precedes pending-wager recovery. A process crash before
-commit restores both old records, then refunds the unresolved stake. Committed
-payouts cannot replay an old bank. Shutdown/eviction refunds unresolved stakes
-without consuming previously saved multipliers or retaining uncommitted awards.
-
-Old experimental player-owned `video_poker_multipliers` fields are no longer
-read. They are not merged into shared cabinets (multiple player banks cannot
-unambiguously become one physical bank).
+Ultimate X multiplier banks belong to the **machine**, not the player: another
+occupant inherits them, and they persist on disk under
+`data/casino/video_poker_banks/`.
## Sources
@@ -157,3 +120,6 @@ Published schedules, award tables and feature rules:
- https://wizardofodds.com/games/video-poker/tables/double-bonus/
- https://wizardofodds.com/games/video-poker/tables/double-double-bonus/
- https://www.videopoker.com/games/ (single/multi/hundred-play editions)
+
+Presentation internals and durable-bank transaction details are in
+[../dev_guide/video_poker.md](../dev_guide/video_poker.md).