SimSea: 2D Underwater Action Game

Muhammad Zubair
Muhammad Zubair
• Case Study

🌊 SimSea: 2D Action Shooter

SimSea is a 2D underwater action shooter built entirely from scratch using Vanilla JavaScript and HTML5 Canvas. It features smooth sprite-sheet animations, particle effects, and a dynamic difficulty system.

To make the game accessible to mobile users, I also packaged the web engine into a native Android APK using Android WebView and Kotlin.

🎮 Play the Game

Want to see the code in action? You can play the full game directly on my portfolio! 👉 Click here to play SimSea

🛠 Technical Architecture

Instead of relying on heavy game engines like Unity or Godot, I built the core game loop from scratch to demonstrate a deep understanding of JavaScript performance and rendering.

  • Rendering Engine: HTML5 <canvas> with Vanilla JavaScript.
  • Animation: Custom spritesheet parsing for fluid enemy and player movements.
  • Physics & Combat: Custom projectile math, collision detection, and particle explosions.
  • Mobile Integration: Packaged into an Android APK using Kotlin and WebView, complete with on-screen touch controls.

⚡ Game Features & Mechanics

  • Smooth 60FPS Rendering: Optimized canvas drawing to prevent memory leaks.
  • Multiple Game Modes: Includes a "Normal Mode" with timed stages and a "Difficult Mode" featuring a health system, faster enemies, and suicide attackers.
  • Power-ups & Progression: Dynamic item drops and level scaling to keep players engaged.
  • Cross-Platform Controls: Full support for Desktop (Keyboard) and Mobile (Touch UI).

🚀 Future Roadmap

The architecture is designed to be scalable. Future updates will include Boss Battles, a persistent Save System using LocalStorage, and a full Google Play Store release.