██████╗ ██████╗ ███████╗ █████╗ ██████╗ ██╗   ██╗
 ██╔══██╗██╔══██╗██╔════╝██╔══██╗██╔══██╗╚██╗ ██╔╝
 ██║  ██║██████╔╝█████╗  ███████║██████╔╝ ╚████╔╝
 ██║  ██║██╔══██╗██╔══╝  ██╔══██║██╔══██╗  ╚██╔╝
 ██████╔╝██║  ██║███████╗██║  ██║██║  ██║   ██║
 ╚═════╝ ╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝  

A persistent multiplayer roguelike — played in your browser.

One server. One history. No installs. No resets.

Opens in
--
Days
:
--
Hours
:
--
Min
:
--
Sec
Join the community early → Discord
— players online
✦ The Moons Have Been Reconciled ✦

The World

One Server

There is one Dreary. Not an instance — the world. What happens here is permanent. A boss killed stays killed. A story told to a player is told forever.

Persistent History

62 zones across four world layers: surface, island, underworld, and the twin moons. Day and night pass. Seasons change. Events unfold across the whole world at once.

No Download

Runs entirely in the browser. Keyboard-driven, top-down ASCII with an optional sprite mode. A game that respects your time — pick it up, put it down.

A Real Ending

The world has a story. Somewhere in the deep zones, across the moons, there is an endgame — a single reconciliation that changes the server permanently. It hasn't fired yet.

Adventurers

Loading…

From the World

Recent Events

What Adventurers Say

Leave your own: type /review your message in game  ·  anonymous option: /review anon your message

The Story Behind It

Dreary started as a question: can one person, working with Claude, build a production multiplayer MMORPG? Not a prototype — a real, persistent world with quests, lore, bosses, factions, seasons, and a story.

The answer turned out to be yes. Two months. One human, one AI, 36 deep review passes, and a SQLite database that holds the entire history of a world no one has visited yet.

"The reconciliation fires once and stays. No resets, no seasons, no parallel servers. The server closing someday is the end of the story."

Everything here was written, reviewed, and argued over in conversation. The 234 quests, the Keeper's hidden backstory, the undead player arc, the world events, the liminal death system — all of it built turn by turn.

This is what AI-assisted development can produce. Not a tech demo — a game with a soul.

Under the Hood

Runtime
Node.js — no framework, no ORM, no build step
Network
WebSockets — 4 Hz server-authoritative tick loop
Storage
SQLite via better-sqlite3 — entire world in one file
Client
Vanilla JS — ASCII renderer + sprite mode, no React
World
62 zones · 234 quests · 22 world events · 6 classes · 5 races
Built With
Claude (Anthropic) — architecture, code, lore, review

Credits & Thanks