Ok, I've been working on this script for months. I think I've finally gotten it to the point where I can post it. There are still some rough spots in it... and I need some help smoothing them out.
Last year we playtested a new card game that Mike Substelny created called "Mala-Mala". This is Arvonian for "Zero-Zero". It's sort of a mash-up of Poker and Corellian Spike. We playtested it at a few Artemis parties, and there was some discussion about having a Mala-Mala tournement at Armada V. Back in January, I got the bright idea that I could code Mala-Mala into an Artemis script. One of the silver linings of Armada getting postponed is I now had time to write up my Artemis Casino script. Right now it's just Mala-Mala, a simple slot machine, and a fortune teller. This is not a multiplayer script, it's a one-player card game played within the Comms console.
The Mala-Mala game is still a little rough... so I need some help smoothing it out. The rules of the game might still change a bit... we were still discussing betting rounds, how many face-up cards, and so forth. Here's the Mala-Mala rules from the Mission Script:
Mala-Mala is a card game played by Arvonians that is similar to poker. Play begins by selecting a Dealer and giving them a marker called the "Nosh" (Arvonian for "egg"). Each player is dealt four cards, three face-down and one face-up. The cards are numbered 0 through 9 in four suits, representing the four cardinal directions: North, South, East, West. Each suit has two face cards, a Parent and Child. Faces are wild and can have any value from 0 to 9.
A hand is scored by adding and subtracting North/South cards from each other, and East/West cards from each other. If a hand has North 5 with South 3, the North/South axis counts as "2". If the hand also has East 6 and West 9, then the East/West axis counts as "3". You could then say, "My score is Two-Three". If both North/South and East/West are zero, then you have "Mala-Mala", the best hand you can get. In Arvonian, "Mala" means "Zero", and "Mala-Mala" means you have achieved the perfect balance of cosmic forces.Drawing Cards
There are two draw phases, or two attempts to improve your hand. After looking at your cards but before betting starts, you can:
1) Stand Pat (keep your current cards)
2) Discard one to three cards facedown and draw the same number of new cards from the deck.
Once per hand, you may also:
3) Discard your face-up card, and replace it with TWO face-up cards. Both of these new cards count towards your score.
After all players have had a chance to improve their hands, the first Betting phase starts.Betting
The player to the left of the Dealer starts the first betting phase, and this player may either "Bet" or "Fold". The first bet is always double the Ante, usually 4. All bets and raises in Mala-Mala are double the previous bet, so each bet and raise follows a binary progression:
2, 4, 8, 16, 32, 64, 128, etc.
After the first player, each player in turn can:
1) Call. Player must put an amount into the pot equal to the current bet.
2) Raise. Double the previous bet. Remaining players must Call, Raise, or Fold. Each player may raise once per betting phase.
3) Fold. Give up their hand. They no longer contribute to the pot, but can't win this hand.
Once the bet is settled and all players have called or folded, there is a Second Draw Phase, followed by a Second Betting Phase, after which hands are revealed and the best score wins the pot.Scoring
A hand is scored along both the North/South axis and the East/West axis. South is subtracted from North, West is subtracted from East. The Score is expressed as two numbers. The closer those numbers are to zero, the better the hand. A "One-Three" beats a "Zero-Five" hand.
Face cards are wild, and can be any number from 0 through 9. However, they can't be a "negative" number. A hand with "North 6, North Parent, East 0, West 1" can't count the North Parent as "-6". The lowest value it can be is "0", and this hand scores as "Six-One".
Hands that only have cards on one axis incur a penalty. If the North/South or East/West axis has no cards, then that axis has a value equal to the highest card in your hand.
For example, a hand has "West 4, West 0, East 0, East 5". The North/South value is equal to 5, since that's the highest card in the East/West axis. Total hand score would be "Five-One". Arvonians refer to this penalty as "Evre-Leshad" (meaning "Indecent Sibling").Tie-Breakers
If two or more hands have the same score, use the following tie-breakers:
1) Hand with the highest non-face number card wins.
2) If both hands have the highest value card, highest suit rank wins, in order: North, South, East, West.
For Mala-Mala hands, consult the Hand Rankings to see if a High Mala-Mala hand outranks another. Otherwise, count the number of face cards. Since scoring Mala-Mala is easier with face cards, No Faces beats One Face, One Face beats Two Faces, and Two Faces beats Three Faces.
If two hands have the same number of faces, use the following tie-breakers:
1) Highest number of Parents, Parents outrank Children.Hand Ranking
2) Parents and Children are equal, then highest suit face card wins, in order: North, South, East, West.
3) For "No Faces", highest number card wins, or if equal, highest suit (as above).
High Mala-Mala hands:
Four-of-a-Kind (All Zeros) = Perfect Egg
Four-of-a-Kind = Perfect Family
Four-of-a-Kind + Zero = Imperfect Egg
Four-of-a-Kind + Face = Imperfect Royal
Five Faces (mix of Parents/Children) = Royal House
Four Faces (mix of Parents/Children) = Royal Family
Mix of Faces/Zeros = Noble Family ("Scrambled Eggs")
Four Faces + Number = Royal Rogue
Mala-Mala, No Faces = Rogue's Nest
Mala-Mala, One Face = Royal Nest
Mala-Mala, Two Faces = Noble Nest
Mala-Mala, Three Faces = Captain's Nest
So, that's the rules that I was able to fit into the game. I need your help with two things:
1) Playtest the script. Help me find bugs.
2) The gameplay. Does it make sense? Is there a way to improve it?
Some issues: The mission script doesn't really allow graphics/images in Comms messages, so I can't really display "cards". I also can't use text strings, so a large chunk of the code is very klunky about displaying "North...", "South...", etc.
I don't quite like the suit rankings: North > South > East > West. I feel like each axis should have a "Trump" suit, so I considered changing it to North > East > South > West. However, I suspect I am the only person on the planet who gets bothered by this.
The code currently allows the player go into negative credits, and lets them bet with money they don't have. I'll add some code later to deal with that. (Ideally, all Mala-Mala players are supposed to have a handgun that they can throw into the Pot if they run out of money... in Mike's original rules, if you win someone's gun, you can roll 8d6 at the end of the game to determine how many credits it's worth. I'd like to add something like that... but it's not high-priority right now.)
The odds/probabilities of some of the high mala-mala hands don't make sense, because the odds are different for various four-card hands compared to five-card hands. I did a little math, but not a whole lot... some of the five-card hands may be easier or harder to get than the four-card hands, so the hand rankings aren't exactly from "most rare" to "easier to get". Maybe someone better at math could help me with that?