How do you work towards success? One small step at a time. I do not believe in overnight success. I agree with the numerous sources Jeff Atwood’s recent post on Coding Horror. The one that particularly caught my eye was Peter Norvig’s Teach Yourself Programming in Ten Years. Given that programming is only one part of making a game, I may be at this “I, Game Maker” business for a VERY long time! Rather than finding this discouraging, I am using again to make sure that I have realistic expectations and that I make sure that I follow Peter’s advice:
Program. The best kind of learning is learning by doing.
I think that this advice works for any discipline. Picture an athlete only reading about how to get in better shape. These days people have too much confidence in what they “know” because they can search on google for it. Knowing where to find something and actually knowing what something is are two very different things. This further reinforces my resolve that my new years plan is to learn by doing. Two other blogs I follow also seem to take this to heart: Noel Llopis’ gamesfromwithin has created Tea Time! in order to learn how to release a product on the iStore and my friend Owen has released the first video of his up coming iPhone/iTouch game Dapple. Good to see that there are one man teams making games full time!
Given all that talking what have I done? I’ve made a few small steps towards success by evaluating what my game needed the most next and adding them.
- Sense of motion – You cannot tell where you are or how fast you are going. Need some starfield and some parallax going on. Done rough version, helped but not as much as the mini-map did.
- Controls – Inertia and movement speeds suck. Cannot aim or fly easily. I’m going to have to play with the force and inertia and find out why impulses are varying so much with Box2D. I think parallax will help here as well. [UPDATE] Exposed the variables and tuned some but need more time spent here. It should be faster to iterate on physics now that the values are exposed in Lua.
- Firing should be exciting and fun – Shooting is currently boring, hard to aim and uninteresting. I need bullets to die after a certain amount of time and not get stuck on the edges. They also need to pack a wallop and go where you intend to shoot them. I’m having real inertia problems here and might need to design around it.
- Finding asteroids – The game size to asteroid ratio became sparse today and that sucks. Might need a mini-map in the corner to help the hunting. [UPDATE] This may have been the largest change I made. Being able to find tings changes the game completely. This probably should have been #1.
- Visual reward for destruction – No explosions/scoring for killing an asteroid. I think I need to add some explosions to things that die and perhaps have some kind of collectible in them for killing them.
- Sense of Peril – There isn’t anything to kill you yet but bad driving. Until I can easily fly around and shoot rocks this doesn’t bother me yet. One thing at a time.
- Visual punishment for death – Not really easy to die and it goes by without noticing. Death is probably less important than peril.
- Camera on edges – Camera is just centered and shows game world edges. Need to look at something that hugs the edges and perhaps something that lets me scale the visual distance better.
Why did I go out of order?
Never assume your priorities are correct. If something is much easier to implement than another area you aren’t sure about then just DO IT. Learn by doing. I was wrong about the priorities because the mini-map was huge!
What is next?
I think I will work on having the shots disappear and then investigate how to get the physics in Box2D working how I would like.