♟ Othello: AI Strategy Game

Othelle picture

A modern take on the classic strategy board game, powered by artificial intelligence.


🎯 Project Overview

This project involved building a fully functional Othello game, integrating AI algorithms with a user-friendly JavaFX GUI. The core objective was to implement intelligent computer players using game theory algorithms and seamlessly connect them with the GUI for interactive gameplay.


🔧 Tech Stack

  • Java, JavaFX for GUI
  • Minimax and Alpha-Beta Pruning algorithms for AI
  • MVC design pattern (initially Strategy Pattern, but evolved)
  • CSS and FXML for enhanced GUI

🎮 Key Features

  • Interactive UI with:
  • Legal move hints;
  • Time Remaining feature
  • Clean visual design with a calming “deep green” color scheme
  • Responsive board

🤖 AI Strategy

The AI employs the Minimax algorithm to evaluate board states and select optimal moves. Alpha-Beta pruning is used to reduce computation and improve efficiency. The project also explored Monte Carlo Tree Search (MCTS) and a Custom (Randomized Negamax) algorithm.


🎨 GUI Enhancements

The GUI was significantly enhanced using CSS for styling (colors, fonts, spacing) and FXML for layout. This allowed for a separation of UI design from game logic. A “Time Remaining” feature was added to increase the game’s strategic depth.


🧪 Testing

Testing was conducted throughout the development process, including mocking the game and comparing it with online Othello games.


🔗 GitHub Repository

Explore the source code and documentation for the Othello Game:

👉 View on GitHub

🎥 Demo Video

Here’s a quick walkthrough of the Othello Game: