Part 1. Core Principles
- Sam Walet
- 3 jun 2022
- 2 minuten om te lezen
Before we get into the specifics I want to explain what guides my decisions when designing these systems. We will return to these whenever we run into a design decision that needs to be made.
Mind the Future
Making games is a process in which you iterate again and again and never end up with what you initially thought up. Because of this when designing systems you should always keep in mind that the demands could change and it may someday need to do things that it wasn’t originally intended for. For example in my current project Fathom’s Found you can use your hand to make gestures in a gesture circle which is essentially a sentence with each subcircle being a word in that sentence. At first we had eight sub circles meaning eight words in a sentence and the player had five fingers, however then five fingers became three and eight circles became six. This is a very simple example because it’s just a change of number but you could also imagine building all your systems assuming a player can only walk only for the designer to want the player to jump. When designing a system you should consider what it may need to in future, you don’t need to be clairvoyant but you should do your best to take the possibilities into account.
Minimize the Potential for Human Error
People make mistakes, they might mess up an important reference or change a setting that messes with everything. To prevent human error from slipping in and causing problems you should consider which settings need to be available to the designers and which are better hidden away. You should also consider what are reasonable values to put in these variables and maybe limit what values can be put into certain settings. Of course you shouldn’t limit your designers creativity but setting the player’s speed to 1 million or being able to remove an important reference is unnecessary.
Prevent Information Overload
This one links into number 2, you want to give your designer the reins to be able to tweak and modify systems but you also don’t want to have to give them an entire course on how to do so. Hide away unnecessary information or variables and present only the useful information. If it happens they do need those hidden variables or more complex changes, that’s what you’re there for.
Organization & Explanation
Lastly a very simple one, organize your variables and explain what they do. This may simply mean picking good variable names but some may also need more explanation so a tooltip or documentation might be necessary. You want designers to be able to utilize your systems with minimal interference from you.



Opmerkingen