HELPFUL HINT FOR DEVELOPERS
February 15th, 2022 by brotherhood

I thought this might be a helpful idea for developers who need to track many global values in their games. I refer to global values as a set of values that are used to alter the game state, store quantities, etc.



I have used strings rather than numeric values in a Dictionary in the past, but I have preferred to use numeric references for value stores for the last two games we have made. I found that referencing variables by name enforced lazy coding, and using a numeric reference with a spreadsheet was more efficient.




DEBUGGING GLOBAL VALUES






One thing that helped me tremendously with Beautiful Desolation was storing the reference AS WELL as a note to the code that changed the global value. So, for example, if you look at the code above, I store a string reference to the Script file and the Method that altered this value. It may seem cumbersome now, but it has saved me hours of trying to work out where a value was set from.






I have a singleton that stores the State Array as a List that contains all of the values and the place that set them.







Here is the clever part, I also write this data to the savegame file.







This Save is a dump of the State - what this means is that I can load ANY save from a player, tester, or my code base and review where and when the value was set. This helped out a MASSIVE amount during the playtesting of Desolation, which had 1500 variables in the State.




If a player sends me their save file, I can quickly ascertain why a value is not being set, or where it collided with another puzzle. If the save file only contained the value it would be useless in a debugging context.






My ingame Debug tool also allows me to check the details on any variable quickly.






This only took a few minutes to implement and it has made my life much easier!


Beautiful Desolation Design Document...
January 28th, 2022 [brotherhood]
Read More
An interview about Adventure Games...
January 20th, 2022 [brotherhood]
Read More
MERRY CHRISTMAS...
December 25th, 2021 [brotherhood]
Read More
A SHORT FILM BY CHRIS BISCHOFF...
December 8th, 2021 [brotherhood]
Read More
Beautiful Desolation wins BEST GRAPHICS!...
December 7th, 2021 [brotherhood]
Read More
STASIS Kickstarter Post Mortem Throwback...
November 16th, 2021 [brotherhood]
Read More
MARK MORGAN IS BACK!...
November 10th, 2021 [brotherhood]
Read More
Practical advice for Indie developers PA...
October 20th, 2021 [brotherhood]
Read More
WHAT WE HAVE BEEN UP TO...
September 1st, 2021 [brotherhood]
Read More
GAME DESIGN & BEAUTIFUL DESOLATION PODCA...
August 9th, 2021 [brotherhood]
Read More
STASIS ][ SCREENSHOTS - JULY 2021...
July 23rd, 2021 [brotherhood]
Read More
LATEST

AUP FEATURED ON THE FUTURE GAME SHOW!

March 21st, 2025

The Future Games Show Spring Showcase, along with the new show FGS Live from GDC, was broadcast on Thursday, March 20, at 1 PM PT, 4 PM ET, and 8 PM GMT. Hosts Jennifer English (Shadowheart, Baldurs G...

Read More
BROTHERHOOD NEWSLETTER SIGNUP