Wednesday, 18 December 2013

Things that coding my own game has taught me [part 1]

In this new series I will cover the experiences I encounter whilst attempting to make my own game from scratch, I have never done it before but like writing [for 3 blogs] I figured if I never just got on with it - it wouldn't happen.

The first thing I have learnt...

Coding/imagining games is both easier than I anticipated, yet mind meltingly difficult at the same time.

Think of an awesome game concept right now... go on, try it...

Yeah - its near impossible to think of new ideas on demand, don't worry about it, every game creator EVER has asked the question 'is this original?' - the short answer is no. There are no new ideas under the sun, and to be fair after over 30 years of development by numerous publishers who would of thought otherwise?

That's not to say there aren't new ideas, its just a lot of the successful ones are not new ideas at all.

Imagine a game where you sneak around evading enemies, picking up items - some of them used to dispatch the bad guys all without being seen or captured. You have to use your reactive abilities as much as using strategy and cunning to get past your foes, and on completion of this task you are treated to a cut scene.

Metal Gear series right? Nope. Pacman.

The thing you realize quite early on is whatever you do, Your past experiences have more influence than any focused creative thinking can bring. Its kind of like that imaginary Hollywood board room meeting where film executives shout out additions to a pre-existing idea or pitch...

'Picture this guys, a guy and a girl fall in love but are separated by war...'

...can we put zombies in it? zombies sell tickets these days!

'I guess'

... this actor refuses to be seen with guns, can we use lazers?

'well, that's not really important so I guess'

... What if this all happens in reverse? - Fight Club and Memento were awesome!

Before you know it your original concept is simply a mess of ideas to make it relevant to people you don't care for and never set out to appease...

Your epic war/love story is now a shitty, backwards ass sci-fi flick with  zombies. Under water. On the moon. With a spunky teenage lead with more abs than brain cells.

I think the easier way of going about it is to just replicate what you love, or express a concept that is important to you. If people resonate with it, brilliant, if not does it really matter? If your an indie, most likely not. Get back on the horse and try again.

I figured as a 'newb' to both game design and coding I would just start trying to make something I would like without it being too much to handle. I am glad I did as well because trust me, even the simplest idea can be hard to implement.

One of the first things you'll learn when making a platform game with no prior knowledge is that despite their simple exterior, there is in fact a hell of a lot going on. I spent hours mapping out platforms only to have the player fall straight through the floor, I spent evenings leaping over the same gaps to figure out what distances were compatible with my movement/gravity attributes. Everything is related in some way, and sometimes anomalies appear without intention from stacks of layered code.

During these processes you realize why games you have played have had odd little quirks, I'll use Castlevania as an example... Every time you touch or get hit by a bad guy, you fly backwards and often fall off the platform. Super fucking annoying right?

Well look at it from a coders point of view... what are the other options? continue movement in the forwards direction? Well that means players can breeze through enemies with little consequence. How about stopping mid cycle and halt where you are? Possibly but there is the chance the hit boxes from the sprites overlap causing a rapid depletion of life points [see Turrican on the Megadrive]. Soon you end up with a single solution, if you bounce backwards you wont breeze through, and also you wont get stuck on the bad guy who just hit you. It sucks a little but not as much as the other 2 available options.

I know this one from personal experience as well, very early on I had to solve this very problem as my player sprite would halt its movement whilst stuck on to bad guy and die from rapid hit point loss due to repeated subtraction from the enemies collision values.

Now I know I have simplified this A LOT, but ultimately some mechanics stem from solving a problem - not a design choice.

Who knows, maybe while I am trying to imitate my idols I will have an original idea... time will tell.


No comments:

Post a Comment