Skip to content

okbach/minesweeper

Repository files navigation

Minesweeper Game in Delphi FMX

1 This project is a modern implementation of the classic Minesweeper game, built using Delphi FireMonkey (FMX). It was developed with a strong focus on clean code, responsiveness, and user experience.

✨ Features 🔍 Separation of Concerns: The game logic is fully separated from the UI. All calculations and game rules are handled in a dedicated module, while the UI layer is responsible only for rendering and user interaction.

🎨 Clean and Organized Code: The codebase follows clear naming conventions, modular structure, and is easy to understand and extend. This allows for easier maintenance and future enhancements.

🎞️ Smooth Animations: Visual effects and transitions were added to make the game more enjoyable and dynamic. Tile reveals, explosions, and victory effects are all enhanced with fluid animations.

🔊 Sound Effects: Audio feedback is included for actions like revealing tiles, hitting a mine, and winning the game, providing a more immersive experience.

🚀 Tools and Technologies Delphi FMX (FireMonkey) – cross-platform framework for building rich desktop and mobile apps

Object Pascal – the primary programming language

TGlyph and TAnimation – used to enhance the UI and interactivity

Custom Game Engine – logic handled independently from UI for better maintainability

💡 Project Goals Create a fun and interactive version of Minesweeper

Learn and apply software design principles (like MVC)

Practice animation and audio integration in Delphi

Deliver a polished, user-friendly interface

Features todo

🚀 Android-ready: The engine can be integrated into an Android app with minimal effort, and supports Play Store deployment.

🧩 Customizable board sizes: Easily configure board dimensions (width × height × mines).

🎨 Multiple themes: Light, dark, and custom color themes.

🛠️ Highly modular: Designed to be extended or customized for different rules (e.g., hexagonal minesweeper, custom difficulty).

🙌 Support the Project If you enjoy the game and would like to support future development, donations are welcome:

Bitcoin (BTC): 1Fz14qx8UNpPQuCUuzyFWdj1hvPr5XSZ8k

USDT / BNB (BEP20): 0x7c5980ef22dca9d392e8aa8b4aeacf44b2dd6bc7

Thank you for your support! 💛

Capture 1 1