Uncanny Ballet

Lead the battle between human-controlled and AI-powered robots.

Discover step by step how I built a little Artificial Intelligence for this 1v1 platformer!


  • Movement = WASD/Arrows
  • Fire = Space

Behind the scenes

  • What's not made during the jam - most of the audio (music is a track I made in 2015 called "Focus" - more here, SFX are reused from previous jam games). All art & code are original stuff.
  • A quick look at the pathfinding waypoints - see below. Blue and white lines are here to distinguish directions, as not all paths are bi-directional. Pathfinding is used for the final 2 levels:

Voting results


This game entered in the Ranked competition (3 entries).

Comments (6)

 • 6 years ago • 

Can't wait to play this! Very interested to see how your AI will work.

 • 6 years ago • 

Wow the art is amazing O_O really digging it

I want to play this so much :D

 • 6 years ago • 

A great competitive platformer! I'm super impressed by this game, especially knowing how little time you had.

I love how the AI difficulty increases as you progress. You made it sound so simple but the bot is actually very engaging, and—especially when it gets hold of a weapon—quite difficult to beat. Even when unarmed it can be a pesky little thing :D. Also, bonus points for being the only entry with true & adversarial AI. Explaining what changes between events is a nice touch and made it interesting to simply observe what the robot was doing.

The pixel art is very stylish (I love the title text and explosion) and coherent, including with the SFX. The music maybe doesn't completely fit with the graphics but is still great, and the background noises are a subtly brilliant touch; maybe you could add some cheering noises too? I imagine lots of people (and robots) would be watching this event, given its crucial importance in the war ;).

I occasionally had some odd behaviour where my android would randomly turn around or refuse to jump. But nothing serious enough to detract from the game.

As the robot will happily keep shooting, adding ammo counters might make the gameplay more varied. I played several speedruns (great feature BTW) and each time the strategy was roughly the same; having to top up the ammo might break this cycle somewhat.

The one scene is definitely sufficient since you're increasing the AI's difficulty on each new level, but it would be cool to see some others in there too; maybe the last level could be fought at the top of the temple, for a more dramatic feel? :o

Overall this is great. Fantastic job with the AI :)

 • 6 years ago • 

Love the art, love the game.

It feels mostly like an exercise for yourself to learn AI than an actual game, almost would be more interesting if you could learn the intricacies of the AI in-game, see the state machine going, see the pathfinding, and stuff like that. Gampelay-wise it had such spikes of difficulty, and neither the level not the strategy to beat it changed once you needed to apply any strategy at all.

I know how hard AI is and I've never even tried to do platformer pathfinding, its always been something I wonder how the hell is done, so you have my full respect. Fantastic job! :D

 • 6 years ago • 

the Art is really nicely done, and its an interesting study. Weirdly I had the most trouble beating the second level, the randomness makes them harder to anticipate i suppose

 • 6 years ago • 

Stand still, ROBOT! I have a hardware upgrade to install…

It's hard to believe that ROBOTS would care about historic places or duels. I guess we'll find out soon enough.

AIwize only the last version stands any chance and even it is succeptiple to early gun rush tactics. A HUMAN is simply faster at picking up the gun, right in front of their cold metal noses. I think the ROBOTS should have faster reactions to make up for this and other situations where there is a noticeable delay between actions. Standing still, thinking for a fraction of a second is hardly something a superior being would tolerate for long. Version 6, coming right up!

The platforming action works although shooting bullets off the air seems like a bug more than anything. Controls are slighly wonky. At times the character turns around for no reason and walking down near the bottom can sometimes disable jumping for a while. Small things a bit of polish would have taken care off.

Visuals are ok, audio too. No complaining there.

I like the idea for a small project like this. It might be scalable if the AI had to start over each level and actually learned from the player's actions… Hmm. I'll put that in the backburner!

(Tried the Linux version on Mint. The character was unplayably fast! Time related issue, no doubt. The Windows build worked a treat.)

Login to comment


WindowsLinuxMacSources (Unity)




High scores Submit score

View all 3 scores