A Few Minutes of Game Development Tips
Mileage may vary on these but I’ve found these practices to be saviors of time, money, and sanity.
Favor Text over Binary files
Especially when it comes to game data, human-readable text files are the way to go. They’re easier to merge in any version control system. One can manipulate them en masse with batch editing tools. It is easy to tweak them in a jiffy without opening the game engine. Binary files may take up less space but they’re harder to modify.
Strive for a Single Source of Truth
The principle behind Single Source of Truth is that data is structured so it is all in one place. This is rarely possible, especially on larger teams where data is spread all over the place: Perforce, Confluence, JIRA, Notion, Slack, OneNote, Shotgun, (shudder) E-mails, someone’s Dropbox, etc.
It’s crucial to reduce the number of data sources and prevent more from cropping up. When multiple sources are unavoidable, add new tools to ensure that data from these sources is all fed into and/or accessible from a single place.
Establish and Adhere to Game Pillars
Whether developing solo or as a team of many, game pillars establish the core elements of a game. Much like real pillars found in a building, they support the game, usually by propping up its vision. It helps with focus because if a feature doesn’t support a pillar, it can be scoped out.
A feature should involve as many pillars as possible. It is ideal to touch every single one. It’s not easy to do but pick pillars with intention. Then, ensure all features and tasks support these pillars.
Remember the Dangers of Task Estimation
Very little is easy in game development, especially with multiple systems and hidden complexities. Production schedules are determined by time estimates often determined by pure guesswork. This is one of the many recipes for crunch. It’s actually very difficult to give accurate estimates for any task, especially if it was never done before. I use my gut to intuit a number and then multiply that by 3.
It’s a song and dance that I’ve never liked because there’s no method to it, only madness. If asked to give time estimates, take into account as many factors as possible and buffer for the unexpected.
Don’t Forget the Documentation
Documentation is like gardening: you need to keep tending to it. It’s easier to maintain documentation by picking a good system. Ensure it’s easy to access, search, and contribute to. Bonus points if it lives in the Single Source of Truth. Then set aside some time every day or week to document your work. Future you will thank you.
And that’s it for now. More to come later!