Mancala Games

Mancala is sometimes said to be the oldest board game of the world, dating back to 7000 BC. Actually, there is no evidence going back beyond the 6th century AD. It is, however, probably one of the most widespread games. It can be played on anything from pits dug into the earth with bare hands to elaborately carved boards resembling ornate ships; it can be played with anything from dried goat feces over beans to coins or glass beads. The home of the game is Africa, but it spread north to Russia and the Baltic, eastward to Indonesia and Vietnam. Slave trade carried it to the new world, where it is played in the Carribean, Brazil, and Louisiana.

The Rules

Of course, such a wide-spread game has nearly as many rules as names. However, I found that most computer implementations stick to one of two rulesets, which I call Kalah and Oware.

Kalah

The following rules are those under which it is played in northern Africa and Russia. These are best fit for computer conversions and therefore used most often.

Oware

These rules are common in wide parts of Africa. They are more interesting, but less fit for computer conversions, for a really good AI will sometimes be able to finish the game without the human player ever getting a turn.

History and Platforms

The first computer implementation of Mancala was created by Geoff Wyvill in the early 70s. It was included in David H. Ahl BASIC Computer Games in 1973, which saw a second edition in 1978. Geoff writes about his game:

It was quite a challenge to create a game of any quality in BASIC then. Our PDP11/20 in BRADFORD was running a multi-user BASIC system and each user had only about 1500 bytes for BASIC code and data. Even so, Awari included a primitive learning mechanism so its play improved with experience.

In 1976, Steve Garland SBASIC, a BASIC with structured programming features, calling the result. One of the sample programs he wrote was an implementation of Kalah (1978). Scot Drysdale recreated this code on Pascal and later Java for his own teaching purposes, and it was used in at least one actually released Mancala game.

In 1980, Dale S. Cooper wrote a Kalah for Cursor Magazine #80, for the Commodore PET. This was probably the first Mancala game distributed digitally, for the Cursor Magazine was published on tapes. Mancala games proved very successful on the PET's successor, the Commodore 64. More than 20 can be found on The GameBase64 Collection, though many of them had no AI and were just electronic boards for a two-player game. On none of the other 8-bit platforms was Mancala that popular.

The Games

