GGScore - Create PRs via Challonge-brackets


Smash Rookie
Jan 6, 2019
Hi there,
the last couple of months I've been working on a tool to create a PR for our local scene. The basic idea was to import brackets/tourneys from and use the results to calculate the ratings.
After years of research on rating algorithms, I decided to go with the "Glicko-2" algorithm.
By now, I'm kinda satisfied with the result, so I decided to throw it in here and see if anyone could make use of it or would even like to review/contribute to the code.



Basic usage

  1. Supply a Challonge API key in the "Settings"-tab (you will need a challonge-account).
  2. Click "Import Challonge bracket..." in the "Report Matches"-tab and enter the tournament ID, which is the part of the URL following the part (if you want to import the tourney at, enter "cyyggm9h").
  3. If there are new players in the imported bracket, you will be asked to assign the bracket's players' names to players of your PR or create new players.
  4. Create a rating period by going to the "Rating Periods"-tab and clicking "Add rating period...". Only results within a rating period will be used to calculate the ratings of your players.
The handling of the tool is pretty flexible, you can add/remove results/rating periods at any time. Additionally, if you had to create a player with an alternative alias or there are just multiple ways of spelling, you can still adjust that in the "Player Edit"-tab. Here you can set the display alias as well.

Forfeits and ties

Since the Glicko-2 algorithm does take ties into consideration I decided to implement them as well to make this tool useful for more competitive disciplines. Ties are pretty uninteresting for melee of course, but can be entered in challonge in a round robin format for example.
Forfeits/DQs on the other hand do occur in melee and will be imported from challonge-brackets. You can then choose to take them into consideration for the rating or just completely ignore them in the "Settings/About"-tab.
When entering a result in, giving one player a negative score will make that match be counted as forfeit. Also, deleting a player in a running tournament will DQ them from all of their remaining sets.​


As mentioned earlier this was just intended for my locals to get a little PR going. By now it is quite the stable tool, but there's still a lot to be wished for ( support would be the biggest missing feature right now). However, since it does its job for our locals I will most likely not work on it too much longer.

If you encounter bugs/crashes I'd be thankful if you replied in this thread or hit me with a DM here or on Discord (Craws#8756).

GGScore source code on GitHub

Thanks for reading!
Last edited: