wavy-project-gangpresentDark Descent
Dark Descent Demo Video
You've heard of roguelite games, well here's a rogueextraextralite
We decided that we really wanted to test ourselves by building something completely unlike anything we'd done on the course so far, and so delved into the world of game development; knowing that it would allow us to work with a completely new framework on frontend, and a new database on the backend, as well as using niche-specific tools and polishing our UI skills.
The Team
Max Dunne
Rakib Siddique
Ryan Murphy
Marius Slepetys
Technologies
We used: Phaser, MongoDB, Bcrypt, Express, Node.JS
During spiking Phaser appeared to best suit our needs in terms of a Game Engine, and also gave us the freedom to adapt our plan as we built our game.
We chose MongoDB as we wanted to try a new database technology for our Backend, and during spiking found that the team felt more comfortable with MongoDB than Firebase.
Bcrpyt provided us with simplest possible solution for our relatively limited encryption needs.
We used Express and Node.JS for handling APIs, as we were familiar with the process and it allowed us to focus our efforts on game-building.
Challenges Faced
Phaser is unconventional in its approach to versions; whereas typically a major update would be indicated by transitioning from say v3.0 to v4.0 would indicate a major update, in Phaser each release is vastly different. In the time we were working on our project, Phaser went from v3.6 to v3.7 and then a day later to v3.8. This means that documentation very quickly becomes outdated, something which was not immediately obvious, and can cause many issues when debugging your code.
This combined with the often unique syntax employed in Phaser made for a steep learning curve, as did the need to use niche-specific software when dealing with the creation and editing of game assets.