Evolvebot is literally designed to evolve robots to better suit their environment.
It uses a genetic algorithm to randomly generate new robot designs to get from point A to point B in a user-defined 2D map. The best robots are taken and 'bred' to produce the next generation, while the rest are discarded entirely. This process repeats for as long as we dictate.
To be honest, we made this almost entirely by watching YouTube tutorials about 2D platformers and the like, and by messing around in Unity for a few hours.
Up until today, neither of us have used Unity or C#.
We've had a lot of fun creating it, this was a great experience.
How to code in C# and operate the Unity game engine.
Implementing secondary goals, and moving it from 2D to 3D.