osrs-tools 2.10.0 → 2.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -341
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/runescape/model/slayer/core/Mortifier.d.ts +48 -0
- package/dist/runescape/model/slayer/core/Mortifier.js +100 -0
- package/dist/runescape/model/slayer/core/MortimerSlayerMaster.d.ts +71 -0
- package/dist/runescape/model/slayer/core/MortimerSlayerMaster.js +98 -0
- package/dist/runescape/model/slayer/core/SlayerMaster.d.ts +6 -1
- package/dist/runescape/model/slayer/core/SlayerMaster.js +10 -1
- package/dist/runescape/model/slayer/core/index.d.ts +4 -0
- package/dist/runescape/model/slayer/core/index.js +2 -0
- package/dist/runescape/model/slayer/core/types.d.ts +2 -0
- package/dist/runescape/model/slayer/index.d.ts +3 -3
- package/dist/runescape/model/slayer/index.js +2 -2
- package/dist/runescape/model/slayer/masters/Chaeldar.js +1 -0
- package/dist/runescape/model/slayer/masters/Duradel.js +1 -0
- package/dist/runescape/model/slayer/masters/KonarQuoMaten.js +1 -0
- package/dist/runescape/model/slayer/masters/Krystilia.js +1 -0
- package/dist/runescape/model/slayer/masters/Mazchna.js +1 -0
- package/dist/runescape/model/slayer/masters/Mortimer.d.ts +21 -0
- package/dist/runescape/model/slayer/masters/Mortimer.js +37 -0
- package/dist/runescape/model/slayer/masters/Nieve.js +1 -0
- package/dist/runescape/model/slayer/masters/Spria.js +1 -0
- package/dist/runescape/model/slayer/masters/Turael.js +1 -0
- package/dist/runescape/model/slayer/masters/Vannaka.js +1 -0
- package/dist/runescape/model/slayer/masters/index.d.ts +2 -0
- package/dist/runescape/model/slayer/masters/index.js +2 -0
- package/dist/runescape/model/slayer/masters/registry.d.ts +2 -1
- package/dist/runescape/model/slayer/masters/registry.js +1 -0
- package/dist/runescape/model/slayer/masters.d.ts +1 -1
- package/dist/runescape/model/slayer/masters.js +1 -1
- package/dist/runescape/model/slayer/task/MortimerTasks.d.ts +14 -0
- package/dist/runescape/model/slayer/task/MortimerTasks.js +227 -0
- package/dist/runescape/model/slayer/tasks/index.d.ts +1 -0
- package/dist/runescape/model/slayer/tasks/index.js +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { CombatLevelRequirement, QuestRequirement, SlayerLevelRequirement } from '../../Requirement';
|
|
2
|
+
import { Task } from '../core/Task';
|
|
3
|
+
/**
|
|
4
|
+
* Mortimer's task list.
|
|
5
|
+
* Reference: https://oldschool.runescape.wiki/w/Mortimer
|
|
6
|
+
*
|
|
7
|
+
* Every task Mortimer assigns has a superior variant (see MortimerSlayerMaster.hasSuperiorVariants()).
|
|
8
|
+
* Quantities, extended quantities and weights below are taken directly from the Wiki's task table.
|
|
9
|
+
*
|
|
10
|
+
* Gryphons, Custodian stalkers, Venators and Aquanites are Wyrmscraig-exclusive monsters with no
|
|
11
|
+
* established Slayer level requirement at time of writing, so their `requirements` are left empty.
|
|
12
|
+
* This content was planned but not yet released; details are subject to change.
|
|
13
|
+
*/
|
|
14
|
+
const mortimerTasks = [
|
|
15
|
+
Task.create({
|
|
16
|
+
name: 'Crawling hands',
|
|
17
|
+
quantity: { max: 50, min: 35 },
|
|
18
|
+
requirements: [new SlayerLevelRequirement(5), new CombatLevelRequirement(20)],
|
|
19
|
+
weight: 10,
|
|
20
|
+
}),
|
|
21
|
+
Task.create({
|
|
22
|
+
name: 'Cave crawlers',
|
|
23
|
+
quantity: { max: 50, min: 35 },
|
|
24
|
+
requirements: [new SlayerLevelRequirement(10), new CombatLevelRequirement(10)],
|
|
25
|
+
weight: 10,
|
|
26
|
+
}),
|
|
27
|
+
Task.create({
|
|
28
|
+
name: 'Banshees',
|
|
29
|
+
quantity: { max: 50, min: 35 },
|
|
30
|
+
requirements: [
|
|
31
|
+
new SlayerLevelRequirement(15),
|
|
32
|
+
new CombatLevelRequirement(20),
|
|
33
|
+
new QuestRequirement('Priest in Peril'),
|
|
34
|
+
],
|
|
35
|
+
weight: 10,
|
|
36
|
+
}),
|
|
37
|
+
Task.create({
|
|
38
|
+
name: 'Rockslugs',
|
|
39
|
+
quantity: { max: 50, min: 35 },
|
|
40
|
+
requirements: [new SlayerLevelRequirement(20)],
|
|
41
|
+
weight: 10,
|
|
42
|
+
}),
|
|
43
|
+
Task.create({
|
|
44
|
+
name: 'Cockatrice',
|
|
45
|
+
quantity: { max: 50, min: 35 },
|
|
46
|
+
requirements: [new SlayerLevelRequirement(25)],
|
|
47
|
+
weight: 10,
|
|
48
|
+
}),
|
|
49
|
+
Task.create({
|
|
50
|
+
name: 'Pyrefiends',
|
|
51
|
+
quantity: { max: 50, min: 35 },
|
|
52
|
+
requirements: [new SlayerLevelRequirement(30)],
|
|
53
|
+
weight: 10,
|
|
54
|
+
}),
|
|
55
|
+
Task.create({
|
|
56
|
+
name: 'Infernal mages',
|
|
57
|
+
quantity: { max: 50, min: 35 },
|
|
58
|
+
requirements: [
|
|
59
|
+
new SlayerLevelRequirement(45),
|
|
60
|
+
new CombatLevelRequirement(45),
|
|
61
|
+
new QuestRequirement('Priest in Peril'),
|
|
62
|
+
],
|
|
63
|
+
weight: 10,
|
|
64
|
+
}),
|
|
65
|
+
Task.create({
|
|
66
|
+
extended: { max: 250, min: 200 },
|
|
67
|
+
name: 'Bloodvelds',
|
|
68
|
+
quantity: { max: 180, min: 120 },
|
|
69
|
+
requirements: [new SlayerLevelRequirement(50), new CombatLevelRequirement(50)],
|
|
70
|
+
weight: 8,
|
|
71
|
+
}),
|
|
72
|
+
Task.create({
|
|
73
|
+
extended: { max: 200, min: 160 },
|
|
74
|
+
name: 'Gryphons',
|
|
75
|
+
quantity: { max: 120, min: 80 },
|
|
76
|
+
requirements: [],
|
|
77
|
+
weight: 10,
|
|
78
|
+
}),
|
|
79
|
+
Task.create({
|
|
80
|
+
name: 'Jellies',
|
|
81
|
+
quantity: { max: 120, min: 80 },
|
|
82
|
+
requirements: [new SlayerLevelRequirement(52)],
|
|
83
|
+
weight: 10,
|
|
84
|
+
}),
|
|
85
|
+
Task.create({
|
|
86
|
+
extended: { max: 250, min: 200 },
|
|
87
|
+
name: 'Custodian stalkers',
|
|
88
|
+
quantity: { max: 120, min: 80 },
|
|
89
|
+
requirements: [],
|
|
90
|
+
weight: 8,
|
|
91
|
+
}),
|
|
92
|
+
Task.create({
|
|
93
|
+
name: 'Turoth',
|
|
94
|
+
quantity: { max: 120, min: 80 },
|
|
95
|
+
requirements: [new SlayerLevelRequirement(55)],
|
|
96
|
+
weight: 10,
|
|
97
|
+
}),
|
|
98
|
+
Task.create({
|
|
99
|
+
name: 'Warped creatures',
|
|
100
|
+
quantity: { max: 120, min: 80 },
|
|
101
|
+
requirements: [new SlayerLevelRequirement(56)],
|
|
102
|
+
weight: 10,
|
|
103
|
+
}),
|
|
104
|
+
Task.create({
|
|
105
|
+
extended: { max: 250, min: 200 },
|
|
106
|
+
name: 'Cave horrors',
|
|
107
|
+
quantity: { max: 120, min: 80 },
|
|
108
|
+
requirements: [new SlayerLevelRequirement(58), new CombatLevelRequirement(40), new QuestRequirement('Cabin Fever')],
|
|
109
|
+
weight: 10,
|
|
110
|
+
}),
|
|
111
|
+
Task.create({
|
|
112
|
+
alternatives: ['Deviant spectres'],
|
|
113
|
+
extended: { max: 250, min: 200 },
|
|
114
|
+
name: 'Aberrant spectres',
|
|
115
|
+
quantity: { max: 120, min: 80 },
|
|
116
|
+
requirements: [
|
|
117
|
+
new SlayerLevelRequirement(60),
|
|
118
|
+
new CombatLevelRequirement(65),
|
|
119
|
+
new QuestRequirement('Priest in Peril'),
|
|
120
|
+
],
|
|
121
|
+
weight: 10,
|
|
122
|
+
}),
|
|
123
|
+
Task.create({
|
|
124
|
+
bosses: ['Basilisk Knight'],
|
|
125
|
+
extended: { max: 250, min: 200 },
|
|
126
|
+
name: 'Basilisks',
|
|
127
|
+
quantity: { max: 60, min: 40 },
|
|
128
|
+
requirements: [new SlayerLevelRequirement(40), new CombatLevelRequirement(40)],
|
|
129
|
+
weight: 10,
|
|
130
|
+
}),
|
|
131
|
+
Task.create({
|
|
132
|
+
extended: { max: 250, min: 200 },
|
|
133
|
+
name: 'Wyrms',
|
|
134
|
+
quantity: { max: 120, min: 80 },
|
|
135
|
+
requirements: [new SlayerLevelRequirement(62)],
|
|
136
|
+
weight: 10,
|
|
137
|
+
}),
|
|
138
|
+
Task.create({
|
|
139
|
+
extended: { max: 250, min: 200 },
|
|
140
|
+
name: 'Dust devils',
|
|
141
|
+
quantity: { max: 180, min: 120 },
|
|
142
|
+
requirements: [new SlayerLevelRequirement(65), new QuestRequirement('Desert Treasure')],
|
|
143
|
+
weight: 8,
|
|
144
|
+
}),
|
|
145
|
+
Task.create({
|
|
146
|
+
name: 'Kurask',
|
|
147
|
+
quantity: { max: 60, min: 40 },
|
|
148
|
+
requirements: [new SlayerLevelRequirement(70), new CombatLevelRequirement(80)],
|
|
149
|
+
weight: 10,
|
|
150
|
+
}),
|
|
151
|
+
Task.create({
|
|
152
|
+
name: 'Venators',
|
|
153
|
+
quantity: { max: 180, min: 120 },
|
|
154
|
+
requirements: [],
|
|
155
|
+
weight: 10,
|
|
156
|
+
}),
|
|
157
|
+
Task.create({
|
|
158
|
+
extended: { max: 250, min: 200 },
|
|
159
|
+
name: 'Gargoyles',
|
|
160
|
+
quantity: { max: 180, min: 120 },
|
|
161
|
+
requirements: [new SlayerLevelRequirement(75), new CombatLevelRequirement(80)],
|
|
162
|
+
weight: 10,
|
|
163
|
+
}),
|
|
164
|
+
Task.create({
|
|
165
|
+
extended: { max: 200, min: 150 },
|
|
166
|
+
name: 'Aquanites',
|
|
167
|
+
quantity: { max: 60, min: 40 },
|
|
168
|
+
requirements: [],
|
|
169
|
+
weight: 10,
|
|
170
|
+
}),
|
|
171
|
+
Task.create({
|
|
172
|
+
bosses: ['Nechryarch'],
|
|
173
|
+
extended: { max: 250, min: 200 },
|
|
174
|
+
name: 'Nechryael',
|
|
175
|
+
quantity: { max: 200, min: 150 },
|
|
176
|
+
requirements: [new SlayerLevelRequirement(80), new CombatLevelRequirement(80)],
|
|
177
|
+
weight: 8,
|
|
178
|
+
}),
|
|
179
|
+
Task.create({
|
|
180
|
+
name: 'Drakes',
|
|
181
|
+
quantity: { max: 60, min: 40 },
|
|
182
|
+
requirements: [new SlayerLevelRequirement(84)],
|
|
183
|
+
weight: 10,
|
|
184
|
+
}),
|
|
185
|
+
Task.create({
|
|
186
|
+
bosses: ['Abyssal Sire'],
|
|
187
|
+
extended: { max: 250, min: 200 },
|
|
188
|
+
name: 'Abyssal demons',
|
|
189
|
+
quantity: { max: 180, min: 120 },
|
|
190
|
+
requirements: [
|
|
191
|
+
new SlayerLevelRequirement(85),
|
|
192
|
+
new CombatLevelRequirement(85),
|
|
193
|
+
new QuestRequirement('Priest in Peril'),
|
|
194
|
+
new QuestRequirement('Fairytale II - Cure a Queen'),
|
|
195
|
+
],
|
|
196
|
+
weight: 8,
|
|
197
|
+
}),
|
|
198
|
+
Task.create({
|
|
199
|
+
extended: { max: 135, min: 110 },
|
|
200
|
+
name: 'Dark beasts',
|
|
201
|
+
quantity: { max: 60, min: 40 },
|
|
202
|
+
requirements: [new SlayerLevelRequirement(90), new QuestRequirement("Mourning's End Part II")],
|
|
203
|
+
weight: 10,
|
|
204
|
+
}),
|
|
205
|
+
Task.create({
|
|
206
|
+
extended: { max: 250, min: 200 },
|
|
207
|
+
name: 'Araxytes',
|
|
208
|
+
quantity: { max: 180, min: 120 },
|
|
209
|
+
requirements: [new SlayerLevelRequirement(92), new QuestRequirement('Sins of the Father')],
|
|
210
|
+
weight: 8,
|
|
211
|
+
}),
|
|
212
|
+
Task.create({
|
|
213
|
+
bosses: ['Thermonuclear Smoke Devil'],
|
|
214
|
+
name: 'Smoke devils',
|
|
215
|
+
quantity: { max: 120, min: 80 },
|
|
216
|
+
requirements: [new SlayerLevelRequirement(93)],
|
|
217
|
+
weight: 8,
|
|
218
|
+
}),
|
|
219
|
+
Task.create({
|
|
220
|
+
bosses: ['Alchemical Hydra'],
|
|
221
|
+
name: 'Hydras',
|
|
222
|
+
quantity: { max: 200, min: 150 },
|
|
223
|
+
requirements: [new SlayerLevelRequirement(95), new QuestRequirement('Dragon Slayer II')],
|
|
224
|
+
weight: 10,
|
|
225
|
+
}),
|
|
226
|
+
];
|
|
227
|
+
export { mortimerTasks };
|
|
@@ -7,6 +7,7 @@ export * from '../task/DuradelTasks';
|
|
|
7
7
|
export * from '../task/KonarTasks';
|
|
8
8
|
export * from '../task/KrystiliaTasks';
|
|
9
9
|
export * from '../task/MazchnaTasks';
|
|
10
|
+
export * from '../task/MortimerTasks';
|
|
10
11
|
export * from '../task/NieveTasks';
|
|
11
12
|
export * from '../task/SpriaTasks';
|
|
12
13
|
export * from '../task/TurealTasks';
|
|
@@ -8,6 +8,7 @@ export * from '../task/DuradelTasks';
|
|
|
8
8
|
export * from '../task/KonarTasks';
|
|
9
9
|
export * from '../task/KrystiliaTasks';
|
|
10
10
|
export * from '../task/MazchnaTasks';
|
|
11
|
+
export * from '../task/MortimerTasks';
|
|
11
12
|
export * from '../task/NieveTasks';
|
|
12
13
|
export * from '../task/SpriaTasks';
|
|
13
14
|
export * from '../task/TurealTasks';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "osrs-tools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.1",
|
|
4
4
|
"description": "A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and general game information",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"sideEffects": false,
|