Multiplayer - An Essential Development Challenge
My vision for Danger Darrel always had multiplayer in mind. But starting off developing my first ever game title directly as a multiplayer game seemed a bit too extreme of a challenge. Just diving into developing a single player game with leaderboards and developing for iOS and Android simultaneously was already a great learning experience and familiarizing myself with the process and systems involved.
With the core single player up in stores and having updated the game several times to eliminate the most crucial bugs, I decided to dive into Multiplayer Development. (No worries, once the multiplayer is up and running, developments will focus on improving the overall content and experience including single player elements).
Having no clue how to get started in multiplayer, I started off conducting some research on best practices and available tools. I knew that I will require some sort of server or platform to get it running, but the next question was compatibility regarding iOS, Android and overall proceedings with development in Unity 3D.
I followed some of the discussions on Reddit and various other platforms and started reading into Photon Engine. The convincing argument for me was that it is completely free to get started with the development and is a popular system when it comes to multiplayer development with Unity. Furthermore, it will allow me to allow cross-platform multiplayer, meaning iOS and Android users will be able to play with each other!
So far, being appx. 1 1/2 Months into development, I am extremely happy with the decision to go with Photon (PUN). For anyone considering to get started, I highly recommended following their tutorials. Everything was very well documented and although everything seemed a bit overwhelming at beginning, I soon got to know the structure and setup. This is my honest opinion at the moment by the way (I am not sponsored or anything by Photon). I guess the moment of truth will be once the multiplayer version launched but as of now, I will continue developing the game and am looking forward to the final result!
So what's the status with the multiplayer?
I have spent a considerable time on getting the players to synchronize smoothly. At the beginning, the players were in the same match, but jumping all over the place with considerable lag. This is now smooth and will also show in future stress tests how this will behave on mobile connections but as of now I am extremely satisfied with the result.
Currently I am working on the environment synchronizations. I successfully managed to synchronize the procedural map generation but still have a few slight problems when disconnecting and re-joining matches. The challenges here is also to keep the map events of falling boulders and various other events synchronized.
Once that is all set in place, I will continue with the multiplayer menu. Here I would like to include the option to create private matches and connect with your friends, but maybe this is a feature that will come in a later update depending on how the next days/weeks will go.
Everyday there are new challenges when trying to adapt multiplayer to a single player structure but I am giving my best to get this out as soon as possible.
In the meantime, make sure to download the single player version of "Danger Darrel" on the App Store and Google Play. If you enjoy the game, please make sure to drop a review and rating. Thank you very much in advance!