Create Your First Project
Start adding your projects to your portfolio. Click on "Manage Projects" to get started
Ninja 2
Download
Genre / Platform
Asian-inspired First-Person Shooter | PC
Engine & Language
Unreal Engine 5 | C++ (Raw implementation)
Role
Sole Programmer & Game Designer
Key Systems Built
Modular AI Controller, Custom State Machine, Weapon Handling System.
Ninja 2 is an Asian-inspired First-Person Shooter (FPS) developed as a student project using Unreal Engine. This project focuses on using raw C++ implementation over the built-in Blueprints visual scripting. The core technical achievement is a custom-built Finite State Machine (FSM) designed to manage complex AI lifecycles. This system handles dynamic state transitions and the decision-making logic for multiple concurrent enemies, allowing for distinct behavioral states such as patrolling, tracking, and engaging the player. This project serves as a demonstration of scalable C++ architecture and efficient enemy management in a real-time environment using Unreal Engine 5.
Implementation: I used an Abstract State Class and State Transitions to manage enemy behavior. This allowed each state (Patrol, Search, Attack) to be its own object, keeping the code clean and adhering to the Single Responsibility Principle.
Scalable Architecture: By using a C++ FSM instead of Blueprints, I reduced visual clutter and created a template that allows new enemy types to be added with minimal code duplication.
The dynamic transition logic resulted in enemies that feel more "intelligent," significantly increasing player engagement by forcing players to use stealth and movement to break enemy tracking.















