Bomberman
Classic Arcade Game Remake
JavaGradle
Description
Developed in a team of 4, this project was a deep dive into Software Engineering concepts. We reconstructed the gameplay of Bomberman to practice applying strict Object-Oriented Programming (OOP) principles. The goal was to engineer a scalable codebase where game entities (players, enemies, bombs) interact seamlessly.
Key Achievements
- Design Patterns Implementation: Applied various architectural patterns (such as Factory for entity creation, Singleton for the game engine, or Strategy for enemy movements) to decouple the game logic from the user interface.
- AI & Game Logic: Programmed autonomous enemy behaviors (AI) and grid-based collision algorithms. The system handles real-time interactions between dynamic objects (explosions, destructible walls) and characters.
- Extensible Power-up System: Designed a polymorphic bonus system allowing players to upgrade capabilities (Invincibility, Extra Life, Bomb Capacity). This modular structure makes it easy to add new types of bonuses without breaking existing code.
- Build Automation: Integrated Gradle for dependency management and automated builds, facilitating smooth collaboration and version control within the team.


