TYRANOFORCE Code Post-Mortem
What Went Right
- Having the best artist/roommate ever.
- Flixel – I’d never used it before, but I knew it by reputation. It’s definitely a Game-Jam Tool – not a tight, cogent application framework, but a giant box of features thrown together and made as available as possible.
- Tight concept. As soon as the idea of a reverse-schmup was well-articulated every design decision was easy.
- Boids/Flocking-Based AI. It creates a natural motion that’s still very easy to control and constrain.
What Went Wrong
- FlxGroup Object Pools. I was constantly leaking and spent too many cycles trying to puzzle it out. I yanked it and replaced it with a linked-list solution in less time that I spent pointlessly poking variables in the debugger.
- Alpha-Beta-Pruning-Based AI. Before flocking, my first attempt was to create a “perfect” AI that would only get hit when cornered, never by mistake. The code was very complex and didn’t work very well, and the motion was jerky and unaesthetic.
- No threads or coroutines in ActionScript – lots of switches and ad hoc state variables. What is this, the 90s???
Thanks for reading – now go play it!
Special thanks to my roommate Freddie “blob” T for the opportunity to make a sexy-looking game!
Tags: Flixel, postmortem
