Boatzee is a Yahtzee variation game that we've been playing for several years. It grew organically as our needs and preferences shifted -- especially to meet the specific requirements for my special needs son, Brighton. Paper scoresheets became a spreadsheet which became a shared spreadsheet complete with macros and advanced formulas. The next step, naturally, was to create a web-based application from scratch.
Boatzee was born!
A project like this always presents many challenges. In this case, the game itself was already a known quantity. That was actually the least complex part of this project. Early complications arose with acceptable formatting across screens (not unusual), multiple local players, and tracking high scores. The real complications, however, were keeping a form of user "state" -- allowing multiple remote players in real time -- and controlling the user experience both while playing *and* while waiting. When you finally feel like you're nearing the end game (pun intended), you test with someone like my son that needs help logging in, joining a game, and even identifying the correct square to play his score. Some of it should've been more obvious to me, but other pieces really required trial and error to identify. It was a series of "attempt a fix, test further, rinse, and repeat". But seeing my son start to "get it" while playing Boatzee on his tablet, dad on his computer, and grandma 200 miles away was incredibly rewarding. There will be future improvements and tweaks of course.
For those who care about the "tech", Boatzee is hosted on an Azure VM running Debian 10, Nginx for web-serving and proxy, Node.js as the "game server", and PM2 for retaining game server state.
Lastly, Boatzee is freely available for any/all to play! If you made it this far, well.... thanks for reading and I hope you enjoy it 😀
Boatzee is a classic dice game played with 5 dice. The goal is to score the most points by rolling specific combinations.
Unique Feature: Unlike standard games, Boatzee gives each player Two Columns to fill per game. This means the game lasts for 26 turns total.
The scorecard is divided into two sections:
Score the sum of dice matching the category number.
| Category | Description |
|---|---|
| Ones - Sixes | Sum of all dice matching that number. |
| Bonus | If an individual column's Upper Section totals 63+, that column gets 35 bonus points. (It is possible to get this bonus twice!) |
Poker-style combinations.
| Category | Points | Description |
|---|---|---|
| Three of a Kind | Sum of Dice | At least 3 dice the same face. |
| Two Pair | Sum of Dice | Two separate pairs (e.g., 2-2, 5-5). |
| Odds or Evens | 20 | All dice are Odd or All dice are Even. |
| Full House | 25 | Three of one number, two of another. |
| Small Straight | 30 | 4 sequential dice (e.g., 1-2-3-4). |
| Large Straight | 40 | 5 sequential dice (e.g., 1-2-3-4-5). |
| Boatzee | 50 | 5 of a kind (All dice the same). |
| Chance | Sum of Dice | Any combination (good for when you miss a roll). |
If you roll a 5-of-a-kind and both of your Boatzee slots are already filled, you get a Boatzee+! Here's what that means:
The game ends when all players have filled both columns for all 13 scoring categories.
The player with the highest total score wins the game!