Awari BASIC Kalah 78 UK Geoff Wyvill
Mankala Atari           82 US Elizabeth Chase MacRae
Kalaha (ZX Data)   ZX         84 Dk O. Steen Hanssen
Kalah (Talent)       C64     UK Andrew Colin & Mike Masters
Ayo BBC   CPC       Oware 87 UK Daniel J. Bishop
Awari (Veludo)         Atari ST   Kalah US Adaptation of Geoff Wyvill's code
Mancala (64'er)       C64     De Benno Bosen
Mancala (California Dreams)       C64   Apple IIgs 88 Pl  
Atari Awari         Atari ST   90   Adaptation of Geoff Wyvill's code

In 1991, two Mancala games were developed independent of each other in Moscow: Kalah for the Mac, which was based on Steve Garland's code, and Kalakh for the PC. It was on these two platforms that Mancala, mainly from 1994 on, found its new home. The popularity of the game increased in the second half of the 90s, and there are more implementations for Windows than for DOS.

Bohnespiel C64             Kalah 91 De  
Kalah (Leo)             Mac Ru Lev Possajennikov
Kalakh       DOS       Ru  
Wari (DOS)       DOS       Oware 92 Nl Eric Roosendaal
The Egg Carton Game         W16       US Paul Talbot
Kalah (GAMOS)       DOS       Kalah 93 Ru  
Kalaha (Windows)         W16     Se Mikael Ekbom
Mancala (Tower)     Amiga         UK  
Kalah (Island Software)         W16     94 US  
Kalaha (EggBird)         W16     Nl Egbert J. van der Haring
Mancala             Mac US Todd Glenn Clements
Stones             Mac   Ca Nathaniel Tagg
Oware!       DOS       Oware 95 US Roger P. Kovach
Wari (ImagiSOFT)       DOS       US  
WinAwélé         W16       Eric Bertrand
Kalaha 1.0         W16     Kalah Nl Klaas Bonnema
Wari 2.0         W16     Oware 96 It  
Awale           W32 Mac Fr Didier & Olivier Guillion
Awele   Atari ST           Fr Dominique Béréziat
Custer C64             Kalah Cz  
Vari C64             Oware Hu Damage

Custer and Vari were the last Mancala games released for the Commodore 64.

Mancala! DOS         Kalah 97 US Clinton Graham
Mancala for Windows 3.x   W16         Artin
Stones II       Mac     Ca Nathaniel Tagg
Kalaha (Mac)       Mac   98 Se Joachim Kulla
Wari 2000   W16 W32     Oware US Arthur Crump
Mancala 2000 (Tabberer)     W32 Mac   Kalah 99 US Seth Tabberer
PoornBoy's Warri! DOS         Oware    
wMancala     W32     Kalah UK K. Shane Harrelson
Mancala 2000     W32     00 De  
Mancala 3000     W32     US Arthur Crump
Bantumi     W32     01 CH Andy Bell
Mancala     W32     US Kyle Dugger
Waurie     W32 Mac Linux   KY David Grogono
Toguz Korgool     W32       02 Kg  
Mancala for Windows     W32     Kalah 03 Nl Bert Greevenbosch
Wari (Windows)     W32     Oware Nl Eric Roosendaal
Awélé     W32     04 Fr Claude Massé

Names of Mancala Games

Unsurprisingly, a game thus old and wide-spread goes by hundreds of names:

A-i-ú, Abalala'e, Abanga, Abangah, Abouga, Achara, Adi, Adita ta, Adito, Adji, Adjiboto, Adjika, Adji pre, Adjito, Adzua, Aghi, Agi, Aji, Ajwa, Alé, Alemungula, Andada, Andot, Annana, Anywoli, Awagaga, Awale, Awalé, Aware, Awari, Aweet, Awele, Awélé Ayo, Ayo ayo, Azigo;
Ba-Awa, Banga, Bao, Bao kiswahili, Bao solo, Bare, Baruma, Bau, Bawo, Bechi, Bohnenspiel, Boke, Bosh, Bouberoukou, Bouri;
Casitas, Chanka, Chisolo, Chongkak, Choro, Chouba, Chuba, Chunca, Cisolo, Congkak, Coo, Coro, Coro bawo;
Dabuda, Dakon, Dakoun, Dara, Darra, Deka, Djonghok, Djonglak, Dwong;
El Agrab, El Arnab, Érhérhé, Endodoi, Enkeshui, Enmediar, Eson xorgol, Esson, Éu leu;
Fangaya, Fuva;
Gabata, Gabatta, Galatjang, Gamacha, Gbégélé, Gebta, Gelo, Gepeta, Gesuwa, Gilberta, Giuthi;
Halusa, Hoyito, Hus;
Igisoro, Igosou, Ikiokoto, Imbelece, Imbwe, Impere, Isafu, Ise onzin egbe, Isofu, Isolo;
J'erin, Jodu, J'odu, Jukuru;
Kachig, Ka ia, Kalah, Kalaha, Kalak, Kale, Kalimanta, Kasonko, Katra, Kboo, Kenji guki, Kiarabu, Kisolo, Kiswahilibao, Kiuthi, Kpo, Krour, Kubuguza;
La'b hakim, La'b madjunni, La'b roseya, Lahemay walida, Lami, Lamlameta, Lamosh, Lam waladach, Langa holo, Layo, Leka, Lela, Leyla gobale, Lien, Lizolo, L'ob akila, Longbeu a cha, Lontu Holo, Luuth, Luzolo, Lwele;
Madji, Main chongkak, Mak-hu-hai, Mak khom,Makwinni, Mancala, Mandiaré, Manga, Mangala, Mangola, Mankala, Manqala, Manquala, Marabout, Marany, Maruba, Mate, Mazageb, Mbangbi, Mbau, Mbelete, Mbere, Mbo, Mbothe, Mefuhva, Mefuvha, Meusueb, Mewelad, Mofuba, Moro gbegele, Motiq, Msuwa, Mulabalaba, Mungala, Mutiteba, Mwambalula, Mweiso, Mweso;
Nakabile, Nambayi, Naranj, Ncholokoto, Nchomvwa, Nchuba, Nchuwa, Ndoto, Ngar, Njombwa, Nocholokoto, Nsolo, Nsumbi, Ntchuwa, Numnum;
Obigu, Oko, Olinda, Okwe, O Lang, Olela, Omweeso, Omweso, Otep, Otjitoto, Ot jun, Otra, Ot tjin, Otu, Ouré, Ouri, Ourin, Ourre, Ourri, Oware, Owela;
Palankuli, Pallamkurie, Pallam kuzhi, Pallanguli, Pallankuli, Pandi, Papadakon, Papandata, Peke, Pensur, Pereauni, Pérésouni, Pia, Pinton, Poo, Puhulmuti;
Qaluta, Qasuta, Qelat, Qenchebema, Qéqa;
Raja Pasu, Rath, Rio Kadashi, Ruhesho, Ryakati;
Saddeka, Sadeka, Sadiqa, Sai, Sat-gol, Schach, Seca, Selus, Serata, Shayo, Shèdan, Sherfo, Shimunana, Sig, Solo, Sombi, Songo, Soro, Spreta, Sulus nishtaw, Sunca, Sungka;
Tagega, Tampoduo, Tamtam apachi, Tap, Tapata, Tchanka, Tchokajon, Tchonkkak, Tchoukaitlon, Tchukaruma, Tegre, Til-Guti, Ting Makor Adek, Tjonglak, Toguz xorgol, Toi, Tok Ku Rou, Tokoro, Tonka, Topuz xorgol, Trysse, Tschuba, Tsh ela, Tshuba, Tshi solo, Tsoro, Tsotokele;
Ubao, Udi, Uera, Ugwasi, Um Dyar, Um el bagara, Um el banat, Um el tuweisat, Unee tugaluulax, Urdy, Uré, Uruheisho;
Vai lung thlan;
Walak-Pussa, Walé, Walle, Walu, Walya, Ware, Wari, Warra, Warri, Waurie, Wawee, Wawi, Weg, Wori, Woribo, Woro, Wouri, Wuli, Wuri;
Xorgol, Xoros;
Yada, Yansi, Yit nuri, Yit Yani, Yovodji, Yucebao; Zigulzoqge, Zikili.

In spite of this wealth of names, the creators of computer conversions tend to use very few, often making it difficult to keep the games apart:

On the other hand, programmers have occasionally come up with new names, like Arcana, Stones or Pebbles.

Trivia

Mancala Links

Some More Computer Implementations


Last modified 2009-09-20