🧟 Project Story - Reddit Survivors 💡 Inspiration
The idea hit me during a late-night Reddit scroll session when I stumbled across r/zombies and r/preppers back-to-back. I thought: “What if the zombie apocalypse actually happened on Reddit?” The platform’s chaotic energy, karma system, and diverse communities felt like the perfect foundation for a survival game.
Reddit’s culture is already about surviving drama, collecting upvotes, and navigating different communities with their own rules. Why not turn that into an actual survival mechanic? The karma system became the obvious choice for currency after all, Redditors already treat it like their lifeline. Plus, the idea of scavenging resources from r/cooking while avoiding trolls from r/drama just felt right.
🧰 What It Does
Reddit Survivors is a turn-based tactical survival game where you play as u/RedditSurvivor, fighting through a zombie-infested Reddit landscape. Each turn, you get two actions move, attack, or heal. The twist? Everything revolves around karma.
The game uses a dynamic grid system (8×8 to 12×12 depending on device) where you explore subreddit zones that provide unique resources:
r/cooking → food for healing
r/medicine → medical supplies
r/guns → weapons and ammo
r/memes → direct karma boosts
Combat is strategic you need weapons to fight zombies, but each attack consumes one. Defeated zombies have a 25% chance to drop rare loot. Random Reddit-style events pop up with choices that affect your karma, health, and resources.
Example: “Heated Discussion in r/Drama” ignore trolls (-50 karma) or engage in debate (lose one action next turn).
Your goal is simple: reach 2000 karma to establish a safe haven and win. But between limited resources and constant zombie spawns, it’s not as easy as it sounds.
🛠️ How We Built It
I built Reddit Survivors using React and TypeScript for better structure and type safety. Tailwind CSS powers the responsive design that adapts across devices, crucial since it’s meant to run inside Reddit’s iframe.
Game logic runs through a custom useGameState hook that handles turn-based actions, zombie AI, event triggers, and loot mechanics. Each grid cell dynamically updates based on entities like survivors, zombies, or resources.
For sound, I used the Web Audio API to generate effects in real-time, keeping the experience lightweight and immersive.
The karma system follows:
𝐾 = ( 𝑃 + 𝐻 − 𝐷 ) × 𝑆
Where:
𝐾 K = final karma
𝑃 P = points collected
𝐻 H = health bonus
𝐷 D = damage penalty
𝑆 S = survival multiplier based on days survived
The layout is container-aware using the ResizeObserver API, making the interface scale fluidly inside iframes without relying on viewport units.
⚔️ Challenges
Balancing the turn-based system took forever. Two actions per turn ended up being the sweet spot after endless testing. Making the karma system feel like real currency was also tough it had to be both rewarding and meaningful.
Iframe compatibility caused major headaches since Reddit’s environment breaks typical responsive layouts. I had to rebuild the entire grid logic to be container-relative.
Writing Reddit-style events without making them cringe was another challenge the tone had to feel authentic and fun.
Finally, optimization was key. I wanted smooth gameplay even inside an iframe, so I had to streamline animation timing, update loops, and state renders.
🧭 What I Learned
Good game design is pure iteration. The first version was totally broken, and it took dozens of tweaks to make it balanced and fun.
I also learned that true responsiveness isn’t about screen size it’s about adapting to containers. Designing for Reddit’s iframe changed the way I approach layout systems.
And surprisingly, audio made a huge difference. Those small sound effects the headshot “boom” or zombie growl added real immersion.
🚧 Current Limitations
Right now, the game works best on desktop. Reddit’s mobile iframes handle scaling differently, which causes touch and layout issues. I decided to prioritize core mechanics and stability first, with full mobile optimization planned for the next phase.
🚀 What’s Next
Multiplayer Subreddit Wars (r/gaming vs r/movies survival battles)
Reddit OAuth for real leaderboards
Expanded subreddit maps with unique mechanics
Moderator tools to design their own apocalypse modes
Collectible achievement badges for top players
Built With
- api
- audio
- css
- custom
- framer
- hooks
- motion
- node.js
- react
- resizeobserver
- tailwind
- typescript
- vite
- web
Log in or sign up for Devpost to join the conversation.