Inspiration
Can a roguelike solve itself when every move has a cost?
That question became NEURALYZED. Most roguelikes ask the player to make every decision. Here, the game can study the machine it is running on, choose an appropriate planning depth, and attempt a complete tactical run by itself. The challenge is easy to understand but difficult to execute: make maximum progress with minimum actions while surviving a world full of incomplete information.
What it does
NEURALYZED is an isometric browser roguelike with five agent profiles, procedural floors, ranged and melee combat, inventory management, equipment, shops, status effects, field powers, and a complete keyboard interface.
Players can take control directly or select Auto and turn the run into an optimization experiment. In the demo, Player 1 uses Full Search Autoplay to seek the strongest route it can find while spending as few moves as possible. The planner weighs routes, combat risk, supplies, and progression instead of following a scripted path.
How it was built
The authoritative simulation is written in Rust and compiled to WebAssembly. It owns the game rules, deterministic random generation, combat, inventory, world generation, and bot planning. A dedicated Web Worker keeps planning away from the interface thread.
The browser client is written in TypeScript. A handwritten WebGL2 and Canvas renderer draws the isometric atlas, movement, combat direction, projectiles, damage, teleportation, and interface effects without a game engine. The checked-in release runs from GitHub Pages, and the exporter can also package the game as one self-contained HTML file.
The visual catalog follows a repeatable asset pipeline. Character concepts move through orientation planning, state sheets, cleanup, alpha processing, validation, runtime manifests, and final atlas assembly. Human review checkpoints protect identity, facing direction, silhouette, and visual consistency before assets reach the game.
How Codex and GPT-5.6-Sol were used
Codex served as an engineering collaborator across the Rust core, WASM bridge, worker protocol, renderer, interface, asset pipeline, tests, release packaging, and browser validation. GPT-5.6-Sol powered the Codex workflow.
The process used a tight development loop: inspect the existing architecture, propose a focused change, implement it, build and run the project, interpret failures, and iterate until the result passed. Codex helped implement the deterministic simulation, worker-backed WASM runtime, adaptive planner, isometric presentation, visual asset pipeline, and reproducible release tooling.
Product and engineering decisions remained mine, including the game design, architecture boundaries, visual direction, acceptable performance tradeoffs, and final behavior. Codex accelerated implementation and verification without replacing those decisions.
Challenges
The hardest problem was keeping simulation behavior reproducible across language, WASM, worker, and browser boundaries. Collection changes, random-number consumption, and worker message timing can create subtle differences many turns later. Seeded traces, stored outcomes, stable identifiers, and snapshot tests made those failures visible.
Another challenge was presentation timing. Projectiles must travel before damage appears, defeated enemies must remain visible long enough for animations to finish, and floor transitions must focus on the destination rather than stale coordinates. These details required careful coordination between authoritative snapshots and browser-only effects.
Accomplishments
- A complete playable roguelike that runs without installation
- Deterministic Rust simulation and adaptive autonomous planning
- Responsive WebGL2 and Canvas isometric presentation
- Planning isolated in a Web Worker
- 50 automated tests across TypeScript, Rust, and the WASM boundary
- A repeatable visual asset generation and cleanup pipeline
- Standard multi-file deployment and a self-contained HTML export
- Verified local and live browser builds
What I learned
Determinism involves much more than using a seeded random generator. Data ordering, stable identities, action timing, and serialization boundaries all matter. An autonomous game system also becomes more engaging when the interface exposes enough information for people to follow its decisions.
Codex was most effective inside a focused loop: inspect, change one area, build, replay the failing seed, compare the result, and repeat.
What's next
The next step is to apply everything learned from NEURALYZED to new and more ambitious games. Its deterministic simulation, adaptive planning, Rust/WASM architecture, visual asset pipeline, and human-Codex development workflow provide a strong foundation for building faster, creating richer systems, and exploring better gameplay ideas.
Built With
- bun
- codex
- gpt5.6
- node.js
- rust
- typescript
Log in or sign up for Devpost to join the conversation.