Thai Chess (หมากรุก: Makruk)

It’s always awesome when seemingly unrelated interests collide. That happened for me last summer when I visited Thailand for the first time. I had brought my chessboard because I’m a huge nerd. One of my Thai co-workers  told me he was a former chess champion so we decided to play a match against one another. We ended up setting the pieces up differently and after some discussion, realized we played two different versions of chess. I ended up learning the rules for Thai chess (หมากรุก: Makruk) along with some new Thai words. I also taught him the rules of International Chess and the English names of the pieces. We played each other in both versions and unsurprisingly I won in the version I knew and he won in the version he knew.  Makruk is said to be the closest modern chess variant to the ancient game from which all known versions are derived (Chaturanga from 6th century India). Here are the names of the pieces in Makruk (along with their literal translation and corresponding chess piece):

เบี้ย (bia) – cowry shell – pawn
เม็ด (met) – seed – queen
โคน (khon) – nobleman or mask – bishop
ม้า (ma) – horse – knight
เรือ (ruea) – boat – rook
ขุน (khun) – lord – king

Differences between International Chess and Thai Chess:

  • Pawns start on the 3rd and 6th ranks instead of the 2nd and 7th (therefore, there is no en passant and no moving forward 2 on their first move)
  • The white king and queen have their starting location swapped, so black and white do not have mirrored positions at the beginning
  • Pawns promote automatically when reaching the 3rd or 6th rank instead of the 1st and 8th and always become a queen (called เบี้ยหงาย [bia-ngai: overturned cowry shell] as opposed to เม็ด )
  • Queens can only move to the squares diagonally adjacent to them, making them arguably the weakest pieces in the game
  • Bishops move like the queens (diagonally adjacent) or to the square directly in front of them
  • There is no castling
  • There are a long set of counting rules similar to the 50-move rule in International Chess, you can read about them here.

You can say รุก (ruk: penetrate) instead of check and just add the word ฆาต (khat: kill) to make รุกฆาต (ruk khat: checkmate). Another fun word to use is กิน (gin: eat) when you capture a piece. For example: ม้ากินเรือ (ma gin ruea: the horse eats the boat, I bet that horse would have a bit of a ปวดท้อง [stomach ache] afterward!).

I modified a couple of javascript libraries made to implement chess to work for Makruk instead, try it out:


The libraries I modified:

  • chess.js by Jeff Hlywa released under the BSD license
  • chessboard.js by Chris Oakman released under MIT license (While working with this one I actually discovered a bug, fixed it and submitted a pull request which was accepted. Technically, my first open source contribution!)
    Original copyrights left in the source code

Telling Time in Thai

In my journey to learn Thai there have been words or phrases I’ve needed since my first day living in Thailand and I learned immediately (like telling a taxi driver to turn left, right or go straight) and there have been others that I thought “That’s a little too complicated for now” and I didn’t remember. One of those “too complicated” concepts for me at first was telling time. I’ve decided to finally tackle it and I’ve done so by doing what any good constructionist would do and built on already existing knowledge. I am a computer programmer who teaches computational thinking skills. So I wrote a program to take a given time and tell the user how to say that time in Thai (both in Thai script and roman transliteration). I’ll break down how it works, then let you play with it yourself. Actually, a lesson I’ve learned from teaching is that if you tell someone you’ll let them play after your lecture, they’ll ignore the lecture and just wait for the part where they get to play. So, here, play away!

Enter a time:

Okay, if you liked that and you’re still here I’m assuming you want to know more about how it works. First of all, the ‘time’ input type will give us a value in the format HH:MM anywhere from 00:00 to 23:59 (12:00 a.m. – 11:59 p.m.). To speak about the time in Thai, you need to know what time of day it is:

เที่ยงคืน (tiâng keun): midnight (00:00-00:59)
ตี (dtee): early hours (01:00-05:59)
เช้า (cháo): morning (06:00-11:59)
เที่ยง[วัน] (tiâng [wan]): (12:00-12:59)
บ่าย (bài): afternoon (13:00-15:59)
เย็น (yen): evening (16:00-18:59)
ทุ่ม (tûm): late hours (19:00-23:59)

The next thing to know is that when saying the hour, we work in mod 6 instead of mod 12 (If you’re unfamiliar with modular arithmetic, keep reading and it should make sense). You know how we count up from 1 o’clock, 2 o’clock, …, 12 o’clock, then start over again at 1 o’clock p.m.? Well, in Thai we can count up from 1 o’clock, 2 o’clock, …, 6 o’clock and go back to 1 o’clock. So you “roll over” 3 times in a day instead of just once (a.m. to p.m.). One thing to note is that Thai can be a pretty forgiving language. If you say 7 in the morning instead of 1 in the morning, it will still make sense.

Some more important words:

โมง (mong, long ‘o’ sound like in go or row): hour
นาที (na tee): minute

Also, the numbers 1-59. I’ll do a separate post about numbers in Thai (Until then, here’s a good reference). Here are the first 6 since they’ll be the most common since we need them for the hours:

หนึ่ง (neung): one
สอง (song): two
สาม (saam): three
สี่ (see): four
ห้า (ha): five
หก (hok, again, long ‘o’ sound): six

Saying the hour portion is different during the different parts of day. For noon and midnight, we just say เที่ยงคืน/เที่ยง. Early hours it’s the time of day then the hour number (1 .a.m. = ตีหนึ่ง ). In the morning and evening it’s [hour number] + โมง + [time of day] (6 a.m. = หกโมงเช้า, 6 p.m. = หกโมงเย็น). Afternoon, it’s บ่าย + [hour number] +โมง (3 p.m. = บ่ายสามโมง ) but you don’t have to put the number if it’s one (1 p.m. = บ่ายโมง ). Late hours, it’s [hour number] + ทุ่ม (11 p.m. = ห้าทุ่ม).

Minutes are easy enough, unless you’re at minute zero (*:00), just add the number and the word for minutes (2:03 p.m. = บ่ายสองโมงสามนาที: bai song mong saam na tee ). Now, just like in English, we could say things like ครึ่ง (kreung: half) instead of *:30, or 5/10/15 ’til the next hour but I haven’t included those in this program. We could also say [hour number] + [the Thai word for clock] the same way you use “o’clock” in English but you need to switch to a 24 hour system (ex. 6 o’clock am = หกนาฬิกา: hok na lee gah but 6 o’clock pm would be “18 o’clock” = สิบแปดนาฬิกา: sib bad na lee gah ).

By coding this up, I had to think about the patterns and rules for when to say what when talking about time in Thai which has definitely helped my understanding. Thanks for checking it out!

Featured Image originally posted on Flickr by Jorge Láscar  licensed under the Creative Commons Attribution 2.0 Generic license.