bcook/blackjack-challenge: The Star's Blackjack Challenge table variant#96
Merged
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…er path Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ck, ties-lose grossMult) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…e hole card Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…d prose Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…hree hands, no surrender Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…J clawback Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Rewrites the smoke scenario for this variant: both seats bet (seat 0 adds its own Star Pairs and backs seat 1 with behind + their-pairs), the deal lands ONE face-up dealer card, seat 0 splits a mixed pair of eights (its Star Pairs pays 5:1 on the spot) and stands both hands, seat 1 stands 17, and the dealer draws out from its single card one paced hit at a time — a mid-draw shot catches the second hit still face down. The dealer busts on the third card and the payout shot folds main hands, own pairs, and the back into each seat's net; ready-up flow preserved. Seed 16 produces the pair; comments now document Star Pairs, the no-hole-card dealer, and ties-lose settlement. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The preview/ frames were a verbatim copy of the classic blackjack pack: title "BLACKJACK" and a rendered dealer hole card "[??]" — exactly the thing this variant doesn't have (one face-up dealer card, no hole card). Regenerated the game's smoke shots (smoke.yaml seed 16) as ground truth and hand-authored four new frames from them: a deal with a single dealer card, a split moment, the dealer's draw-out to a bust, and the payout (with the Star Pairs tier folded in). Frames now read "BLACKJACK CHALLENGE" and never depict a face-down dealer card. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sweep of doc/comment drift left over from the classic-blackjack fork and
the Perfect Pairs -> Star Pairs rename: main.go's package doc said the
ranked blackjack payout depends on the ten-card's suits (it's RANK,
K>Q>J>10); game.go's registry comments still named the old
games/bcook/blackjack path and "the native blackjack meta"; layout.go's
example strings referenced retired numbers ("COLORED 12:1", "PUSH" - this
table has no push, ties lose, so the real narrow-label example is
"EVEN"); room.go/room_test.go said turns bind h/s/d/p/r as domain
commands, but r (re-buy) is betting-only; rules_test.go's
TestPairsCreditFor still exercised the retired Perfect Pairs 6/12/25
table instead of the live Star Pairs 5/8/20/30 one.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The spec's layout-deltas section requires the result to name the tier a blackjack paid (e.g. "BLACKJACK 5:1"), but the value line only ever read "BJ" and the net was shown separately, leaving the ranked 2:1/3:1/4:1/5:1 payout invisible on the felt. Following the Star Pairs precedent (the pairs line renders e.g. "MIXED 5:1"), phand gains a display-only bjMult field set in settle() from blackjackMult; valueLabel appends " X:1" to "BJ" once it's nonzero, in both the single-hand and split-hand (compact line) render paths. Payout arithmetic (grossMult) is unchanged - this is display only. TDD: TestSettleShowsRankedBlackjackTier failed red before the change and is green after. Also pins two more invariants surfaced during this pass: TestMetaMaxPayoutMultiplierMatchesConst (Meta().MaxPayoutMultiplier must track the maxPayoutMult const the settlement clamp actually uses) and TestPairsMult (a table test over pairsMult's four Star Pairs tiers plus the no-pair default). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…+J = 23) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Smoke screensDeterministic scripted screens for
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
New catalog entry games/bcook/blackjack-challenge — The Star's Blackjack Challenge table variant, forked from
bcook/blackjack(a fork was chosen over a shared engine or in-game mode: Meta is static per game, and CI's per-dir change detection makes cross-dir engines drift).The variant, vs the classic table
MaxPayoutMultiplier: 31Review checklist
rules.go; settlement arithmetic unit-tested per tier (ranked BJ rows, ties-lose, clawback with doubles/splits, chip conservation)smoke.yaml(seed 16) walks bet → Star Pairs + backing → deal → split → dealer draw-out to bust → payout → ready-up; preview pack re-authored from those shotsblackjack-challengeis unique in the catalog🤖 Generated with Claude Code