Repository navigation
Personal Bests
This page documents the requirements around the /pb/ endpoint, and its extended functionality.
Note
At some point, internal handling of the /pb/ endpoint will be brought into alignment with the logic for the /run/ endpoint, so that sub-categories can be part of the "flags" optional argument. For now, "flags" in PB is only for setting console/emulator or a player override.
Warning
Searching a users' Personal Bests is a slow operation. Unlike looking up a specific run and getting a small response output that is easily processable, the PB endpoint returns ALL personal bests that the user has. As a result, if a runner is particularly active in the community, their PB list could return thousands of runs, which then have to be filtered client-side, rather than being filtered automatically by the SRDC API.
If you just want to find a specific run, we recommend using the /run/ endpoint, which has much more specific client-side filtering support available, which ensures that speedrun.com only returns a small number of results connected to the board. The output of /run/ will almost always be the same as /pb/, but comes with the benefit that SRDC handles a large amount of the filtering for the end user, with this web app performing a modest amount of filtering on the returned result set to find the requested run.
For more information on how the /run/ endpoint works, refer to the Latest Runs wiki page.
Looking up PBs can be achieved using the following command structure:
!pb <game> <platform> <category> [flags]
Game is either a supported game that can be looked up on main boards, or the slug URL for supported category extensions and multirun boards.
For the list of supported games for this parameter, refer to Supported Games.
The platform parameter is used as a filter to target the specific game version that is needed. All platforms supported are described below.
When doing this for a CE or multirun, you should use the full name: eg hp1pc.
| Code | Platform |
|---|---|
ps1 |
PlayStation 1 |
ps2 |
PlayStation 2 |
ps3 |
PlayStation 3 |
psp |
PlayStation Portable |
gba |
Game Boy Advance |
gbc |
Game Boy Colour |
gcn |
Nintendo GameCube |
xbox |
Microsoft Xbox 360 |
pc |
PC |
These codes are based on normal run boards. As before, if you are looking for details relating to Category Extensions, Multiruns or LEGO Games, refer to the appropriate sub-pages.
The primary value is the most likely key that people will use to trigger this category. Aliases are alternative values that are internally mapped to the same category for convenience. If no aliases are available, then the appropriate cell will be blank.
| Category | Primary | Aliases |
|---|---|---|
| Any% | any |
|
| 100% | 100 |
hundo |
| Glitchless | gless |
glitchless |
| No Major Skips | nms |
nomajorskips |
| Any% No EDS | noeds |
anynoeds |
| All Wizard Cards | awc |
allwizardcards |
| Warpless | warpless |
This is an optional argument after <category>: it supports any additional values that users may include.
Category extensions, multiruns and complex LEGO Games boards have additional values or requirements, please refer to the relevant subpage for additional arguments that are needed.
All uses of !pb support the --player=<player_name> override. This argument is used when you are looking for a run from a player who is not defined in the <owner> parameter of the /run/ route.
-
!pb hp1 pc any --player=nixxo-> Looks for the PB in HP1 PC Any% for player "nixxo". -
!pb hp1 ps1 100 --player=nixxo-> Looks for the PB in HP1 PS1 100% for player "nixxo". -
!pb hp1 ps1 100-> Looks for the PB in HP1 PS1 100% for the channel owner. -
!pb hpce hp1pc 100gless --player=nixxo-> Looks for the PB in the HP Category Extensions board for HP1 PC 100% Glitchless for player "nixxo". -
!pb hpmulti fs any-> Looks for the PB in the HP Multirun board for Full Series Any% for the channel owner.
Navigate the wiki with these pages: