VRC Predictions Discord Bot


VRC Predictions Discord Bot

So I though, “Hey, I wonder what happens if you plug all the results of VRC competitions into a special ranking algorithm” and it turns out it worked pretty well. Then I thought, “I wonder what happens if I put it into a Discord bot?” and it turns out that also works pretty well. Therefore, without further ado, I present that-Discord-bot-wot-I-made-for-predictions. No special permisions are required, but allowing it to send messages is always handy :slight_smile: (It will work in DMs though as well). It’s designed with some specific features for a few servers, but the important commands are:

Predictions Commands


(I’m working on making a nicer help menu)


to show the top 10 teams worldwide based off the ranking.

=leaderboard <team>

to get the position of a specific team in the above ranking.

=predict <red> <blue>

to predict match outcomes

An alliance is represented as the teams in that alliance seperated by commas (no spaces!). Any number of teams can be in either alliance. For example, the command

=predict 66618Z,3116A 315G





on red against


on blue (without an alliance partner) and at the time of writing predicts a 97.3% chance of a red victory:

Match data is updated every week or so, so if you want a comp to count towards it make sure the results are on roboevents :D. If a team hasn’t competed yet this season, the bot won’t know they exists and will error:

The prefix is set to


by default, but if you DM me @Bottersnike#3605 I can change it to anything you want. Command to do that yourself soon™.

Comming soon:

=leaderboard <country>

to get the national prediction leaderboard.

=leaderboard <organization>

to rank an organization’s teams.

=bracket <SKU/partial SKU>

to predict the results of a comp.
• Whatever else I feel like adding later down the line.

*No, I don’t use light mode. I switched to make the screenshots look nicer



This is pretty cool, thanks for making!



thanks GOD you don’t use light mode



How does the algorithm work?



The algorithm I’m using is based upon Microsoft’s TrueSkill algorithm. Every team is represented as a pair of values, mu and sigma. Mu represents the ranking of the team, and sigma represents the confidence of the algorithm in that ranking. I’m likely going to swap out TS with a different algorithm though as although TrueSkill allows for large amounts of flexibility it is less accurate with smaller datasets.

1 Like


That’s pretty neat, just read about the algorithm.



At the moment I just refetch the data and upload it to my server as and when I remember, so about weekly. Once I optimize the collection of the data, I’ll make it more automatic.

1 Like


Great addition to our regions server! Thanks!

1 Like


Match data updated at 2018-11-13 18:58 UTC

1 Like


Does this bad boi happen to be open source?

1 Like