I once wrote a solver for RoboZZle: https://github.com/tasuk/zlej-rob
And a blog post: http://blog.tasuki.org/explorations-in-ai-solving-robozzle/
CargoBot has given me hours of having to really think about how to structure my "code" to get the recursive calls just right. I haven't gotten deep into Lightbot yet, but it should be a fun puzzle if later levels have similar types of recursive challenges.
You code the AI for your tank then let it loose in an arena with other tanks. You have to handle path-finding, scanning, range-finding, target identification, hit/miss analysis.
Some of the winning bots are amazingly competent with their scan-and-move algorithms. You code in Java or some flavor of .Net.
(This language seems non-turning complete without conditionals.)
Great work!