FAQ

How is this different from what I see on reddit?
It's not, really. I was just interested in calculating it myself and wrote some simple python to do it. I also made some different different assumptions than /u/fknm1111, listed below. And some of the same ones.

There are 2 versions of the page (each one links to the other). In one, I use the previous season's Elo score for a bot as the initial score for "this" season. This may be controversial since bots can change between seasons. If a bot skips a season, his score is not carried forward and starts fresh. In the other, every bot starts "fresh" with a score of 1500.

I use a K factor of 40, only because this is the factor used by FIDE, "... for a player new to the rating list until the completion of events with a total of 30 games and for all players until their 18th birthday, as long as their rating remains under 2300". So, no reason I can stand behind.
The difference in output is negligible; with a smaller K factor, wins and losses don't mean AS much, so the scores are a little closer together due to rounding, and there are a few more "ties" due to scores being the same. But, the order is basically the same.

I mark both a "KO" and a unanimous decision a full win.

I mark a "split decision" win as 0.67 of a win; the losers share 0.33 of a win. Why? I just wanted to try it and see what the outcome was. I make no claim that it's better.

I only used fights that were listed on the Wikipedia page. I don't factor in any un-aired fights.

Multi-way fights (eg: more than 2 bots) are now included! Just like a 2 way fight, the winner gets a full win on a KO or UD, and the loser(s) get 0. On a SD, the winner still gets 0.67 of a win, and the loser(s) share evenly the remaining 0.33 of a win. Thanks to this site for inspiration.

This ranking sucks; it doesn't account for X, Y, or ...

Your HTML/CSS sucks. Yes, yes it does. I'm more a back-end coder. Sorry.