-
-
GIF
Checklist complete, the player reaches the truck and escapes the outbreak.
-
GIF
Scavenge the quarantine zone. Glowing pickups mark weapons and CDC emergency supplies on your checklist.
-
GIF
The extraction truck’s lights cut through the fog. Get all six supplies before you make a run for it.
-
GIF
A cured zombie stands frozen and tinted green: one vaccine dart takes it out of the horde for good.
-
GIF
Chokepoints matter: a narrow, lit corridor funnels the horde straight toward you.
-
GIF
Non-lethal only: cure zombies with vaccine darts and keep moving. Two hits and you’re infected.
Inspiration
The core idea for Spore Protocol was born from wanting to flip traditional survival horror and round-based zombie mechanics completely upside down. Instead of giving the player an arsenal to mow down the horde, we wanted to create a tense, non-lethal loop where the infected are both the threat and the tool. The inspiration was to use a "cure" mechanic—firing the pistol doesn't kill the zombies; it freezes them in place. This transforms enemies into physical roadblocks, allowing players to manipulate the horde's pathing, plug up choke points, and carve out safe traversal routes through the fog to scavenge supplies.
How We Built It
We built Spore Protocol entirely in Unreal Engine 5 using Blueprint visual scripting. The level was designed with spatial readability in mind, utilizing dense terrain and impassable tree clusters to create looping trench pathways. Because the AI relies on constant AI MoveTo logic without complex sight/sound perception, these narrow pathways naturally funnel the horde, maximizing the utility of the freeze mechanic.
The game loop centers on a HUD bound to the player's inventory state, tracking six specific CDC items (Water, Food, First Aid, Radio, Flashlight, Documents) via direct casting for optimal performance. The extraction sequence is governed by a unified boolean logic check acting as an AND gate when the player enters the extraction trigger volume:
$$W = \bigwedge_{i=1}^{6} I_i$$
Where $W$ is the win state and $I$ represents the collection of the six required supplies. Once validated, the blueprint immediately hides the player character and uses a Set View Target with Blend node to snap the perspective to a CineCamera positioned directly behind the Humvee. It then instantly deploys the final Win Screen UI to the viewport to lock in the victory.
Challenges We Faced
The biggest hurdle was engineering the extraction sequence within the strict time limits of the hackathon. Initially, we wanted to build a complex timeline animation with a full cinematic drive-off for the vehicle. However, managing the player controller, camera transitions, and potential mesh clipping proved too costly for our remaining time. To solve this, we had to aggressively scope down the sequence. We realized that a sudden, clean camera cut to a static shot of the Humvee, paired with hiding the player mesh and popping up the Win Screen, delivered the exact same sense of finality without risking game-breaking animation bugs right before submission.
What We Learned
This project reinforced the absolute necessity of scoping and the power of "smoke and mirrors" in rapid game development. We learned that a clean, simple transition is always better than a broken, complex one. We also deepened our understanding of UE5's camera blending systems, specifically how to properly pass Actor references to cleanly hijack the player's screen using CineCameras. Finally, we learned that level design—specifically using negative space and terrain to funnel AI—can be just as effective as programming complex enemy perception behaviors when racing against the clock.
Log in or sign up for Devpost to join the conversation.