Friday Devblog 01
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 divegame.net. (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 divegame.net 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: