JavaScript Dungeon Master

 Dungeon Master

JSDM currently consists of two iterations of tech-demos, designed to illustrate the potential for making a clone of Dungeon Master in a web environment.

The two versions available are: a move-test allowing the player to navigate an empty dungeon, and a multiplayer-test which allows multiple players to coexist within the same dungeon. Both versions allow exploration of the "Hall of Champions" map from Dungeon Master, and utilise the original graphics for maximum nostalgia factor.

 Movement demo screenshot

Move-test

The movement demo is entirely client-side, using no more than javascript and css to do it's magic.

The game is controlled entirely by the six-square movement grid to the right of the viewport. The controls should be intuitive if you have any prior experience with Dungeon Master, or can recognise arrows.

Additionally, clicking on any wall or decoration in the viewport will cause that item to disappear (until the display is updated upon moving). This was a feature implemented to allow for easy checking that all walls and decals are positioned correctly!

 Multiplayer demo screenshot

Multiplayer-test

The multi-player version uses AJAX to connect to a Python/SQLite backend (originally PHP/Mysql), thereby allowing multiple players to exist and move around in the same dungeon instance.

Given that this isn't generally known about, the chances of anyone active already being in the game when you try it are slim, to say the least. That said, avatars are only removed after 30 minutes of inactivity, and the game will try to always keep 10 avatars in the map - regardless of their age.

Playing the game

When the page first loads, you should be presented with a large (2x size) Dungeon Master logo while all the graphics are pre-loaded. The DM logo should then disappear, presenting you with the character-creation display - enter your desired character name, and click the portrait to change the avatar to use. As you change the chosen name it will be validated with the server, turning the text red for invalid names or green for valid ones. Pressing enter will submit the name, and create your character. There's no submit button, sorry.

The only game functionality available to players is the ability to move, which is achieved using the same movement control grid as the move-test (and DM itself). Unlike the move-test, however, you can also control your character using the cursor keys (plus delete and page-down) or numeric keypad.