Inspiration Battle royales are massive, but they demand hours per session and a squad on voice chat. Meanwhile, Reddit runs on tiny daily rituals — Wordle threads, r/dailyprogrammer, "Daily Discussion" posts. We wanted to collapse the BR loop into that same 3-minute daily ritual: one seed, one drop, one shot at the leaderboard, all inside a single Reddit post. No install, no lobby, no squad — just drop, fight, brag in the comments.

What it does Daily Drop is a top-down battle royale that lives inside a Reddit post via Devvit.

One seed per day — every player on the sub drops into the same map, same loot spawns, same bot personalities, so runs are directly comparable. ~3-minute matches — shrinking zone, 20 opponents, pickups, perks, and a final circle. Meta layer — career XP, ranked ladder, weekly challenges, mastery, achievements, titles, and a rivalry system that remembers who knocked you last time. Coach & advisor — post-run breakdown grades your aim, movement, and positioning and suggests one thing to fix next run. Share cards — auto-generated result cards drop straight into the comment thread. How we built it Game runtime: TypeScript + a custom 2D scene (PlayScene.ts) with a seeded RNG so every player's day is deterministic. Systems as modules: career, ranked, weeklies, mastery, perks, challenges, rivalry, intel, scouting, coach, advisor, records, titles, accolades — each isolated in src/game/br/* so the meta layer could grow without touching combat. Reddit integration: Devvit app (daily-drop-br) renders the game inside a post; server side handles daily seed, leaderboard, and share posts. Parallel prototype: a Lovable-hosted TanStack Start build served as a fast iteration harness for UI polish before porting back to Devvit. Challenges we ran into Devvit's sandbox constraints — no arbitrary Node APIs, tight message-size limits, and the runtime is very different from a normal web target. A lot of "just fetch it" instincts had to be rewritten. Deterministic simulation — making bots, loot, and zones identical across players from one seed, while still feeling reactive, took several rewrites of the RNG boundaries. Readable combat on a Reddit-sized viewport — the HUD, damage feedback, and suppression vignette all had to communicate without dominating the screen. The red damage flash alone went through three iterations. Version pinning on installed subs — Devvit installs pin to a version, so "why don't my changes show up?" became a real UX problem we had to document. Balancing depth vs. 3-minute sessions — perks, ranked, mastery, weeklies, and challenges all had to feel meaningful without slowing the core loop. Accomplishments that we're proud of A full BR loop — drop, loot, fight, zone, victory — running inside a single Reddit post. A meta layer (career, ranked, weeklies, mastery, achievements, titles, rivalry, coach) that would be at home in a standalone game, shipped as a Devvit app. Deterministic daily seeds that make leaderboard comparisons actually fair. A UI polished to the point where the Devvit build now looks better than our reference web build. Post-run coaching and share cards that turn every match into a comment-thread conversation. What we learned Reddit is a legitimate game platform when you design for the post, not around it. Determinism is a feature, not an implementation detail — it's what turns "I played a BR" into "we all played the same BR." Small, focused feedback (one coach tip, one grade, one share card) beats dashboards. Devvit rewards small modules and message discipline; anything else fights the platform. A parallel web prototype is worth its weight for UI iteration speed. What's next for Daily Drop — Reddit's Daily Battle Royale Squads & clan tags tied to subreddit flair. Sub-vs-sub weekly wars on the aggregate leaderboard. Spectate & replay any comment's run from its share card. Custom seeds for mods to run community events and tournaments. Cosmetic unlocks driven by career/mastery, plus seasonal titles. Public launch via devvit publish so any subreddit can install it with one click.

Built With

Share this project:

Updates