Inspiration

I'm a second semester CS student, and this is honestly my first time building anything for Reddit's platform. When I saw the "Games with a Hook" challenge, the brief stuck with me build something that gives people an actual reason to come back tomorrow. Around the same time, everyone I know has been glued to World Cup match threads, arguing over who's going to win before every game. I figured, why not turn that exact daily habit into the game itself?

What it does

Match Day Oracle drops a match prediction post pick Team A, Team B, or a Draw, add a quick reason if you want, and watch everyone else's picks fill up live in a community bar chart. When the match wraps up, instead of a flat "correct/incorrect" message, a reveal wheel spins and lands on the actual result. Get it right and your streak grows (with bonus points stacking up), get it wrong and it resets so there's always a reason to show up again tomorrow. There's also a real time leaderboard, and moderators get their own dashboard to create match posts, lock predictions before kickoff, and resolve results with one click.

How I built it

Built solo using Devvit (Reddit's developer platform) with Phaser on the client side and Hono on the server. I used Redis for storing predictions, streaks, and the leaderboard (sorted sets for ranking). I leaned on Antigravity as my coding assistant throughout, but I made sure I understood every piece it generated rather than just accepting it blindly going block by block, testing each feature (predictions, reasoning box, reveal animation, bar chart, streaks) before moving to the next.

Challenges I ran into

The biggest one was simply time I only had about a day to go from "zero Devvit experience" to a working game. Getting the reveal wheel animation to land precisely on the real result (instead of just spinning randomly) took a few tries with Phaser's tween system. I also had to think carefully about making the "hook" feel real rather than gimmicky that's why the reasoning box and live community bar chart exist, so it's not just clicking a button and forgetting about it.

What I learned

This was my first real dive into both Devvit and Phaser, and my first time building something with a live backend using Redis instead of Firebase (which I'd used before). I learned a lot about designing for retention specifically thinking in terms of streaks, daily loops, and community visibility instead of just "does the feature work."

What's next

Right now it's tuned around World Cup matches, but the whole system is built generically enough to run for any recurring event other sports, esports, even community polls with a "right answer." I'd like to expand it beyond football once the tournament wraps up.

Note on subreddit visibility

The test subreddit is currently transitioning from Private to Public (Reddit applies a short waiting period on this change) and should be fully public shortly. The link above will work directly for anyone with access in the meantime happy to grant judge access immediately if needed.

Built With

Share this project:

Updates

Submission history