The Last Penguin: Yeti Siege
~/A top-down shooter desktop game built entirely in Java with MVP architecture, featuring a hybrid SQLite/MySQL database for local and global leaderboard competition.
Backend services may be temporarily sleeping or unavailable. Refer to the demo video if you encounter loading or connection issues.

Context & Problem
The Challenge
Creating an engaging game experience requires balancing multiple complex systems — real-time rendering, collision detection, state management, and data persistence — all while maintaining clean, maintainable code architecture that doesn't collapse under growing complexity.
The Solution
The Last Penguin solves this through a strict Model-View-Presenter (MVP) pattern that cleanly separates game logic, data management, and rendering. A hybrid database system (SQLite local + MySQL global) enables both offline play and competitive online leaderboards, while a modular asset loading system keeps the codebase scalable.
Visual Showcase
















The Logic
Complete game flow covering application startup, menu navigation, game setup, game loop, input handling, skill system, enemy AI, game over, leaderboard, and settings.
Startup & Inisialisasi Aplikasi
Architecture & Tech Stack
Tech Stack Used
Key Takeaways
Building a complete game from scratch in Java taught me the importance of architectural patterns in complex applications. The MVP pattern kept the codebase manageable as features grew, and implementing a hybrid database system gave me practical experience in designing systems that work both online and offline.
People Behind the Project
Muhammad 'Azmi Salam
Game Developer


