Genesis
A souls-like with no launcher, no installer, no excuse not to die again.
I've been making games for over a decade — Unity, Phaser, casino clients, multiplayer experiments. Terathos started from a simple question: what would a souls-like feel like if it lived on the open web?
No installer. No storefront. Just a URL and a door that says enter as guest. What came out is half roguelike, half bestiary — a pixel world where every death teaches you something, and every session leaves a mark you can't take back.
The craft
Three things carry the whole experience.
- Combat
- Stamina, windups, recovery frames. Timing is everything. No auto-aim, no quick-saves, no softening. The game punishes, it doesn't reward.
- Space
- Procedural rooms, hand-tuned encounters. Generation gives the world scale; handwritten design keeps it meaningful.
- Voice
- One long editorial thread — item flavor, boss inscriptions, whispers between runs. Nothing is lore-dumped. Everything is earned.
The hard problem
It's not a rendering problem. It's a trust problem.
The browser is a hostile runtime: devtools open, memory inspectable, every network call interceptable. A souls-like whose progress matters has to defend the player's memento.
So the client is intentionally thin. Runs are authenticated. State is reconciled. Even the bestiary you're filling in lives on the server. The window is beautiful; the truth is elsewhere.
What I'm still learning
The web demands a restraint console games never did.
Every asset is a download. Every animation is bandwidth. Every sprite that loads is a moment the player feels the game before the game has started.
Shipping Terathos has been a continuous exercise in asking, for every pixel: do you earn your keep?
