Nine Men's Morris#
Info
A strategy board game for two players dating at least to the Roman Empire. 1
Introduction#
I am at the moment of unintentionally discovering, for the very first time, about socket.io, a Node.js package used in building real-time applications. And maybe I thought about that, "Hey, maybe I can use this opportunity to practice Node.js project andlevel-up my knowledge on Express".
At the same time, I am playing a game called Assassin's Creed: Black Flag on PC. There is a mini-game and that is where I first discovered about Nine Men's Morris.
Finally, I set a goal to build this game, with a real-time interaction between two players so that I could apply the knowledge from learning Express with socket.io integration.

This would now be my very first web-application that I could invite people in to interact with each other, play and experience this very old board game.
Website#
🚀 Deployment
How to play#
The game is played by two players and takes alternate turns. Each player have a total of 9 stones/pieces at hand to play on the board. 2
Goal#
Capture all opposing stones or block opponent until no possible moves.
Phases#
Placement#
At the beginning of the game, players take turn to place their stone on the board. The phase 1 ends when all of the 9 stones/piece for both players' side are placed on the board.
Movement#
After all 18 stones (for both players) are placed on the board, then players are now allowed to move their stones to adjacent points on the board.
Capturing#
To capture a stone, you need to form a mill in which 3 adjacent stones are positioned in horizontal or vertical.
Flying#
During Phase 2, players can start moving their stones at adjacent points. But when a player have exactly 3 stones left on the board, then the pieces can now fly or move to any adjacent AND non-adjacent points on the board.
Enjoy Experience#
The first time I released it, all of my colleagues used it to play during break hours. Everyone was into it and having fun beating each other in the game!
And their interest on going back to the game lasts for months. The first release was never really deployed in any hosting sites, rather it was only deployed in my local ipaddress that everyone have to bump into me just to start the server so that everyone could access it.
After years of experience in web development, I have discovered about GitHub and finally learned how to deploy my applications to cloud hosting platforms such as Heroku and later on Render.
Even after I joined a new project, my new team members are also amazed about this game and as well as had fun playing and interacting with each other through this web application that I developed.
Development History#
MM/dd/yyyy
| Date | Description |
|---|---|
2/11/2018 |
🚀 first released and uploaded in Dropbox |
11/2/2018 |
Source code last uploaded in Dropbox |
1/13/2022 |
Salvaged the source code and pushed to GitHub |
5/1/2023 |
Last updated in GitHub |