Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Multiplayer Dungeon Crawler

A topic by Dashing Ashes created Sep 05, 2021 Views: 114
Viewing posts 1 to 1
Submitted (2 edits)

So, it's been one month and one week of development, and... we still have not finished our game ¯\_(ツ)_/¯

When I joined the jam, I wanted to test out my "MMORPG-kit", that I've been working on throughout July, and make a multiplayer dungeon crawler. While browsing through the Famicase exhibition library in search of a fitting cover+game premise I found quite a few good options: Wolf Tower, Peach PitLegend of SosarionAlebrijesCross12. In the end, I've decided to pick Wolf Tower. I like the idea of exploring a creepy old castle, infested with all sorts of beasts and werewolves.


At the start you pick one of the three classes:

  • Paladin - tank + buffs
  • Bandit - damage + debuffs
  • Pilgrim - aoe + buffs + debuffs

Every player starts the game in the initial hub-zone, which has an entrance to the castle, leader-board, and teleport to other hub-zones (if they were unlocked by other players).

The castle consists of different rooms, and their layout is generated when the world-server starts a new game. Players have a limited amount of time, to find a way to the main-boss room, unlock it and defeat the main-boss. To unlock the main-boss room players need to find and defeat 3 mini-bosses. After defeating each mini-boss, his room becomes a new hub-zone available for all players.

When exploring the castle players go through rooms, most of which are inhabited by enemies (beasts and werewolves). Some rooms have treasure chests with new gear. Upon death, the player loses his character and all of his items are scattered around the castle randomly. 

When the main boss is defeated, the game is restarted, and players that participated in the boss fight are placed on the leader board. Everyone keeps their characters and collected gear for the next playthrough. If the global timer runs out, and players failed to defeat the final boss - the game is restarted and everyone loses their characters.

So, after another 3 weeks of development I had most of the things needed to implement this idea:

  • World server, that handles all of the game logic, and updates database instances
  • Session server that handles players requests
  • Gameworld entity system, that creates entities (characters, items, skills, etc.) from their JSON descriptions
  • A simple test dungeon, that consists of one single room inhabited by a couple of Kobolds

During those 3 weeks, I've done all of the testings by myself. So, after playtesting the end result with my friends we quickly realized that the real-time style of gameplay was not fitting for this game. The server turned out to be quite slow in terms of response speed and the way game-client was implemented made the process of aiming your abilities very painful. Also, for some reason, the client suddenly became completely broken visually. It was made with Cocos Creator, which I've never used before.


Luckily for me, my friend liked the premise of the game and agreed to help me out with this mess of a project. We've decided to make the gameplay turn-based and rewrite the client using Unity.


Needles to say, we have not been able to recreate almost 2 months of work in just 2 weeks, but we've done most of the basics needed for playtesting and PVP (WOAH!). Also, the new client looks 10 times better visually.

I don't think we would be able to finish it until the extended deadline, but we are not planning to abandon this project. So, if you are interested keep an eye out for updates 😉