I haven’t been a game developer for long, in fact CataPoultry has been my first real attempt at a complete game, so I have had to do a lot of learning in the last 15 months or so.
Its gone from this (about 2 months in)
To this (about 11 months in)
Thankfully the internet exists!
I have found so many tutorials and forums that have helped along the way, in fact to go from knowing basically nothing 15 months ago to having created a fully working and published game seems almost absurd, and I have so many random YouTubers and forum posters and bloggers to thank for that. Also the fantastic free tools like Unity3D and Blender are a gift from the heavens for a part time, very low budget dev like me.
However, tutorials and blogs and forums really only get you so far. Every game is unique, and offers its own unique challenges; those little things that you just want to work in a particular way, and CataPoultry was no exception to that rule.
As I bumbled my way through my own solutions to my own problems, I found myself thinking the same thing over and over.
“Am I doing this right?!”
For me, it’s been the big question all through the development of CataPoultry. Is this right? Is this the ‘normal’ way to get the desired result? Is this how other developers would do it? Will this solution work long term, and will it work on different devices? If I showed my code/3D models/scene setups to a ‘real developer’ would they just laugh and walk away shaking their head?
With the benefit of the very tiny amount of hindsight that I have gained from publishing my first game, I have come to realise that I was asking the wrong question. Instead of asking ‘Am I doing this right?’, I should have really been asking
‘Does this work for my game?’
That’s the key. It doesn’t matter how other people would solve whatever challenge your game presents you. What matters is that you solve it, that it works for your game, and that it works for you. Im not suggesting that you ignore all advice and steam ahead belligerently, but if you have found a solution that you understand and that does what you want, then give yourself a pat on the back and go with it.
That doesn’t mean that I didn’t hunt for the best solution possible, I did. I scoured videos, tutorials, the unity forums. I googled everything (some things many many times), asked questions and sought answers. And I tried all sorts of solutions. CataPoultry was built on research, learning, and a series of trial and error. I think it was a good way to build my first game. I tried things that ultimately didn’t work for CataPoultry, but could work for my next game of a different genre, or on a different platform, and I have built up some great knowledge along the way.
I know I have done some things in a way that would make a seasoned professional cringe. Heck some of my early decisions even make ME cringe, but it works. CataPoultry is published, it has had a few downloads and it has been run on a few different devices without any crashes so far.