Friday Devblog 01

Dataserver Design


Last week I have mostly focussed on something highly invisible in the short term. At the same time, the work I have done will be pretty important in the long run...a comforting thought.

Let me explain: the rate at which changes to an existing codebase can be made is highly dependant on the quality of its architecture. All kinds of software acronyms (DRY, SOLID, ...) exist to describe properties of well structured code. This week I've worked on an improved design for our dataserver which more closely adheres to such principles. So, vague concepts like 'maintainability', 'security', 'performance' and 'flexibility' have been on my mind a lot.

So what's in it for you, as a player?

  • The new architecture will make it easier to exchange data between the game and the website, which will allow us to enrich user profiles, making it easier to track your progression throughout the game.
  • The rate at which we will be able to add new missions, mission types and items will go up.
  • The risk of introducing a bug will be reduced, making sure we can focus on creating something new, as opposed to fixing something old.

The design and its implementation will take a few more weeks. So does that mean I haven't done anything useful for you - right now - ? Nope!

  • You will now be able to add a signature to your forum posts on (Edit your account settings to use this feature.)

Usability and stability


This week, I've been busy with improving the usability and stability of the game.

The main focus was on getting customization working in a multiplayer session. This means that when you make a change to your customization, e.g., equipping an item or changing a color, every other player in your sessions sees the change happening.

Furthermore, I've fixed some issues that were occuring in the mission editor, like objects that became unselectable after stopping the validation of your mission.

Bugs and Connection issues


I have been working mostly on bug fixes and investigating login and connection error reports, as well as trying to improve networking stability:
  • Implemented new version of Photon for networking (with the same functionality, but stability should be improved)
  • Investigating login errors that users have encountered
  • Improved logging of login errors
  • Setup debug build for testing what happens with login errors
  • Adding bugs to the system which users have posted on the Steam and forums
  • Responding to people experiencing login and connection issues through mail and forums
  • Created a page with help information for login and connection issues
  • Added Help button to all error messages in the game which links to this page





I've been mainly working on bug fixes the last few days:

  • Clients are now able to skip the objective preparation countdown.
  • It is not possible to start the mission builder for a level which is not unlocked yet
  • When testing a mission in the mission editor, the controls are correctly changed to game controls
  • When testing a mission in the mission editor, the previously equipped tool is correctly unequipped
  • Closing the mission editor while testing a mission should no longer result in this same mission being enabled in a normal game
  • Pressing 'f' in the mission editor will now correctly equip the first available tool
  • Solved a memory leak in the photocamera, no more memory errors after a large amount of photo's have been made
  • When a community mission is started, players which are customizing should now properly be teleported to the mission's start position. Once the mission is completed, the player is teleported back to the customization position
  • Text in textfields should no longer be reset to their default values when the field is left empty
  • A client is now returned to the login screen when a disconnect occurs
  • An indicator now shows the way to the swimmable area when a player leaves this area:

  • Comments

    2 users have voted.

    Lovely improvements all around guys! I think it's a really good thing to be so transparent in your work, for those players with a little less faith haha, should I inquire as to what Richard has been doing all week, or is the absence of his blog enough? ;-p

    3 users have voted.
    Richard's picture
    Points: 1142054

    I was making sure the blog content was made :P
    This week it was more about coding, next week we will have more about art/game design topics (Vincent, Jesse and me :)

    2 users have voted.

    I know you're working hard, I always see you on the forum outside office hours ;-)

    3 users have voted.
    Groovy Monster's picture
    Points: 52565

    "Exclusive content" for the Xbox One? Hmm. Not sure how I feel about that. I'm not real big on platform exclusives in games.

    2 users have voted.

    Platform exclusive content is a mistake, however large or small. Don't be one of those developers that do it. Give everyone the content, or don't give it at all.

    Raptr Gamercard

    3 users have voted.
    Richard's picture
    Points: 1142054

    Exclusive content can also mean: Smartglass or some sort of Kinect implementation. Stuff that you can't do on the PC ;)
    1 user has voted.
    Transfixer's picture
    Scuba diver
    Points: 955

    Awesome game! keep up the good work! Respect ;)

    1 user has voted.
    Scuba diver
    Points: 3080

    Love it! I'm so glad someone finally decided to make a diving game and a good one at that! I hope the hard work pays off!!

    1 user has voted.

    Great blog! And very correct its "shape" when everyone is responsible for their role in the creation and development of the project, talking about their current tasks. Thank you!