Card Craps Source Code
If anyone is interested in verifying the CSM card craps edge (e.g., @ Viejas), I’m making the Java source code for the simulator/analyzer available here. You just need the Java SDK installed to compile and run the program. If your Unix environment is already set up for Java development, just follow these steps to get up and running:
>curl http://imadegen.com/cardcraps/card_craps.tar | tar zx
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 24576 100 24576 0 0 67205 0 --:--:-- --:--:-- --:--:-- 105k
>cd card_craps
>make
javac -Xlint Analyzer.java CSM.java Roll.java Window.java Average.java PointStats.java
CSM.java:13: warning: [unchecked] unchecked conversion
2 warnings
>java Analyzer
don't pass, 10x odds, 14 card min buffer depth, 6-roll window
0 rolls: net +1.0, EV/roll +Infinity%, EV/game +100.00%
1000000 rolls: net +2828.0, EV/roll +0.28%, EV/game +0.95%
2000000 rolls: net +9921.0, EV/roll +0.50%, EV/game +1.67%
3000000 rolls: net +12754.0, EV/roll +0.43%, EV/game +1.43%
4000000 rolls: net +24592.0, EV/roll +0.61%, EV/game +2.07%
5000000 rolls: net +36467.0, EV/roll +0.73%, EV/game +2.46%
6000000 rolls: net +47067.0, EV/roll +0.78%, EV/game +2.65%
There are several options to the program, so you can experiment with the different CSM model parameters:
>java Analyzer -h usage: Analyzer <options> where options include: -n <number of rolls> specifies number of rolls to simulate (default 100 million) -d play Don't Pass line (default) -p play Pass line -o <max odds> specifies odds to take/lay for good count -b <buffer depth> specifies minimum reservoir depth (default 14) -w <window depth> specifies count window depth (default 6) -a print per-point statistics -h, --help display this usage Place a space between the option and parameter value.
The program shows the game is +EV, but it’ll also show you the huge variance for any given session. You can use the -n 1000 option to simulate a session (1000 rolls is possible in a few hours, heads up).
Session Outcome Distribution for +EV Mississippi Stud
I wanted to know what my session outcome probabilities were for the +EV Mississippi Stud game @Barona, where all the 6 player’s card are exposed. I calculated the distribution below, assuming a 200 Ante bankroll, and playing for exactly 100 minimum bet hands with the collusion strategy. If you use a different strategy, or hit-and-run, then your probabilities will differ.

