Geometry Dash Elo System
- 4 Devlogs
- 12 Total hours
Analyzes all the Geometry Dash levels a person has beat and assigns them a skill rating, or a "elo".
Analyzes all the Geometry Dash levels a person has beat and assigns them a skill rating, or a "elo".
#Devlog #4:
I can finally claim to be a full-stack web developer.
I had previously managed to fetched data from RobTop’s servers, but I couldn’t manage to find a way to get the data onto the front end. I also couldn’t make the requests from the front end because CORS would block it. So I had to learn how to code a backend with Python and Flask.
Lowkey I still don’t fully understand how to use Flask though lol.
Devlog #3:
Is anyone actually reading this?
I spent an hour today trying to implement code for a simple leaderboard of ELO. It went well for a while, and then I actually tested the application and got temporarily IP banned from the GD servers. And then it happened again, even when I added a delay to requesting data from the servers. At this point I don’t even know what I can do to add a live-ish leaderboard so I just scrapped the idea altogether. Yay, I love when I waste an entire hour doing something that I have to undo literally moments later.
Devlog #2
I got RobTop’s servers to return data about two minutes after I made my last devlog. Since I couldn’t make a devlog yet, I just decided to add some new features.
So the reason that I didn’t get any data from the server is because I added an extra parameter. When I removed it, the servers returned something like
1:EthanCubes:2:272364184:13:75:17:63:6:0:9:1:10:3:11:12: 51:15: 14:0:15:0:16:31268368:3:729:52:97:46:2675:8:0:4:11#999:0:10
why are there emojis there.
I used GD Colon’s video on making his GD website to decode (gd reference) be abomination and turn it into a dictionary (because python).
I also added a function to calculate the skill rating from the dictionary.
I’m rated 1515.
Smiffy777 is rated over one million.
Devlog #1
I spent 3 hours trying to get Node.js to send a request to RobTop’s servers with no response at all. Then I switched to building a backend with Python and then it took me like 5 minutes to get a response. 80/20 rule, except in the end all the info I got was, in the words of the furry great player GD Colon, “a hot minus-one”. (You can see this at the bottom of the terminal, amidst all the errors). So it’s more like 80/20/0. I felt the need to devlog because well, -1 is still something even if mathematically is it less than nothing.