This runs a shuffler simulation that I use to optimize the drive system for my robots. Everyone else is welcome to use this to optimize their robots, but please give credit if you do.
A shuffler system uses offset cams so the robot will "walk" instead of roll.
Here is a side by side of my simulation next to actual battlebots shufflers (shufflers found on midwestrobotcombat.com)

The simulation allows users to adjust the following parameters:
The system returns the lowest point variance, and 360 degree stepover
.
Lowest point variance measures the vibration of the robot by calculating how much the robot "bounces" as it walks. 360 degree stepover is the distance that the robot travels per 360 degree rotation of the camshaft. This will determine the robot's speed and the necessary motor torque to operate.