Course: Introduction to Computer Programming Apr 2024 – May 2024
Overview
Engineered a modular 2048 game engine in Java Swing, supporting dual gameplay modes (Classic Powers of 2 & Custom Powers of 3) via an extensible OOP architecture to handle complex grid logic and merging rules.
Key Highlights
- Core Game Engine & Architecture: Engineered a modular 2048 game engine in Java Swing, supporting dual gameplay modes (Classic Powers of 2 & Custom Powers of 3) via an extensible OOP architecture to handle complex grid logic and merging rules.
- Monte Carlo AI Solver: Implemented an autonomous AI agent using Monte Carlo simulation algorithms (up to 1k iterations per decision step) to predict optimal moves to maximize scoring, enabling intelligent auto-play functionality.
- Data Security & Integrity: Designed a secure local user management system featuring Base64 encryption for sensitive credentials and automated MD5 checksum verification to strictly prevent save-file tampering and ensure leaderboard validity.
- Interactive Features & UI: Developed a rich graphical interface with dynamic themes (Ocean, Flame, Forest), background music integration, and advanced gameplay mechanics including “Hammer” props and infinite Undo history.
Technologies Used
- Language: Java
- GUI Framework: Java Swing
- Algorithms: Monte Carlo Tree Search, MD5 Hashing, Base64 Encoding
- Architecture Pattern: Model-View-Controller (MVC)
Gallery
Start Page
Game Pannel
Monte Carlo based AI feature