Z-Room , Zombie Survival Game
A Unity-based survival game built using C# and object-oriented programming principles to simulate intelligent enemy behaviour, scalable systems, and real-time gameplay.

Overview
Z-Room is a 3D zombie survival game developed in Unity, created to apply C# object-oriented programming in a real-time gameplay setting.
The project combines enemy AI, wave-based progression, weapons, health and ammo systems, loot drops, and scoreboard logic into one survival loop designed to feel playable and structurally maintainable.
It became a strong exercise in building gameplay features as reusable systems rather than isolated scripts.
Project focus
Role
Game Developer / Systems Programmer / Gameplay Designer
Responsibilities
Gameplay systems, AI behaviour, combat logic, UI flow, scoring and progression design
Type
Unity project / C# gameplay systems prototype
Constraints
Needed to balance playable combat, reusable code structure, and performance-aware real-time behaviour
Outcome
A playable survival game demonstrating modular C# systems and gameplay logic
Constraints
Problem
The goal was to build a fully playable survival game that demonstrated engineering logic and interactive design thinking. Z-Room was a vehicle to showcase how C# OOP can manage complex systems such as AI, physics, and player feedback within a fast-paced game environment.
Design & Process
1. Core Architecture (OOP Structure)
- Designed modular C# classes for Player, Enemy, Spawner, and GameManager.
- Applied encapsulation, inheritance, and polymorphism to manage behaviours efficiently.
- Created reusable interfaces for shared functionality like health, damage, and state transitions.
2. Gameplay Mechanics
- Built smooth first-person movement and shooting systems in C#.
- Implemented a dynamic wave system that scales enemy count and difficulty.
- GameManager tracks player health, score, and wave progression.
3. Enemy AI
- Integrated Unity NavMesh for intelligent pathfinding and pursuit behaviour.
- Built AI states (Idle, Chase, Attack, Dead) using switch logic and event-driven triggers.
- Added ragdoll activation and slow-motion effects on enemy death for immersion.
4. UI & Feedback Systems
- Designed all UI elements and menus, main menu, loading screen, instructions, pause menu, and scoreboard, in Canva, then implemented them in Unity's UI system.
- Developed an in-game scoreboard, health bar, and wave counter.
- Implemented screen fade transitions and post-processing for deaths and wave starts.
5. Optimisation & Testing
- Implemented object pooling to avoid unnecessary instantiation.
- Profiled performance to minimise physics overhead in large waves.
- Tested AI navigation across varied arena layouts to ensure pathfinding robustness.
Gameplay & Systems Highlights









Source Code & Demo
Source Code
Explore the complete Unity project, including C# scripts, prefabs, and sample scenes. Clone the repo to build or extend the game locally.
Solution
The final build delivers a fully playable survival game where players face continuous AI-driven waves in an immersive 3D environment. By structuring the codebase with OOP principles, Z-Room demonstrates how modular design improves gameplay scalability, performance, and clarity of system responsibilities.
Outcome
- Strengthened proficiency in C# programming and Unity development.
- Applied object-oriented design to manage complex behaviours and interactions.
- Improved understanding of AI systems, performance optimisation, and game architecture.
- Reinforced the ability to combine creativity, logic, and software design thinking in interactive experiences.
Project Details
Game Developer / AI Programmer
Personal Project (December 2024 - February 2025)
Unity, C#, Blender, Canva
Object-Oriented Programming, AI Systems, Game Logic, Physics Simulation