Updates to +EV Mississippi Stud @ Barona Casino
I revisited the collusion strategy for full-table (6 players), all cards exposed Mississippi Stud, as dealt at my nearby Barona Casino. I fixed a few small decision points, and calculated the EVs of the threshold points, so you can see the value of marginal calls and folds. When I play again, I’ll probably bring this chart to the table. Notice any return less than -1.0 on 3rd street is a fold (folding costs you your ante, but calling would cost more). Similarly, any return less than -2.0 on 4th street is a fold. And any return less than -3.0 on the river is a fold. For example, calling 1x on 5th street with only 2 high outs and 4 mid outs is going to cost you (-3.16)($5) = $15.80, whereas folding would limit your loss to $15. On average, this “chase” is going to cost you $0.80 more than folding. As another example, calling unsuited cards with only 2 high outs and 1 mid out on 3rd street is going to cost you (0.07)($5) = $0.35 more than folding, on average.
There are a lot of players that play way too many hands, as they don’t want to miss a payout. You can see that even the most marginal of folds is around (0.1)($5) = $0.50 for each bad decision. This can add up over each hand, and each bad decision (sometimes multiple bad decisions per hand). Often, people make multiple bad decisions per hand, making worse than -0.10 mistakes (literally, off the below chart), and betting more than $5 Antes.
| Outs | 1x EV | Notes | ||
|---|---|---|---|---|
| High | Mid | Low | ||
| 3rd Street (Offsuit) | ||||
| 3 | 0 | 0 | -0.77 | Call |
| 2 | 2 | – | -0.79 | Call |
| 2 | 1 | – | -1.07 | Fold |
| 2 | 0 | 3 | -1.05 | Fold |
| 1 | 3 | – | -0.99 | Call |
| 1 | 2 | – | -1.31 | Fold |
| 0 | 5 | – | -0.71 | Call |
| 0 | 4 | – | -1.12 | Fold |
| 0 | 3 | 3 | -0.95 | Call |
| 0 | 0 | 6 | -1.43 | Fold |
| 0 | 0 | 4 | -1.86 | Fold |
| 3rd Street (Suited) | ||||
| 2 | 0 | – | -0.87 | Call |
| 1 | 2 | 0 | -0.96 | Call |
| 0 | 4 | – | -0.75 | Call |
| 0 | 3 | 3 | -0.71 | Call |
| 0 | 3 | 2 | -0.98 | Call |
| 0 | 0 | 6 | -1.20 | Fold |
| 0 | 0 | 4 | -1.59 | Fold |
| 4th Street | ||||
| 3 | 2 | – | -1.75 | Call |
| 3 | 1 | – | -1.96 | Call |
| 3 | 0 | 5 | -1.94 | Call |
| 3 | 0 | 4 | -2.02 | Fold |
| 3 A’s | 0 | 4 | -1.86 | Call |
| 2 | 4 | – | -1.77 | Call |
| 2 | 3 | – | -1.93 | Call |
| 2 | 2 | 3 | -2.10 | Fold |
| 2 | 1 | 4 | -2.14 | Fold |
| 1 | 5 | – | -1.95 | Call |
| 1 | 4 | – | -2.13 | Fold |
| 0 | 6 | – | -1.87 | Call |
| 0 | 5 | 3 | -2.09 | Fold |
| 5th Street | ||||
| 5 | – | – | -2.68 | Call |
| 4 | 2 | – | -2.95 | Call |
| 4 | 1 | – | -3.05 | Fold |
| 4 | 0 | – | -3.16 | Fold |
| 3 | 4 | – | -2.94 | Call |
| 2 | 6 | – | -2.95 | Call |
| 2 | 5 | – | -3.05 | Fold |
| 2 | 4 | – | -3.16 | Fold |
| 1 | 8 | – | -2.95 | Call |
| 0 | 9 | – | -3.05 | Fold |
+EV Field Bet for Two Shoe Card Craps
At some California casinos, craps is dealt using two 6-deck shoes, one for each die in a roll. Of course, the rolls in this type of game are not independent of each other, as a simple spreadsheet will show you. What is surprising is that a simple count of the 6-spot cards will yield +EV opportunities in the Field, provided the casino pays triple (3x) on boxcars, and double (2x) on snake-eyes on this bet. I’ve analyzed the Field bet for this game, assuming the house deals 1/2 the shoe before shuffling. The graph below shows the theoretical distribution of Field Bet expectation values (EVs) for this two shoe craps game.

The above graph shows that with exact knowledge of the cards dealt from the shoes, the Field Bet becomes advantageous (+EV) 6.44% of the time. The average advantage of a +EV Field bet using a perfect count (e.g., a spreadsheet) is 1.2%. If the house deals deeper than 50% of the shoe, these results will improve.
I found that a simple running count of the Six-spot cards is fairly good at extracting the edge out of the Field. The running Six-spot count works as follows:
- Count the number of 6-spot cards contained in every three rolls.
- Every third roll, add (1 – three_roll_six_count) to the running count.
- The Field Bet is +EV when the running count is >= 7.
Intuitively, this count make sense, because you expect to see one 6-spot card in three rolls. The running count reflects the “excess” 6-spots in the decks, i.e., how loaded the decks are with 6-spots. A simple spreadsheet shows that the sensitivity of the 6-spot card is huge on the Field, because it pays 3x for boxcars (6,6). The effect of the Aces is very small compared to the 6-spot card.
The relationship between this simple running 6-count and the Field Bet EV was verified by Monte Carlo analysis, as shown in the following results:

