Hi all,
I've been writing typescript definitions for speedrun.com's API (https://github.com/speedruncomorg/api) for a few weeks now to make it easier to work with.
Here it is: https://github.com/mitchell-merry/src-ts And here's a project I've written with the types: https://github.com/mitchell-merry/srcom-data-generator (scrapes data & loads it into a google sheets document with certain formatting).
I'd ideally like to contribute this to the DefinitelyTyped types repository (@types, https://github.com/DefinitelyTyped/DefinitelyTyped).
Please, if you're familiar with TypeScript, take a look at the definitions. I'd love to hear any constructive feedback you might have (first time doing this sort of thing), and feel free to contribute to the repo yourself. I'd especially like to hear if I've done anything in a particularly obtuse way / if there are cleaner ways to do certain things, or if I've not followed certain best practices.
Thanks!
Edit: I should note that there is no support for bulk access and requests other than GET for now.
Will You Snail is constant platforming and 20 minutes is the average run. 14-15 at the top end
Add https://www.speedrun.com/avp2#Predator to the list of games with more than one boost
I guess the note above "Other suggestions: A thing that connects your social media, so like you get a "supporter" role in the SRC discord" reminded me; will this be something visible in the API? Including who boosts a board - could make a bot give roles to people who boost the board of a community, similar to the Server Booster role for discord.
I agree^ I think the table way has its flaws for multiple runs of the same level/category with different subcategories, in that you can't tell which trophy corresponded to which, and that it only showed one time. That can't stay imo. Not sure how you'd recitfy that.
I think the level runs should at least (if this new layout is chosen) stay in order of the levels, rather than chronologically, because this is a tad confusing:
So it'd look like this instead:
(Side note, i have no idea why Normal is repeated in Level 2, that might be an internal issue in the game though)
Maybe you could have the runs broken up by level, and then have all subsequent categories underneath (also ordered as they appear in the category list), so instead you'd have something like this:
(Looks bad because I'm just re-using existing classes and such to demonstrate)
Edit: Additionally this blue text I would prefer linking to the category rather than the run:
I see, I see, the number thing is probably good then (as an addition, i'd still use both).
Here's what I was imagining:
(text says "Custom", "1"/"2"/"3","4","5", and "Unordered (Chrono/Alpha)" in order)
You could set the default ordering of games as chronological/alpha (bottom section), and then you could pick out games individually and set their number in the top of the custom section? Or you could just have some setting that places them in custom, from which you could drag + drop... idk. In this scenario the custom ordered games would always come before the unordered ones (maybe this is a negative).
I imagine in the scenario I've proposed, when you run a new game, it automatically gets sorted into the unordered section depending on what your setting is (same as if you have chronological selected & you run an old game, it'd get pushed to the top of chronological, but not above custom ordered games).
Main idea is splitting it into two sections of custom/default ordering. That way I don't feel overwhelmed ordering 30 games, I can just place the top 5-10 that I like near the top (probably what i would do anyways). I also really like the collecting games into groups suggestion you mentioned somewhere else.
I doubt that it'd be brought here in the first place if it was meant to be secret, especially since beta features would probably be visible on the site to people, like in our user profiles.
That's a really good idea. I'd group all the indie horrors I've run, and all the platformers into separate sections. Definitely would use a feature like that.
"Frankly, Pac sat on this silly system of using the description/comment field for additional parts for far too long, and I'm sort of surprised this still hasn't been touched upon." 100% agree, causes issues when dealing with the API as well as it tries to automatically detect extra video links in the description, even if they aren't apart of the run.
On boosting, I'd rather be able to boost specific people rather than random people on a board.
If you're going to revamp the system, imo just use the intuitive option for drag/drop. It would be very appreciated in the long run for sure.
Yeah, before I use this I'll need drag & drop since I've got >30 games on my profile probably.
I'd like the ability to hide games from your profile entirely, especially if they cause performance issues (or maybe you're just not proud of the runs you submitted for a game, e.g. I've got about 300 runs in Seterra and I don't want them sitting on the profile & being loaded).
The word "run" is always pluralised even if you have only 1 run in the game.
And if the game titles on this page could have links to their leaderboard, I think it'd be a nice addition.
Actually, since this seems to be the place to talk about the way the runs look on the profile now:
Runs without subcategories/variables look empty, especially if you only have on run on the game and when they are consecutive. It also gives the illusion that the left and right text is misaligned, since the game name and right stats are on different levels. I don't know, that just looks weird to me.