Day 1 – Run and Gun

I haven’t written a blog post in a really long time, but it’s ok. No one reads this blog anyway. The Rise of Gaddafish is now in Peer Review. It needs two more passes and then it’s on sale. Right now I am working on three projects, and am in the process of deciding which one to commit to. Kind of like the way an ageing pimp chooses which one of his hos to marry.

These are the three projects I am thinking about working on:
1. Another adventure game, this time I want to go from first person to third person, and to drop the resolution below 1280×720.
2. An iOS multiplayer tower defence game. It’ll be turn based like Words with Friends. I have never coded a tower defence, never coded in Objective-C and never coded anything with networking. So this project could be really ‘challenging’.
3. A 16-bit action platformer. Something like Contra Hard Corps or Megaman X.

Look at all the action

Out of the three projects I have started, the action platformer is what I have been working on the most. I grabbed a sprite sheet from Spriters Resource and started implementing the  different states. I had to rearrange the sheet, so that each frame in an animation has the same bounding box.

I laid out a few states, wrote code for them and everything was great, until I deployed the project to my Xbox 360. I originally use the contra style control scheme. Arrow keys to move, ‘X’ to shoot and ‘Z’ to jump. For the 360, I felt a twin stick layout would be good. Left stick to move, right stick to shoot. Simple. So I wrote code for a twin stick layout and noticed a problem. The sprite sheet I am using does not have an animation for running while shooting behind you. Which is something people will want to do with a twin stick layout. It also does not have an animation for shooting diagonally while standing.

When I get my own sprite sheet made I’ll need the following shooting animations:
1.  Shooting up.
2. Shooting down.
3. Shooting right.
4. Shooting diagonally upwards.
5. Shooting diagonally downwards.
6. Shooting forwards while running
7. Shooting backwards while running.
8.  Shooting diagonally upwards while running
9. Shooting diagonally upwards and backwards while running
10. Shooting diagonally downwards while running.
11. Shooting diagonally downwards and backwards while running.

That’s a lot of states, each with about five frames. That’s 55 frames, just for shooting animations. Also isn’t it a bit weird to see someone running forwards and shooting behind him? It feels good to be able to shoot in all eight directions while running, but it really doesn’t make sense. I have decided, while running the player can shoot in three directions. Forwards, upwards diagonally and downwards diagonally. When standing still, the player can shoot in all eight directions.

Now to code some platforming stuff. I believe this will involve platforms. Jon Tree told me to read this post, and now I’m going to have to implement a bunch of stuff that I didn’t do.