♟ Othello: AI Strategy Game

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: