I made a platformer with ai that can navigate the map. The ai can jump on other platforms and can get around the entire map. I gave the ai states like Move left and move right and jump right up, fall, jump ect.. The ai checks if it can jump on a platform and then based on a random value jumps there. There is also a player that can be controlled. No shooting though. I got it done without to much problems. Mostly becourse the ai code style I used I typed in more then once with my civilization game testbeds last year.
The code is below 400 lines. It is also on my blog. (Almost 40 monkey example code posts on it already)