SporeFall Logo

SporeFall is a third person co-op wave defense game, with a playful theme. Players control robots that fight against fungal invaders as they escort payloads that will ultimately stop said invaders.

The game’s core mechanic combines fast-paced shooting action with tactical defense building, requiring players to carefully balance offense and defense as they progress through increasingly challenging waves of enemies.

Project Goal

Our goal is to create a seamless blend of third-person action shooting and the strategic depth of a wave defense game — all set in a fun, lighthearted atmosphere. We aim to deliver fast-paced gameplay that rewards both quick reflexes and thoughtful planning.

How To Play

Keyboard and Gamepad Compatible

The game fully supports both keyboard/mouse and gamepad controls, allowing players to choose their preferred setup for maximum comfort and accessibility.

Keyboard & Mouse

Use WASD to move your character

Your Mouse to aim.

Press Left Click to shoot

B to enter Build Mode.

Gamepad

Move using the left stick

Aim with the right stick.

Use the right trigger to shoot

Press the circle/B button to build, depending on your controller.

With the number of systems in place, we also created an in-game tutorial to guide new players through the mechanics and help them get comfortable quickly.

Creating The Player Experience

Sporefall Shooter Gameplay

Player Controller

I created a custom character controller that allows the player to walk, aim, and shoot in a responsive and fluid manner.

Sporefall Shooter Gameplay

Local Co-op

I implemented local co-op functionality, allowing a second player to seamlessly join the action with the press of a button — doubling the fun and teamwork.

Sporefall Shooter Gameplay

Animations

I implemented our artist’s animations into the character, integrating them seamlessly with the movement and combat systems to ensure smooth and immersive gameplay.

Enemy Variety

All enemy types are built on a shared base class, allowing for flexible behavior through value adjustments and subclassing. This setup makes it easy to expand enemy variety while keeping the codebase maintainable.

Sporefall AI

Targeting

Enemies react differently depending on their target, adding depth and unpredictability to encounters.

Sporefall AI

Attacking

Each enemy features its own unique attack, complete with a matching animation.

Optimization

With a lot of moving parts proper optimization quickly became a necessity. So I created and object pooling system for all our spawnables.

Sporefall Pool

Pooling System

Objects are enabled and disabled as needed, they are initially loaded at the start.

Enemies, VFX, Projectiles, buildables are all a part of the pooling system.

Sporefall Pool

Occlusion Culling

I integrated occlusion culling to improve runtime performance by ensuring that only visible objects are rendered, reducing unnecessary processing and boosting frame rates.

Accessibility

When creating my scripts and systems, I prioritized usability so that non-programmers on our team could work with them easily.

Sporefall Pool

Scriptable Objects

Enemy attacks were built using ScriptableObjects, allowing designers to adjust values and mix different behaviors without writing code — making the system both flexible and designer-friendly.

More Projects

Learn About Me

About Me

Socials