Depths of Erendorn, A Brief Look into Development
What began its life as ‘Project Creation’, our new online co-op dungeon crawler has now officially been christened as Depths of Erendorn. DoE’s beginnings started from an idea, that eventually developed into a giant spreadsheet of information with full details spanning everything about the game, from statistics to lore and beyond.
Building a team with all the necessary skills to finally bring this dream to life took some time and patience, but we’ve made it: We seem to have found the right formula and our development team is now a well-oiled machine, bringing us to a stage in which we have finally got a playable version of the game.
Gameplay
In terms of the gameplay, we have taken the basic concept of a tabletop role-playing game, but have made it easier and more accessible, cutting out the time consuming and ritualistic practice of setting up the boards and constant dice rolling/calculations required, replacing it with a virtual and hassle-free model.
The often lengthy score calculations are done automatically turning the focus to bringing gamers together for the experience, a co-op session of up to 4 players, bringing the opportunity of social interaction leading to a more fulfilling and rewarding gaming experience. The digital aspect of the game bypasses the physical barrier found in the original RPG Sessions making it playable both if you are in the same room as the rest of your party or if you are on the other side of the world.
At first, our dungeon generator worked on a web framework, making it playable on a browser. From there it was built up and improved to create better-looking procedurally generated dungeons.
A game client was created to render and make these dungeons playable using HTTP requests which were then upgraded to use socket connections which improved performance considerably.
If you were to compare our first game-play test session, in which there were no walls and all characters were the same model – playable and AI alike – you will already see a great difference to the scope of dungeon combinations and the environments we have in its present state of development.
Pathfinders
Early on in the client’s development, we needed to create a pathfinder to generate paths between entities and tiles so these could be used in commands sent to the server and make the game playable. The Pathfinder at first had many bugs which were sometimes comically simple, for example, instead of choosing the next best step it would choose the worst and try to avoid reaching the target as much as possible. After a few bug fixing passes and iterations, we started to have something resembling a working pathfinder which was responsive to the various generated environments.
From the video playlist above:
Broken Pathfinder – The pink squares here are showing which tested tile the pathfinder ‘thinks’ is the next best step.
Improved Pathfinder – Here the blue tiles show the accepted path, i.e. making it not possible to walk over water.
Pathfinder nearly finished – The Pathfinder uses a method similar to the A* Method which is based on an algorithm developed by Edsger Dijkstra in 1959 and improved by adding in weighting heuristics for performance.
Security
In terms of game security, the server has the authority, not the client. This is common in large multiplayer games as it means that hacking the game to do things that aren’t intended, shouldn’t be possible.
Character Selection
New races were conceived and researched creating a character lore full of surprises and intrigue before the main development stage of the game. During development, extra abilities and attack moves were planned out, while imagination stretching concepts were created and brought to life by our character artists and animation experts.
To help test the game, a placeholder character selection screen had to be created and implemented. In the current build of the game, the character selection screen is still similar to the screenshot below, but it has allowed us to play, test and further develop our ideas into a more enjoyable gaming experience. This is one of the many things that will be vastly improved as development continues on Depths of Erendorn.
User Interface
We want our UI to be responsive and allow the player to intuitively understand their situation and what they are encountering. To aid in this we have developed right from the start a UI that we hope will make this a reality. This means that you can see your party members abilities and stats as well as their cooldowns and abilities, simply by clicking on their character or portrait.
The Development Journey in Images
Click on the images below for a visual and description of some of the development highlights of Depths of Erendorn so far.
Conclusion
It has been a long journey to where we are now, and it has been both trying and triumphant – and there is still a lot to be done – but as of today, we have client/server communication in a good state, and gameplay is fun and coherent.
With room for marked improvements, the AI is in an early stage with more work to be done but it does, however, function quite well in its primary state.
Animations are now being added at a fast pace and are nicely taking shape. The constant improvements every week help to bring the game to life and bring joy to the concentrated faces of everyone who is involved, and we are looking forward until we can start to share this special game with many other people.