So our team noticed how awkward it can be to strategize when the points are based on rates and time owning scales/switches, not just doing single actions over and over. With that in mind, I decided to create this program to simulate games. It’s pretty simple, but it has a good few interesting features. I’ll link the github below:
Here’s a summary of features, there’s a more detailed list with tutorials for more complex tasks inside:
- Simple 1v1 player games
- Timer that pauses and speeds up time if you want the game to run faster
- Match outcome prediction based on rates of points being earned
- Input of robot command lists to simulate team composition, these files would be CSVs and the format/commands are included in the readme
- PowerUp queue simulation
Our team found it useful for creating certain robot archetypes and playing them in various alliance builds to find what was most efficient against what strategies. We also believe this could be a useful driver-training tool if you place your drive team against a simulated team and have them compete.
If you have any questions, bugs, suggestions, or requests, the github has been linked or you can just post here. I put this disclaimer in the readme, but I’ll say it again: I am self taught and much of my code is illogical, redundant, and messy. It works, but understanding why I wrote things is probably not a good idea because you’ll probably find much better ways of doing it.
Also, I’m a very lazy programmer and everything is in one giant main class with a separate timing thread. Sorry
Otherwise, enjoy! And feel free to mention what your team will be using this for, it’s nice to see what this helped with.
-Team 4206