Battle Arena Evolution – Postmortem

So, its a full day since I finished my Ludum Dare game entry, and I’m glad today was a holiday, since I think I’ve only recently recovered from the whole experience. The last 8 hours before submission were so intense, productive, and mindnumbing that I somehow blocked out everything else that was going on.

The Good

  • Getting ideas down paper – all the sketches I did at the start of the night when the theme was announced really became a source of inspiration and guidance throughout the project.
  • Delivering on those ideas! Unlike Last Ludum Dare where I had ambitions bigger then my capabilities, I think I reeled this project in close to my original vision. That’s not so say I couldn’t have made a better game, but I’m really happy I got my estimate right for the weekend, and proved I could churn out what I’d envisioned.
  • Haxe / NME – proved an excellent language to program in again. No hold-ups working out what constructs to use, or messing around with the build process. Was a 1 line config change to get it working on Android. Brilliant stuff.
  • Paint Shop Pro – saved my ass again when I needed to get the character artwork done.
  • Audacity – made recording and editing the sound effects simple when I was tight on time and needed to get them done. I used one project file with frame labels, and exported all the individual files, as mp3s, with the same names in a snap.
  • Evolving parts! It seemed worth putting in the effort to get the changeable character parts and simple animation frames. I think I put the bare minimum of states in to make the characters look interesting without over complicating the art side.
  • Solid GUI elements. Having a single screen, and a looping flow to get the player into the game quickly, meant I could concentrate on game play and not with menus. I’ve not been using any frameworks for these last two projects so things like menus can really eat up coding time.
  • The food. Delicious cold snacks, sausage rolls, mini snack-eggs, quiche… pints of tea, and the occasional cider, well worth it. Kept me going all weekend.

The Bad

  • Flash CS5 IDE crashed on me, crashed my character file, almost destroyed my project. At this point I grabbed my output images, made a new image template, and GTFO’d to Paint Shop Pro to finish doing my character art. I basically went and stood in the kitchen and banged my head against the wall for 10 mins after this, but I just cut my losses and got on with making the art assets in a different way. I was going for a smooth vector feel to my art, but I’m not that good, and I’m much more comfortable outlining in pixels, so probably I should stick to my strengths next time.
  • Combat – it sucks. In my defense, this is the first time I’ve made a combat game like this, and I really didn’t think through how this core mechanic would be varied enough to call “fun”. Late addition of bouncing the enemy back, and freezing them for a random amount of time, and changing this distance based on Attack Damage helped, but that is just one kind of attack, and doesn’t make the game very interesting. The decals and sound effects unique to each character type helped mask the problem, but not really. If I was going to remake this game, having different attack moves per character, and maybe two types of attack available would be at the top of my list.
  • Evolving is not obvious. Its assimilation of parts, based on which characters you kill. I think if I had given a screen which the user could use to decide which parts to evolve and which to keep it would have made the game play much more strategic, and hopefully fun.
  • The music. Should have used a generator or something, was just embarrasingly bad this time around. Barely made up with it with sound effects.
  • Writing alot stuff from scratch – I should have planned ahead and got some framework code together. Just a few helper libraries here and there, or a template project with a few basic files in it. I might go so far as to use a framework on my next one like flixel or some other game library to avoid some repetitive code.
  • Image pipeline – for character art – I spent far too long sorting out UV coordinates and templates for doing my character art, instead of actually drawing, and then I had the problem with Flash CS5 crashing, which had all my art and coordinates in one place. I need to get a better flow for brining in assets, or I should have mapped to a square based tile grid and made it dead simple for myself.

Welp. That’s all I can think of. Really happy that I managed to complete another game. Starting to build up a mini-portfolio now.

See you all next time!