MATATU (c) 2016 Digital Monastery --------------------------------- Digital Monastery (HF) presenting a Forum64.de Game in listable CBM V2 Basic tight and FAST code - no compiler needed for playability. USAGE ----- Cursor keys = Select card Return = Play card "D" = Draw card WHY WE DID IT - A REPORT BY BUGJAM ---------------------------------- Matatu is a card game widely played in Uganda, with slightly varying rules. The word "matatu" means a "mix of everything", and is also phonetic for the sound when shuffling. The word matatu (for Swahili "for three" most probably after the standard price of 3 Shillings per ride) is used for minibus taxis as well, which provide the main means of transport for people in most of East Africa. I have learned to play Matatu many years back, when I was working with MSF (Doctors without Borders) in Northern Uganda; especially our drivers played it all the time, and it was a favourite pastime for all of us in the evenings, as there was neither electricity nor internet in many places. When I came back to Uganda in early 2015 I immediately picked up playing again; and soon I learned that there had been created a mobile app for Android (and an online version in flash as well) by a Ugandan development team. I downloaded it right away, and while it is good fun to play (there is also an online option to play against other players anywhere), it turned out that the AI does not really deserve the "I". It was all too obvious how the computer opponent is playing. Anyway, at some point I came up with the idea to suggest a conversion to my favourite platform on the German Forum64.de, and lo and behold the idea was really picked up! I had imagined it could be relatively easily done in BASIC, and it was indeed chosen. The whole project turned out to be a prime example of cooperation between various experts; the thread quickly became one of the busiest on the forum. Of course it was not as easy as I as non-coder had imagined, but various obstacles were overcome, and in many ways the resulting AI is indeed much cleverer than the Android app! RULES ----- Each player gets 7 cards; goal of the game is to shed all your cards first. You always have to follow either suit or rank, with exception of the Ace (more on that below) - you might decide to draw a card instead though (as you have to if you can't serve), for tactical reasons. But you can also finish the game by "cutting": the first card on the stack is deciding the cut suit, and whoever has the 7 of that suit can finish the game, if there are less or equal than 25 points on his hand. Then the one with less points wins, so the number of cards is not necessarily a reliable indicator. For cutting, you need to know the value of the cards, which are 3 to 10 for the respective ranks, 11 for Jack, 12 for Queen, 13 for King, 15 for Ace and 20 for 2. 2, 8, Jack and Ace have special functions: 8 and Jack allow/force you to play another card (or draw if you can't) unless they are the very last card, and the game is finished afterwards. The 2 forces your opponent to draw 2 cards, unless he has also a 2, in which case you will have to draw 4! The Ace can be played on any other card (except the 2), and allows you to request a suit of your choice. There are a few differences to the original card game as it is played in Uganda. If the drawing stack gets finished, the shedding stack is shuffled again (except the topmost card) and used as new drawing stack. Also, the first card (deciding the cut suit) is not used as first card on the shedding stack, but is normally put sideways under the drawing stack, so that it is visible during the game at all times. And usually the player is still allowed to play after picking a card (except after a 2). But as with many card games, there are variations anyway. After all, a great and entertaining game has emerged; my sincere thanks to everybody involved, whom I nagged with constant bug reports and suggestions! Yours truly, Bugjam FULL CREDITS ------------ Main code and game engine: Bytebreaker/Hokuto Force Additional code and optimizations: RKSoft & JeeK Charset: Haubitze Dir-Art: S!ink of Desire Title Pic: Grass of Hokuto Force Idea and docs: Bugjam/The Dreams Help: Hexworx, Mac Bacon, Froehn, Unseen Proofreading: Matrixwright |