From 6232d41e5639f9c38e47b2bb65266e343ca26e8f Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Sat, 3 Oct 2026 02:16:00 -0400 Subject: feat: add casino_hints option and standardize casino command syntax --- internal/casino/craps_variants.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'internal/casino/craps_variants.go') diff --git a/internal/casino/craps_variants.go b/internal/casino/craps_variants.go index bcb06d0..634af36 100644 --- a/internal/casino/craps_variants.go +++ b/internal/casino/craps_variants.go @@ -213,17 +213,17 @@ func (c CrapsConfig) variantRulesText() string { rules += "\nTrue odds on 4/10: 2:1; 5/9: 3:2; 6/8: 6:5. Lay and don't odds invert these ratios. Buy/lay commission: 5% buy STAKE / lay PROFIT, rounded down, on wins only; removals have no commission." } if c.variant() == "crapless" { - rules += fmt.Sprintf("\nPass/come pay 1:1 on their point before 7; 7 loses. Line bets only on come-out; come requires a table point.\nTargets: pass / come / odds pass / odds come / place / buy / lay .\nPlace 4/10 pays 9:5; 5/9 7:5; 6/8 7:6.\nfield: 2 pays 2:1, 12 pays %d:1, 3/4/9/10/11 pay 1:1; others lose.\nhard 4/10 pays 7:1; hard 6/8 pays 9:1; easy number or 7 loses.\nseven 4:1; craps 7:1; eleven / ace-deuce 15:1; aces / boxcars 30:1.\nhorn splits equally among 2/3/11/12; hop pays 15:1 easy / 30:1 double, unordered.\nPlace/buy/hardways and come odds are off on come-out; established come contracts and lay always work.\nNo Fire or ATS. Making a point retains the shooter; seven-out rotates.", c.Field12) + rules += fmt.Sprintf("\nPass/come pay 1:1 on their point before 7; 7 loses. Line bets only on come-out; come requires a table point.\nTargets: pass / come / odds pass / odds come NUMBER / place NUMBER / buy NUMBER / lay NUMBER.\nPlace 4/10 pays 9:5; 5/9 7:5; 6/8 7:6.\nfield: 2 pays 2:1, 12 pays %d:1, 3/4/9/10/11 pay 1:1; others lose.\nhard 4/10 pays 7:1; hard 6/8 pays 9:1; easy number or 7 loses.\nseven 4:1; craps 7:1; eleven / ace-deuce 15:1; aces / boxcars 30:1.\nhorn splits equally among 2/3/11/12; hop A B pays 15:1 easy / 30:1 double, unordered.\nPlace/buy/hardways and come odds are off on come-out; established come contracts and lay always work.\nNo Fire or ATS. Making a point retains the shooter; seven-out rotates.", c.Field12) } if c.variant() == "new_york" { rules += "\nPass come-out 7/11 wins, 2/3/12 loses; 4/5/6/8/9/10 establish a point. Make it before 7 to win, all 1:1. Don't pass is opposite, except come-out 12 pushes. Line bets only on come-out. Making a point retains the shooter; seven-out rotates." } cadence := "Solo roll anytime; multiplayer waits 10 ticks, then dealer rolls after 60 ticks." autoroll := "Bets stay open until the roll. autoroll repeats every 3 ticks, respecting the betting window." - betLine := "Bet: bet on pass; the felt is authoritative for this edition." + betLine := "Bet: bet N on pass; the felt is authoritative for this edition." stopLine := "stop cancels autoroll; manual stop waits for live bets." if c.variant() == "simplified" { - betLine = "Bet: bet — always on pass; bare bet rebets your last wager." + betLine = "Bet: bet N — always on pass; bare bet rebets your last wager." cadence = "The dice roll automatically 3 ticks after the first bet." autoroll = "" stopLine = "stop waits for live bets." -- cgit v1.2.3