Wednesday, June 5, 2013

Battle In Space Development

Hi guys, time for a new update!
I'll be writing about my new game and what I've learned so far, this will probably be a bit different than the previous ones.

The first step, a piece of paper and a pencil

I've been modelling for a while now and decided it's time for a new game!
The game is finished about 80% now, the gameplay is finished, all that's left is the Help screen and the highscores.
I've made it all in a week of coding, finding/making graphics and drawing concepts.
The reason I pumped out a game so fast is because it's really small, and that's a good thing if you want to actually finish a game.

I set a rule for myself: the game has to be as small as possible and the gameplay has to work before adding any polish.
This greatly helped in finding a game concept.
Next thing I did was continue with doing the other stuff I was doing and putting a blank piece of paper and a pencil nearby at all times.

When I thought of something I drew it and decided if it was a good idea or not.
After a while of thinking about games I used to love as a kid I remembered a game called Parodius, a space shooter which had a cool powerup system.
My goal wasn't to just copy the game, I wanted to let it inspire me instead.

Next, I drew a rough game concept with some programming specific notes:

Rough game concept scan

I put the sheet next to me and started coding the gameplay.
The first prototype was finished really fast, just a simple ship model shooting at spheres.
The next iteration included actual enemies and powerups.
The whole process was quite enjoyable as my focus didn't wander because of the sheet of paper next to me holding all the elements of the game.

Up until now I would just open the Unity editor and Visual Studio and just fool around until an idea pops up and the immediately start development. This makes the process as a whole a lot more frustrating though.
We may live in an age of technology, but nothing beats a simple sheet of paper and a pencil for quickly visualizing ideas. 

Playtesting, you can't do it alone

Once I had something playable, I asked people to give it a try on my phone.    
I warned them that it's a test version, so it may be buggy, but I tried not to say too much and just look at what they did and how they reacted.
Most people liked most of the gameplay and the visuals, but there were quite some bugs I didn't notice myself popping up, some quite game-breaking.
Also, some things were either not clear, too easy or too difficult.

Next thing I did was fixing all the bugs and gameplay flaws the players told me about and present it to them again.
The reactions were very positive so I knew I was on the right track.

Graphics & Sound

Now the gameplay was ready I started gathering some free models from blendswap (really great site by the way!) for the ships and doing some small modelling things myself.
I also started up an image editor and started making the GUI elements.

The graphics aren't beautiful by any means but they work well together and the performance is pretty great even on low spec android phones because of the simplicity of the models.
I used lots of particles: for the bullets, the ships, the explosions when enemies are hit, etc.
These were made with Unity itself using the particle system.

For the music, I found out about the awesome , which has a dowwnloadable zip with tons of free music for games.
I picked one I liked and inserted it onto the game.
Some music helps a lot for getting the right feeling across.

The sound effects are from a giant sound effects library I got laying around.

All of these put together make for a pretty fun experience, every action you see on screen has a matching sound effect and graphical effect.

Finishing & lessons learned

The most difficult part about making any game is finishing it, so it's important to have an appropriate size of game matching the experience of the creator and setting some boundaries to make it a bit more interesting.
I'm happy with the result up to now, especially for the small amount of time I put into it.
While it may not be the next Minecraft, it's something I made and I'm proud of it.

This small game taught me how to get something playable on the screen quickly and efficiently.
Also, the keyword is iteration, it's impossible to get something perfect from the first try, so build simple core and build onto that, starting with the gameplay!


Battle In Space will be released on Kongregate & the Android Play Store soon for free!
Check out my twitter and this blog for the links when it's here.

Thanks for taking the time to read this!