
Colossal
Is a Titanfall meets Halo; multiplayer first person arena movement shooter with giant pilotable mechs!
What is Colossal?
Think Titanfall meets Halo. It’s an arena shooter built for speed—wall-runs, slides, and grapples aren’t just for style points; they’re how you fight for map control, rotate to new positions, and contest powerful item spawns. Then the pacing pivots: call in a mech that plays more like a hero shooter, with a defined kit, healing/reviving gameplay loops, and pseudo-objectives that reward positioning and calculated pushes. Pilots deliver a speed-power fantasy; mechs deliver a scale fantasy. That back-and-forth constantly changing style of play is the core that makes this game stand out.
Why an arena shooter? Because pre-match customization narrows the player’s decision space; arena design explodes it. In Colossal, weapons and even pilot abilities are lootable, limited-use items found in the match, so you’re constantly adapting to what you can secure and where you can secure it. Loadout customization locks players into their comfort zones; arenas make you adapt. In Colossal, the map is your kit—guns and even pilot abilities are limited-use pickups. That on-map economy pairs perfectly with high mobility (race, route, rotate) and with hero-style mechs that turn openings into tactical power plays. Variety every life = replayability.
Built in the Unity 3D Engine
Programmed in C# using Visual Studio
3D Models created using Blender
Sprites hand drawn in Adobe Photoshop
Technologies Used
Photon PUN 2 (Multiplayer Networking Solution)
Various low poly art assets by Synty Studios
Mech Pack
Nature Pack
Sci Fi City Pack
FPS Animation Framework - KINEMATION
Third Party Assets Used
Jump To Section
Design & Gameplay
Code
Design Goals
Fluid, Skill-Based Movement: The movement system is designed to reward player skill, with mechanics like wallrunning and bunnyhopping that are easy to use but hard to master.
Dynamic, Engaging Combat: By combining arena shooter elements with power-up pickups and loot drops, I want to create fast-paced, engaging battles that encourage exploration, strategic positioning, and constant action.
Team-Oriented Gameplay: The down state and revival system encourages teamwork, ensuring that every player’s role is meaningful while allowing for strategic comebacks.
Aggressive Play with Tactical Depth: Every game mechanic—from movement to combat to loot pickups—is designed to promote aggressive play while providing the tactical / Mechanical depth necessary to keep the game interesting for both casual and competitive players.
Fun Gameplay: Fundamentally, the game needs to be fun. To emphasize this goal, I’m incorporating systems like the “Lootsplosion” from Borderlands. When a player dies, their weapons, items, and abilities explode outward onto the ground, creating colorful, glowing loot drops. This not only rewards players with valuable items but also makes the death of a player feel impactful—players become their own loot box. This design adds an element of excitement and keeps the action moving, as players scramble to gather dropped gear and power-ups, reinforcing a fun, chaotic gameplay loop.
Why I Started This Project
I got into game development because no modern FPS titles were scratching my movement shooter itch. Tired of the same-old options, I decided to create my own. My journey started with a passion for building content in other people’s games—whether making levels in Little Big Planet, crafting Minecraft hub worlds, or modding levels for Titanfall 2. With this background love for creation, game development felt like a natural next step. Little did I know, it would lead me down a rewarding rabbit hole. After almost 5 years of various projects, I finally felt ready to create my own movement shooter—and that's how Colossal was born. Drawing inspiration from my favorite franchises like Titanfall and Halo, I’m putting my own spin on the genre to create a fast-paced, dynamic arena shooter.
Project Breakdown
Advanced Momentum-Based Movement
Wallrunning, Sliding, and Bunnyhopping for fluid movement.
Quality-of-Life Features like Coyote Time and Jump Buffering to smooth out advanced maneuvers.
Arena Shooter-Inspired Combat
Dynamic Level Elements to keep gameplay fresh / Unique between levels and encourage different strategies.
Item and Power Weapon Pickups that reward exploration and strategic combat.
Hero Shooter-Inspired Mechanics
Mechs with class-based loadouts, adding variety to gameplay.
Down State System where teammates can revive each other, adding depth to team dynamics.
Movement System Design
The movement system prioritizes fluid, fast-paced gameplay that rewards player skill and adaptability.
Pilot Movement: Inspired by games like Titanfall and Apex Legends, the pilot features classic mechanics like wallrunning, sprinting, sliding, and jumping. The system is tuned for fluid transitions, with features like coyote time and jump buffering to help players execute advanced moves even with imperfect timing. The goal is to be easy to play but hard to master, allowing for responsive, skill-based actions.
Mech Movement: Mechs focus on heavy mobility with sliding and mantling, but lack wallrunning and jumping, making them slower and more grounded. This creates a distinct contrast between pilot and mech movement, allowing for quick role transitions based on the situation.
Design Goals
The movement system encourages aggressive play, promoting fluidity and environmental interaction whether players are on foot or in a mech, allowing for seamless transitions between the two and rewarding skillful navigation of the battlefield.
Weapon, Item, and Ability Pickup System
The pickup system enhances the fast-paced, action-oriented gameplay of arena shooters, adding layers of strategy and dynamic combat.
Weapons: A mix of projectile, hitscan, and melee options, each with unique range, damage, and fire rate. Limited ammo forces players to cycle weapons, encouraging varied combat strategies and adaptability.
Items: Limited pickups like health packs and power-ups offer quick recoveries or temporary buffs. Their scarcity creates tension, encouraging players to make strategic decisions on when and where to use them.
Abilities: Power-ups like speed boosts, deployable shields, and damage boosts enhance movement and offense. Strategically placed, they promote aggressive play, encouraging players to take risks for high-reward boosts.
Design Goals
The system fosters tactical decision-making and aggressive play, with pickups acting as incentives for players to move, adapt, and fight for mechanical advantages, preventing passive gameplay and encouraging constant engagement.
Mechs
Mech Design Overview
The mech combines powerful cinematic combat with tactical decision-making, encouraging aggressive play and team coordination. Mechs are walking tanks that demand respect from enemies and rally allies to follow. The powerhouse war-machines are made up of unique chassis akin to a Hero Shooter (ex; Overwatch or Apex Legends characters) where players pick from a set of existing mech designs each with their own unique weapons and abilities.
Additionally; mechs interact with items in the environment and one another in interesting ways.
Upgrade Cores: Power-ups unlocked by holding key zones, granting short-term buffs like increased damage or speed. This system promotes map control, team coordination, and dynamic combat.
Titan Healing Cells: Consumable items that restore health at the cost of vulnerability. Their use rewards strategic positioning and timing, discouraging passive play and promoting active sustain between fights.
Downed State & Revival: Mechs can be revived by teammates if downed, adding a layer of teamwork and giving players a chance for comebacks. This promotes aggressive support and strategic risk-taking.
Design Goals
These systems act as mini objectives; which encourage constant aggression, tactical positioning, and resource management, ensuring that players stay engaged and always have meaningful decisions to make during gameplay. When a team plays too passively their enemies might make a push for an upgrade core, which heavily encourages the passive team to contest. If a player is damaged and healing or reviving an ally, it presents an opportunity for his opponents to make an aggressive play to punish or stop the heal/ revive.
Design Challenges
Having players control characters this large presents a number of issues with standard FPS design. For example every map effectively needs to be thought of as 2 maps in 1. You have the large scale which accommodates mechs built of open lanes, large cover pieces, and interesting vertical elements and you have the small scale pilot side of the map. Which is built of regions inaccessible by mechs; buildings, tunnels, foliage, tight natural terrain paths, etc… Additionally mechs need to feel powerful but fair. Pilots should still be able to contest mechs and act as a pest without being completely shut down. This dynamic is the reason for our pilots high mobility, without it they would never stand a chance against a mech; with it they can survive.

