Fox in Jungle hero

Metroidvania Inspired Game

Tools Unity
Time April 2025
Genre Platform

Player Mechanics

A 2D action system with shield protection, basic movement, and different attack mechanics like close-range, projectile, and AoE skills with synchronized animations.

Shield mechanic

Protection Mechanic

Shield

Prevents the player from taking damage when active.

Jump and Dash

Movement Mechanic

Jump and Dash

Shares the same animation and supports double-jump for extra airtime.

Skill look up

Combat Mechanic

Skill Look Up

A charged attack that launches a vertical projectile while the player holds a “look up” pose.

Skill look up

Normal Attack Mechanic

Close Range Attack

Spawns a Box Collider beneath the player on attack to detect and damage enemies, using tags to differentiate between player attacks and enemy colliders.

Skill look up

Skill 1 Mechanic

Launches a Straight Projectile

A one-time shot attack that disappears upon colliding with an enemy.

Skill look up

Skill 2 Mechanic

AoE Attack That Damages Multiple Enemies

Used DOTween plugin to animate the star projectiles with auto synchronizing 2D Box Colliders with the attack's active frames. The system spawns multiple stars in sequence with delays.

Enemy Mechanics

Implemented an enum-based system with customizable patrol paths and four states (Patrol / Chase / Attack / Idle), all inheriting from a shared enemy base for consistent behaviour.

Enemy waypoints

Patrolling Behaviour

Left, Centre & Right Waypoints

Enemies patrol between configurable waypoints while respecting movement bounds and turn-back logic.

Enemy prefab

Reusable Setup

Enemy Prefab

All enemies are instances of a base prefab that centralises stats, animations, and behaviour flags.

Enemy stats

Enemy States

Chase & Attack Logic

State machine drives patrol, chase, attack, and idle transitions using distance thresholds and timers.

Animation System

Used Blend Trees, Animator State Machines, and Unity Events to synchronize player and enemy actions with precise animation timing.

Player blend tree

Blend Tree

Player State Machine

Smoothly blends idle, walk, run, and airborne animations based on movement input.

Enemy state machine

State Machine

Enemy State Logic

Controls transitions between patrol, chase, attack, and hit-stun states using parameters.

Animation events

Animation Events

Player & Enemy

Uses events for attack hit frames, projectile spawn timing, and camera shake triggers.

Cinemachine Camera

Replaced Unity’s default camera with Cinemachine to create smoother tracking, predictive movement and reduced jitter.

Camera offset

Tracked Object Offset

Framing

Offsets the follow target so the player has more space in the direction they are moving.

Lookahead

Lookahead Time

Predictive View

Uses lookahead to shift the camera slightly in front of the player for better visibility.

Dead zone

Dead Zone

Motion Smoothing

Reduces camera jitter by allowing small player movement without immediately shifting the view.

UI & Scene Management

Designed a UI system with a main menu, settings panel, sliders, and health bars controlled through scripts and events.

Main menu

Main Menu

Scene Manager

Handles scene loading, restart, and quit options from a simple main menu interface.

Settings and sliders

Settings & Sliders

Audio & UI Control

Uses sliders to adjust BGM / SFX volumes in real time and saves values using PlayerPrefs.

Health bar

Health Bars

Player & Enemies

HP bars update based on damage events, with colour and fill changes to show low health.