The simple count only yields about 60% of the opportunities found by a perfect count (the count is +EV only 3.8% of the time, compared to the theoretical 6.44% limit). So while this is an interesting find, it’d be a little boring to stand around waiting to bet the Field once every 25 rolls or so. In practice, you’d probably wouldn’t even make a bet for 2 out of 3 shoes, but you’d bet often once the shoe went +EV. Overall, the average advantage per Field bet made is a little higher than 1%, and on average you’d make a net profit of 0.058 Field bets per shoe. So, even if you’re betting $100 on the Field when it goes +EV, you’d only make $5.80 per shoe. That’s a lot of standing around for sub-minimum wage with a lot of risk. But, if you wanted to “take a shot” at making a big win with a small number of big bets, this might just be the ticket for you (especially when the count gets really good).
Bankroll Requirements for Card Craps @ Viejas Casino
Often when I play card craps @ my local Viejas Casino, I wonder how profitable it would be to play the Don’t Pass Line, with 10x odds when the count is good. I know I could play lightning fast with a simple 3-roll window for the 5/9 and 6/8 points, and a 6-roll window for the 4/10 points. I know that this strategy would yield an average (+2.2%)(flat bet) per hand, or ($5)(2.2%) = $0.11/hand profit rate. During the week, especially during certain hours, you could be heads up with the dealer, and perhaps average 15 rolls per minute, or 3 hands per minute. So, on average, you could make about $20/hr. More importantly, you’d earn player rewards cash back at a pretty decent rate too. (I’ll take a rough guess that you’d make about $3/hr in cash back reward points.) Additionally, you’d make the MVP player level, which earns an automatic $30/day in cash back. So, if you play this game 8 hours a day, you’d average something on the order of (8hr/day)($20/hr + $3/hr) + $30/day = $214/day.
Ok, sounds great. So why don’t I do it? All I’d have to do is lay $100 against the 4 and 10 points, $75 against the 5/9, and $60 against the 6/8, unless the count is bad. I see people betting this kind of money all the time. It’s not unreasonable.
So I looked into the session outcome distributions for various bankroll, goal, and time-limit scenarios for this +EV game, to see if I could reasonably beat it.
First, I looked at a bankroll of 1000 flat bets (i.e., $5000). I calculated the session outcome distributions, assuming that I quit if I busted out or doubled up (won $5000). I plotted the results as a cumulative distribution function, which is easier to read. The plot below shows the probabilities for both a 1000 hand session (6 to 8 hours), and a 10,000 hand “session” (less than a week).
What I saw immediately from the 10k hand curve (red), is that while I’d have a 33% chance of winning $5000 within a week, I’d actually have an 18% chance of busting out completely. At first, I thought that number was too high, but after I thought about it more, a 1000 flat bet bankroll is only 50 10x lays against the 4/10, or 67 lays against the 5/9, or 83 10x lays against the 6/8. So I can see how everything going wrong (which happens sometimes) could bust you out.
I included a shorter 1000 game session distribution (green) curve for people more likely to try the game for a day. You’ll average a 22 flat bet win ($110 for a $5 flat bet), and 53% of the time your outcome will be +/- 200 flat bets (+/- $1000).
I wondered if doubling the bankroll to 2000 flat bets (i.e., $10,000) would be enough to make busting out nearly impossible. I ran the analysis for a maximum of 25,000 hands, which would take between 3-4 weeks of full time play. The below graph shows that I’d still have a 7.5% chance of busting out and losing my $10,000 bankroll. That’s an improvement from the $5000 bankroll shown (green; 33% chance of busting out), but the risk of busting out is still relatively high. While I’d have a 66% chance of winning overall with the various profits listed, it doesn’t seem worth the risk to me. I don’t think it would appeal to many people. (The $1000 or so in player cash back rewards is not included in this analysis.)
The problem is that while you have a +2.2% EV/game, that percentage is only on the flat bet, and not the odds. You have to lay $100, $75, or $60 to win that $0.11/hand average.
Simple +EV Collusion For Caribbean Stud
This is an update to my previous collusion analysis for 6 players. I found that Caribbean Stud games actually seat 7 players, and I constructed a simple collusion strategy that yields a +1.1% player advantage.
If you enjoy playing Caribbean Stud, and have a set of friends that can fill up a table, there’s a simple way to play together to obtain a +1.1% advantage against the house. Here’s what each player (i.e., you and your 6 confederates) need to do:
- For each copy of the dealer up card a teammate holds, he places a $5 chip (red) in a designated signaling area.
- For each remaining Ace or King a teammate holds, he places a $1 chip (blue) in the designated signaling area.
- Each player now knows how many total copies of the dealer upcard the confederates hold, as well as additional Aces and Kings.
- Each player adjusts the basic strategy decision according to the table below (i.e., confederates know when to Raise with junk, and fold weak hands).
| Hand | Modified Strategy |
|---|---|
| Junk | Raise if see at least 3 red chips and 4 blue chips. (3 upcard copies and 4 A/Ks.) |
| A K J 8 3 | Fold unless 3 red chips seen. (All upcard copies held by friends.) |
| One Pair 2’s thru 6’s | Fold if upcard is higher than pair, unless 2 or more red chips seen. (2 or more upcard copies.) |
| One Pair 7’s thru K’s | Fold if upcard is higher than pair, unless 1 or more red chips seen. (1 or more upcard copies.) |
While this collusion strategy is non-verbal, and no one will really care if you do it for $10 bets, the casino would very quickly catch on to a table full of $100 Ante players all calling with junk at the same time. Otherwise, a table full of players would make on average (7 players)($100/player)(1.1%/hand)(40 hands/hr) = $308/hr. And of course the variance would swamp the average for any reasonable time frame (i.e., shorter than months).
Examples
Let’s say your hand is a pair of Kings. The dealer upcard is an Ace. Your confederates do not hold any Aces (i.e., they place no red chips in their signaling areas). You should fold the hand.
Say you have junk. The dealer upcard is a Trey. Your confederates indicate they have all the Treys in their hands (they place 3 red chips in the signaling areas). The confederates also place 5 blue chips, signaling they have 5 Aces/Kings between them. Everyone should call (2x) no matter what they hold.
The dealer upcard is a King. The confederates place 3 red chips, indicating they have all the King “outs”. They also place 4 blue chips, indicating they have all 4 Aces between them. Everyone should call, no matter what they have, since there are at least 3 red chips and 4 blue chips seen.
You have a pair of Treys. The dealer upcard is a Ten. The confederates place 2 red chips, indicating they have 2 Tens between them. You should call your hand. Junk hands should fold.
(Was) Best Promotion Ever @ Viejas!
I just enjoyed a month of free money from my local Viejas Casino, where they offered a “Hot Hand Bonus” on table games during selected times in July. They intended to give away these prizes (up to 720 envelopes from $20 to $100) fairly to players at their table games. However, they overlooked an angle that allowed me (and my friends) to collect the majority of them. While they didn’t give away all the prizes, and I didn’t take advantage of every opportunity, I still collected approx. $7000 of prize money (plus $2500 from a Royal Flush!). I can get used to this kind of winning, but this type of vulnerable “promotion” doesn’t come along very often.
They tried to fairly balance the prizes between the different table games by making the cost per prize (in house edge) the same. So they gave a prize (an envelope containing from $20 to $100) for the following Hot Hands:
- 7-7-7 or 6-7-8 in Blackjack, min $10 bet
- straight or better in Three Card Poker, min $10 Ante
- trips or better in Four Card Poker, min $10 Ante
- win with As in Casino War, min $10 bet
- $5 Ace-Deuce or `Yo in craps
- etc.
The average house edge per Hot Hand varies between $8.50 – $12.50 per hand, so with a minimum prize of $20, they’re all +EV. However, when you take into account the speed of the game, and the fact that there are only 45 prizes/shift for the morning and swing shifts, it becomes obvious to play craps for the prizes. At Viejas, the craps table is often empty, and one morning during the promotion, I had the table to myself. I simply played $5 Ace-Deuce and $5 `Yo each roll, as fast as possible. It didn’t take much more than an hour for me to win all 45 prizes, and net a $1650 profit, after $275 in dealer tokes. The poor floor supervisor had to write my name, player card number, table, hand, and drawn prize in a log book each time I hit a Hot Hand (Ace-Deuce or `Yo). Luckily, they could just use the quote symbol all down the page.
I was really shocked that they didn’t change the rules of the promotion after that incident. After all, they did change the rules mid-promotion after my friend and I cleaned out all the Hot Hand bonuses on the craps game when the requirement was any $10 hard way bet. (We bet each hardway $10, every roll.) The following week they changed the rules to a $5 Ace-Deuce and `Yo. Of course, this just made things easier, because it kept the average cost per prize the same ($10/prize), but greatly reduced the variance ($10 risk per roll, compared to $40 risk per roll)! Anyway, they didn’t change the rules a second time, probably because they realised the promotion was about to end, and they’d fix it the next time. So yesterday was the last day of the promotion, and I won $900 and $800 from the craps Hot Hands during the morning and swing shifts, respectively. I didn’t get all the prizes, because someone would occasionally bet with me and win a prize, or prizes went to other tables.
This was the best promotion ever. It’ll never happen again, at least not at Viejas. Since the average prize was somewhere around $40, that’s like a $5 Ace-Deuce or `Yo bet paying (15+8)-to-1. Normally, this bet pays 15-to-1, where 17-to-1 are true odds. It’s pretty easy to see how the Ace-Deuce and `Yo paying 23-to-1 is heavily in your favor. Still, I was the only one doing it, because the variance is high enough to scare people off. All they see is me betting $10 per hand, and only occasionally hitting. They just see me throwing $10 at the dealer every roll to put my bet back up, which is lightning fast in a heads-up CSM card craps game. If you don’t have a deep enough bankroll, you can go bust quickly. (It unfortunately did happen to a player who reads this blog, when no Ace-Deuce or `Yo came out for almost 20 rolls.)
Mississippi Stud Folding Strategy
I’ve been playing +EV Mississippi Stud lately at my local Barona Casino, where all player hands are shown. I’ve found the key to playing the +EV strategy quickly is knowing the folding points, and looking ahead a street or two. I remember the folding points by street and high outs, which is pretty easy. I still play with the strategy table in my hand. The stronger your starting hand, the least amount of help (outs) you’ll need from the community cards. This means that you’ll never fold the strongest hands (5 high outs or better), and strong hands (3 or 4 high outs) will typically go to 4th street before you need to make a decision. I’ve made a flow diagram showing this folding decision. It highlights the key folding decision points, arranged by street and high outs.
Don’t use this chart at the tables. Just use it to understand the folding points better, and to learn to play faster. Understand that you’ll never fold a hand with 5 high outs. And with 3 high and 2 mid outs, you won’t have to think until 4th Street. Furthermore, you’ll never fold a hand with 3 high and 4 mid outs. However, if your starting hand has less than 3 high and 2 mid outs, you’ll need immediate help on 3th Street. Chances are, you’ll need more help on 4th Street. And you’ll probably need at least 3 high and 4 mid outs to see 5th Street. It’s uncommon when you end up calling with 2 high and 6 mid outs on 5th Street, and very rare to call then with 1 high and 8 mid outs.
Online Mississippi Stud Practice Game (+EV)
After spending a lot of time playing UTH, I found that there’s an acceptable way to share hole card information with the table. While the dealer, floorman, and surveillance might say something if you flash your hole cards (or play them face up), they don’t care if you verbally share info. Furthermore, if you’re discreet about it, or speak another language, and don’t slow down the game, no one will probably even know you’re doing it.
With this in mind, the value of ShuffleMaster’s Mississippi Stud just went up for everyone. While the game is already played face up at my nearby Barona Casino, now everyone can enjoy the +1.5% EV game at a full table of cooperating players. (See my Simplified 6 Player +EV Strategy, and my 4 Player Collusion Strategy.) In the meanwhile, you can practice the game here for free. It suggests the improved strategy as listed in my player reference card. Of course, you can play your hand any way you want to. Also, you can just hit the “Auto” play button to quickly play 1000 hands using the advanced strategy.
Click on the screenshot below to play:

The older Java game. You must have Java 1.6 installed on your computer (check your version).
Practice Viejas Card Craps Game
The best way to get the feel of the Viejas craps game is to actually play it. I wrote a Java applet to show the way you record rolls, and to model the 18-slot CSM with 44 sets of dice. You can look at the last 6 rolls or so, and figure out if you want to lay 10x odds on your Don’t Pass bet. I wrote this game because I wanted to try out laying 10x odds with a CSM model before I did it in real life. The best thing about writing down the rolls is that it gives you a better view on the key cards (e.g., Aces when the point is 6) than a mechanical 6 roll window.
Click on the screenshot below to play the game. I couldn’t embed it in this WordPress.com hosted blog, because they don’t allow Java applets here 😦
Try out the game. You can start with a basic 6-roll window strategy, and go from there. I think the human is more capable of determining the risk from the key cards in the roll history, than a simple fixed 6 roll window (+1.8% player edge on the flat bet). If it plays well for you, then come on out to San Diego.





leave a comment