Code
Weapon System Overview
My weapon system uses a data driven approach; utilizing Unity’s scriptable objects to store unique weapon definitions and a custom weapon factory pipeline to compile weapon behavior at runtime. Additionally I took advantage of various programming design patterns for this system such as the Factory Pattern, Strategy Pattern, Decorator Pattern, and State Machine Pattern.
Weapon Definition Stores plain language weapon stats such as
Name, damage, fire rate, projectile count, magazine size…
Behaviors: Everything any weapon in the game can do is defined in an interface based set of distinct behaviors. These behaviors can stack on top of eachother to create complex blends of weapon behavior
Weapon Factory: Takes in definitions and decides which behaviors to use for the new weapon.
Weapon State Machine: Handles runtime control of weapons with simple states such as “Idle”, “Active” and “Reload”.
Design Goals
This system allows for new diverse complex weapons to be added easily and since this system creates weapon behavior during runtime; it opens up the future possibility for weapons which change their behaviors during runtime based on for example power ups or abilities.
Weapon Factory
The weapon factory holds create methods for each type of behavior within the weapon system. Including the primary fire behavior (left click) alt fire behavior (right click) and reload behavior. Each is defined independently of one another with their own stack’s of interface based behavior implementations.
When a weapon is created it passes in its definition to the WeaponBehaviorFactory to have its behavior’s decided for it.
For larger code snippets see my GitHub Repo
Behaviors
Each hold the implementation behind each type of behavior a weapon can use. These hold an “inner” reference to another IWeaponFireBehavior to allow for the creations of stacks of behavior; where each layer can perform its functionality before calling it’s inner behavior.