Picture of Build an electronic score keeper/storage box
The instruction manual for each of the MANY munchkin series of card games always includes a phrase like "you will need a 10 sided die for each player or some other device to keep score."

10 sided dice are not hard to find in my house, but I took this as a challenge to make my own device to keep score.  I created this electronic score keeper that also doubles as a box for transporting a subset of my family's munchkin collection.  The box can keep track of each player's score and notify everyone when someone wins.

This device is not limited to keeping score in munchkin games of course.  It will keep score for 1 to 4 players (sitting anywhere they like around the box) ranging from a score of -9 to 99 for each one.

Even if you don't need a munchkin score keeper, this article might still be of value to anyone interested in:
  • How to use a max7219 chip to drive up to 8 seven segment LED displays with just a few pins of your microcontroller.
  • How to recover from minor flaws in a board.
  • Re-purposing parts of obsolete electronics, and make a virtue out of pack-rat-ery.
Of course, if I had my own laser cutter, the box would be much more ornate and even more munchkiny.  I would craft my own custom box and burn artwork both silly and terrifying in its sides. Players would be advised to keep their gaze fixed on the score lest they be driven mad by the terrible runes seared in its facets.*

Please vote for this this article in the laser challenge so that I can realize that ambition, and perhaps stop the dreams coming.

For more of my thoughts on what I would do if I won the epilog laser challenge, please see the notes at the end.

* Perhaps we play munchkin Cthulhu a bit too much.
Jake-off2 years ago
Nicely done! My dads a big nut about the Munchkin games and has gotten me and my 4 siblings into the mix, along with several of our friends. we usually get together in a large group and play a 6 hour game with 6 to 8 people. Is there any way to add more player counters to a setup like this?
mkanoap (author)  Jake-off2 years ago
Thanks! It certainly could be done, albeit by redesigning the board. In the very last page I briefly mention under "hardware improvements" the fact that it is possible to string two of the MAX7219 chips together to have twice as many LEDs which works out to twice as many players. If I recall correctly (it's been a few years, and I did it a year before I wrote it up) you would just wire the second MAX7219 to the extra displays in the same manner, and then there are some pins that connect between to two chips to daisy chain them together. So instead of pushing the data for 64 leds every time you update it (see the second to last page "how it works"), you push data for 128 leds.

If I were to do this project again today, I would probably either use an arduino to simplify the construction or if I were redoing the whole board, redesign it to be arduino compatible.

I love my box and enjoyed making it, but I'd mostly recommend recreating it only if you are interested in process of doing the electronics and fabricating it. Otherwise, (I hate to admit this) the munchkin iphone/android app does the job pretty well and takes up a lot less space on the table.
uhclem3 years ago
Nicely done and documented. I was a c programmer before using the Arduino environment and should probably force myself back to gcc/avrdude. I think yours is a good example to look over to think about the switch.

I have not tried it, but I think mostly you can use avr gcc conventions inside Arduino, like defining function prototypes and using the port notation, and it will still work.
mkanoap (author)  uhclem3 years ago

I'm pretty certain you are correct. I believe the arduino IDE actually calls an included copy of AVRdude, so it's not that far away. I'm not sure what else it does before it sends the sketch to AVRdude besides automatically include some libraries, but I often find that when I can't figure out how to do something with the arduino libraries, the answer will be on the AVR forums.

I haven't tried it yet, but apparently you can go the other way and extend the arduino IDE to let it work directly with attinys. http://code.google.com/p/arduino-tiny/