Bubble Craps (Personal, Offline) ================================= Quick Start ----------- 1) Open `index.html` in any modern desktop or mobile browser. 2) Select a chip denomination at the bottom. 3) Click on the felt to place bets (Pass, Don't Pass, Come, Field, Place, Hardways, Props). 4) Click **BUMP** to shake the dice in the bubble (or toggle Auto). 5) ALT+Click on an active line/come bet (when valid) to add **Odds/Lay** odds. 6) Use **Undo**, **Clear All**, or **Repeat Last Bets** as needed. Design Notes ------------ - Dice are generated via the browser's **crypto** RNG to ensure a fair 1–6 distribution. - The bubble shows a physical-ish animation; once it settles, dice faces match the predetermined fair roll. - Sounds use the **WebAudio API** (no external assets): thump, rattle, clicks, win/lose stings. - Fully local; no network required. Built for personal entertainment and testing. - Mobile-friendly layout with responsive table grid. Bets Implemented ---------------- • Pass / Don't Pass (BAR 12 on Don't) • Come / Don't Come with travel to numbers (4,5,6,8,9,10) • Odds / Lay Odds (ALT+Click on the corresponding bet while eligible) • Field (3,4,9,10,11 pay 1:1; 2 pays 2:1; 12 pays 3:1 by default) • Place: 4/10 pay 9:5; 5/9 pay 7:5; 6/8 pay 7:6 • Hardways: 4/10 pay 9:1, 6/8 pay 7:1; lose on 7 or easy way • Center/Props: Any 7 (4:1), Any Craps (7:1), Yo 11 (15:1), Aces 2 (30:1), Twelve 12 (30:1), Three 3 (15:1) • Horn (split equally among 2,3,11,12 using one-roll resolution) Shooter Flow ------------ - **Come Out**: Pass wins on 7/11, loses on 2/3/12. Don't Pass wins on 2/3, loses on 7/11, **pushes on 12**. Point is set on 4/5/6/8/9/10. - **Point**: Pass wins if the point repeats; Don't Pass wins on 7-out. Round then resets to Come Out. Controls & Quality of Life -------------------------- - **Working on Come-Out** toggle: Place bets act on Come-Out when checked (ON by default). - **Stickman Calls** toggle: Short voice-style toasts after each roll. - **Odds**: Use **ALT+Click** on Pass/Don't Pass (when point is on) or on Come/Don't Come bets that have traveled to a number. - **Undo**: Reverts the last wager placed. - **Repeat Last Bets**: Re-bets your last layout (snapshot taken each roll). Customization ------------- Open `app.js` and look for helper functions & mappings: - Payouts: `payoutPlaceOdds`, `payoutPassOdds`, `payoutDontPassOdds` - Field multipliers can be altered in the Field resolution section. - Starting bankroll: `state.bank = 1000` - Dice animation length: `duration` in `bump()`, velocities, friction, etc. - Enable/disable auto-bump by default via the checkbox in `index.html` (JS keeps it off initially). Known Limits / Future Ideas --------------------------- - No buy/place commission, fire bets, or advanced horn-high variants yet. - No visual odds caps or checks against true-odds table maximums. - Drag-and-drop chips omitted for simplicity (tap to select, tap felt to place). Keyboard Tips ------------- - Press **Alt** while clicking qualifying bets to place Odds/Lay. - Use browser zoom for larger/smaller felt on desktop projectors or cabinets. Legal ----- This build is for **personal, non-commercial** use on your own server. No real-money wagering is supported.