The Dreaming Madness
First person dungeon crawler in a Lovecraftian vein
by Mark Damon Hughes

Play Dormanica


Level generation is a crazy random tunnelling system. I could instead load pre-generated maps and populate them with monsters and chests. Even make that part open, so people can contribute their own dungeons.

Save mechanism is planned, almost certainly a checkpoint at the start of the current level. If you die, you lose all progress on that level. I may also make some kind of cloud setup for sharing scores.

Playable on desktop or an iPad. After some testing, I've determined that WebGL is a pig on mobile, still years from being as usable as native.

I'm not thinking about money yet, but I gotta get paid. While the source is in the page, and I don't mind if you read it to see how to build a real program, kindly respect my copyright and my work, and don't copy it. I may do open source eventually, but for now it's as closed as any commercial game would be.


Keyboard commands: W,A,S,D to move, Q,E to turn, SPACE to attack. Keys, Potions, and Scrolls may have [KEY] in front, which can be pressed to use them.
Removed the turn timeout, so grossly unfair in an already hard game.
Spell scrolls! Antidote, Biokinesis, Clairvoyance, Cloaking, Cryokinesis, Elder Sign, Electrokinesis, Mechanokinesis, Mental Blast, Pyrokinesis, Regeneration, Ward Cryokinesis, Ward Electrokinesis, Ward Pyrokinesis, Ward Mind.
Monsters are immune or vunlerable to different elements, as are you if you use Ward spells.
Advanced monster generation with special abilities and appearance. Spells/scrolls aren't in yet, so they can't do those. I just got owned by a Boss Bile Green Fungoid.
Final wall texture, next level teleporter instead of stairs/pit down, can't see outside of map anymore.
Directional combat, directional unlock, damage numbers fly up the screen from the side you're attacked, more combat messaging.
Cleaned up map generation, less weird doors, passages can go anywhere on walls.
Entered in #procjam. Wrote a build system before even one cup of coffee, minified JS.
Turns time out in 10 seconds. Player and monsters no longer use AP for multiple moves, instead monsters move less frequently than player. I liked AP, but the end result was jackals appearing from nowhere and killing you.
Control button images. Slightly better textures for walls and floors. Is the tiling on stone too obvious? Will think about that. Doors use a physical model. Chests are sprites like monsters.
First-person dungeon crawl graphics are now working, using three.js. I wrote most of a WebGL renderer the hard way (wasted a couple hours) before I realized there had to be better engines. Three did exactly what I needed.
The art is shoddily borrowed from OpenGameArt, all PD or CC licensed. I only found images for about half the monsters, got bored and used the Putrescence art for unlabelled monsters.
Added monsters and combat. When you kill the boss monster ("Boss Kobold", etc.), the stairs down appear!
Added the weapons and armor, cleaned up some map generation, added experience and level up. Wrote some notes on monsters, but not ready to implement them yet.
Created Dormanica as a weekend hobby project, and to prove I still knew how to write Javascript programs. At this time only map generation and basic treasures work.
Current "graphics" are just line drawings on a canvas. I could use top-down tile art, but I do that in Perilar, the new game, and all my old Java games. I'm tired of tiles. I may use WebGL and render a first-person 3D game, though it'll still be turn based.