80% of the game was made with codex and i love it!

Inspiration

Among Demons started from my interest in dark fantasy, creature collection, roguelikes, and automated tactical combat. I wanted to create a browser game where progression comes from exploring a dangerous world, capturing demons, building teams, and taking risks rather than waiting for energy systems or timers.

What it does

Among Demons is a browser-based roguelike auto-battler. Players can:

  • Explore a persistent 101×101 world map
  • Capture and collect different demons
  • Build teams with distinct roles and abilities
  • Hunt enemies and survive travel ambushes
  • Fight dungeons and powerful world bosses
  • Unlock progression through levels, skills, quests, and collection goals
  • Share public hunter profiles

Battles are simulated by the server and replayed visually in the browser, keeping combat consistent while still allowing animations and tactical team composition.

How I built it

The game uses a JavaScript frontend with a Node.js backend and MySQL database. PixiJS powers the interactive world map, including movement, zooming, paths, enemy locations, and map interactions.

Combat is resolved through deterministic server-side simulations. The server returns the battle result and seed, while the frontend recreates the fight using animations, projectiles, damage effects, and unit movement.

I used OpenAI Codex throughout development to inspect the existing codebase, implement features across multiple systems, refactor large files, improve responsive layouts, debug gameplay issues, and preserve existing functionality while expanding the game.

Challenges

The largest challenge was connecting many systems without making the game feel fragmented. Exploration, hunting, combat, progression, bosses, collections, and profiles all need to affect one another.

Other challenges included:

  • Making automated battles understandable and visually satisfying
  • Supporting desktop and mobile layouts without breaking combat positioning
  • Keeping server simulations deterministic
  • Balancing rewards so dangerous exploration remains worthwhile
  • Expanding an existing project without introducing regressions

What I learned

I learned how important clear system boundaries are in a growing game. Separating battle simulation from visual playback made combat easier to test and improve.

I also learned that Codex works best when given clear constraints, relevant files, expected behavior, and instructions to verify changes rather than simply generate isolated code.

What's next

I plan to continue improving combat effects, sound design, world events, boss encounters, progression balance, onboarding, and social features.

Note: Among Demons existed before the hackathon. This submission focuses on the substantial features, improvements, and integrations created during the hackathon period using Codex.

Built With

Share this project:

Updates

posted an update —

Among Demons is now on Steam!

A lot has happened since I submitted Among Demons to Build Week.

The biggest milestone: Among Demons officially launched on Steam on August 5!

I've also continued developing the game heavily, with updates almost every day. Some of the bigger additions and improvements include:

  • Steam achievements and account merging with existing browser accounts
  • Major Ranked mode improvements and player encounters
  • New combat UI and demon card improvements
  • Better mobile support
  • Dungeon stability and performance improvements
  • New progression and Skill Tree improvements
  • New World events and bosses, including The Anomaly
  • Lots of balance changes, fixes, and smaller quality of life improvements

The browser version is still available for free, while the Steam edition supports continued development and includes Steam achievements and a supporter badge.

Development definitely didn't stop when Build Week ended. If anything, I've been updating the game more than ever.

Steam: https://store.steampowered.com/app/4973450/Among_Demons/

Browser: https://amongdemons.com

Log in or sign up for Devpost to join the conversation.

Submission history