Project: 4-Player 2D COD Zombies
Overview:
Inspired by the Call of Duty Zombies experience, this 2D top-down co-op game pits up to 4 local players against endless waves of undead. Players work together to survive by purchasing weapons, collecting upgrades, and reviving fallen teammates—all while navigating a pixel-art labyrinth of deadly corridors.
Key Features:
Local multiplayer support for up to 4 players using Unity’s new Input System
Classic COD Zombies mechanics: weapon purchases, perks, coins, and wave progression
Individual UI elements for player weapons & ammo, perks and health
Multiple weapon types with upgrade support (melee, ranged)
Modular buy system using interfaces and scriptable objects
Implemented a scalable round system with dynamic difficulty and special wave types to enhance gameplay variety.
Time Frame: 4 weeks
Summary of Responsibilities:
My Responsibilities (Solo Developer)
As the solo developer on this project, I designed and implemented all core gameplay mechanics, systems architecture, and multiplayer functionality, excluding the artwork. This game replicates the fast-paced, cooperative experience of classic COD Zombies in a 2D pixel-art format. Key responsibilities included:
Local Multiplayer & Input Handling
Integrated Unity’s new Input System to support up to 4 simultaneous local players
Assigned individual control schemes and UI elements per player for independent gameplay
Handled player spawning, death, and revival mechanics to support full co-op functionality
Inventory, Weapons & Upgrades
Developed a modular inventory system using ScriptableObjects for weapon and upgrade data
Created buyable items using interface-driven logic to handle purchases and cost validation
Implemented support for different weapon types (melee, gun, explosive) with distinct behaviors
Designed upgrade collection and stacking system, with UI and gameplay effects
Combat & Player Management
Built a responsive top-down movement and animation system based on player states
Developed attack logic and weapon switching per player, including ammo and magazine tracking
Managed individual player health, death, and revival events across multiplayer sessions
User Interface & Feedback
Created dynamic player-specific UI panels showing coins, weapons & ammo, perks and health
Implemented interaction prompts, and visual feedback for game events
Ensured UI clarity in a shared screen multiplayer environment
Designed and implemented a flexible wave-based enemy spawning system using ScriptableObjects for easy configuration.
Controls regular and special rounds with dynamic enemy setups and boss logic
Activates spawn points based on player distance to ensure fair and engaging encounters
Automatically scales difficulty by adjusting spawn rate, count, and pacing
Built as a singleton for global access and easy integration across scenes
Ideal for showcasing round-based gameplay and scalable encounter systems in action.
Built a responsive, local multiplayer-ready player controller for a top-down 2D co-op Zombies game using Unity’s new Input System.
Supports analog movement input and sprint toggling via InputActionReferences, enabling plug-and-play multiplayer compatibility
Implements fluid 8-direction movement with dynamic walk/run speed switching and full animation state control
Real-time sprite flipping based on player direction for intuitive feedback
Integrates clean movement-state logic (standing, walking, running, dead) to drive animation and speed states
Seamless interaction with health system - triggers death animation and movement lockout on player down
Built a modular weapon system using a clean, inheritance-based architecture with ScriptableObject-driven configuration.
Supports multiple weapon types (melee, ranged, AoE) via a shared WeaponBase class and extensible subclasses like Gun
Dynamic stat handling (damage, fire rate, knockback, etc.) with upgrade integration (e.g. reload speed, attack rate)
Responsive ammo, cooldown, and reload systems with real-time UI updates and visual/audio feedback
Fully integrated with inventory, player state (e.g. death), and upgrade systems for seamless gameplay scaling
Designed to be easily extendable, making it ideal for content-rich, co-op gameplay.