šŸ’ Angry Monkey - 2D Tower Defense Game

Angry Monkey is a fast-paced 2D puzzle-arcade tower defense game built in Unity, where players strategically deploy monkeys to defend against waves of enemy balloons. With a blend of unique enemy types, advanced tower mechanics, and a modern Unity architecture, the game offers a tactical challenge and rewarding progression system.

šŸ”¹ Game Highlights

  • Strategic Monkey Placement: Players position monkeys along predefined balloon paths to maximize efficiency and coverage.
  • Unique Monkey Types: Includes Sniper Monkey, Ninja Monkey, and Sharp Monkey, each with custom behaviors and attack strategies.
  • Diverse Balloon Enemies: Red, Blue, Metal, Camo, and Boss balloons each offer different health pools, resistances, and surprises.
  • Balloon Splitting Mechanic: Popped balloons may spawn smaller ones, adding increasing pressure and complexity.
  • Path-Following System: Balloons follow fixed spline paths, requiring foresight in defense strategy and monkey upgrades.
  • Health & Coin Economy: Players lose health when balloons escape and earn coins by popping them—used for deploying and upgrading monkeys.
  • Level Unlocking System: Completing a level unlocks the next. Progress is persistently saved using PlayerPrefs.
  • Audio & Feedback: Popping sounds, damage cues, and music bring satisfying feedback and immersion to each round.

šŸ’” Key Learnings & Architecture

  • Scriptable Objects: Extensively used to define monkeys, balloons, and level data—enabling modularity and clean data separation.
  • Service Locator Pattern: Replaced Singleton patterns with a service locator to decouple systems and improve maintainability/testability.
  • Custom INIT() System: Unified initialization method for cross-service setup, enabling flexible startup sequences and dependency injection.
  • Persistent Game Progress: Leveraged PlayerPrefs for storing unlock data and player advancement efficiently.
  • Performance Optimization: Identified bottlenecks and began integrating object pooling and lightweight rendering techniques for smoother runtime performance.

🧠 Development Focus Areas

  • Implementing modular and reusable Unity game architecture.
  • Designing scalable enemy wave systems and path-following logic.
  • Balancing gameplay strategy with escalating challenge and replayability.
  • Profiling runtime performance and implementing optimizations.
  • Creating engaging game feel with audio, visual effects, and responsive systems.

šŸ“¬ Let’s Connect

Love game architecture, gameplay design, or talking design patterns in Unity or C++? I’d love to connect, collaborate, and hear your feedback or game dev stories!

StatusReleased
PlatformsHTML5
AuthorSayanNandi
GenreStrategy
Made withUnity

Leave a comment

Log in with itch.io to leave a comment.