mirror of
https://github.com/maxswa/osrs-json-hiscores.git
synced 2025-10-15 10:19:04 +00:00
Compare commits
21 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
79c067152c | ||
![]() |
e51e7bc32e | ||
![]() |
7d7c7f9b08 | ||
![]() |
fd24890f67 | ||
![]() |
3ba434978a | ||
![]() |
44ecdf5434 | ||
![]() |
99fc97f05e | ||
![]() |
b3fc5846f3 | ||
![]() |
1deed9f450 | ||
![]() |
0be3f0b636 | ||
![]() |
ec1ed53669 | ||
![]() |
d0f5285470 | ||
![]() |
9c56e44344 | ||
![]() |
e5b3075ebd | ||
![]() |
8bb50b73b2 | ||
![]() |
cb482ad720 | ||
![]() |
0fbd85aa07 | ||
![]() |
e634b107b1 | ||
![]() |
29db21493c | ||
![]() |
b117cfcf41 | ||
![]() |
d895326d9f |
29
README.md
29
README.md
@@ -92,17 +92,18 @@ Activities consist of all levels of clue scrolls as well as minigames and bosses
|
||||
|
||||
### Minigames
|
||||
|
||||
| Minigame | Param |
|
||||
| ------------------------------- | :---------------: |
|
||||
| Bounty Hunter (Legacy - Rogue) | `rogueBH` |
|
||||
| Bounty Hunter (Legacy - Hunter) | `hunterBH` |
|
||||
| Bounty Hunter (Rogue) | `rogueBHV2` |
|
||||
| Bounty Hunter (Hunter) | `hunterBHV2` |
|
||||
| LMS - Rank | `lastManStanding` |
|
||||
| PvP Arena - Rank | `pvpArena` |
|
||||
| Soul Wars Zeal | `soulWarsZeal` |
|
||||
| Rifts closed | `riftsClosed` |
|
||||
| Colosseum Glory | `colosseumGlory` |
|
||||
| Minigame | Param |
|
||||
| ------------------------------- | :-----------------: |
|
||||
| Bounty Hunter (Legacy - Rogue) | `rogueBH` |
|
||||
| Bounty Hunter (Legacy - Hunter) | `hunterBH` |
|
||||
| Bounty Hunter (Rogue) | `rogueBHV2` |
|
||||
| Bounty Hunter (Hunter) | `hunterBHV2` |
|
||||
| LMS - Rank | `lastManStanding` |
|
||||
| PvP Arena - Rank | `pvpArena` |
|
||||
| Soul Wars Zeal | `soulWarsZeal` |
|
||||
| Rifts closed | `riftsClosed` |
|
||||
| Colosseum Glory | `colosseumGlory` |
|
||||
| Collections Logged | `collectionsLogged` |
|
||||
|
||||
### Points
|
||||
|
||||
@@ -117,6 +118,8 @@ Activities consist of all levels of clue scrolls as well as minigames and bosses
|
||||
| --------------------------------- | :----------------------------: |
|
||||
| Abyssal Sire | `abyssalSire` |
|
||||
| Alchemical Hydra | `alchemicalHydra` |
|
||||
| Amoxliatl | `amoxliatl` |
|
||||
| Araxxor | `araxxor` |
|
||||
| Artio | `artio` |
|
||||
| Barrows Chests | `barrows` |
|
||||
| Bryophyta | `bryophyta` |
|
||||
@@ -160,7 +163,9 @@ Activities consist of all levels of clue scrolls as well as minigames and bosses
|
||||
| Tempoross | `tempoross` |
|
||||
| The Gauntlet | `gauntlet` |
|
||||
| The Corrupted Gauntlet | `corruptedGauntlet` |
|
||||
| The Hueycoatl | `hueycoatl` |
|
||||
| The Leviathan | `leviathan` |
|
||||
| The Royal Titans | `royalTitans` |
|
||||
| The Whisperer | `whisperer` |
|
||||
| Theatre Of Blood | `theatreOfBlood` |
|
||||
| Theatre Of Blood: Hard Mode | `theatreOfBloodHardMode` |
|
||||
@@ -202,6 +207,8 @@ Activities consist of all levels of clue scrolls as well as minigames and bosses
|
||||
pvpArena: {},
|
||||
soulWarsZeal: {},
|
||||
riftsClosed: {},
|
||||
colosseumGlory: {},
|
||||
collectionsLogged: {},
|
||||
bosses: {}
|
||||
}
|
||||
}
|
||||
|
@@ -1,103 +1,108 @@
|
||||
2910,2277,943515557
|
||||
24996,99,30606377
|
||||
4759,99,40283500
|
||||
1523,99,171953134
|
||||
2244,99,147696928
|
||||
5929,99,118171038
|
||||
4560,99,15170201
|
||||
2503,99,71406360
|
||||
141823,99,13354119
|
||||
22348,99,18680181
|
||||
56125,99,13456850
|
||||
23026,99,16655688
|
||||
18672,99,19123987
|
||||
48108,99,14072560
|
||||
10956,99,16552060
|
||||
27980,99,14967150
|
||||
40661,99,13252766
|
||||
7114,99,15760818
|
||||
53839,99,14058762
|
||||
5352,99,34669574
|
||||
2456,99,84892847
|
||||
4849,99,22734071
|
||||
16368,99,17968711
|
||||
1147,99,18027875
|
||||
2210,2277,1150073045
|
||||
23988,99,33320012
|
||||
3114,99,51215128
|
||||
1203,99,200000000
|
||||
1372,99,196290925
|
||||
3458,99,159426771
|
||||
2746,99,17744970
|
||||
2031,99,91566360
|
||||
161852,99,13386665
|
||||
25801,99,19461878
|
||||
64826,99,13473417
|
||||
26528,99,16672481
|
||||
20829,99,19483653
|
||||
58378,99,14103220
|
||||
13188,99,16573909
|
||||
36283,99,15061037
|
||||
17137,99,14670565
|
||||
8751,99,16169665
|
||||
60803,99,14390315
|
||||
1718,99,57850681
|
||||
2117,99,110369178
|
||||
5540,99,22739567
|
||||
22326,99,18052465
|
||||
1467,99,18050183
|
||||
-1,-1
|
||||
-1,-1
|
||||
28384,10
|
||||
14076,3
|
||||
148183,8
|
||||
102684,7
|
||||
338,9641
|
||||
1002,825
|
||||
114,6000
|
||||
2246,1606
|
||||
44261,298
|
||||
603,460
|
||||
1238,452
|
||||
15827,2521
|
||||
38135,10
|
||||
19368,3
|
||||
146220,8
|
||||
100923,7
|
||||
433,9802
|
||||
1542,825
|
||||
158,6000
|
||||
2572,1606
|
||||
47979,311
|
||||
1081,460
|
||||
880,600
|
||||
4258,6785
|
||||
-1,-1
|
||||
7898,14780
|
||||
5421,1060
|
||||
7,24522
|
||||
2902,2192
|
||||
94883,594
|
||||
34000,143
|
||||
3834,1830
|
||||
218428,5
|
||||
36717,293
|
||||
74959,58
|
||||
19421,1905
|
||||
186551,34
|
||||
2571,515
|
||||
85921,50
|
||||
154580,26
|
||||
54677,287
|
||||
2586,2000
|
||||
153371,41
|
||||
33154,707
|
||||
43433,698
|
||||
33088,714
|
||||
81968,25
|
||||
12249,731
|
||||
20424,1228
|
||||
70188,474
|
||||
2248,2140
|
||||
11128,226
|
||||
2117,2046
|
||||
50095,580
|
||||
120438,1908
|
||||
10997,920
|
||||
2326,1444
|
||||
-1,-1
|
||||
700,40
|
||||
31471,626
|
||||
4119,749
|
||||
4349,500
|
||||
1078,217
|
||||
20126,301
|
||||
70523,119
|
||||
114632,26
|
||||
2945,1245
|
||||
385801,9
|
||||
-1,-1
|
||||
2412,1569
|
||||
43814,273
|
||||
207949,7
|
||||
86335,201
|
||||
7905,601
|
||||
732,1783
|
||||
21039,310
|
||||
4949,192
|
||||
7584,3066
|
||||
109360,36
|
||||
160,1500
|
||||
6733,7
|
||||
131888,8
|
||||
3128,2113
|
||||
209,7096
|
||||
75591,51
|
||||
15167,2780
|
||||
911570,62
|
||||
173436,25
|
||||
233645,275
|
||||
7596,14780
|
||||
8124,1060
|
||||
10438,43487
|
||||
1114,1155
|
||||
3497,2192
|
||||
3204,4796
|
||||
1087,984
|
||||
2230,2328
|
||||
51533,143
|
||||
4243,1830
|
||||
256985,5
|
||||
54424,293
|
||||
114691,58
|
||||
11700,2657
|
||||
211708,34
|
||||
1779,736
|
||||
24958,215
|
||||
46504,116
|
||||
66096,287
|
||||
3133,2000
|
||||
26682,198
|
||||
19337,1078
|
||||
25021,1062
|
||||
19290,1088
|
||||
89474,25
|
||||
7535,1320
|
||||
23251,1228
|
||||
82016,477
|
||||
876,3642
|
||||
7073,310
|
||||
2476,2046
|
||||
55411,580
|
||||
68801,2899
|
||||
4608,1740
|
||||
3079,1444
|
||||
8344,324
|
||||
540,53
|
||||
38395,626
|
||||
4176,749
|
||||
5519,500
|
||||
1394,217
|
||||
26127,379
|
||||
49730,249
|
||||
57206,91
|
||||
6106,1245
|
||||
185920,29
|
||||
3232,49
|
||||
4276,1569
|
||||
57314,273
|
||||
256794,7
|
||||
113862,201
|
||||
1969,538
|
||||
12346,671
|
||||
5606,149
|
||||
550,2450
|
||||
25557,310
|
||||
1391,538
|
||||
9325,3066
|
||||
131996,37
|
||||
214,1720
|
||||
8902,7
|
||||
148385,8
|
||||
6120,2113
|
||||
287,7096
|
||||
97368,51
|
||||
15591,2780
|
||||
1000405,67
|
||||
213696,25
|
||||
240082,340
|
Can't render this file because it has a wrong number of fields in line 25.
|
@@ -3,203 +3,676 @@
|
||||
{
|
||||
"id": 0,
|
||||
"name": "Overall",
|
||||
"rank": 2910,
|
||||
"rank": 2210,
|
||||
"level": 2277,
|
||||
"xp": 943515557
|
||||
"xp": 1150073045
|
||||
},
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Attack",
|
||||
"rank": 23988,
|
||||
"level": 99,
|
||||
"xp": 33320012
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "Defence",
|
||||
"rank": 3114,
|
||||
"level": 99,
|
||||
"xp": 51215128
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "Strength",
|
||||
"rank": 1203,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{ "id": 1, "name": "Attack", "rank": 24996, "level": 99, "xp": 30606377 },
|
||||
{ "id": 2, "name": "Defence", "rank": 4759, "level": 99, "xp": 40283500 },
|
||||
{ "id": 3, "name": "Strength", "rank": 1523, "level": 99, "xp": 171953134 },
|
||||
{
|
||||
"id": 4,
|
||||
"name": "Hitpoints",
|
||||
"rank": 2244,
|
||||
"rank": 1372,
|
||||
"level": 99,
|
||||
"xp": 147696928
|
||||
"xp": 196290925
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "Ranged",
|
||||
"rank": 3458,
|
||||
"level": 99,
|
||||
"xp": 159426771
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"name": "Prayer",
|
||||
"rank": 2746,
|
||||
"level": 99,
|
||||
"xp": 17744970
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "Magic",
|
||||
"rank": 2031,
|
||||
"level": 99,
|
||||
"xp": 91566360
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "Cooking",
|
||||
"rank": 161852,
|
||||
"level": 99,
|
||||
"xp": 13386665
|
||||
},
|
||||
{ "id": 5, "name": "Ranged", "rank": 5929, "level": 99, "xp": 118171038 },
|
||||
{ "id": 6, "name": "Prayer", "rank": 4560, "level": 99, "xp": 15170201 },
|
||||
{ "id": 7, "name": "Magic", "rank": 2503, "level": 99, "xp": 71406360 },
|
||||
{ "id": 8, "name": "Cooking", "rank": 141823, "level": 99, "xp": 13354119 },
|
||||
{
|
||||
"id": 9,
|
||||
"name": "Woodcutting",
|
||||
"rank": 22348,
|
||||
"rank": 25801,
|
||||
"level": 99,
|
||||
"xp": 18680181
|
||||
"xp": 19461878
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"name": "Fletching",
|
||||
"rank": 56125,
|
||||
"rank": 64826,
|
||||
"level": 99,
|
||||
"xp": 13456850
|
||||
"xp": 13473417
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"name": "Fishing",
|
||||
"rank": 26528,
|
||||
"level": 99,
|
||||
"xp": 16672481
|
||||
},
|
||||
{ "id": 11, "name": "Fishing", "rank": 23026, "level": 99, "xp": 16655688 },
|
||||
{
|
||||
"id": 12,
|
||||
"name": "Firemaking",
|
||||
"rank": 18672,
|
||||
"rank": 20829,
|
||||
"level": 99,
|
||||
"xp": 19123987
|
||||
"xp": 19483653
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"name": "Crafting",
|
||||
"rank": 48108,
|
||||
"rank": 58378,
|
||||
"level": 99,
|
||||
"xp": 14072560
|
||||
"xp": 14103220
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"name": "Smithing",
|
||||
"rank": 10956,
|
||||
"rank": 13188,
|
||||
"level": 99,
|
||||
"xp": 16552060
|
||||
"xp": 16573909
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"name": "Mining",
|
||||
"rank": 36283,
|
||||
"level": 99,
|
||||
"xp": 15061037
|
||||
},
|
||||
{ "id": 15, "name": "Mining", "rank": 27980, "level": 99, "xp": 14967150 },
|
||||
{
|
||||
"id": 16,
|
||||
"name": "Herblore",
|
||||
"rank": 40661,
|
||||
"rank": 17137,
|
||||
"level": 99,
|
||||
"xp": 13252766
|
||||
"xp": 14670565
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"name": "Agility",
|
||||
"rank": 8751,
|
||||
"level": 99,
|
||||
"xp": 16169665
|
||||
},
|
||||
{ "id": 17, "name": "Agility", "rank": 7114, "level": 99, "xp": 15760818 },
|
||||
{
|
||||
"id": 18,
|
||||
"name": "Thieving",
|
||||
"rank": 53839,
|
||||
"rank": 60803,
|
||||
"level": 99,
|
||||
"xp": 14058762
|
||||
"xp": 14390315
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"name": "Slayer",
|
||||
"rank": 1718,
|
||||
"level": 99,
|
||||
"xp": 57850681
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "Farming",
|
||||
"rank": 2117,
|
||||
"level": 99,
|
||||
"xp": 110369178
|
||||
},
|
||||
{ "id": 19, "name": "Slayer", "rank": 5352, "level": 99, "xp": 34669574 },
|
||||
{ "id": 20, "name": "Farming", "rank": 2456, "level": 99, "xp": 84892847 },
|
||||
{
|
||||
"id": 21,
|
||||
"name": "Runecraft",
|
||||
"rank": 4849,
|
||||
"rank": 5540,
|
||||
"level": 99,
|
||||
"xp": 22734071
|
||||
"xp": 22739567
|
||||
},
|
||||
{
|
||||
"id": 22,
|
||||
"name": "Hunter",
|
||||
"rank": 22326,
|
||||
"level": 99,
|
||||
"xp": 18052465
|
||||
},
|
||||
{ "id": 22, "name": "Hunter", "rank": 16368, "level": 99, "xp": 17968711 },
|
||||
{
|
||||
"id": 23,
|
||||
"name": "Construction",
|
||||
"rank": 1147,
|
||||
"rank": 1467,
|
||||
"level": 99,
|
||||
"xp": 18027875
|
||||
"xp": 18050183
|
||||
}
|
||||
],
|
||||
"activities": [
|
||||
{ "id": 0, "name": "League Points", "rank": -1, "score": -1 },
|
||||
{ "id": 1, "name": "Deadman Points", "rank": -1, "score": -1 },
|
||||
{ "id": 2, "name": "Bounty Hunter - Hunter", "rank": 28384, "score": 10 },
|
||||
{ "id": 3, "name": "Bounty Hunter - Rogue", "rank": 14076, "score": 3 },
|
||||
{
|
||||
"id": 0,
|
||||
"name": "League Points",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Deadman Points",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "Bounty Hunter - Hunter",
|
||||
"rank": 38135,
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "Bounty Hunter - Rogue",
|
||||
"rank": 19368,
|
||||
"score": 3
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"name": "Bounty Hunter (Legacy) - Hunter",
|
||||
"rank": 148183,
|
||||
"rank": 146220,
|
||||
"score": 8
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "Bounty Hunter (Legacy) - Rogue",
|
||||
"rank": 102684,
|
||||
"rank": 100923,
|
||||
"score": 7
|
||||
},
|
||||
{ "id": 6, "name": "Clue Scrolls (all)", "rank": 338, "score": 9641 },
|
||||
{ "id": 7, "name": "Clue Scrolls (beginner)", "rank": 1002, "score": 825 },
|
||||
{ "id": 8, "name": "Clue Scrolls (easy)", "rank": 114, "score": 6000 },
|
||||
{ "id": 9, "name": "Clue Scrolls (medium)", "rank": 2246, "score": 1606 },
|
||||
{ "id": 10, "name": "Clue Scrolls (hard)", "rank": 44261, "score": 298 },
|
||||
{ "id": 11, "name": "Clue Scrolls (elite)", "rank": 603, "score": 460 },
|
||||
{ "id": 12, "name": "Clue Scrolls (master)", "rank": 1238, "score": 452 },
|
||||
{ "id": 13, "name": "LMS - Rank", "rank": 15827, "score": 2521 },
|
||||
{ "id": 14, "name": "PvP Arena - Rank", "rank": -1, "score": -1 },
|
||||
{ "id": 15, "name": "Soul Wars Zeal", "rank": 7898, "score": 14780 },
|
||||
{ "id": 16, "name": "Rifts closed", "rank": 5421, "score": 1060 },
|
||||
{ "id": 17, "name": "Colosseum Glory", "rank": 7, "score": 24522 },
|
||||
{ "id": 18, "name": "Abyssal Sire", "rank": 2902, "score": 2192 },
|
||||
{ "id": 19, "name": "Alchemical Hydra", "rank": 94883, "score": 594 },
|
||||
{ "id": 20, "name": "Artio", "rank": 34000, "score": 143 },
|
||||
{ "id": 21, "name": "Barrows Chests", "rank": 3834, "score": 1830 },
|
||||
{ "id": 22, "name": "Bryophyta", "rank": 218428, "score": 5 },
|
||||
{ "id": 23, "name": "Callisto", "rank": 36717, "score": 293 },
|
||||
{ "id": 24, "name": "Calvar'ion", "rank": 74959, "score": 58 },
|
||||
{ "id": 25, "name": "Cerberus", "rank": 19421, "score": 1905 },
|
||||
{ "id": 26, "name": "Chambers of Xeric", "rank": 186551, "score": 34 },
|
||||
{
|
||||
"id": 6,
|
||||
"name": "Clue Scrolls (all)",
|
||||
"rank": 433,
|
||||
"score": 9802
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "Clue Scrolls (beginner)",
|
||||
"rank": 1542,
|
||||
"score": 825
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "Clue Scrolls (easy)",
|
||||
"rank": 158,
|
||||
"score": 6000
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"name": "Clue Scrolls (medium)",
|
||||
"rank": 2572,
|
||||
"score": 1606
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"name": "Clue Scrolls (hard)",
|
||||
"rank": 47979,
|
||||
"score": 311
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"name": "Clue Scrolls (elite)",
|
||||
"rank": 1081,
|
||||
"score": 460
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"name": "Clue Scrolls (master)",
|
||||
"rank": 880,
|
||||
"score": 600
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"name": "LMS - Rank",
|
||||
"rank": 4258,
|
||||
"score": 6785
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"name": "PvP Arena - Rank",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"name": "Soul Wars Zeal",
|
||||
"rank": 7596,
|
||||
"score": 14780
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"name": "Rifts closed",
|
||||
"rank": 8124,
|
||||
"score": 1060
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"name": "Colosseum Glory",
|
||||
"rank": 10438,
|
||||
"score": 43487
|
||||
},
|
||||
{
|
||||
"id": 18,
|
||||
"name": "Collections Logged",
|
||||
"rank": 1114,
|
||||
"score": 1155
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"name": "Abyssal Sire",
|
||||
"rank": 3497,
|
||||
"score": 2192
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "Alchemical Hydra",
|
||||
"rank": 3204,
|
||||
"score": 4796
|
||||
},
|
||||
{
|
||||
"id": 21,
|
||||
"name": "Amoxliatl",
|
||||
"rank": 1087,
|
||||
"score": 984
|
||||
},
|
||||
{
|
||||
"id": 22,
|
||||
"name": "Araxxor",
|
||||
"rank": 2230,
|
||||
"score": 2328
|
||||
},
|
||||
{
|
||||
"id": 23,
|
||||
"name": "Artio",
|
||||
"rank": 51533,
|
||||
"score": 143
|
||||
},
|
||||
{
|
||||
"id": 24,
|
||||
"name": "Barrows Chests",
|
||||
"rank": 4243,
|
||||
"score": 1830
|
||||
},
|
||||
{
|
||||
"id": 25,
|
||||
"name": "Bryophyta",
|
||||
"rank": 256985,
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"id": 26,
|
||||
"name": "Callisto",
|
||||
"rank": 54424,
|
||||
"score": 293
|
||||
},
|
||||
{
|
||||
"id": 27,
|
||||
"name": "Chambers of Xeric: Challenge Mode",
|
||||
"rank": 2571,
|
||||
"score": 515
|
||||
"name": "Calvar'ion",
|
||||
"rank": 114691,
|
||||
"score": 58
|
||||
},
|
||||
{
|
||||
"id": 28,
|
||||
"name": "Cerberus",
|
||||
"rank": 11700,
|
||||
"score": 2657
|
||||
},
|
||||
{
|
||||
"id": 29,
|
||||
"name": "Chambers of Xeric",
|
||||
"rank": 211708,
|
||||
"score": 34
|
||||
},
|
||||
{
|
||||
"id": 30,
|
||||
"name": "Chambers of Xeric: Challenge Mode",
|
||||
"rank": 1779,
|
||||
"score": 736
|
||||
},
|
||||
{
|
||||
"id": 31,
|
||||
"name": "Chaos Elemental",
|
||||
"rank": 24958,
|
||||
"score": 215
|
||||
},
|
||||
{
|
||||
"id": 32,
|
||||
"name": "Chaos Fanatic",
|
||||
"rank": 46504,
|
||||
"score": 116
|
||||
},
|
||||
{
|
||||
"id": 33,
|
||||
"name": "Commander Zilyana",
|
||||
"rank": 66096,
|
||||
"score": 287
|
||||
},
|
||||
{
|
||||
"id": 34,
|
||||
"name": "Corporeal Beast",
|
||||
"rank": 3133,
|
||||
"score": 2000
|
||||
},
|
||||
{
|
||||
"id": 35,
|
||||
"name": "Crazy Archaeologist",
|
||||
"rank": 26682,
|
||||
"score": 198
|
||||
},
|
||||
{
|
||||
"id": 36,
|
||||
"name": "Dagannoth Prime",
|
||||
"rank": 19337,
|
||||
"score": 1078
|
||||
},
|
||||
{
|
||||
"id": 37,
|
||||
"name": "Dagannoth Rex",
|
||||
"rank": 25021,
|
||||
"score": 1062
|
||||
},
|
||||
{
|
||||
"id": 38,
|
||||
"name": "Dagannoth Supreme",
|
||||
"rank": 19290,
|
||||
"score": 1088
|
||||
},
|
||||
{
|
||||
"id": 39,
|
||||
"name": "Deranged Archaeologist",
|
||||
"rank": 89474,
|
||||
"score": 25
|
||||
},
|
||||
{
|
||||
"id": 40,
|
||||
"name": "Duke Sucellus",
|
||||
"rank": 7535,
|
||||
"score": 1320
|
||||
},
|
||||
{
|
||||
"id": 41,
|
||||
"name": "General Graardor",
|
||||
"rank": 23251,
|
||||
"score": 1228
|
||||
},
|
||||
{
|
||||
"id": 42,
|
||||
"name": "Giant Mole",
|
||||
"rank": 82016,
|
||||
"score": 477
|
||||
},
|
||||
{
|
||||
"id": 43,
|
||||
"name": "Grotesque Guardians",
|
||||
"rank": 876,
|
||||
"score": 3642
|
||||
},
|
||||
{
|
||||
"id": 44,
|
||||
"name": "Hespori",
|
||||
"rank": 7073,
|
||||
"score": 310
|
||||
},
|
||||
{
|
||||
"id": 45,
|
||||
"name": "Kalphite Queen",
|
||||
"rank": 2476,
|
||||
"score": 2046
|
||||
},
|
||||
{
|
||||
"id": 46,
|
||||
"name": "King Black Dragon",
|
||||
"rank": 55411,
|
||||
"score": 580
|
||||
},
|
||||
{
|
||||
"id": 47,
|
||||
"name": "Kraken",
|
||||
"rank": 68801,
|
||||
"score": 2899
|
||||
},
|
||||
{
|
||||
"id": 48,
|
||||
"name": "Kree'Arra",
|
||||
"rank": 4608,
|
||||
"score": 1740
|
||||
},
|
||||
{
|
||||
"id": 49,
|
||||
"name": "K'ril Tsutsaroth",
|
||||
"rank": 3079,
|
||||
"score": 1444
|
||||
},
|
||||
{
|
||||
"id": 50,
|
||||
"name": "Lunar Chests",
|
||||
"rank": 8344,
|
||||
"score": 324
|
||||
},
|
||||
{
|
||||
"id": 51,
|
||||
"name": "Mimic",
|
||||
"rank": 540,
|
||||
"score": 53
|
||||
},
|
||||
{
|
||||
"id": 52,
|
||||
"name": "Nex",
|
||||
"rank": 38395,
|
||||
"score": 626
|
||||
},
|
||||
{
|
||||
"id": 53,
|
||||
"name": "Nightmare",
|
||||
"rank": 4176,
|
||||
"score": 749
|
||||
},
|
||||
{
|
||||
"id": 54,
|
||||
"name": "Phosani's Nightmare",
|
||||
"rank": 5519,
|
||||
"score": 500
|
||||
},
|
||||
{
|
||||
"id": 55,
|
||||
"name": "Obor",
|
||||
"rank": 1394,
|
||||
"score": 217
|
||||
},
|
||||
{
|
||||
"id": 56,
|
||||
"name": "Phantom Muspah",
|
||||
"rank": 26127,
|
||||
"score": 379
|
||||
},
|
||||
{
|
||||
"id": 57,
|
||||
"name": "Sarachnis",
|
||||
"rank": 49730,
|
||||
"score": 249
|
||||
},
|
||||
{
|
||||
"id": 58,
|
||||
"name": "Scorpia",
|
||||
"rank": 57206,
|
||||
"score": 91
|
||||
},
|
||||
{
|
||||
"id": 59,
|
||||
"name": "Scurrius",
|
||||
"rank": 6106,
|
||||
"score": 1245
|
||||
},
|
||||
{
|
||||
"id": 60,
|
||||
"name": "Skotizo",
|
||||
"rank": 185920,
|
||||
"score": 29
|
||||
},
|
||||
{
|
||||
"id": 61,
|
||||
"name": "Sol Heredit",
|
||||
"rank": 3232,
|
||||
"score": 49
|
||||
},
|
||||
{
|
||||
"id": 62,
|
||||
"name": "Spindel",
|
||||
"rank": 4276,
|
||||
"score": 1569
|
||||
},
|
||||
{
|
||||
"id": 63,
|
||||
"name": "Tempoross",
|
||||
"rank": 57314,
|
||||
"score": 273
|
||||
},
|
||||
{
|
||||
"id": 64,
|
||||
"name": "The Gauntlet",
|
||||
"rank": 256794,
|
||||
"score": 7
|
||||
},
|
||||
{
|
||||
"id": 65,
|
||||
"name": "The Corrupted Gauntlet",
|
||||
"rank": 113862,
|
||||
"score": 201
|
||||
},
|
||||
{ "id": 28, "name": "Chaos Elemental", "rank": 85921, "score": 50 },
|
||||
{ "id": 29, "name": "Chaos Fanatic", "rank": 154580, "score": 26 },
|
||||
{ "id": 30, "name": "Commander Zilyana", "rank": 54677, "score": 287 },
|
||||
{ "id": 31, "name": "Corporeal Beast", "rank": 2586, "score": 2000 },
|
||||
{ "id": 32, "name": "Crazy Archaeologist", "rank": 153371, "score": 41 },
|
||||
{ "id": 33, "name": "Dagannoth Prime", "rank": 33154, "score": 707 },
|
||||
{ "id": 34, "name": "Dagannoth Rex", "rank": 43433, "score": 698 },
|
||||
{ "id": 35, "name": "Dagannoth Supreme", "rank": 33088, "score": 714 },
|
||||
{ "id": 36, "name": "Deranged Archaeologist", "rank": 81968, "score": 25 },
|
||||
{ "id": 37, "name": "Duke Sucellus", "rank": 12249, "score": 731 },
|
||||
{ "id": 38, "name": "General Graardor", "rank": 20424, "score": 1228 },
|
||||
{ "id": 39, "name": "Giant Mole", "rank": 70188, "score": 474 },
|
||||
{ "id": 40, "name": "Grotesque Guardians", "rank": 2248, "score": 2140 },
|
||||
{ "id": 41, "name": "Hespori", "rank": 11128, "score": 226 },
|
||||
{ "id": 42, "name": "Kalphite Queen", "rank": 2117, "score": 2046 },
|
||||
{ "id": 43, "name": "King Black Dragon", "rank": 50095, "score": 580 },
|
||||
{ "id": 44, "name": "Kraken", "rank": 120438, "score": 1908 },
|
||||
{ "id": 45, "name": "Kree'Arra", "rank": 10997, "score": 920 },
|
||||
{ "id": 46, "name": "K'ril Tsutsaroth", "rank": 2326, "score": 1444 },
|
||||
{ "id": 47, "name": "Lunar Chests", "rank": -1, "score": -1 },
|
||||
{ "id": 48, "name": "Mimic", "rank": 700, "score": 40 },
|
||||
{ "id": 49, "name": "Nex", "rank": 31471, "score": 626 },
|
||||
{ "id": 50, "name": "Nightmare", "rank": 4119, "score": 749 },
|
||||
{ "id": 51, "name": "Phosani's Nightmare", "rank": 4349, "score": 500 },
|
||||
{ "id": 52, "name": "Obor", "rank": 1078, "score": 217 },
|
||||
{ "id": 53, "name": "Phantom Muspah", "rank": 20126, "score": 301 },
|
||||
{ "id": 54, "name": "Sarachnis", "rank": 70523, "score": 119 },
|
||||
{ "id": 55, "name": "Scorpia", "rank": 114632, "score": 26 },
|
||||
{ "id": 56, "name": "Scurrius", "rank": 2945, "score": 1245 },
|
||||
{ "id": 57, "name": "Skotizo", "rank": 385801, "score": 9 },
|
||||
{ "id": 58, "name": "Sol Heredit", "rank": -1, "score": -1 },
|
||||
{ "id": 59, "name": "Spindel", "rank": 2412, "score": 1569 },
|
||||
{ "id": 60, "name": "Tempoross", "rank": 43814, "score": 273 },
|
||||
{ "id": 61, "name": "The Gauntlet", "rank": 207949, "score": 7 },
|
||||
{ "id": 62, "name": "The Corrupted Gauntlet", "rank": 86335, "score": 201 },
|
||||
{ "id": 63, "name": "The Leviathan", "rank": 7905, "score": 601 },
|
||||
{ "id": 64, "name": "The Whisperer", "rank": 732, "score": 1783 },
|
||||
{ "id": 65, "name": "Theatre of Blood", "rank": 21039, "score": 310 },
|
||||
{
|
||||
"id": 66,
|
||||
"name": "Theatre of Blood: Hard Mode",
|
||||
"rank": 4949,
|
||||
"score": 192
|
||||
"name": "The Hueycoatl",
|
||||
"rank": 1969,
|
||||
"score": 538
|
||||
},
|
||||
{
|
||||
"id": 67,
|
||||
"name": "Thermonuclear Smoke Devil",
|
||||
"rank": 7584,
|
||||
"score": 3066
|
||||
"name": "The Leviathan",
|
||||
"rank": 12346,
|
||||
"score": 671
|
||||
},
|
||||
{
|
||||
"id": 68,
|
||||
"name": "The Royal Titans",
|
||||
"rank": 5606,
|
||||
"score": 149
|
||||
},
|
||||
{ "id": 68, "name": "Tombs of Amascut", "rank": 109360, "score": 36 },
|
||||
{
|
||||
"id": 69,
|
||||
"name": "Tombs of Amascut: Expert Mode",
|
||||
"rank": 160,
|
||||
"score": 1500
|
||||
"name": "The Whisperer",
|
||||
"rank": 550,
|
||||
"score": 2450
|
||||
},
|
||||
{ "id": 70, "name": "TzKal-Zuk", "rank": 6733, "score": 7 },
|
||||
{ "id": 71, "name": "TzTok-Jad", "rank": 131888, "score": 8 },
|
||||
{ "id": 72, "name": "Vardorvis", "rank": 3128, "score": 2113 },
|
||||
{ "id": 73, "name": "Venenatis", "rank": 209, "score": 7096 },
|
||||
{ "id": 74, "name": "Vet'ion", "rank": 75591, "score": 51 },
|
||||
{ "id": 75, "name": "Vorkath", "rank": 15167, "score": 2780 },
|
||||
{ "id": 76, "name": "Wintertodt", "rank": 911570, "score": 62 },
|
||||
{ "id": 77, "name": "Zalcano", "rank": 173436, "score": 25 },
|
||||
{ "id": 78, "name": "Zulrah", "rank": 233645, "score": 275 }
|
||||
{
|
||||
"id": 70,
|
||||
"name": "Theatre of Blood",
|
||||
"rank": 25557,
|
||||
"score": 310
|
||||
},
|
||||
{
|
||||
"id": 71,
|
||||
"name": "Theatre of Blood: Hard Mode",
|
||||
"rank": 1391,
|
||||
"score": 538
|
||||
},
|
||||
{
|
||||
"id": 72,
|
||||
"name": "Thermonuclear Smoke Devil",
|
||||
"rank": 9325,
|
||||
"score": 3066
|
||||
},
|
||||
{
|
||||
"id": 73,
|
||||
"name": "Tombs of Amascut",
|
||||
"rank": 131996,
|
||||
"score": 37
|
||||
},
|
||||
{
|
||||
"id": 74,
|
||||
"name": "Tombs of Amascut: Expert Mode",
|
||||
"rank": 214,
|
||||
"score": 1720
|
||||
},
|
||||
{
|
||||
"id": 75,
|
||||
"name": "TzKal-Zuk",
|
||||
"rank": 8902,
|
||||
"score": 7
|
||||
},
|
||||
{
|
||||
"id": 76,
|
||||
"name": "TzTok-Jad",
|
||||
"rank": 148385,
|
||||
"score": 8
|
||||
},
|
||||
{
|
||||
"id": 77,
|
||||
"name": "Vardorvis",
|
||||
"rank": 6120,
|
||||
"score": 2113
|
||||
},
|
||||
{
|
||||
"id": 78,
|
||||
"name": "Venenatis",
|
||||
"rank": 287,
|
||||
"score": 7096
|
||||
},
|
||||
{
|
||||
"id": 79,
|
||||
"name": "Vet'ion",
|
||||
"rank": 97368,
|
||||
"score": 51
|
||||
},
|
||||
{
|
||||
"id": 80,
|
||||
"name": "Vorkath",
|
||||
"rank": 15591,
|
||||
"score": 2780
|
||||
},
|
||||
{
|
||||
"id": 81,
|
||||
"name": "Wintertodt",
|
||||
"rank": 1000405,
|
||||
"score": 67
|
||||
},
|
||||
{
|
||||
"id": 82,
|
||||
"name": "Zalcano",
|
||||
"rank": 213696,
|
||||
"score": 25
|
||||
},
|
||||
{
|
||||
"id": 83,
|
||||
"name": "Zulrah",
|
||||
"rank": 240082,
|
||||
"score": 340
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@@ -15,7 +15,10 @@ import {
|
||||
InvalidFormatError,
|
||||
BH_MODES,
|
||||
parseJsonStats,
|
||||
HiscoresResponse
|
||||
HiscoresResponse,
|
||||
InvalidRSNError,
|
||||
PlayerNotFoundError,
|
||||
HiScoresError
|
||||
} from '../src/index';
|
||||
|
||||
const B0ATY_NAME = 'B0ATY';
|
||||
@@ -24,6 +27,8 @@ const LYNX_TITAN_SPACE_NAME = 'lYnX tiTaN';
|
||||
const LYNX_TITAN_UNDERSCORE_NAME = 'lYnX_tiTaN';
|
||||
const LYNX_TITAN_HYPHEN_NAME = 'lYnX-tiTaN';
|
||||
const LYNX_TITAN_FORMATTED_NAME = 'Lynx Titan';
|
||||
const NON_EXISTENT_NAME = 'nonExistent';
|
||||
const ERROR_NAME = 'errorName';
|
||||
|
||||
const attackTopPage = readFileSync(`${__dirname}/attackTopPage.html`, 'utf8');
|
||||
const b0atyNamePage = readFileSync(`${__dirname}/b0atyNamePage.html`, 'utf8');
|
||||
@@ -57,6 +62,12 @@ jest.spyOn(axios, 'get').mockImplementation((url) => {
|
||||
if (getStatsURL('main', LYNX_TITAN_FORMATTED_NAME, true) === url) {
|
||||
return Promise.resolve({ status: 200, data: lynxTitanStats });
|
||||
}
|
||||
if (getPlayerTableURL('main', NON_EXISTENT_NAME) === url) {
|
||||
return Promise.resolve({ data: '<html></html>' });
|
||||
}
|
||||
if (getPlayerTableURL('main', ERROR_NAME)) {
|
||||
return Promise.reject();
|
||||
}
|
||||
throw new Error(`No mock response for URL: ${url}`);
|
||||
});
|
||||
|
||||
@@ -103,8 +114,11 @@ test('Parse CSV to json', () => {
|
||||
37,225
|
||||
25,1110
|
||||
7827,43249
|
||||
1114,1155
|
||||
382,2780
|
||||
944,3000
|
||||
561,398429
|
||||
37,111
|
||||
704,892
|
||||
1981,1452
|
||||
4981,23
|
||||
@@ -148,7 +162,9 @@ test('Parse CSV to json', () => {
|
||||
18823,23
|
||||
63,375
|
||||
2870,6
|
||||
891,9102
|
||||
2871,7
|
||||
5606,149
|
||||
2872,8
|
||||
6984,138
|
||||
23,923141
|
||||
@@ -205,6 +221,7 @@ test('Parse CSV to json', () => {
|
||||
soulWarsZeal: { rank: 37, score: 225 },
|
||||
riftsClosed: { rank: 25, score: 1110 },
|
||||
colosseumGlory: { rank: 7827, score: 43249 },
|
||||
collectionsLogged: { rank: 1114, score: 1155 },
|
||||
clues: {
|
||||
all: { rank: 32, score: 12148 },
|
||||
beginner: { rank: 3105, score: 76 },
|
||||
@@ -217,6 +234,8 @@ test('Parse CSV to json', () => {
|
||||
bosses: {
|
||||
abyssalSire: { rank: 382, score: 2780 },
|
||||
alchemicalHydra: { rank: 944, score: 3000 },
|
||||
amoxliatl: { rank: 561, score: 398429 },
|
||||
araxxor: { rank: 37, score: 111 },
|
||||
artio: { rank: 704, score: 892 },
|
||||
barrows: { rank: 1981, score: 1452 },
|
||||
bryophyta: { rank: 4981, score: 23 },
|
||||
@@ -260,7 +279,9 @@ test('Parse CSV to json', () => {
|
||||
tempoross: { rank: 18823, score: 23 },
|
||||
gauntlet: { rank: 63, score: 375 },
|
||||
corruptedGauntlet: { rank: 2870, score: 6 },
|
||||
hueycoatl: { rank: 891, score: 9102 },
|
||||
leviathan: { rank: 2871, score: 7 },
|
||||
royalTitans: { rank: 5606, score: 149 },
|
||||
whisperer: { rank: 2872, score: 8 },
|
||||
theatreOfBlood: { rank: 6984, score: 138 },
|
||||
theatreOfBloodHardMode: { rank: 23, score: 923141 },
|
||||
@@ -312,7 +333,15 @@ describe('Get name format', () => {
|
||||
expect(data).toBe(B0ATY_FORMATTED_NAME);
|
||||
});
|
||||
it('throws an error for a name with invalid characters', async () => {
|
||||
await expect(getRSNFormat('b&aty')).rejects.toBeTruthy();
|
||||
await expect(getRSNFormat('b&aty')).rejects.toThrow(InvalidRSNError);
|
||||
});
|
||||
it('throws an error for a non-existent player', async () => {
|
||||
await expect(getRSNFormat(NON_EXISTENT_NAME)).rejects.toThrow(
|
||||
PlayerNotFoundError
|
||||
);
|
||||
});
|
||||
it('throws an error for a hiscores issue', async () => {
|
||||
await expect(getRSNFormat(ERROR_NAME)).rejects.toThrow(HiScoresError);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -499,7 +528,7 @@ test('Get attack top page', async () => {
|
||||
|
||||
test('Get non-existent player', async () => {
|
||||
getStats('fishy').catch((err) => {
|
||||
if (err.response) {
|
||||
if (err?.response) {
|
||||
expect(err.response.status).toBe(404);
|
||||
}
|
||||
});
|
||||
|
@@ -1,14 +1,68 @@
|
||||
{
|
||||
"skills": [
|
||||
{ "id": 0, "name": "Overall", "rank": 1, "level": 2277, "xp": 4600000000 },
|
||||
{ "id": 1, "name": "Attack", "rank": 15, "level": 99, "xp": 200000000 },
|
||||
{ "id": 2, "name": "Defence", "rank": 28, "level": 99, "xp": 200000000 },
|
||||
{ "id": 3, "name": "Strength", "rank": 18, "level": 99, "xp": 200000000 },
|
||||
{ "id": 4, "name": "Hitpoints", "rank": 7, "level": 99, "xp": 200000000 },
|
||||
{ "id": 5, "name": "Ranged", "rank": 8, "level": 99, "xp": 200000000 },
|
||||
{ "id": 6, "name": "Prayer", "rank": 11, "level": 99, "xp": 200000000 },
|
||||
{ "id": 7, "name": "Magic", "rank": 30, "level": 99, "xp": 200000000 },
|
||||
{ "id": 8, "name": "Cooking", "rank": 154, "level": 99, "xp": 200000000 },
|
||||
{
|
||||
"id": 0,
|
||||
"name": "Overall",
|
||||
"rank": 1,
|
||||
"level": 2277,
|
||||
"xp": 4600000000
|
||||
},
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Attack",
|
||||
"rank": 15,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "Defence",
|
||||
"rank": 28,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "Strength",
|
||||
"rank": 18,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"name": "Hitpoints",
|
||||
"rank": 7,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"name": "Ranged",
|
||||
"rank": 8,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"name": "Prayer",
|
||||
"rank": 11,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "Magic",
|
||||
"rank": 30,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "Cooking",
|
||||
"rank": 149,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"name": "Woodcutting",
|
||||
@@ -16,8 +70,20 @@
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{ "id": 10, "name": "Fletching", "rank": 12, "level": 99, "xp": 200000000 },
|
||||
{ "id": 11, "name": "Fishing", "rank": 9, "level": 99, "xp": 200000000 },
|
||||
{
|
||||
"id": 10,
|
||||
"name": "Fletching",
|
||||
"rank": 12,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"name": "Fishing",
|
||||
"rank": 9,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"name": "Firemaking",
|
||||
@@ -25,16 +91,76 @@
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{ "id": 13, "name": "Crafting", "rank": 4, "level": 99, "xp": 200000000 },
|
||||
{ "id": 14, "name": "Smithing", "rank": 3, "level": 99, "xp": 200000000 },
|
||||
{ "id": 15, "name": "Mining", "rank": 24, "level": 99, "xp": 200000000 },
|
||||
{ "id": 16, "name": "Herblore", "rank": 5, "level": 99, "xp": 200000000 },
|
||||
{ "id": 17, "name": "Agility", "rank": 24, "level": 99, "xp": 200000000 },
|
||||
{ "id": 18, "name": "Thieving", "rank": 12, "level": 99, "xp": 200000000 },
|
||||
{ "id": 19, "name": "Slayer", "rank": 2, "level": 99, "xp": 200000000 },
|
||||
{ "id": 20, "name": "Farming", "rank": 19, "level": 99, "xp": 200000000 },
|
||||
{ "id": 21, "name": "Runecraft", "rank": 6, "level": 99, "xp": 200000000 },
|
||||
{ "id": 22, "name": "Hunter", "rank": 4, "level": 99, "xp": 200000000 },
|
||||
{
|
||||
"id": 13,
|
||||
"name": "Crafting",
|
||||
"rank": 4,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"name": "Smithing",
|
||||
"rank": 3,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"name": "Mining",
|
||||
"rank": 23,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"name": "Herblore",
|
||||
"rank": 5,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"name": "Agility",
|
||||
"rank": 24,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 18,
|
||||
"name": "Thieving",
|
||||
"rank": 12,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"name": "Slayer",
|
||||
"rank": 2,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "Farming",
|
||||
"rank": 19,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 21,
|
||||
"name": "Runecraft",
|
||||
"rank": 6,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 22,
|
||||
"name": "Hunter",
|
||||
"rank": 3,
|
||||
"level": 99,
|
||||
"xp": 200000000
|
||||
},
|
||||
{
|
||||
"id": 23,
|
||||
"name": "Construction",
|
||||
@@ -44,10 +170,30 @@
|
||||
}
|
||||
],
|
||||
"activities": [
|
||||
{ "id": 0, "name": "League Points", "rank": -1, "score": -1 },
|
||||
{ "id": 1, "name": "Deadman Points", "rank": -1, "score": -1 },
|
||||
{ "id": 2, "name": "Bounty Hunter - Hunter", "rank": -1, "score": -1 },
|
||||
{ "id": 3, "name": "Bounty Hunter - Rogue", "rank": -1, "score": -1 },
|
||||
{
|
||||
"id": 0,
|
||||
"name": "League Points",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Deadman Points",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"name": "Bounty Hunter - Hunter",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"name": "Bounty Hunter - Rogue",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"name": "Bounty Hunter (Legacy) - Hunter",
|
||||
@@ -60,93 +206,473 @@
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{ "id": 6, "name": "Clue Scrolls (all)", "rank": 832420, "score": 22 },
|
||||
{ "id": 7, "name": "Clue Scrolls (beginner)", "rank": -1, "score": -1 },
|
||||
{ "id": 8, "name": "Clue Scrolls (easy)", "rank": -1, "score": -1 },
|
||||
{ "id": 9, "name": "Clue Scrolls (medium)", "rank": -1, "score": -1 },
|
||||
{ "id": 10, "name": "Clue Scrolls (hard)", "rank": 517091, "score": 22 },
|
||||
{ "id": 11, "name": "Clue Scrolls (elite)", "rank": -1, "score": -1 },
|
||||
{ "id": 12, "name": "Clue Scrolls (master)", "rank": -1, "score": -1 },
|
||||
{ "id": 13, "name": "LMS - Rank", "rank": -1, "score": -1 },
|
||||
{ "id": 14, "name": "PvP Arena - Rank", "rank": -1, "score": -1 },
|
||||
{ "id": 15, "name": "Soul Wars Zeal", "rank": -1, "score": -1 },
|
||||
{ "id": 16, "name": "Rifts closed", "rank": -1, "score": -1 },
|
||||
{ "id": 17, "name": "Colosseum Glory", "rank": -1, "score": -1 },
|
||||
{ "id": 18, "name": "Abyssal Sire", "rank": -1, "score": -1 },
|
||||
{ "id": 19, "name": "Alchemical Hydra", "rank": -1, "score": -1 },
|
||||
{ "id": 20, "name": "Artio", "rank": -1, "score": -1 },
|
||||
{ "id": 21, "name": "Barrows Chests", "rank": -1, "score": -1 },
|
||||
{ "id": 22, "name": "Bryophyta", "rank": -1, "score": -1 },
|
||||
{ "id": 23, "name": "Callisto", "rank": -1, "score": -1 },
|
||||
{ "id": 24, "name": "Calvar'ion", "rank": -1, "score": -1 },
|
||||
{ "id": 25, "name": "Cerberus", "rank": -1, "score": -1 },
|
||||
{ "id": 26, "name": "Chambers of Xeric", "rank": -1, "score": -1 },
|
||||
{
|
||||
"id": 6,
|
||||
"name": "Clue Scrolls (all)",
|
||||
"rank": 937868,
|
||||
"score": 22
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"name": "Clue Scrolls (beginner)",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 8,
|
||||
"name": "Clue Scrolls (easy)",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 9,
|
||||
"name": "Clue Scrolls (medium)",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 10,
|
||||
"name": "Clue Scrolls (hard)",
|
||||
"rank": 578038,
|
||||
"score": 22
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"name": "Clue Scrolls (elite)",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"name": "Clue Scrolls (master)",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"name": "LMS - Rank",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"name": "PvP Arena - Rank",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"name": "Soul Wars Zeal",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"name": "Rifts closed",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"name": "Colosseum Glory",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 18,
|
||||
"name": "Collections Logged",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"name": "Abyssal Sire",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"name": "Alchemical Hydra",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 21,
|
||||
"name": "Amoxliatl",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 22,
|
||||
"name": "Araxxor",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 23,
|
||||
"name": "Artio",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 24,
|
||||
"name": "Barrows Chests",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 25,
|
||||
"name": "Bryophyta",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 26,
|
||||
"name": "Callisto",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 27,
|
||||
"name": "Calvar'ion",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 28,
|
||||
"name": "Cerberus",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 29,
|
||||
"name": "Chambers of Xeric",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 30,
|
||||
"name": "Chambers of Xeric: Challenge Mode",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{ "id": 28, "name": "Chaos Elemental", "rank": -1, "score": -1 },
|
||||
{ "id": 29, "name": "Chaos Fanatic", "rank": -1, "score": -1 },
|
||||
{ "id": 30, "name": "Commander Zilyana", "rank": -1, "score": -1 },
|
||||
{ "id": 31, "name": "Corporeal Beast", "rank": -1, "score": -1 },
|
||||
{ "id": 32, "name": "Crazy Archaeologist", "rank": -1, "score": -1 },
|
||||
{ "id": 33, "name": "Dagannoth Prime", "rank": -1, "score": -1 },
|
||||
{ "id": 34, "name": "Dagannoth Rex", "rank": -1, "score": -1 },
|
||||
{ "id": 35, "name": "Dagannoth Supreme", "rank": -1, "score": -1 },
|
||||
{ "id": 36, "name": "Deranged Archaeologist", "rank": -1, "score": -1 },
|
||||
{ "id": 37, "name": "Duke Sucellus", "rank": -1, "score": -1 },
|
||||
{ "id": 38, "name": "General Graardor", "rank": -1, "score": -1 },
|
||||
{ "id": 39, "name": "Giant Mole", "rank": -1, "score": -1 },
|
||||
{ "id": 40, "name": "Grotesque Guardians", "rank": -1, "score": -1 },
|
||||
{ "id": 41, "name": "Hespori", "rank": -1, "score": -1 },
|
||||
{ "id": 42, "name": "Kalphite Queen", "rank": -1, "score": -1 },
|
||||
{ "id": 43, "name": "King Black Dragon", "rank": -1, "score": -1 },
|
||||
{ "id": 44, "name": "Kraken", "rank": -1, "score": -1 },
|
||||
{ "id": 45, "name": "Kree'Arra", "rank": -1, "score": -1 },
|
||||
{ "id": 46, "name": "K'ril Tsutsaroth", "rank": -1, "score": -1 },
|
||||
{ "id": 47, "name": "Lunar Chests", "rank": -1, "score": -1 },
|
||||
{ "id": 48, "name": "Mimic", "rank": -1, "score": -1 },
|
||||
{ "id": 49, "name": "Nex", "rank": -1, "score": -1 },
|
||||
{ "id": 50, "name": "Nightmare", "rank": -1, "score": -1 },
|
||||
{ "id": 51, "name": "Phosani's Nightmare", "rank": -1, "score": -1 },
|
||||
{ "id": 52, "name": "Obor", "rank": -1, "score": -1 },
|
||||
{ "id": 53, "name": "Phantom Muspah", "rank": -1, "score": -1 },
|
||||
{ "id": 54, "name": "Sarachnis", "rank": -1, "score": -1 },
|
||||
{ "id": 55, "name": "Scorpia", "rank": -1, "score": -1 },
|
||||
{ "id": 56, "name": "Scurrius", "rank": -1, "score": -1 },
|
||||
{ "id": 57, "name": "Skotizo", "rank": -1, "score": -1 },
|
||||
{ "id": 58, "name": "Sol Heredit", "rank": -1, "score": -1 },
|
||||
{ "id": 59, "name": "Spindel", "rank": -1, "score": -1 },
|
||||
{ "id": 60, "name": "Tempoross", "rank": -1, "score": -1 },
|
||||
{ "id": 61, "name": "The Gauntlet", "rank": -1, "score": -1 },
|
||||
{ "id": 62, "name": "The Corrupted Gauntlet", "rank": -1, "score": -1 },
|
||||
{ "id": 63, "name": "The Leviathan", "rank": -1, "score": -1 },
|
||||
{ "id": 64, "name": "The Whisperer", "rank": -1, "score": -1 },
|
||||
{ "id": 65, "name": "Theatre of Blood", "rank": -1, "score": -1 },
|
||||
{
|
||||
"id": 31,
|
||||
"name": "Chaos Elemental",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 32,
|
||||
"name": "Chaos Fanatic",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 33,
|
||||
"name": "Commander Zilyana",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 34,
|
||||
"name": "Corporeal Beast",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 35,
|
||||
"name": "Crazy Archaeologist",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 36,
|
||||
"name": "Dagannoth Prime",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 37,
|
||||
"name": "Dagannoth Rex",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 38,
|
||||
"name": "Dagannoth Supreme",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 39,
|
||||
"name": "Deranged Archaeologist",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 40,
|
||||
"name": "Duke Sucellus",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 41,
|
||||
"name": "General Graardor",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 42,
|
||||
"name": "Giant Mole",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 43,
|
||||
"name": "Grotesque Guardians",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 44,
|
||||
"name": "Hespori",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 45,
|
||||
"name": "Kalphite Queen",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 46,
|
||||
"name": "King Black Dragon",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 47,
|
||||
"name": "Kraken",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 48,
|
||||
"name": "Kree'Arra",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 49,
|
||||
"name": "K'ril Tsutsaroth",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 50,
|
||||
"name": "Lunar Chests",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 51,
|
||||
"name": "Mimic",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 52,
|
||||
"name": "Nex",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 53,
|
||||
"name": "Nightmare",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 54,
|
||||
"name": "Phosani's Nightmare",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 55,
|
||||
"name": "Obor",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 56,
|
||||
"name": "Phantom Muspah",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 57,
|
||||
"name": "Sarachnis",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 58,
|
||||
"name": "Scorpia",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 59,
|
||||
"name": "Scurrius",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 60,
|
||||
"name": "Skotizo",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 61,
|
||||
"name": "Sol Heredit",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 62,
|
||||
"name": "Spindel",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 63,
|
||||
"name": "Tempoross",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 64,
|
||||
"name": "The Gauntlet",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 65,
|
||||
"name": "The Corrupted Gauntlet",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 66,
|
||||
"name": "The Hueycoatl",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 67,
|
||||
"name": "The Leviathan",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 68,
|
||||
"name": "The Royal Titans",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 69,
|
||||
"name": "The Whisperer",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 70,
|
||||
"name": "Theatre of Blood",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 71,
|
||||
"name": "Theatre of Blood: Hard Mode",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{ "id": 67, "name": "Thermonuclear Smoke Devil", "rank": -1, "score": -1 },
|
||||
{ "id": 68, "name": "Tombs of Amascut", "rank": -1, "score": -1 },
|
||||
{
|
||||
"id": 69,
|
||||
"id": 72,
|
||||
"name": "Thermonuclear Smoke Devil",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 73,
|
||||
"name": "Tombs of Amascut",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 74,
|
||||
"name": "Tombs of Amascut: Expert Mode",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{ "id": 70, "name": "TzKal-Zuk", "rank": -1, "score": -1 },
|
||||
{ "id": 71, "name": "TzTok-Jad", "rank": 251, "score": 186 },
|
||||
{ "id": 72, "name": "Vardorvis", "rank": -1, "score": -1 },
|
||||
{ "id": 73, "name": "Venenatis", "rank": -1, "score": -1 },
|
||||
{ "id": 74, "name": "Vet'ion", "rank": -1, "score": -1 },
|
||||
{ "id": 75, "name": "Vorkath", "rank": -1, "score": -1 },
|
||||
{ "id": 76, "name": "Wintertodt", "rank": -1, "score": -1 },
|
||||
{ "id": 77, "name": "Zalcano", "rank": -1, "score": -1 },
|
||||
{ "id": 78, "name": "Zulrah", "rank": -1, "score": -1 }
|
||||
{
|
||||
"id": 75,
|
||||
"name": "TzKal-Zuk",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 76,
|
||||
"name": "TzTok-Jad",
|
||||
"rank": 317,
|
||||
"score": 186
|
||||
},
|
||||
{
|
||||
"id": 77,
|
||||
"name": "Vardorvis",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 78,
|
||||
"name": "Venenatis",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 79,
|
||||
"name": "Vet'ion",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 80,
|
||||
"name": "Vorkath",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 81,
|
||||
"name": "Wintertodt",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 82,
|
||||
"name": "Zalcano",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
},
|
||||
{
|
||||
"id": 83,
|
||||
"name": "Zulrah",
|
||||
"rank": -1,
|
||||
"score": -1
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "osrs-json-hiscores",
|
||||
"version": "2.18.0",
|
||||
"version": "2.21.1",
|
||||
"description": "The Old School Runescape API wrapper that does more!",
|
||||
"main": "lib/index.js",
|
||||
"types": "lib/index.d.ts",
|
||||
|
@@ -45,7 +45,8 @@ import {
|
||||
FORMATTED_SOUL_WARS,
|
||||
FORMATTED_RIFTS_CLOSED,
|
||||
FORMATTED_DEADMAN_POINTS,
|
||||
FORMATTED_COLOSSEUM_GLORY
|
||||
FORMATTED_COLOSSEUM_GLORY,
|
||||
FORMATTED_COLLECTIONS_LOGGED
|
||||
} from './utils';
|
||||
|
||||
/**
|
||||
@@ -85,11 +86,12 @@ export async function getOfficialStats(
|
||||
*/
|
||||
export async function getRSNFormat(
|
||||
rsn: string,
|
||||
config?: AxiosRequestConfig
|
||||
config?: AxiosRequestConfig,
|
||||
mode: Gamemode = 'main'
|
||||
): Promise<string> {
|
||||
validateRSN(rsn);
|
||||
|
||||
const url = getPlayerTableURL('main', rsn);
|
||||
const url = getPlayerTableURL(mode, rsn);
|
||||
try {
|
||||
const response = await httpGet<string | Buffer | BinaryData | undefined>(
|
||||
url,
|
||||
@@ -102,10 +104,10 @@ export async function getRSNFormat(
|
||||
if (anchor) {
|
||||
return rsnFromElement(anchor);
|
||||
}
|
||||
throw new PlayerNotFoundError();
|
||||
} catch {
|
||||
throw new HiScoresError();
|
||||
}
|
||||
throw new PlayerNotFoundError();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -164,6 +166,7 @@ export function parseJsonStats(json: HiscoresResponse): Stats {
|
||||
const soulWarsZeal = getActivity(FORMATTED_SOUL_WARS);
|
||||
const riftsClosed = getActivity(FORMATTED_RIFTS_CLOSED);
|
||||
const colosseumGlory = getActivity(FORMATTED_COLOSSEUM_GLORY);
|
||||
const collectionsLogged = getActivity(FORMATTED_COLLECTIONS_LOGGED);
|
||||
|
||||
const stats: Stats = {
|
||||
skills,
|
||||
@@ -175,6 +178,7 @@ export function parseJsonStats(json: HiscoresResponse): Stats {
|
||||
soulWarsZeal,
|
||||
riftsClosed,
|
||||
colosseumGlory,
|
||||
collectionsLogged,
|
||||
clues,
|
||||
bosses
|
||||
};
|
||||
@@ -224,8 +228,14 @@ export function parseStats(csv: string): Stats {
|
||||
const [leaguePoints, deadmanPoints] = activityObjects.splice(0, 2);
|
||||
const bhObjects = activityObjects.splice(0, BH_MODES.length);
|
||||
const clueObjects = activityObjects.splice(0, CLUES.length);
|
||||
const [lastManStanding, pvpArena, soulWarsZeal, riftsClosed, colosseumGlory] =
|
||||
activityObjects.splice(0, 5);
|
||||
const [
|
||||
lastManStanding,
|
||||
pvpArena,
|
||||
soulWarsZeal,
|
||||
riftsClosed,
|
||||
colosseumGlory,
|
||||
collectionsLogged
|
||||
] = activityObjects.splice(0, 6);
|
||||
const bossObjects = activityObjects.splice(0, BOSSES.length);
|
||||
|
||||
const skills: Skills = skillObjects.reduce<Skills>((prev, curr, index) => {
|
||||
@@ -262,6 +272,7 @@ export function parseStats(csv: string): Stats {
|
||||
soulWarsZeal,
|
||||
riftsClosed,
|
||||
colosseumGlory,
|
||||
collectionsLogged,
|
||||
clues,
|
||||
bosses
|
||||
};
|
||||
|
@@ -69,6 +69,8 @@ export type BH = { [Type in BHType]: Activity };
|
||||
export type Boss =
|
||||
| 'abyssalSire'
|
||||
| 'alchemicalHydra'
|
||||
| 'amoxliatl'
|
||||
| 'araxxor'
|
||||
| 'artio'
|
||||
| 'barrows'
|
||||
| 'bryophyta'
|
||||
@@ -112,7 +114,9 @@ export type Boss =
|
||||
| 'tempoross'
|
||||
| 'gauntlet'
|
||||
| 'corruptedGauntlet'
|
||||
| 'hueycoatl'
|
||||
| 'leviathan'
|
||||
| 'royalTitans'
|
||||
| 'whisperer'
|
||||
| 'theatreOfBlood'
|
||||
| 'theatreOfBloodHardMode'
|
||||
@@ -150,6 +154,7 @@ export type ActivityName =
|
||||
| 'eliteClues'
|
||||
| 'masterClues'
|
||||
| 'colosseumGlory'
|
||||
| 'collectionsLogged'
|
||||
| Boss;
|
||||
|
||||
export interface Stats {
|
||||
@@ -169,6 +174,7 @@ export interface Stats {
|
||||
soulWarsZeal: Activity;
|
||||
riftsClosed: Activity;
|
||||
colosseumGlory: Activity;
|
||||
collectionsLogged: Activity;
|
||||
bosses: Bosses;
|
||||
}
|
||||
export type Modes = { [M in Gamemode]?: Stats };
|
||||
|
@@ -76,6 +76,8 @@ export const GAMEMODES: Gamemode[] = [
|
||||
export const BOSSES: Boss[] = [
|
||||
'abyssalSire',
|
||||
'alchemicalHydra',
|
||||
'amoxliatl',
|
||||
'araxxor',
|
||||
'artio',
|
||||
'barrows',
|
||||
'bryophyta',
|
||||
@@ -119,7 +121,9 @@ export const BOSSES: Boss[] = [
|
||||
'tempoross',
|
||||
'gauntlet',
|
||||
'corruptedGauntlet',
|
||||
'hueycoatl',
|
||||
'leviathan',
|
||||
'royalTitans',
|
||||
'whisperer',
|
||||
'theatreOfBlood',
|
||||
'theatreOfBloodHardMode',
|
||||
@@ -155,6 +159,7 @@ export const ACTIVITIES: ActivityName[] = [
|
||||
'soulWarsZeal',
|
||||
'riftsClosed',
|
||||
'colosseumGlory',
|
||||
'collectionsLogged',
|
||||
...BOSSES
|
||||
];
|
||||
|
||||
@@ -165,6 +170,8 @@ export type FormattedBossNames = {
|
||||
export const FORMATTED_BOSS_NAMES: FormattedBossNames = {
|
||||
abyssalSire: 'Abyssal Sire',
|
||||
alchemicalHydra: 'Alchemical Hydra',
|
||||
amoxliatl: 'Amoxliatl',
|
||||
araxxor: 'Araxxor',
|
||||
artio: 'Artio',
|
||||
barrows: 'Barrows Chests',
|
||||
bryophyta: 'Bryophyta',
|
||||
@@ -208,7 +215,9 @@ export const FORMATTED_BOSS_NAMES: FormattedBossNames = {
|
||||
tempoross: 'Tempoross',
|
||||
gauntlet: 'The Gauntlet',
|
||||
corruptedGauntlet: 'The Corrupted Gauntlet',
|
||||
hueycoatl: 'The Hueycoatl',
|
||||
leviathan: 'The Leviathan',
|
||||
royalTitans: 'The Royal Titans',
|
||||
whisperer: 'The Whisperer',
|
||||
theatreOfBlood: 'Theatre of Blood',
|
||||
theatreOfBloodHardMode: 'Theatre of Blood: Hard Mode',
|
||||
@@ -289,6 +298,7 @@ export const FORMATTED_LEAGUE_POINTS = 'League Points';
|
||||
export const FORMATTED_DEADMAN_POINTS = 'Deadman Points';
|
||||
export const FORMATTED_RIFTS_CLOSED = 'Rifts closed';
|
||||
export const FORMATTED_COLOSSEUM_GLORY = 'Colosseum Glory';
|
||||
export const FORMATTED_COLLECTIONS_LOGGED = 'Collections Logged';
|
||||
|
||||
export const INVALID_FORMAT_ERROR = 'Invalid hiscores format';
|
||||
export const PLAYER_NOT_FOUND_ERROR = 'Player not found';
|
||||
|
60
yarn.lock
60
yarn.lock
@@ -1288,11 +1288,11 @@ available-typed-arrays@^1.0.5:
|
||||
integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
|
||||
|
||||
axios@^1.6.2:
|
||||
version "1.6.2"
|
||||
resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.2.tgz#de67d42c755b571d3e698df1b6504cde9b0ee9f2"
|
||||
integrity sha512-7i24Ri4pmDRfJTR7LDBhsOTtcm+9kjX5WiY1X3wIisx6G9So3pfMkEiU7emUBe46oceVImccTEM3k6C5dbVW8A==
|
||||
version "1.7.4"
|
||||
resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.4.tgz#4c8ded1b43683c8dd362973c393f3ede24052aa2"
|
||||
integrity sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==
|
||||
dependencies:
|
||||
follow-redirects "^1.15.0"
|
||||
follow-redirects "^1.15.6"
|
||||
form-data "^4.0.0"
|
||||
proxy-from-env "^1.1.0"
|
||||
|
||||
@@ -1383,12 +1383,12 @@ brace-expansion@^1.1.7:
|
||||
balanced-match "^1.0.0"
|
||||
concat-map "0.0.1"
|
||||
|
||||
braces@^3.0.1, braces@^3.0.2:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
|
||||
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
|
||||
braces@^3.0.3:
|
||||
version "3.0.3"
|
||||
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
|
||||
integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
|
||||
dependencies:
|
||||
fill-range "^7.0.1"
|
||||
fill-range "^7.1.1"
|
||||
|
||||
browserslist@^4.21.9:
|
||||
version "4.21.9"
|
||||
@@ -1729,9 +1729,9 @@ cosmiconfig@^7.0.0:
|
||||
yaml "^1.10.0"
|
||||
|
||||
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
||||
version "7.0.3"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
|
||||
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
|
||||
version "7.0.6"
|
||||
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f"
|
||||
integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==
|
||||
dependencies:
|
||||
path-key "^3.1.0"
|
||||
shebang-command "^2.0.0"
|
||||
@@ -2392,10 +2392,10 @@ file-entry-cache@^6.0.1:
|
||||
dependencies:
|
||||
flat-cache "^3.0.4"
|
||||
|
||||
fill-range@^7.0.1:
|
||||
version "7.0.1"
|
||||
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
|
||||
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
|
||||
fill-range@^7.1.1:
|
||||
version "7.1.1"
|
||||
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
|
||||
integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
|
||||
dependencies:
|
||||
to-regex-range "^5.0.1"
|
||||
|
||||
@@ -2428,7 +2428,7 @@ flatted@^3.1.0:
|
||||
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469"
|
||||
integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==
|
||||
|
||||
follow-redirects@^1.15.0:
|
||||
follow-redirects@^1.15.6:
|
||||
version "1.15.6"
|
||||
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b"
|
||||
integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==
|
||||
@@ -4092,20 +4092,12 @@ merge2@^1.3.0, merge2@^1.4.1:
|
||||
resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
|
||||
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
|
||||
|
||||
micromatch@^4.0.2:
|
||||
version "4.0.2"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
|
||||
integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==
|
||||
micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5:
|
||||
version "4.0.8"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202"
|
||||
integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
|
||||
dependencies:
|
||||
braces "^3.0.1"
|
||||
picomatch "^2.0.5"
|
||||
|
||||
micromatch@^4.0.4, micromatch@^4.0.5:
|
||||
version "4.0.5"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
|
||||
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
|
||||
dependencies:
|
||||
braces "^3.0.2"
|
||||
braces "^3.0.3"
|
||||
picomatch "^2.3.1"
|
||||
|
||||
mime-db@1.45.0:
|
||||
@@ -4667,7 +4659,7 @@ picocolors@^1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
||||
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
||||
|
||||
picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1:
|
||||
picomatch@^2.0.4, picomatch@^2.2.1:
|
||||
version "2.2.2"
|
||||
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
|
||||
integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
|
||||
@@ -5847,9 +5839,9 @@ write-file-atomic@^4.0.2:
|
||||
signal-exit "^3.0.7"
|
||||
|
||||
ws@^8.13.0:
|
||||
version "8.13.0"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0"
|
||||
integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==
|
||||
version "8.17.1"
|
||||
resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b"
|
||||
integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==
|
||||
|
||||
xdg-basedir@^4.0.0:
|
||||
version "4.0.0"
|
||||
|
Reference in New Issue
Block a user