A downloadable game

CrawlMaster

Long, long ago, a brave knight entered the dungeon in search of a missing treasure.

He never returned.

What happened?

Who can say.

Would you investigate?

Do you dare?

CrawlMaster is a first-person dungeon crawler inspired by two games that helped define the genre: Dungeon Master and Wolfenstein 3D.

Descend through procedurally generated dungeons, fight monsters, search for treasure, improve your abilities and try to discover what happened to the unfortunate adventurer who went before you.

Running away is, of course, a legitimate strategy.

Into the Dungeon

Explore a maze of rooms, corridors, doors and hidden dangers from a classic first-person perspective.

The dungeon is generated procedurally, so exploration is not simply a matter of memorizing one fixed route.

Open doors.

Search rooms.

Collect useful objects.

Fight when necessary.

Run when advisable.

The distinction between the last two becomes clearer with experience.

Controls

  • W — move forward
  • S — move backward
  • A — strafe left
  • D — strafe right
  • Q — turn left
  • E — turn right
  • CTRL — cast magic
  • SPACE — stab with the sword
  • H — use healing potion
  • M — use mana potion
  • LEFT / RIGHT — select magical scroll
  • ENTER — cast selected scroll
  • Mouse — open doors, pick up items and interact with the environment
  • F4 — pause / resume

Combat

The dungeon contains creatures with very different ideas about property rights.

Fortunately, diplomacy is optional.

Sword

Press SPACE to attack with your sword.

Simple.

Reliable.

Requires standing close enough to the monster to appreciate its dental work.

Magic

Press CTRL to cast magic.

Magic allows you to attack from a safer distance, assuming you still have enough mana and have not already spent it enthusiastically solving smaller problems.

Potions

  • H — drink a healing potion
  • M — drink a mana potion

Use them wisely.

Drinking the healing potion after dying remains unsupported.

Magical Scrolls

The dungeon contains magical scrolls capable of temporarily altering the odds in your favour.

Select a scroll using LEFT / RIGHT, then cast it with ENTER.

Available effects include:

  • Magic Lamp — increases the range at which the dungeon map is revealed.
  • Drain Mana — drains mana from every creature in the area. Including you.
  • Weapon Boost — temporarily increases weapon damage.
  • Armor Boost — temporarily improves your armor.
  • Destroy Armor — weakens the armor of nearby enemies.
  • Destroy Weapon — reduces the damage dealt by nearby enemies.
  • Cripple — slows nearby monsters.
  • Invisibility — advanced documentation has been left to the player.
  • Magic Boost — temporarily improves magical abilities.
  • Petrify — turns nearby enemies to stone.
  • Luck — temporarily increases your luck. Its exact effects remain one of the game's mysteries.
  • Half Life — halves the life energy of monsters within range.

Scrolls are useful.

Scrolls are limited.

This creates the traditional dungeon-crawler dilemma of saving the perfect spell until some future catastrophe and eventually finishing the game with six of them still in your pocket.

Temples

You will occasionally discover temples while exploring.

Temples allow you to:

  • heal,
  • recover,
  • and buy new skills.

There is, naturally, a cost.

Healthcare is expensive.

Apparently even imaginary medieval economies have embraced realism.

Save Your Progress

The game automatically saves your progress each time you descend to a new dungeon level for the first time.

Reach the next level and your expedition is preserved.

Fail before reaching it and the dungeon will happily erase the administrative evidence.

Features

  • Classic first-person dungeon crawling.
  • Procedurally generated dungeons.
  • Real-time raycast rendering.
  • Sword combat.
  • Magic attacks.
  • Healing and mana management.
  • Character skills and upgrades.
  • Temples for healing and progression.
  • Large collection of magical scrolls.
  • Interactive doors and objects.
  • Monster pathfinding and AI.
  • Automatic saving between dungeon levels.
  • A suspicious amount of darkness.

A Little History

CrawlMaster was inspired primarily by two legendary games.

The first was Dungeon Master, released for the Atari ST in 1987.

Dungeon Master helped establish the real-time first-person dungeon crawler: exploration, inventory management, monsters, puzzles and the wonderfully claustrophobic sensation of being lost somewhere underground with insufficient supplies.

The second major influence was Wolfenstein 3D, released in 1992.

Wolfenstein demonstrated how fast texture-mapped pseudo-3D environments could be produced using raycasting.

CrawlMaster combines those two influences:

Dungeon Master provides the dungeon. Wolfenstein provides the walls.

What could possibly go wrong?

Raycasting

CrawlMaster does not use polygonal 3D.

Instead, its world is rendered using a traditional raycasting engine.

For every vertical slice of the screen, the renderer projects a ray into the dungeon, determines which wall it encounters and calculates the corresponding textured column.

The technique creates the illusion of a three-dimensional world while operating on an underlying 2D map.

It is conceptually similar to the technology used by early first-person games such as Wolfenstein 3D.

The CrawlMaster renderer was loosely based on published interpretations of the original Wolfenstein raycasting approach, then heavily modified and optimized for JavaScript Canvas.

Under the Hood

CrawlMaster became one of the most complex games I had programmed at the time.

Its systems include:

  • a custom JavaScript raycasting engine,
  • texture-mapped walls,
  • fast Canvas rendering,
  • a custom high-speed decal drawing algorithm,
  • procedural dungeon generation,
  • Dijkstra's algorithm for pathfinding,
  • A* pathfinding,
  • monster AI,
  • inventory and interaction systems,
  • character progression,
  • and dungeon-state management.

The procedural dungeon generator is my own implementation.

The game world therefore emerged from a mixture of classic algorithms and a growing collection of private game-development libraries that would eventually become much larger parts of the LaughingSkull ENGINE.

From CrawlMaster to Crawl Master II

By modern standards, CrawlMaster's raycast graphics are proudly pixelated.

Technically, however, this project became an important turning point.

The systems developed here eventually led to Crawl Master II, where the raycasting renderer was replaced by full polygonal WebGL 3D.

That technology was then pushed further in The Curse of the Castle Creep and later LaughingSkull games.

So while CrawlMaster may look like an old-school dungeon crawler, underneath it sits one of the major evolutionary ancestors of my later game engine.

Every engine needs fossils.

This is one of mine.

Dedication

CrawlMaster is dedicated to two programmers whose work had an enormous influence on me:

Doug Bell, co-creator of Dungeon Master.

And John Carmack, whose work on Wolfenstein 3D, Doom and later engines fundamentally changed real-time computer graphics.

Without those games, CrawlMaster would probably not exist.

I might also have spent considerably fewer evenings debugging walls.

Play CrawlMaster

▶ Enter the Dungeon on LaughingSkull.org

Free to play. No account. No installation.

Running away is a legitimate strategy.

Getting lost while running away is the traditional version.

Download

Download
https://github.com/lovroselic/CrawlMaster
External

Install instructions

use link in description to play

Comments

Log in with itch.io to leave a comment.

I think the skeleton looks charming, if that's your own graphics