From Burnout to libgdx
First, a little history.
During the last week of February I was getting to the point of burn out. I had been trying to convert my Ludum Dare 19 entry from Processing to Unity. Things didn’t go very well, partly because trying to shoe-horn a hacked together 2D prototype into a 3D engine is not a good idea, but primarily because I had come to loathe the game. My wife advised me to take a week away from game programming, so that’s what I did.
At the end of that week, I decided that I wanted to prototype something using either Processing or libgdx. I chose libgdx over Processing because I’d played around with it before and had been very impressed. I was also keen to target Android again, but liked the way that libgdx was evolving from being a neat way of writing for Android to a multi-platform system. During my previous time with libgdx I had used it as a back end to an existing framework. This time I decided to bite the bullet and commit to it wholesale.
Using libgdx directly just flowed, and I found that I was getting results quickly, so much so that I decided to give Very Angry Robots another try. I took my existing code, threw most of it out, and started again. It wasn’t long before a newer, smoother, faster version of Very Angry Robots rose from the ashes of the old one, built directly on the strong foundation provided by libgdx.
Here’s a screenshot of the latest version.
I think my graphics skills are still stuck in 1982. At least these days we have sprite editors … back then it was all hex.
New Controls
The controls of the older version of the game were always problematic. Twin stick shooters work very well – when you have two physical joysticks. I’m not convinced that they work very well on a phone, not least because you always have the problem that your thumbs obscure large chunks of the screen, and with broken multi-touch (I’m looking at you, Nexus One), you don’t even get much choice as to where to put them.
After some experimentation, I threw out the idea of a twin-stick. I’d seen some videos of an iPhone game, Minotron: 2112 by Jeff Minter which, along with a Gamasutra article on twin-stick shooters, made me realise that the joystick positions didn’t need to be fixed. I soon reached the conclusion that it would be a lot easier if I just combined firing with movement. Having done that, I can honestly say that I am happy with the new controls, because they make it so much easier to play the game.
I’ve yet to figure out how to record video to demonstrate the controls so I’ll do my best to describe them instead.
The game now has one virtual joystick, centred on the point where you touch the screen. If you move your finger right from that point then the player goes right. Move it left again, and the player slows down gradually until your finger passes back through the centre of the virtual joystick, at which point he starts moving left. Lift your finger entirely and the player stops.
Firing is simple. The player fires in the direction of travel, unless he’s travelling very, very slowly, in which case he doesn’t fire.
Achievements
I’ve added a simple achievement system. There are currently 8 achievements, as follows:
Perfectionist | Clear 10 rooms in a row. |
Perfect Shot | Clear a room by shooting everything. |
Pacifist | Clear a room without shooting anything. |
Daredevil | Survive for 10 seconds after the captain enters the room. |
Anonymous Coward | Run from 5 rooms in a row. |
Addict | Play 10 games in one session. |
Lucky Jim | Survive for 10 rooms without getting hit. |
Robocide | Destroy 50 robots. |
Download It Here
Click this link to download the latest build of Very Angry Robots. Alternatively, scan the QR code into your phone.
Let me know what you think of the new controls in the comments. Oh, and 15,750 is the score to beat.
Thank you. I love this double game.
ReplyDeletec# .net encode qr code