Games

Τάβλι Πλακωτό

Τάβλι Πλακωτό game board with dice and moves

Project Name

Τάβλι Πλακωτό

Type

Online multiplayer game

Genre

Board game (Greek backgammon)

Built with

PHP, MySQL, JavaScript, jQuery

Players

2, online

Τάβλι Πλακωτό is an online version of Plakoto, one of the most popular variations of Greek backgammon. Two players can play against each other from different devices: one creates a game, the other joins it from the lobby, and the board updates for both of them as they play.

I built it as a personal project to practise building a complete multiplayer web game: a REST-style API in PHP, a MySQL database that stores players, games, the board and every move, and a frontend that keeps both players in sync. All the rules of Plakoto are checked on the server, so no move can break them.

Τάβλι Πλακωτό lobby with available and active gamesΤάβλι Πλακωτό login screen and rules

What I did

Design and full development of the game: the database schema, the PHP API for players and games, the game engine with all the Plakoto rules, and the frontend with the lobby, the board and the move controls.

Τάβλι Πλακωτό valid moves and game history

Key features

  • Quick sign-in: players enter a username, no password needed, and get a session token that is remembered by the browser.
  • Lobby: create a new game, see the games waiting for an opponent and join one, or resume your active games.
  • Live game: the board refreshes automatically every few seconds, so each player sees the opponent’s moves almost immediately, and it is always shown from the current player’s point of view.
  • Dice & moves: dice are rolled on the server (doubles give four moves), and the game lists all valid moves so the player can pick one with a click or type the points.
  • Game history: every roll, move and pin is recorded and shown in a game log.

The rules of Plakoto, enforced by the server

Each player starts with 15 checkers and moves them around the board in opposite directions. Landing on a single opponent checker “pins” it, and the pinned checker cannot move until it is released. A point with two or more opponent checkers is blocked. Once all your checkers are in the last quarter of the board you can start bearing them off, and the first player to bear off all 15 wins. The PHP game engine checks every one of these rules before a move is accepted, decides who plays first with an opening roll, ends the turn automatically when no moves are left and declares the winner.

More projects

The Forbidden Papyrus
The Forbidden Papyrus

A 3D dungeon crawler made in Unity: explore the cave, talk to its strange residents, avoid enemies and escape with the Papyrus.

Cinema Management System
Cinema Management System

A desktop application for running a cinema: movies and screenings, seat booking, cashier sales and user management.

Velora
Velora

A concept online store for a modern fashion boutique, with a shop, product pages, cart and checkout.

Aelia
Aelia

A one-page website for a nail studio in Athens, with services, prices, team and online contact.