osrs-tools 2.11.0 → 2.12.0
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/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/types.d.ts +2 -0
- 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.d.ts +4 -0
- package/dist/runescape/model/slayer/masters/KonarQuoMaten.js +19 -8
- 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.js +2 -0
- package/dist/runescape/model/slayer/masters/Nieve.js +9 -2
- 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/task/DuradelTasks.js +70 -45
- package/dist/runescape/model/slayer/task/KonarTasks.d.ts +9 -0
- package/dist/runescape/model/slayer/task/KonarTasks.js +81 -37
- package/dist/runescape/model/slayer/task/MazchnaTasks.js +44 -55
- package/dist/runescape/model/slayer/task/NieveTasks.d.ts +4 -0
- package/dist/runescape/model/slayer/task/NieveTasks.js +94 -40
- package/dist/runescape/model/slayer/task/VannakaTasks.d.ts +4 -0
- package/dist/runescape/model/slayer/task/VannakaTasks.js +87 -47
- package/package.json +1 -1
|
@@ -15,11 +15,12 @@ declare class SlayerMaster {
|
|
|
15
15
|
minimumCombatLevel: number;
|
|
16
16
|
tasks: Task[];
|
|
17
17
|
wikiUrl: string;
|
|
18
|
+
imageUrl: string;
|
|
18
19
|
taskPoints: Record<number, number>;
|
|
19
20
|
eliteDiaryTaskPoints?: Record<number, number>;
|
|
20
21
|
blockedTasks: Set<string>;
|
|
21
22
|
constructor(options: SlayerMasterConfig);
|
|
22
|
-
constructor(name: string, tasks: Task[], location: string, levelRequirement: number, url: string, taskPoints: Record<number, number>, eliteDiaryTaskPoints?: Record<number, number
|
|
23
|
+
constructor(name: string, tasks: Task[], location: string, levelRequirement: number, url: string, taskPoints: Record<number, number>, eliteDiaryTaskPoints?: Record<number, number>, imageUrl?: string);
|
|
23
24
|
/**
|
|
24
25
|
* Calculate the total weight of all tasks assigned to this Slayer Master.
|
|
25
26
|
* @returns {number} The total weight of all tasks assigned to this Slayer Master.
|
|
@@ -43,6 +44,10 @@ declare class SlayerMaster {
|
|
|
43
44
|
* Get the wiki URL of the Slayer Master
|
|
44
45
|
*/
|
|
45
46
|
getWikiUrl(): string;
|
|
47
|
+
/**
|
|
48
|
+
* Get the URL of the Slayer Master's portrait image
|
|
49
|
+
*/
|
|
50
|
+
getImageUrl(): string;
|
|
46
51
|
/**
|
|
47
52
|
* Get a random task based on the weighting system of the tasks.
|
|
48
53
|
* Tasks with higher weights have a higher chance of being selected.
|
|
@@ -13,11 +13,12 @@ class SlayerMaster {
|
|
|
13
13
|
minimumCombatLevel = 0; // Level requirement to access this Slayer Master (optional, can be set later if needed)
|
|
14
14
|
tasks; // Array of tasks assigned to this Slayer Master. This holds the actual tasks that players can be assigned to kill.
|
|
15
15
|
wikiUrl = ''; // URL for the Slayer Master (optional, can be set later if needed)
|
|
16
|
+
imageUrl = ''; // URL of the Slayer Master's portrait image, sourced from the OSRS Wiki (optional, can be set later if needed)
|
|
16
17
|
taskPoints; // Mapping of task intervals to points
|
|
17
18
|
eliteDiaryTaskPoints; // Mapping of task intervals to points
|
|
18
19
|
blockedTasks = new Set(); // Names (lowercased) of tasks this master will not assign
|
|
19
20
|
// Constructor implementation
|
|
20
|
-
constructor(nameOrOptions, tasks, location, levelRequirement, url, taskPoints, eliteDiaryTaskPoints) {
|
|
21
|
+
constructor(nameOrOptions, tasks, location, levelRequirement, url, taskPoints, eliteDiaryTaskPoints, imageUrl) {
|
|
21
22
|
// Handle options object pattern (modern API)
|
|
22
23
|
if (typeof nameOrOptions === 'object' && !Array.isArray(nameOrOptions)) {
|
|
23
24
|
const options = nameOrOptions;
|
|
@@ -26,6 +27,7 @@ class SlayerMaster {
|
|
|
26
27
|
this.location = options.location || '';
|
|
27
28
|
this.minimumCombatLevel = options.minimumCombatLevel || 0;
|
|
28
29
|
this.wikiUrl = options.wikiUrl || '';
|
|
30
|
+
this.imageUrl = options.imageUrl || '';
|
|
29
31
|
this.taskPoints = options.pointsTable || {};
|
|
30
32
|
this.eliteDiaryTaskPoints = options.eliteDiaryTaskPoints;
|
|
31
33
|
}
|
|
@@ -36,6 +38,7 @@ class SlayerMaster {
|
|
|
36
38
|
this.location = location || '';
|
|
37
39
|
this.minimumCombatLevel = levelRequirement || 0;
|
|
38
40
|
this.wikiUrl = url || '';
|
|
41
|
+
this.imageUrl = imageUrl || '';
|
|
39
42
|
this.taskPoints = taskPoints || {};
|
|
40
43
|
this.eliteDiaryTaskPoints = eliteDiaryTaskPoints;
|
|
41
44
|
}
|
|
@@ -83,6 +86,12 @@ class SlayerMaster {
|
|
|
83
86
|
getWikiUrl() {
|
|
84
87
|
return this.wikiUrl;
|
|
85
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Get the URL of the Slayer Master's portrait image
|
|
91
|
+
*/
|
|
92
|
+
getImageUrl() {
|
|
93
|
+
return this.imageUrl;
|
|
94
|
+
}
|
|
86
95
|
/**
|
|
87
96
|
* Get a random task based on the weighting system of the tasks.
|
|
88
97
|
* Tasks with higher weights have a higher chance of being selected.
|
|
@@ -101,6 +101,8 @@ export interface SlayerMasterConfig {
|
|
|
101
101
|
name: string;
|
|
102
102
|
location: string;
|
|
103
103
|
wikiUrl: string;
|
|
104
|
+
/** URL of the master's portrait image, sourced from the OSRS Wiki. */
|
|
105
|
+
imageUrl?: string;
|
|
104
106
|
minimumCombatLevel: number;
|
|
105
107
|
tasks: any[];
|
|
106
108
|
pointsTable: Record<number, number>;
|
|
@@ -8,6 +8,10 @@ import { SlayerMaster } from '../core/SlayerMaster';
|
|
|
8
8
|
/**
|
|
9
9
|
* Konar Quo Maten - Advanced Slayer Master
|
|
10
10
|
* Requires combat level 75 and access to Mount Karuulm
|
|
11
|
+
*
|
|
12
|
+
* Konar is the second highest points-per-task Slayer master (after Krystilia), owing to
|
|
13
|
+
* the requirement of slaying in a specific, rolled location.
|
|
14
|
+
* Reference: https://oldschool.runescape.wiki/w/Konar_quo_Maten#Slayer_points
|
|
11
15
|
*/
|
|
12
16
|
export declare const KonarQuoMaten: SlayerMaster;
|
|
13
17
|
export default KonarQuoMaten;
|
|
@@ -5,26 +5,37 @@
|
|
|
5
5
|
* Wiki: https://oldschool.runescape.wiki/w/Konar_Quo_Maten
|
|
6
6
|
*/
|
|
7
7
|
import { SlayerMaster } from '../core/SlayerMaster';
|
|
8
|
-
import { POINTS_TABLE } from '../core/types';
|
|
9
8
|
import { konarTasks } from '../task/KonarTasks';
|
|
10
9
|
import { registerMaster } from './registry';
|
|
11
10
|
/**
|
|
12
11
|
* Konar Quo Maten - Advanced Slayer Master
|
|
13
12
|
* Requires combat level 75 and access to Mount Karuulm
|
|
13
|
+
*
|
|
14
|
+
* Konar is the second highest points-per-task Slayer master (after Krystilia), owing to
|
|
15
|
+
* the requirement of slaying in a specific, rolled location.
|
|
16
|
+
* Reference: https://oldschool.runescape.wiki/w/Konar_quo_Maten#Slayer_points
|
|
14
17
|
*/
|
|
15
18
|
export const KonarQuoMaten = new SlayerMaster({
|
|
16
19
|
eliteDiaryTaskPoints: {
|
|
17
|
-
1:
|
|
18
|
-
10:
|
|
19
|
-
100:
|
|
20
|
-
1000:
|
|
21
|
-
250:
|
|
22
|
-
50:
|
|
20
|
+
1: 20,
|
|
21
|
+
10: 100,
|
|
22
|
+
100: 500,
|
|
23
|
+
1000: 1000,
|
|
24
|
+
250: 700,
|
|
25
|
+
50: 300,
|
|
23
26
|
},
|
|
27
|
+
imageUrl: 'https://oldschool.runescape.wiki/w/Special:FilePath/Konar_quo_Maten.png',
|
|
24
28
|
location: 'Mount Karuulm',
|
|
25
29
|
minimumCombatLevel: 75,
|
|
26
30
|
name: 'Konar Quo Maten',
|
|
27
|
-
pointsTable:
|
|
31
|
+
pointsTable: {
|
|
32
|
+
1: 18,
|
|
33
|
+
10: 90,
|
|
34
|
+
100: 450,
|
|
35
|
+
1000: 900,
|
|
36
|
+
250: 630,
|
|
37
|
+
50: 270,
|
|
38
|
+
},
|
|
28
39
|
tasks: konarTasks,
|
|
29
40
|
wikiUrl: 'https://oldschool.runescape.wiki/w/Konar_Quo_Maten',
|
|
30
41
|
});
|
|
@@ -22,6 +22,8 @@ import { registerMaster } from './registry';
|
|
|
22
22
|
export const Mortimer = new MortimerSlayerMaster({
|
|
23
23
|
blockSlotCost: 120,
|
|
24
24
|
blockSlots: 2,
|
|
25
|
+
// Mortimer had not been released at time of writing; this is concept art (by Mod Jerv), not an in-game portrait.
|
|
26
|
+
imageUrl: 'https://oldschool.runescape.wiki/w/Special:FilePath/Wyrmscraig%20-%20Activities%20%26%20Lock%20In%20Poll%20(5).png',
|
|
25
27
|
location: 'Wyrmscraig',
|
|
26
28
|
minimumCombatLevel: 0,
|
|
27
29
|
name: 'Mortimer',
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* Wiki: https://oldschool.runescape.wiki/w/Nieve
|
|
6
6
|
*/
|
|
7
7
|
import { SlayerMaster } from '../core/SlayerMaster';
|
|
8
|
-
import { POINTS_TABLE } from '../core/types';
|
|
9
8
|
import { nieveTasks } from '../task/NieveTasks';
|
|
10
9
|
import { registerMaster } from './registry';
|
|
11
10
|
/**
|
|
@@ -22,10 +21,18 @@ export const Nieve = new SlayerMaster({
|
|
|
22
21
|
250: 525,
|
|
23
22
|
50: 225,
|
|
24
23
|
},
|
|
24
|
+
imageUrl: 'https://oldschool.runescape.wiki/w/Special:FilePath/Nieve.png',
|
|
25
25
|
location: "Nieve's Cave",
|
|
26
26
|
minimumCombatLevel: 85,
|
|
27
27
|
name: 'Nieve',
|
|
28
|
-
pointsTable:
|
|
28
|
+
pointsTable: {
|
|
29
|
+
1: 12,
|
|
30
|
+
10: 60,
|
|
31
|
+
100: 300,
|
|
32
|
+
1000: 600,
|
|
33
|
+
250: 420,
|
|
34
|
+
50: 180,
|
|
35
|
+
},
|
|
29
36
|
tasks: nieveTasks,
|
|
30
37
|
wikiUrl: 'https://oldschool.runescape.wiki/w/Nieve',
|
|
31
38
|
});
|
|
@@ -1,56 +1,81 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Skill } from '../../account/Skill';
|
|
2
|
+
import { CombatLevelRequirement, LevelRequirement, QuestRequirement, SlayerLevelRequirement, SlayerUnlockRequirement, } from '../../Requirement';
|
|
2
3
|
import { Task } from '../Task';
|
|
3
4
|
const duradelTasks = [
|
|
4
|
-
new Task('Aberrant spectres',
|
|
5
|
-
new Task('Abyssal demons',
|
|
5
|
+
new Task('Aberrant spectres', 130, 200, [new SlayerLevelRequirement(60), new CombatLevelRequirement(65), new QuestRequirement('Priest in Peril')], 200, 250, ['Deviant spectre'], 7, [], 0, ['Slayer Tower (CKS)']),
|
|
6
|
+
new Task('Abyssal demons', 130, 200, [
|
|
6
7
|
new SlayerLevelRequirement(85),
|
|
7
8
|
new CombatLevelRequirement(85),
|
|
8
9
|
new QuestRequirement('Priest in Peril'),
|
|
9
10
|
new QuestRequirement('Fairytale II - Cure a Queen'),
|
|
10
|
-
],
|
|
11
|
-
new Task('Ankou',
|
|
11
|
+
], 200, 250, ['Abyssal Sire', 'Reanimated abyssal'], 12, [], 0, ['Slayer Tower (CKS)']),
|
|
12
|
+
new Task('Ankou', 50, 80, [new CombatLevelRequirement(40)], 91, 150, ['Dark Ankou'], 5, [], 0, [
|
|
12
13
|
'Stronghold of Security',
|
|
13
14
|
'Catacombs of Kourend',
|
|
14
15
|
]),
|
|
15
|
-
new Task('
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
'
|
|
19
|
-
]),
|
|
20
|
-
new Task('
|
|
21
|
-
new Task('
|
|
22
|
-
new Task('
|
|
23
|
-
new Task('
|
|
24
|
-
new Task('
|
|
25
|
-
new Task('
|
|
26
|
-
new Task('
|
|
27
|
-
new Task('
|
|
28
|
-
new Task('
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
]),
|
|
32
|
-
new Task('
|
|
33
|
-
new Task('
|
|
34
|
-
new Task('
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
'
|
|
40
|
-
'
|
|
41
|
-
]),
|
|
42
|
-
new Task('
|
|
43
|
-
new Task('
|
|
44
|
-
new Task('
|
|
45
|
-
new Task('
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
'
|
|
49
|
-
'
|
|
50
|
-
]),
|
|
51
|
-
new Task('
|
|
52
|
-
new Task('
|
|
53
|
-
new Task('
|
|
54
|
-
new Task('
|
|
16
|
+
new Task('Aquanites', 30, 50, [
|
|
17
|
+
new SlayerLevelRequirement(78),
|
|
18
|
+
new LevelRequirement(Skill.Sailing, 73),
|
|
19
|
+
new SlayerUnlockRequirement('Lured In'),
|
|
20
|
+
], 150, 200, [], 5, [], 0, []),
|
|
21
|
+
new Task('Araxytes', 60, 80, [new SlayerLevelRequirement(92), new QuestRequirement('Priest in Peril')], 200, 250, ['Araxxor'], 10, [], 0, ['Varrock Sewers']),
|
|
22
|
+
new Task('Aviansie', 120, 200, [new SlayerUnlockRequirement('Watch the birdie')], 200, 250, ["Kree'arra", 'Flight Kilisa', 'Flockleader Geerin', 'Wingman Skree', 'Reanimated aviansie'], 8, [], 0, ['God Wars Dungeon']),
|
|
23
|
+
new Task('Basilisks', 130, 200, [new SlayerLevelRequirement(40), new SlayerUnlockRequirement('Basilocked')], 200, 250, ['Basilisk Knight'], 7, [], 0, ['Fremennik Slayer Dungeon (AJR)', "Jormungand's Prison"]),
|
|
24
|
+
new Task('Black demons', 130, 200, [new CombatLevelRequirement(80)], 200, 250, ['Demonic gorillas', 'Balfrug Kreeyath', 'Porazdir', 'Skotizo'], 8, [], 0, ['Taverley Dungeon', 'Catacombs of Kourend']),
|
|
25
|
+
new Task('Black dragons', 10, 20, [new CombatLevelRequirement(80), new QuestRequirement('Dragon Slayer I')], 40, 60, ['Baby black dragons', 'King Black Dragon', 'Brutal black dragons'], 9, [], 0, ['Taverley Dungeon', 'Wilderness']),
|
|
26
|
+
new Task('Bloodveld', 130, 200, [new SlayerLevelRequirement(50), new CombatLevelRequirement(50), new QuestRequirement('Priest in Peril')], 200, 250, ['Mutated Bloodveld', 'Reanimated Bloodveld'], 8, [], 0, ['Meiyerditch Laboratories', 'Catacombs of Kourend']),
|
|
27
|
+
new Task('Blue dragons', 110, 170, [new CombatLevelRequirement(65), new QuestRequirement('Dragon Slayer I')], null, null, ['Baby blue dragons', 'Brutal blue dragons', 'Vorkath'], 4, [], 0, ['Taverley Dungeon', "Myth's Guild"]),
|
|
28
|
+
new Task('Boss', 3, 35, [new SlayerUnlockRequirement('Like a boss')], null, null, [], 12, [], 0, []),
|
|
29
|
+
new Task('Cave horrors', 130, 200, [new SlayerLevelRequirement(58), new CombatLevelRequirement(85), new QuestRequirement('Cabin Fever')], 200, 250, [], 4, [], 0, ["Mos Le'Harmless Caves"]),
|
|
30
|
+
new Task('Cave kraken', 100, 120, [new SlayerLevelRequirement(87), new CombatLevelRequirement(80), new LevelRequirement(Skill.Magic, 50)], 150, 200, ['Kraken'], 9, [], 0, ['Kraken Cove']),
|
|
31
|
+
new Task('Dagannoth', 130, 200, [new CombatLevelRequirement(75), new QuestRequirement('Horror from the Deep')], null, null, ['Dagannoth spawn', 'Dagannoth fledgeling', 'Dagannoth Kings', 'Reanimated dagannoth'], 9, [], 0, ['Lighthouse', 'Catacombs of Kourend']),
|
|
32
|
+
new Task('Dark beasts', 10, 20, [new SlayerLevelRequirement(90), new CombatLevelRequirement(90), new QuestRequirement("Mourning's End Part II")], 110, 135, [], 11, [], 0, ['Mourner Tunnels']),
|
|
33
|
+
new Task('Drakes', 50, 110, [new SlayerLevelRequirement(84)], null, null, [], 8, [], 0, ['Karuulm Slayer Dungeon']),
|
|
34
|
+
new Task('Dust devils', 130, 200, [new SlayerLevelRequirement(65), new CombatLevelRequirement(70), new QuestRequirement('Desert Treasure I')], 200, 250, [], 5, [], 0, ['Smoke Dungeon', 'Catacombs of Kourend']),
|
|
35
|
+
new Task('Elves', 110, 170, [new CombatLevelRequirement(70), new QuestRequirement('Regicide')], null, null, ['Elf warrior', 'Mourner (Mourner Headquarters)', 'Guard (Prifddinas)', 'Reanimated elf', 'Iorwerth Warrior'], 4, [], 0, ['Prifddinas', 'Iorwerth Camp']),
|
|
36
|
+
new Task('Fire giants', 130, 200, [new CombatLevelRequirement(65)], null, null, ['Branda the Fire Queen (Royal Titans)'], 7, [], 0, ['Waterfall Dungeon', 'Brimhaven Dungeon']),
|
|
37
|
+
new Task('Fossil Island wyverns', 20, 50, [
|
|
38
|
+
new SlayerLevelRequirement(66),
|
|
39
|
+
new CombatLevelRequirement(60),
|
|
40
|
+
new QuestRequirement('Bone Voyage'),
|
|
41
|
+
new QuestRequirement('Elemental Workshop I'),
|
|
42
|
+
], 55, 75, ['Spitting wyvern', 'Taloned wyvern', 'Long-tailed wyvern', 'Ancient wyvern'], 7, [], 0, ['Wyvern Cave, Fossil Island']),
|
|
43
|
+
new Task('Frost dragons', 70, 120, [new LevelRequirement(Skill.Sailing, 87), new CombatLevelRequirement(85)], 180, 240, [], 5, [], 0, []),
|
|
44
|
+
new Task('Gargoyles', 130, 200, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80), new QuestRequirement('Priest in Peril')], 200, 250, ['Grotesque Guardians'], 8, [], 0, ['Slayer Tower (CKS)']),
|
|
45
|
+
new Task('Greater demons', 130, 200, [new CombatLevelRequirement(75)], 200, 250, ["K'ril Tsutsaroth", 'Tstanon Karlak', 'Skotizo', 'Tormented Demon'], 9, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend']),
|
|
46
|
+
new Task('Gryphons', 100, 210, [
|
|
47
|
+
new SlayerLevelRequirement(51),
|
|
48
|
+
new LevelRequirement(Skill.Sailing, 45),
|
|
49
|
+
new QuestRequirement('Troubled Tortugans'),
|
|
50
|
+
new SlayerUnlockRequirement('Wings Spread'),
|
|
51
|
+
], 180, 290, ['Shellbane gryphon'], 7, [], 0, []),
|
|
52
|
+
new Task('Hellhounds', 130, 200, [new CombatLevelRequirement(75)], null, null, ['Cerberus', 'Skeleton Hellhound', 'Greater Skeleton Hellhound', 'Reanimated hellhound'], 10, [], 0, ['Taverley Dungeon', 'Wilderness']),
|
|
53
|
+
new Task('Kalphite', 130, 200, [new CombatLevelRequirement(15)], null, null, ['Kalphite worker', 'Kalphite soldier', 'Kalphite guardian', 'Kalphite Queen', 'Reanimated kalphite'], 9, [], 0, ['Kalphite Cave']),
|
|
54
|
+
new Task('Kurask', 130, 200, [new SlayerLevelRequirement(70), new CombatLevelRequirement(65)], null, null, [], 4, [], 0, ['Fremennik Slayer Dungeon (AJR)']),
|
|
55
|
+
new Task('Lizardmen', 130, 210, [new SlayerUnlockRequirement('Reptile got ripped')], null, null, ['Lizardman brute', 'Lizardman shaman'], 10, [], 0, ['Lizardman Canyon', 'Molch', 'Zul-Andra']),
|
|
56
|
+
new Task('Metal dragons', 35, 45, [new QuestRequirement('Dragon Slayer I')], 150, 200, ['Bronze dragon', 'Iron dragon', 'Steel dragon', 'Mithril dragon', 'Adamant dragon', 'Rune dragon'], 14, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend']),
|
|
57
|
+
new Task('Mutated zygomites', 20, 30, [new SlayerLevelRequirement(57), new CombatLevelRequirement(60), new QuestRequirement('Lost City')], null, null, ['Ancient Zygomite'], 2, [], 0, ['Fungal Forest, Zanaris']),
|
|
58
|
+
new Task('Nechryael', 130, 200, [new SlayerLevelRequirement(80), new CombatLevelRequirement(85), new QuestRequirement('Priest in Peril')], 200, 250, ['Greater Nechryael'], 9, [], 0, ['Slayer Tower (CKS)']),
|
|
59
|
+
new Task('Red dragons', 30, 65, [
|
|
60
|
+
new CombatLevelRequirement(68),
|
|
61
|
+
new QuestRequirement('Dragon Slayer I'),
|
|
62
|
+
new SlayerUnlockRequirement('Seeing red'),
|
|
63
|
+
], null, null, ['Baby red dragons', 'Brutal red dragons'], 8, [], 0, ['Brimhaven Dungeon']),
|
|
64
|
+
new Task('Skeletal wyverns', 20, 40, [new SlayerLevelRequirement(72), new CombatLevelRequirement(70), new QuestRequirement('Elemental Workshop I')], 50, 70, [], 7, [], 0, ['Asgarnia Ice Dungeon']),
|
|
65
|
+
new Task('Smoke devils', 130, 200, [new SlayerLevelRequirement(93), new CombatLevelRequirement(85)], null, null, ['Thermonuclear smoke devil'], 9, [], 0, ['Smoke Devil Dungeon']),
|
|
66
|
+
new Task('Spiritual creatures', 130, 200, [
|
|
67
|
+
new SlayerLevelRequirement(63),
|
|
68
|
+
new CombatLevelRequirement(60),
|
|
69
|
+
new QuestRequirement('Death Plateau'),
|
|
70
|
+
new LevelRequirement(Skill.Strength, 60),
|
|
71
|
+
new LevelRequirement(Skill.Agility, 60),
|
|
72
|
+
], 181, 250, ['Spiritual ranger', 'Spiritual warrior', 'Spiritual mage'], 7, [], 0, ['God Wars Dungeon']),
|
|
73
|
+
new Task('Suqahs', 60, 90, [new CombatLevelRequirement(85), new QuestRequirement('Lunar Diplomacy')], 186, 250, [], 8, [], 0, ['Lunar Isle']),
|
|
74
|
+
new Task('Trolls', 130, 200, [new CombatLevelRequirement(60)], null, null, ['Mountain troll', 'Ice troll', 'Troll general', 'Reanimated troll', 'Dad', 'Ice Troll King', 'Arrg'], 6, [], 0, ['Death Plateau', 'Fremennik Isles']),
|
|
75
|
+
new Task('TzHaar', 130, 199, [new SlayerUnlockRequirement('Hot stuff')], null, null, ['TzTok-Jad', 'TzKal-Zuk'], 10, [], 0, ['TzHaar City']),
|
|
76
|
+
new Task('Vampyres', 100, 210, [new SlayerUnlockRequirement('Actual Vampyre Slayer')], 200, 250, ['Feral Vampyre', 'Vampyre Juvinate', 'Vyrewatch', 'Vyrewatch Sentinel', 'Venator'], 8, [], 0, ['Meiyerditch', 'Darkmeyer']),
|
|
77
|
+
new Task('Warped creatures', 130, 200, [new SlayerUnlockRequirement('Warped Reality')], null, null, ['Warped Terrorbird', 'Warped Tortoise'], 8, [], 0, ['Poison Waste Dungeon']),
|
|
78
|
+
new Task('Waterfiends', 130, 200, [new CombatLevelRequirement(75), new QuestRequirement('Barbarian Training')], null, null, [], 2, [], 0, ['Ancient Cavern', 'Catacombs of Kourend']),
|
|
79
|
+
new Task('Wyrms', 100, 160, [new SlayerLevelRequirement(62)], 200, 250, ['Lava Strykewyrm', 'Wyrmling'], 8, [], 0, ['Karuulm Slayer Dungeon']),
|
|
55
80
|
];
|
|
56
81
|
export { duradelTasks };
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
import { Task } from '../Task';
|
|
2
|
+
/**
|
|
3
|
+
* Konar quo Maten's task list.
|
|
4
|
+
* Reference: https://oldschool.runescape.wiki/w/Konar_quo_Maten
|
|
5
|
+
*
|
|
6
|
+
* Unlike other Slayer masters, every Konar task is also tied to a specific assigned location
|
|
7
|
+
* (rolled separately, weighted equally among a monster's unlocked locations). The current Task
|
|
8
|
+
* model only tracks the set of possible locations, not per-location weighting or per-location
|
|
9
|
+
* unlock requirements, matching the simplification already used for the other masters' task lists.
|
|
10
|
+
*/
|
|
2
11
|
declare const konarTasks: Task[];
|
|
3
12
|
export { konarTasks };
|
|
@@ -1,56 +1,100 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Skill } from '../../account/Skill';
|
|
2
|
+
import { CombatLevelRequirement, LevelRequirement, QuestRequirement, SlayerLevelRequirement, SlayerUnlockRequirement, } from '../../Requirement';
|
|
2
3
|
import { Task } from '../Task';
|
|
4
|
+
/**
|
|
5
|
+
* Konar quo Maten's task list.
|
|
6
|
+
* Reference: https://oldschool.runescape.wiki/w/Konar_quo_Maten
|
|
7
|
+
*
|
|
8
|
+
* Unlike other Slayer masters, every Konar task is also tied to a specific assigned location
|
|
9
|
+
* (rolled separately, weighted equally among a monster's unlocked locations). The current Task
|
|
10
|
+
* model only tracks the set of possible locations, not per-location weighting or per-location
|
|
11
|
+
* unlock requirements, matching the simplification already used for the other masters' task lists.
|
|
12
|
+
*/
|
|
3
13
|
const konarTasks = [
|
|
4
|
-
new Task('Aberrant spectres',
|
|
5
|
-
new Task('Abyssal demons',
|
|
14
|
+
new Task('Aberrant spectres', 120, 170, [new SlayerLevelRequirement(60), new CombatLevelRequirement(65)], 200, 250, ['Deviant spectre'], 6, [], 0, ['Catacombs of Kourend', 'Slayer Tower', 'Stronghold Slayer Cave']),
|
|
15
|
+
new Task('Abyssal demons', 120, 170, [
|
|
6
16
|
new SlayerLevelRequirement(85),
|
|
7
17
|
new CombatLevelRequirement(85),
|
|
8
18
|
new QuestRequirement('Priest in Peril'),
|
|
9
19
|
new QuestRequirement('Fairytale II - Cure a Queen'),
|
|
10
|
-
],
|
|
11
|
-
new Task('Ankou',
|
|
20
|
+
], 200, 250, [], 9, [], 0, ['Catacombs of Kourend', 'Abyss', 'Slayer Tower'], [], ['Abyssal Sire']),
|
|
21
|
+
new Task('Ankou', 50, 50, [new CombatLevelRequirement(40)], 91, 150, [], 5, [], 0, [
|
|
12
22
|
'Stronghold of Security',
|
|
23
|
+
'Stronghold Slayer Dungeon',
|
|
13
24
|
'Catacombs of Kourend',
|
|
14
25
|
]),
|
|
15
|
-
new Task('Aviansie',
|
|
16
|
-
new Task('
|
|
17
|
-
|
|
26
|
+
new Task('Aviansie', 120, 170, [new SlayerUnlockRequirement('Watch the birdie')], 200, 250, [], 6, [], 0, ['God Wars Dungeon'], [], ["Kree'arra", 'Flight Kilisa', 'Flockleader Geerin', 'Wingman Skree']),
|
|
27
|
+
new Task('Basilisks', 110, 170, [new SlayerLevelRequirement(40), new SlayerUnlockRequirement('Basilocked')], 200, 250, [], 5, [], 0, ['Fremennik Slayer Dungeon', "Jormungand's Prison"], [], ['Basilisk Knight']),
|
|
28
|
+
new Task('Black demons', 120, 170, [new CombatLevelRequirement(80)], 200, 250, [], 9, [], 0, ['Catacombs of Kourend', 'Chasm of Fire', 'Taverley Dungeon', 'Brimhaven Dungeon'], [], ['Skotizo']),
|
|
29
|
+
new Task('Black dragons', 10, 15, [new CombatLevelRequirement(80), new QuestRequirement('Dragon Slayer I')], 40, 60, ['Brutal black dragon', 'Baby black dragon'], 6, [], 0, ['Catacombs of Kourend', "Myths' Guild Dungeon", "Evil Chicken's Lair", 'Taverley Dungeon']),
|
|
30
|
+
new Task('Bloodveld', 120, 170, [new SlayerLevelRequirement(50), new CombatLevelRequirement(50)], 200, 250, ['Mutated Bloodveld'], 9, [], 0, [
|
|
18
31
|
'Catacombs of Kourend',
|
|
32
|
+
'God Wars Dungeon',
|
|
33
|
+
'Iorwerth Dungeon',
|
|
34
|
+
'Meiyerditch Laboratories',
|
|
35
|
+
'Slayer Tower',
|
|
36
|
+
'Stronghold Slayer Dungeon',
|
|
19
37
|
]),
|
|
20
|
-
new Task('
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
new Task('Dark beasts', 90, 200, [new SlayerLevelRequirement(90), new QuestRequirement("Mourning's End Part II")], null, null, [], 8, [], 0, ['Mourner Tunnels']),
|
|
27
|
-
new Task('Dust devils', 65, 200, [new SlayerLevelRequirement(65), new QuestRequirement('Desert Treasure')], null, null, [], 8, [], 0, ['Smoke Dungeon', 'Catacombs of Kourend']),
|
|
28
|
-
new Task('Fire giants', 1, 60, [new CombatLevelRequirement(65)], null, null, [], 8, [], 0, [
|
|
29
|
-
'Waterfall Dungeon',
|
|
30
|
-
'Brimhaven Dungeon',
|
|
31
|
-
]),
|
|
32
|
-
new Task('Gargoyles', 75, 200, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80)], null, null, [], 8, [], 0, ['Slayer Tower (CKS)']),
|
|
33
|
-
new Task('Greater demons', 1, 60, [new CombatLevelRequirement(65)], null, null, ['Skotizo', 'Demonic gorilla'], 8, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend']),
|
|
34
|
-
new Task('Hellhounds', 1, 60, [new CombatLevelRequirement(75)], null, null, ['Cerberus'], 8, [], 0, [
|
|
38
|
+
new Task('Blue dragons', 120, 170, [new CombatLevelRequirement(65), new QuestRequirement('Dragon Slayer I'), new QuestRequirement('Watchtower')], null, null, ['Brutal blue dragon', 'Baby blue dragon'], 4, [], 0, [
|
|
39
|
+
'Catacombs of Kourend',
|
|
40
|
+
'Isle of Souls Dungeon',
|
|
41
|
+
"Myths' Guild Dungeon",
|
|
42
|
+
'Ogre Enclave',
|
|
43
|
+
'Ruins of Tapoyauik',
|
|
35
44
|
'Taverley Dungeon',
|
|
36
|
-
'Wilderness',
|
|
37
45
|
]),
|
|
38
|
-
new Task('
|
|
46
|
+
new Task('Bosses', 3, 35, [new SlayerUnlockRequirement('Like a boss')], null, null, [], 8, [], 0, ['Varies']),
|
|
47
|
+
new Task('Brine rats', 120, 170, [new SlayerLevelRequirement(47), new CombatLevelRequirement(45), new QuestRequirement("Olaf's Quest")], null, null, [], 2, [], 0, ['Brine Rat Cavern']),
|
|
48
|
+
new Task('Cave kraken', 80, 100, [new SlayerLevelRequirement(87), new CombatLevelRequirement(80), new LevelRequirement(Skill.Magic, 50)], 150, 200, [], 9, [], 0, ['Kraken Cove'], [], ['Kraken']),
|
|
49
|
+
new Task('Dagannoth', 120, 170, [new CombatLevelRequirement(75), new QuestRequirement('Horror from the Deep')], null, null, ['Dagannoth spawn'], 8, [], 0, ['Catacombs of Kourend', 'Lighthouse', 'Waterbirth Island', "Jormungand's Prison"], [], ['Dagannoth Rex', 'Dagannoth Prime', 'Dagannoth Supreme']),
|
|
50
|
+
new Task('Dark beasts', 10, 15, [new SlayerLevelRequirement(90), new CombatLevelRequirement(90), new QuestRequirement("Mourning's End Part II")], 110, 135, [], 5, [], 0, ['Mourner Tunnels', 'Iorwerth Dungeon']),
|
|
51
|
+
new Task('Drakes', 75, 140, [new SlayerLevelRequirement(84)], null, null, [], 10, [], 0, ['Karuulm Slayer Dungeon']),
|
|
52
|
+
new Task('Dust devils', 120, 170, [new SlayerLevelRequirement(65), new CombatLevelRequirement(70), new QuestRequirement('Desert Treasure I')], 200, 250, [], 6, [], 0, ['Catacombs of Kourend', 'Smoke Dungeon']),
|
|
53
|
+
new Task('Fire giants', 120, 170, [new CombatLevelRequirement(65)], null, null, [], 9, [], 0, [
|
|
39
54
|
'Brimhaven Dungeon',
|
|
40
55
|
'Catacombs of Kourend',
|
|
56
|
+
'Isle of Souls Dungeon',
|
|
57
|
+
"Giants' Den",
|
|
58
|
+
'Karuulm Slayer Dungeon',
|
|
59
|
+
'Stronghold Slayer Dungeon',
|
|
60
|
+
'Waterfall Dungeon',
|
|
41
61
|
]),
|
|
42
|
-
new Task('
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
62
|
+
new Task('Fossil Island Wyverns', 15, 30, [
|
|
63
|
+
new SlayerLevelRequirement(66),
|
|
64
|
+
new CombatLevelRequirement(60),
|
|
65
|
+
new QuestRequirement('Bone Voyage'),
|
|
66
|
+
new QuestRequirement('Elemental Workshop I'),
|
|
67
|
+
], 55, 75, ['Spitting wyvern', 'Taloned wyvern', 'Long-tailed wyvern'], 5, [], 0, ['Wyvern Cave'], [], ['Ancient Wyvern']),
|
|
68
|
+
new Task('Gargoyles', 120, 170, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80), new QuestRequirement('Priest in Peril')], 200, 250, [], 6, [], 0, ['Slayer Tower'], [], ['Grotesque Guardians']),
|
|
69
|
+
new Task('Greater demons', 120, 170, [new CombatLevelRequirement(75)], 200, 250, [], 7, [], 0, ['Catacombs of Kourend', 'Chasm of Fire', 'Isle of Souls Dungeon', 'Karuulm Slayer Dungeon', 'Brimhaven Dungeon'], [], ['Skotizo']),
|
|
70
|
+
new Task('Hellhounds', 120, 170, [new CombatLevelRequirement(75)], null, null, [], 8, [], 0, [
|
|
71
|
+
'Karuulm Slayer Dungeon',
|
|
49
72
|
'Catacombs of Kourend',
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
new Task('
|
|
73
|
+
'Stronghold Slayer Dungeon',
|
|
74
|
+
'Taverley Dungeon',
|
|
75
|
+
'Witchaven Dungeon',
|
|
76
|
+
], [], ['Cerberus']),
|
|
77
|
+
new Task('Hydras', 125, 190, [new SlayerLevelRequirement(95)], null, null, [], 10, [], 0, ['Karuulm Slayer Dungeon'], [], ['Alchemical Hydra']),
|
|
78
|
+
new Task('Jellies', 120, 170, [new SlayerLevelRequirement(52), new CombatLevelRequirement(57)], null, null, ['Warped Jelly', 'Chilled jelly'], 6, [], 0, ['Fremennik Slayer Dungeon', 'Catacombs of Kourend', 'Ruins of Tapoyauik']),
|
|
79
|
+
new Task('Kalphite', 120, 170, [new CombatLevelRequirement(15)], null, null, ['Kalphite worker', 'Kalphite soldier', 'Kalphite guardian'], 9, [], 0, ['Kalphite Lair', 'Kalphite Cave'], [], ['Kalphite Queen']),
|
|
80
|
+
new Task('Kurask', 120, 170, [new SlayerLevelRequirement(70), new CombatLevelRequirement(65), new QuestRequirement('Song of the Elves')], null, null, [], 3, [], 0, ['Fremennik Slayer Dungeon', 'Iorwerth Dungeon']),
|
|
81
|
+
new Task('Lesser Nagua', 55, 120, [new SlayerLevelRequirement(48), new QuestRequirement('Perilous Moons')], null, null, ['Frost Nagua', 'Earthen Nagua'], 2, [], 0, ['Neypotzli', 'Ruins of Tapoyauik', 'Crypt of Tonali'], [], ['Sulphur Nagua', 'Amoxliatl']),
|
|
82
|
+
new Task('Lizardmen', 90, 110, [new SlayerUnlockRequirement('Reptile got ripped')], null, null, ['Lizardman shaman', 'Lizardman brute'], 8, [], 0, ['Battlefront', 'Lizardman Canyon', 'Lizardman Settlement', 'Kebos Swamp', 'Molch']),
|
|
83
|
+
new Task('Metal dragons', 30, 40, [new QuestRequirement('Dragon Slayer I')], 150, 200, ['Bronze dragon', 'Iron dragon', 'Steel dragon', 'Adamant dragon', 'Rune dragon'], 15, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend', 'Isle of Souls Dungeon', 'Lithkren Vault']),
|
|
84
|
+
new Task('Mutated Zygomites', 10, 25, [new SlayerLevelRequirement(57), new CombatLevelRequirement(60), new QuestRequirement('Lost City')], null, null, ['Ancient Zygomite'], 2, [], 0, ['Fossil Island', 'Zanaris']),
|
|
85
|
+
new Task('Nechryael', 110, 110, [new SlayerLevelRequirement(80), new CombatLevelRequirement(85)], 200, 250, ['Greater Nechryael'], 7, [], 0, ['Catacombs of Kourend', 'Iorwerth Dungeon', 'Slayer Tower']),
|
|
86
|
+
new Task('Red dragons', 30, 50, [
|
|
87
|
+
new CombatLevelRequirement(68),
|
|
88
|
+
new QuestRequirement('Dragon Slayer I'),
|
|
89
|
+
new SlayerUnlockRequirement('Seeing red'),
|
|
90
|
+
], null, null, ['Brutal red dragon', 'Baby red dragon'], 5, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend', 'Forthos Dungeon', "Myths' Guild Dungeon"]),
|
|
91
|
+
new Task('Skeletal Wyverns', 5, 12, [new SlayerLevelRequirement(72), new CombatLevelRequirement(70), new QuestRequirement('Elemental Workshop I')], 50, 70, [], 5, [], 0, ['Asgarnian Ice Dungeon']),
|
|
92
|
+
new Task('Smoke devils', 120, 170, [new SlayerLevelRequirement(93), new CombatLevelRequirement(85)], null, null, [], 7, [], 0, ['Smoke Devil Dungeon'], [], ['Thermonuclear smoke devil']),
|
|
93
|
+
new Task('Trolls', 120, 170, [new CombatLevelRequirement(60)], null, null, ['Pee Hat', 'Kraka', 'Stick', 'Rock', 'Thrower troll'], 6, [], 0, ['Troll Stronghold', 'Keldagrim', 'Death Plateau', 'South of Mount Quidamortem', 'Fremennik Isles'], [], ['Troll general']),
|
|
94
|
+
new Task('Turoth', 120, 170, [new SlayerLevelRequirement(55), new CombatLevelRequirement(60)], null, null, [], 3, [], 0, ['Fremennik Slayer Dungeon']),
|
|
95
|
+
new Task('Vampyres', 100, 160, [new SlayerUnlockRequirement('Actual Vampyre Slayer')], 200, 250, ['Vampyre Juvenile', 'Vampyre Juvinate', 'Vyrewatch', 'Vyrewatch Sentinel', 'Venator'], 4, [], 0, ['Darkmeyer', 'Meiyerditch', 'Slepe', 'Vampyrium']),
|
|
96
|
+
new Task('Warped creatures', 110, 170, [new SlayerUnlockRequirement('Warped Reality')], null, null, ['Warped Terrorbird', 'Warped Tortoise'], 4, [], 0, ['Poison Waste Dungeon']),
|
|
97
|
+
new Task('Waterfiends', 120, 170, [new CombatLevelRequirement(75), new QuestRequirement('Barbarian Training (Pyre ships)')], null, null, [], 2, [], 0, ['Ancient Cavern', 'Iorwerth Dungeon', 'Kraken Cove']),
|
|
98
|
+
new Task('Wyrms', 125, 190, [new SlayerLevelRequirement(62)], 200, 250, ['Wyrmling'], 10, [], 0, ['Karuulm Slayer Dungeon', 'Neypotzli', 'Charred Dungeon'], [], ['Lava Strykewyrm']),
|
|
55
99
|
];
|
|
56
100
|
export { konarTasks };
|
|
@@ -1,62 +1,51 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Skill } from '../../account/Skill';
|
|
2
|
+
import { CombatLevelRequirement, LevelRequirement, QuestRequirement, SlayerLevelRequirement } from '../../Requirement';
|
|
2
3
|
import { Task } from '../Task';
|
|
3
4
|
const mazchnaTasks = [
|
|
4
|
-
new Task('Banshees',
|
|
5
|
-
new Task('Bats',
|
|
6
|
-
new Task('Bears',
|
|
7
|
-
new Task('
|
|
5
|
+
new Task('Banshees', 30, 50, [new SlayerLevelRequirement(15), new CombatLevelRequirement(20), new QuestRequirement('Priest in Peril')], null, null, ['Twisted Banshee'], 8, [], 0, ['Slayer Tower (CKS)']),
|
|
6
|
+
new Task('Bats', 30, 50, [new CombatLevelRequirement(5)], null, null, ['Giant bat', 'Albino bat', 'Death wing'], 7, [], 0, ['Silvarea, North of Digsite']),
|
|
7
|
+
new Task('Bears', 30, 50, [new CombatLevelRequirement(13)], null, null, ['Grizzly bear cub', 'Bear cub', 'Grizzly bear', 'Callisto'], 6, [], 0, ["South-west of Legends' Guild (cannon)"]),
|
|
8
|
+
new Task('Catablepon', 20, 30, [new CombatLevelRequirement(35)], null, null, [], 8, [], 0, ['Catacombs of Kourend']),
|
|
9
|
+
new Task('Cave bugs', 10, 20, [new SlayerLevelRequirement(7)], null, null, [], 8, [], 0, [
|
|
8
10
|
'Dorgesh-Kaan South Dungeon (AJQ)',
|
|
9
11
|
]),
|
|
10
|
-
new Task('Cave crawlers',
|
|
12
|
+
new Task('Cave crawlers', 30, 50, [new SlayerLevelRequirement(10), new CombatLevelRequirement(10)], null, null, [], 8, [], 0, ['Fremennik Slayer Dungeon (AJR)']),
|
|
11
13
|
new Task('Cave slime', 10, 20, [new SlayerLevelRequirement(17), new CombatLevelRequirement(15)], null, null, [], 8, [], 0, ['Dorgesh-Kaan South Dungeon (AJQ)']),
|
|
12
|
-
new Task('
|
|
13
|
-
new Task('
|
|
14
|
-
new Task('
|
|
15
|
-
new Task('
|
|
16
|
-
new Task('
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
new Task('
|
|
20
|
-
new Task('
|
|
21
|
-
|
|
22
|
-
'
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
'
|
|
26
|
-
'
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
],
|
|
39
|
-
new Task('
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
new Task('Wolves', 15, 50, [new CombatLevelRequirement(20)], null, null, ['Big Wolf', 'Desert Wolf', 'Dire Wolf', 'Ice wolf', 'Jungle wolf', 'White wolf'], 7, [], 0, ['White Wolf Mountain', 'Stronghold of Security']),
|
|
49
|
-
new Task('Zombies', 15, 50, [new CombatLevelRequirement(10)], null, null, [
|
|
50
|
-
'Monkey Zombie',
|
|
51
|
-
'Undead chicken',
|
|
52
|
-
'Undead cow',
|
|
53
|
-
'Undead Druid',
|
|
54
|
-
'Undead one',
|
|
55
|
-
'Zombie rat',
|
|
56
|
-
'Zogre',
|
|
57
|
-
'Armoured zombie',
|
|
58
|
-
'Zombie pirate',
|
|
59
|
-
'Vorkath',
|
|
60
|
-
], 7, [], 0, ["Alice's Farm West of Ectofuntus"]),
|
|
14
|
+
new Task('Cockatrice', 30, 50, [new SlayerLevelRequirement(25), new CombatLevelRequirement(25), new LevelRequirement(Skill.Defence, 20)], null, null, ['Moonlight Cockatrice'], 8, [], 0, ['Fremennik Slayer Dungeon (AJR)']),
|
|
15
|
+
new Task('Crabs', 30, 50, [new SlayerLevelRequirement(1)], null, null, ['Ammonite crabs', 'Frost crabs', 'Rock crabs', 'Sand crabs', 'Swamp crabs'], 8, [], 0, ['Rellekka']),
|
|
16
|
+
new Task('Crawling Hands', 30, 50, [new SlayerLevelRequirement(5), new QuestRequirement('Priest in Peril')], null, null, [], 8, [], 0, ['Slayer Tower (CKS)']),
|
|
17
|
+
new Task('Dogs', 30, 50, [new CombatLevelRequirement(15)], null, null, ['Jackal', 'Guard dog', 'Wild dog'], 7, [], 0, ["East of Sophanem (Pharaoh's sceptre - Jaleustrophos)"]),
|
|
18
|
+
new Task('Flesh Crawlers', 15, 25, [new CombatLevelRequirement(15)], null, null, [], 7, [], 0, [
|
|
19
|
+
'Stronghold of Security',
|
|
20
|
+
]),
|
|
21
|
+
new Task('Ghosts', 30, 50, [new CombatLevelRequirement(13)], null, null, ['Tortured soul', 'Forgotten Soul', 'Revenants', 'Death wing'], 7, [], 0, ['Catacombs of Kourend']),
|
|
22
|
+
new Task('Ghouls', 10, 20, [new CombatLevelRequirement(25), new QuestRequirement('Priest in Peril')], null, null, [], 7, [], 0, ['West of Canifis']),
|
|
23
|
+
new Task('Hill Giants', 30, 50, [new CombatLevelRequirement(25)], null, null, ['Obor', 'Cyclops'], 7, [], 0, [
|
|
24
|
+
'Edgeville Dungeon',
|
|
25
|
+
]),
|
|
26
|
+
new Task('Hobgoblins', 30, 50, [new CombatLevelRequirement(20)], null, null, [], 7, [], 0, [
|
|
27
|
+
"South of Champions' Guild",
|
|
28
|
+
'Corsair Cove Dungeon',
|
|
29
|
+
]),
|
|
30
|
+
new Task('Ice warriors', 40, 50, [new CombatLevelRequirement(45)], null, null, ['Icelords'], 7, [], 0, [
|
|
31
|
+
'Asgarnian Ice Dungeon',
|
|
32
|
+
]),
|
|
33
|
+
new Task('Kalphite', 30, 50, [new CombatLevelRequirement(15)], null, null, ['Kalphite worker', 'Kalphite soldier', 'Kalphite guardian', 'Kalphite Queen'], 6, [], 0, ['Kalphite Cave']),
|
|
34
|
+
new Task('Killerwatts', 30, 50, [new SlayerLevelRequirement(37), new CombatLevelRequirement(50), new QuestRequirement('Ernest the Chicken')], null, null, [], 6, [], 0, ['Abandoned Mine (west of Yanille)']),
|
|
35
|
+
new Task('Lizards', 30, 50, [new SlayerLevelRequirement(22)], null, null, ['Small Lizard', 'Desert Lizard', 'Sulphur Lizard', 'Grimy Lizard'], 8, [], 0, ['North of Nardah Fairy Ring (DLQ)', 'Karuulm Slayer Dungeon']),
|
|
36
|
+
new Task('Mogres', 30, 50, [
|
|
37
|
+
new SlayerLevelRequirement(32),
|
|
38
|
+
new CombatLevelRequirement(30),
|
|
39
|
+
new QuestRequirement('Skippy and the Mogres'),
|
|
40
|
+
], null, null, [], 8, [], 0, ['Mudskipper Point']),
|
|
41
|
+
new Task('Pyrefiends', 30, 50, [new SlayerLevelRequirement(30), new CombatLevelRequirement(25)], null, null, ['Pyrelords'], 8, [], 0, ['Fremennik Slayer Dungeon (AJR)']),
|
|
42
|
+
new Task('Rockslugs', 30, 50, [new SlayerLevelRequirement(20), new CombatLevelRequirement(20)], null, null, [], 8, [], 0, ['Fremennik Slayer Dungeon (AJR)']),
|
|
43
|
+
new Task('Scorpions', 30, 50, [new CombatLevelRequirement(7)], null, null, ['King Scorpion', 'Poison Scorpion', 'Pit Scorpion', 'Scorpia', "Scorpia's offspring", "Scorpia's guardian"], 7, [], 0, ['Al Kharid Mine', 'Dwarven Mine']),
|
|
44
|
+
new Task('Shades', 30, 70, [new CombatLevelRequirement(30)], null, null, ['Loar Shades', 'Phrin Shades', 'Riyl Shades', 'Asyn Shades', 'Fiyr Shades', 'Urium Shades'], 8, [], 0, ["Mort'ton"]),
|
|
45
|
+
new Task('Skeletons', 30, 50, [new CombatLevelRequirement(15)], null, null, ['Skeleton mage', 'Skeletons in the Stronghold of Security and Ancient Cavern', "Vet'ion"], 7, [], 0, ['Digsite Dungeon', 'Catacombs of Kourend', 'Edgeville Dungeon']),
|
|
46
|
+
new Task('Vampyres', 10, 20, [new CombatLevelRequirement(35), new QuestRequirement('Priest in Peril')], 200, 250, ['Feral Vampyre', 'Vampyre Juvinate', 'Vyrewatch', 'Vyrewatch Sentinel', 'Venator'], 6, [], 0, ['Meiyerditch']),
|
|
47
|
+
new Task('Wall beasts', 10, 20, [new SlayerLevelRequirement(35), new CombatLevelRequirement(30), new LevelRequirement(Skill.Defence, 5)], null, null, [], 7, [], 0, ['Lumbridge Swamp Caves']),
|
|
48
|
+
new Task('Wolves', 30, 50, [new CombatLevelRequirement(20)], null, null, ['Big Wolf', 'Desert Wolf', 'Ice wolf', 'Jungle wolf', 'White wolf'], 7, [], 0, ['White Wolf Mountain', 'Stronghold of Security']),
|
|
49
|
+
new Task('Zombies', 30, 50, [new CombatLevelRequirement(10)], null, null, ['Monkey Zombie', 'Undead chicken', 'Undead cow', 'Undead one', 'Vorkath', 'Undead Druid'], 7, [], 0, ["Alice's Farm West of Ectofuntus"]),
|
|
61
50
|
];
|
|
62
51
|
export { mazchnaTasks };
|
|
@@ -1,56 +1,110 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Skill } from '../../account/Skill';
|
|
2
|
+
import { CombatLevelRequirement, LevelRequirement, QuestRequirement, SlayerLevelRequirement, SlayerUnlockRequirement, } from '../../Requirement';
|
|
2
3
|
import { Task } from '../Task';
|
|
4
|
+
/**
|
|
5
|
+
* Nieve's task list.
|
|
6
|
+
* Reference: https://oldschool.runescape.wiki/w/Nieve
|
|
7
|
+
*/
|
|
3
8
|
const nieveTasks = [
|
|
4
|
-
new Task('Aberrant spectres',
|
|
5
|
-
new Task('Abyssal demons',
|
|
9
|
+
new Task('Aberrant spectres', 120, 185, [new SlayerLevelRequirement(60), new CombatLevelRequirement(65), new QuestRequirement('Priest in Peril')], 200, 250, ['Deviant spectre'], 6, [], 0, ['Catacombs of Kourend', 'Slayer Tower', 'Stronghold Slayer Cave']),
|
|
10
|
+
new Task('Abyssal demons', 120, 185, [
|
|
6
11
|
new SlayerLevelRequirement(85),
|
|
7
12
|
new CombatLevelRequirement(85),
|
|
8
13
|
new QuestRequirement('Priest in Peril'),
|
|
9
14
|
new QuestRequirement('Fairytale II - Cure a Queen'),
|
|
10
|
-
],
|
|
11
|
-
new Task('Ankou',
|
|
15
|
+
], 200, 250, ['Greater abyssal demon'], 9, [], 0, ['Catacombs of Kourend', 'Abyss', 'Slayer Tower'], [], ['Abyssal Sire']),
|
|
16
|
+
new Task('Ankou', 50, 90, [new CombatLevelRequirement(40)], 91, 150, ['Dark Ankou'], 5, [], 0, [
|
|
12
17
|
'Stronghold of Security',
|
|
18
|
+
'Stronghold Slayer Dungeon',
|
|
13
19
|
'Catacombs of Kourend',
|
|
14
20
|
]),
|
|
15
|
-
new Task('
|
|
16
|
-
new Task('
|
|
17
|
-
|
|
21
|
+
new Task('Araxytes', 40, 60, [new SlayerLevelRequirement(92), new QuestRequirement('Priest in Peril')], 200, 250, [], 8, [], 0, ['Araxyte Hive'], [], ['Araxxor']),
|
|
22
|
+
new Task('Aviansie', 120, 185, [new SlayerUnlockRequirement('Watch the birdie')], 200, 250, ['Reanimated aviansie'], 6, [], 0, ['God Wars Dungeon'], [], ["Kree'arra", 'Flight Kilisa', 'Flockleader Geerin', 'Wingman Skree']),
|
|
23
|
+
new Task('Aquanites', 40, 60, [
|
|
24
|
+
new SlayerLevelRequirement(78),
|
|
25
|
+
new LevelRequirement(Skill.Sailing, 73),
|
|
26
|
+
new SlayerUnlockRequirement('Lured In'),
|
|
27
|
+
], 150, 200, [], 5, [], 0, []),
|
|
28
|
+
new Task('Basilisks', 120, 185, [new SlayerLevelRequirement(40), new SlayerUnlockRequirement('Basilocked')], 200, 250, [], 6, [], 0, ['Fremennik Slayer Dungeon', "Jormungand's Prison"], [], ['Basilisk Knight']),
|
|
29
|
+
new Task('Black demons', 120, 185, [new CombatLevelRequirement(80)], 200, 250, ['Demonic gorilla', 'Balfrug Kreeyath', 'Porazdir'], 9, [], 0, ['Catacombs of Kourend', 'Chasm of Fire', 'Taverley Dungeon', 'Brimhaven Dungeon'], [], ['Skotizo']),
|
|
30
|
+
new Task('Black dragons', 10, 20, [new CombatLevelRequirement(80), new QuestRequirement('Dragon Slayer I')], 40, 60, ['Baby black dragon', 'Brutal black dragon'], 6, [], 0, ['Catacombs of Kourend', "Myths' Guild Dungeon", "Evil Chicken's Lair", 'Taverley Dungeon'], [], ['King Black Dragon']),
|
|
31
|
+
new Task('Bloodveld', 120, 185, [new SlayerLevelRequirement(50), new CombatLevelRequirement(50), new QuestRequirement('Priest in Peril')], 200, 250, ['Mutated Bloodveld'], 9, [], 0, [
|
|
18
32
|
'Catacombs of Kourend',
|
|
33
|
+
'God Wars Dungeon',
|
|
34
|
+
'Iorwerth Dungeon',
|
|
35
|
+
'Meiyerditch Laboratories',
|
|
36
|
+
'Slayer Tower',
|
|
37
|
+
'Stronghold Slayer Dungeon',
|
|
19
38
|
]),
|
|
20
|
-
new Task('
|
|
21
|
-
new Task('
|
|
22
|
-
new Task('
|
|
23
|
-
new Task('Cave
|
|
24
|
-
new Task('Cave
|
|
25
|
-
new Task('
|
|
26
|
-
new Task('
|
|
27
|
-
new Task('
|
|
28
|
-
new Task('
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
]
|
|
32
|
-
new Task('Gargoyles', 75, 120, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80)], null, null, [], 8, [], 0, ['Slayer Tower (CKS)']),
|
|
33
|
-
new Task('Greater demons', 40, 90, [new CombatLevelRequirement(65)], null, null, ['Skotizo', 'Demonic gorilla'], 8, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend']),
|
|
34
|
-
new Task('Hellhounds', 40, 90, [new CombatLevelRequirement(75)], null, null, ['Cerberus'], 8, [], 0, [
|
|
35
|
-
'Taverley Dungeon',
|
|
36
|
-
'Wilderness',
|
|
37
|
-
]),
|
|
38
|
-
new Task('Iron dragons', 60, 120, [new CombatLevelRequirement(80)], null, null, [], 8, [], 0, [
|
|
39
|
+
new Task('Blue dragons', 120, 185, [new CombatLevelRequirement(65), new QuestRequirement('Dragon Slayer I')], null, null, ['Baby blue dragon', 'Brutal blue dragon'], 4, [], 0, ['Catacombs of Kourend', 'Isle of Souls Dungeon', "Myths' Guild Dungeon", 'Taverley Dungeon'], [], ['Vorkath']),
|
|
40
|
+
new Task('Boss', 3, 35, [new SlayerUnlockRequirement('Like a boss')], null, null, [], 8, [], 0, ['Varies']),
|
|
41
|
+
new Task('Brine rats', 120, 185, [new SlayerLevelRequirement(47), new CombatLevelRequirement(45), new QuestRequirement("Olaf's Quest")], null, null, [], 3, [], 0, ['Brine Rat Cavern']),
|
|
42
|
+
new Task('Cave horrors', 120, 180, [new SlayerLevelRequirement(58), new CombatLevelRequirement(85), new QuestRequirement('Cabin Fever')], 200, 250, [], 5, [], 0, ["Mos Le'Harmless Caves"]),
|
|
43
|
+
new Task('Cave kraken', 100, 120, [new SlayerLevelRequirement(87), new CombatLevelRequirement(80), new LevelRequirement(Skill.Magic, 50)], 150, 200, [], 6, [], 0, ['Kraken Cove'], [], ['Kraken']),
|
|
44
|
+
new Task('Custodian stalker', 110, 170, [new SlayerLevelRequirement(54), new QuestRequirement('Shadows of Custodia')], 200, 250, ['Juvenile custodian stalker', 'Mature custodian stalker', 'Elder custodian stalker'], 8, [], 0, []),
|
|
45
|
+
new Task('Dagannoth', 120, 185, [new CombatLevelRequirement(75), new QuestRequirement('Horror from the Deep')], null, null, ['Dagannoth spawn', 'Dagannoth fledgeling'], 8, [], 0, ['Catacombs of Kourend', 'Lighthouse', 'Waterbirth Island', "Jormungand's Prison"], [], ['Dagannoth Rex', 'Dagannoth Prime', 'Dagannoth Supreme']),
|
|
46
|
+
new Task('Dark beasts', 10, 20, [new SlayerLevelRequirement(90), new CombatLevelRequirement(90), new QuestRequirement("Mourning's End Part II")], 110, 135, [], 5, [], 0, ['Mourner Tunnels', 'Iorwerth Dungeon']),
|
|
47
|
+
new Task('Drakes', 30, 95, [new SlayerLevelRequirement(84)], null, null, [], 7, [], 0, ['Karuulm Slayer Dungeon']),
|
|
48
|
+
new Task('Dust devils', 120, 185, [new SlayerLevelRequirement(65), new CombatLevelRequirement(70), new QuestRequirement('Desert Treasure I')], 200, 250, [], 6, [], 0, ['Catacombs of Kourend', 'Smoke Dungeon']),
|
|
49
|
+
new Task('Elves', 60, 90, [new CombatLevelRequirement(70), new QuestRequirement('Regicide')], null, null, ['Elf warrior', 'Mourner', 'Guard', 'Reanimated elf'], 4, [], 0, ['Iorwerth Dungeon', 'Tirannwn', 'Prifddinas']),
|
|
50
|
+
new Task('Fire giants', 120, 185, [new CombatLevelRequirement(65)], null, null, [], 9, [], 0, [
|
|
39
51
|
'Brimhaven Dungeon',
|
|
40
52
|
'Catacombs of Kourend',
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
new Task('
|
|
48
|
-
|
|
53
|
+
'Isle of Souls Dungeon',
|
|
54
|
+
"Giants' Den",
|
|
55
|
+
'Karuulm Slayer Dungeon',
|
|
56
|
+
'Stronghold Slayer Dungeon',
|
|
57
|
+
'Waterfall Dungeon',
|
|
58
|
+
], [], ['Branda the Fire Queen']),
|
|
59
|
+
new Task('Fossil Island Wyverns', 5, 25, [
|
|
60
|
+
new SlayerLevelRequirement(66),
|
|
61
|
+
new CombatLevelRequirement(60),
|
|
62
|
+
new QuestRequirement('Bone Voyage'),
|
|
63
|
+
new QuestRequirement('Elemental Workshop I'),
|
|
64
|
+
], 55, 75, ['Spitting wyvern', 'Taloned wyvern', 'Long-tailed wyvern'], 5, [], 0, ['Wyvern Cave'], [], ['Ancient Wyvern']),
|
|
65
|
+
new Task('Frost dragons', 60, 100, [new LevelRequirement(Skill.Sailing, 87), new CombatLevelRequirement(85)], 180, 240, [], 5, [], 0, []),
|
|
66
|
+
new Task('Gargoyles', 120, 185, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80), new QuestRequirement('Priest in Peril')], 200, 250, [], 6, [], 0, ['Slayer Tower'], [], ['Grotesque Guardians']),
|
|
67
|
+
new Task('Greater demons', 120, 185, [new CombatLevelRequirement(75)], 200, 250, [], 7, [], 0, ['Catacombs of Kourend', 'Chasm of Fire', 'Isle of Souls Dungeon', 'Karuulm Slayer Dungeon', 'Brimhaven Dungeon'], [], ["K'ril Tsutsaroth", 'Tstanon Karlak', 'Skotizo', 'Tormented demon']),
|
|
68
|
+
new Task('Gryphons', 110, 170, [
|
|
69
|
+
new SlayerLevelRequirement(51),
|
|
70
|
+
new LevelRequirement(Skill.Sailing, 45),
|
|
71
|
+
new QuestRequirement('Troubled Tortugans'),
|
|
72
|
+
new SlayerUnlockRequirement('Wings Spread'),
|
|
73
|
+
], 190, 250, ['Shellbane gryphon'], 7, [], 0, []),
|
|
74
|
+
new Task('Hellhounds', 120, 185, [new CombatLevelRequirement(75)], null, null, ['Skeleton Hellhound', 'Greater Skeleton Hellhound'], 8, [], 0, [
|
|
75
|
+
'Karuulm Slayer Dungeon',
|
|
49
76
|
'Catacombs of Kourend',
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
new Task('
|
|
77
|
+
'Stronghold Slayer Dungeon',
|
|
78
|
+
'Taverley Dungeon',
|
|
79
|
+
'Witchaven Dungeon',
|
|
80
|
+
], [], ['Cerberus']),
|
|
81
|
+
new Task('Kalphite', 120, 185, [new CombatLevelRequirement(15)], null, null, ['Kalphite worker', 'Kalphite soldier', 'Kalphite guardian'], 9, [], 0, ['Kalphite Lair', 'Kalphite Cave'], [], ['Kalphite Queen']),
|
|
82
|
+
new Task('Kurask', 120, 185, [new SlayerLevelRequirement(70), new CombatLevelRequirement(65)], null, null, [], 3, [], 0, ['Fremennik Slayer Dungeon']),
|
|
83
|
+
new Task('Lizardmen', 90, 120, [new SlayerUnlockRequirement('Reptile got ripped')], null, null, ['Lizardman brute', 'Lizardman shaman'], 8, [], 0, ['Battlefront', 'Lizardman Canyon', 'Lizardman Settlement', 'Kebos Swamp', 'Molch']),
|
|
84
|
+
new Task('Metal dragons', 30, 40, [new QuestRequirement('Dragon Slayer I')], 150, 200, ['Bronze dragon', 'Iron dragon', 'Steel dragon', 'Mithril dragon', 'Adamant dragon', 'Rune dragon'], 12, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend', 'Isle of Souls Dungeon', 'Lithkren Vault']),
|
|
85
|
+
new Task('Mutated Zygomites', 10, 25, [new SlayerLevelRequirement(57), new CombatLevelRequirement(60), new QuestRequirement('Lost City')], null, null, [], 2, [], 0, ['Fossil Island', 'Zanaris'], [], ['Ancient Zygomite']),
|
|
86
|
+
new Task('Nechryael', 110, 170, [new SlayerLevelRequirement(80), new CombatLevelRequirement(85), new QuestRequirement('Priest in Peril')], 200, 250, ['Greater Nechryael'], 7, [], 0, ['Catacombs of Kourend', 'Iorwerth Dungeon', 'Slayer Tower']),
|
|
87
|
+
new Task('Red dragons', 30, 80, [
|
|
88
|
+
new CombatLevelRequirement(68),
|
|
89
|
+
new QuestRequirement('Dragon Slayer I'),
|
|
90
|
+
new SlayerUnlockRequirement('Seeing red'),
|
|
91
|
+
], null, null, ['Baby red dragon', 'Brutal red dragon'], 5, [], 0, ['Brimhaven Dungeon', 'Catacombs of Kourend', 'Forthos Dungeon', "Myths' Guild Dungeon"]),
|
|
92
|
+
new Task('Scabarites', 30, 60, [new CombatLevelRequirement(85), new QuestRequirement('Contact!')], 130, 170, ['Scarab', 'Scarab swarm', 'Locust rider', 'Scarab mage'], 4, [], 0, ['Sophanem Dungeon']),
|
|
93
|
+
new Task('Skeletal Wyverns', 5, 15, [new SlayerLevelRequirement(72), new CombatLevelRequirement(70), new QuestRequirement('Elemental Workshop I')], 50, 70, [], 5, [], 0, ['Asgarnian Ice Dungeon']),
|
|
94
|
+
new Task('Smoke devils', 120, 185, [new SlayerLevelRequirement(93), new CombatLevelRequirement(85)], null, null, [], 7, [], 0, ['Smoke Devil Dungeon'], [], ['Thermonuclear smoke devil']),
|
|
95
|
+
new Task('Spiritual creatures', 120, 185, [
|
|
96
|
+
new SlayerLevelRequirement(63),
|
|
97
|
+
new CombatLevelRequirement(60),
|
|
98
|
+
new QuestRequirement('Death Plateau'),
|
|
99
|
+
new LevelRequirement(Skill.Strength, 60),
|
|
100
|
+
new LevelRequirement(Skill.Agility, 60),
|
|
101
|
+
], 181, 250, ['Spiritual ranger', 'Spiritual warrior', 'Spiritual mage'], 6, [], 0, ['God Wars Dungeon']),
|
|
102
|
+
new Task('Suqah', 120, 185, [new CombatLevelRequirement(85), new QuestRequirement('Lunar Diplomacy')], 186, 250, [], 8, [], 0, ['Lunar Isle']),
|
|
103
|
+
new Task('Trolls', 120, 185, [new CombatLevelRequirement(60)], null, null, ['Mountain troll', 'Ice troll'], 6, [], 0, ['Troll Stronghold', 'Keldagrim', 'Death Plateau', 'South of Mount Quidamortem', 'Fremennik Isles'], [], ['Troll General']),
|
|
104
|
+
new Task('Turoth', 120, 185, [new SlayerLevelRequirement(55), new CombatLevelRequirement(60)], null, null, [], 3, [], 0, ['Fremennik Slayer Dungeon']),
|
|
105
|
+
new Task('TzHaar', 110, 180, [new SlayerUnlockRequirement('Hot stuff')], null, null, [], 10, [], 0, ['TzHaar City'], [], ['TzTok-Jad', 'TzKal-Zuk']),
|
|
106
|
+
new Task('Vampyres', 110, 170, [new SlayerUnlockRequirement('Actual Vampyre Slayer')], 200, 250, ['Feral Vampyre', 'Vampyre Juvenile', 'Vampyre Juvinate', 'Vyrewatch', 'Vyrewatch Sentinel', 'Venator'], 6, [], 0, ['Darkmeyer', 'Meiyerditch', 'Slepe', 'Vampyrium']),
|
|
107
|
+
new Task('Warped creatures', 120, 185, [new SlayerUnlockRequirement('Warped Reality')], null, null, ['Warped Terrorbird', 'Warped Tortoise'], 6, [], 0, ['Poison Waste Dungeon']),
|
|
108
|
+
new Task('Wyrms', 80, 145, [new SlayerLevelRequirement(62)], 200, 250, ['Wyrmling'], 7, [], 0, ['Karuulm Slayer Dungeon'], [], ['Lava Strykewyrm']),
|
|
55
109
|
];
|
|
56
110
|
export { nieveTasks };
|
|
@@ -1,55 +1,95 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Skill } from '../../account/Skill';
|
|
2
|
+
import { CombatLevelRequirement, LevelRequirement, QuestRequirement, SlayerLevelRequirement } from '../../Requirement';
|
|
2
3
|
import { Task } from '../Task';
|
|
4
|
+
/**
|
|
5
|
+
* Vannaka's task list.
|
|
6
|
+
* Reference: https://oldschool.runescape.wiki/w/Vannaka
|
|
7
|
+
*/
|
|
3
8
|
const vannakaTasks = [
|
|
4
|
-
new Task('Aberrant spectres', 40, 90, [new SlayerLevelRequirement(60), new CombatLevelRequirement(65), new QuestRequirement('Priest in Peril')],
|
|
5
|
-
new Task('
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
new Task('
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
new Task('Aberrant spectres', 40, 90, [new SlayerLevelRequirement(60), new CombatLevelRequirement(65), new QuestRequirement('Priest in Peril')], 200, 250, ['Deviant spectres'], 8, [], 0, ['Catacombs of Kourend', 'Slayer Tower', 'Stronghold Slayer Cave']),
|
|
10
|
+
new Task('Abyssal demons', 40, 90, [
|
|
11
|
+
new SlayerLevelRequirement(85),
|
|
12
|
+
new CombatLevelRequirement(85),
|
|
13
|
+
new QuestRequirement('Priest in Peril'),
|
|
14
|
+
new QuestRequirement('Fairytale II - Cure a Queen'),
|
|
15
|
+
], 200, 250, ['Abyssal Sire'], 5, [], 0, ['Catacombs of Kourend', 'Abyss', 'Slayer Tower']),
|
|
16
|
+
new Task('Ankou', 25, 35, [new CombatLevelRequirement(40)], 91, 150, ['Dark Ankou'], 8, [], 0, [
|
|
17
|
+
'Stronghold of Security',
|
|
18
|
+
'Stronghold Slayer Dungeon',
|
|
19
|
+
'Catacombs of Kourend',
|
|
20
|
+
]),
|
|
21
|
+
new Task('Basilisks', 40, 90, [new SlayerLevelRequirement(40), new CombatLevelRequirement(40), new LevelRequirement(Skill.Defence, 20)], 200, 250, ['Basilisk Knights'], 8, [], 0, ['Fremennik Slayer Dungeon', "Jormungand's Prison"]),
|
|
22
|
+
new Task('Bloodveld', 40, 90, [new SlayerLevelRequirement(50), new CombatLevelRequirement(50), new QuestRequirement('Priest in Peril')], 200, 250, ['Mutated Bloodveld'], 8, [], 0, ['Meiyerditch Laboratories', 'Catacombs of Kourend']),
|
|
23
|
+
new Task('Blue dragons', 40, 90, [new CombatLevelRequirement(65), new QuestRequirement('Dragon Slayer I')], null, null, ['Baby blue dragons', 'Brutal blue dragons', 'Vorkath'], 7, [], 0, ['Taverley Dungeon', "Myths' Guild Dungeon"]),
|
|
24
|
+
new Task('Brine rats', 40, 90, [new SlayerLevelRequirement(47), new CombatLevelRequirement(45), new QuestRequirement("Olaf's Quest")], null, null, [], 7, [], 0, ['Brine Rat Cavern']),
|
|
25
|
+
new Task('Cockatrice', 40, 90, [new SlayerLevelRequirement(25), new CombatLevelRequirement(25), new LevelRequirement(Skill.Defence, 20)], null, null, ['Moonlight Cockatrice'], 8, [], 0, ['Fremennik Slayer Dungeon']),
|
|
26
|
+
new Task('Crabs', 40, 90, [], null, null, ['Ammonite crabs', 'Frost crabs', 'Rock crabs', 'Sand crabs', 'Swamp crabs'], 8, [], 0, ['Mogre Camp']),
|
|
27
|
+
new Task('Crocodiles', 40, 90, [new CombatLevelRequirement(50)], null, null, [], 6, [], 0, ['Kharidian Desert']),
|
|
28
|
+
new Task('Dagannoth', 40, 90, [new CombatLevelRequirement(75), new QuestRequirement('Horror from the Deep')], null, null, ['Dagannoth spawn', 'Dagannoth fledgeling', 'Dagannoth Kings'], 7, [], 0, ['Lighthouse', 'Catacombs of Kourend']),
|
|
29
|
+
new Task('Dust devils', 40, 90, [new SlayerLevelRequirement(65), new CombatLevelRequirement(70), new QuestRequirement('Desert Treasure I')], 200, 250, [], 8, [], 0, ['Catacombs of Kourend', 'Smoke Dungeon']),
|
|
30
|
+
new Task('Elves', 30, 70, [new CombatLevelRequirement(70), new QuestRequirement('Regicide')], null, null, ['Elf warrior', 'Mourner'], 7, [], 0, ['Iorwerth Dungeon', 'Tirannwn', 'Prifddinas']),
|
|
31
|
+
new Task('Fever spiders', 30, 90, [new SlayerLevelRequirement(42), new QuestRequirement('Rum Deal')], null, null, [], 7, [], 0, ['Braindeath Island']),
|
|
32
|
+
new Task('Fire giants', 40, 90, [new CombatLevelRequirement(65)], null, null, ['Branda the Fire Queen'], 7, [], 0, [
|
|
16
33
|
'Waterfall Dungeon',
|
|
17
34
|
'Brimhaven Dungeon',
|
|
18
35
|
]),
|
|
19
|
-
new Task('
|
|
20
|
-
new Task('Ghouls', 40,
|
|
21
|
-
new Task('
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
new Task('
|
|
27
|
-
|
|
28
|
-
]
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
new Task('
|
|
32
|
-
'
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
new Task('
|
|
36
|
-
'
|
|
37
|
-
'
|
|
38
|
-
]),
|
|
39
|
-
new Task('
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
]),
|
|
44
|
-
new Task('
|
|
45
|
-
|
|
46
|
-
]),
|
|
47
|
-
new Task('
|
|
48
|
-
new Task('
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
36
|
+
new Task('Gargoyles', 40, 90, [new SlayerLevelRequirement(75), new CombatLevelRequirement(80), new QuestRequirement('Priest in Peril')], 200, 250, ['Grotesque Guardians'], 5, [], 0, ['Slayer Tower']),
|
|
37
|
+
new Task('Ghouls', 10, 40, [new CombatLevelRequirement(25), new QuestRequirement('Priest in Peril')], null, null, [], 7, [], 0, ['West of Canifis']),
|
|
38
|
+
new Task('Gryphons', 30, 80, [
|
|
39
|
+
new SlayerLevelRequirement(51),
|
|
40
|
+
new LevelRequirement(Skill.Sailing, 45),
|
|
41
|
+
new QuestRequirement('Troubled Tortugans'),
|
|
42
|
+
], 110, 160, ['Shellbane gryphon'], 10, [], 0, []),
|
|
43
|
+
new Task('Harpie Bug Swarms', 40, 90, [new SlayerLevelRequirement(33), new CombatLevelRequirement(45), new LevelRequirement(Skill.Firemaking, 33)], null, null, [], 8, [], 0, ['Karamja']),
|
|
44
|
+
new Task('Hellhounds', 30, 60, [new CombatLevelRequirement(75)], null, null, ['Cerberus', 'Skeleton Hellhound', 'Greater Skeleton Hellhound'], 7, [], 0, ['Taverley Dungeon', 'Witchaven Dungeon', 'Wilderness']),
|
|
45
|
+
new Task('Hill Giants', 40, 90, [new CombatLevelRequirement(25)], null, null, ['Obor', 'Cyclops'], 7, [], 0, [
|
|
46
|
+
'Edgeville Dungeon',
|
|
47
|
+
]),
|
|
48
|
+
new Task('Hobgoblins', 40, 90, [new CombatLevelRequirement(20)], null, null, [], 7, [], 0, [
|
|
49
|
+
'Edgeville Dungeon',
|
|
50
|
+
'Asgarnian Ice Dungeon',
|
|
51
|
+
]),
|
|
52
|
+
new Task('Ice giants', 30, 80, [new CombatLevelRequirement(50)], null, null, ['Eldric the Ice King'], 7, [], 0, [
|
|
53
|
+
'Asgarnian Ice Dungeon',
|
|
54
|
+
'Wilderness',
|
|
55
|
+
]),
|
|
56
|
+
new Task('Ice warriors', 40, 90, [new CombatLevelRequirement(45)], null, null, ['Icelords'], 7, [], 0, [
|
|
57
|
+
'Asgarnian Ice Dungeon',
|
|
58
|
+
'Wilderness',
|
|
59
|
+
]),
|
|
60
|
+
new Task('Infernal Mages', 40, 90, [new SlayerLevelRequirement(45), new CombatLevelRequirement(40), new QuestRequirement('Priest in Peril')], null, null, [], 8, [], 0, ['Slayer Tower']),
|
|
61
|
+
new Task('Jellies', 40, 90, [new SlayerLevelRequirement(52), new CombatLevelRequirement(57)], null, null, ['Warped Jelly', 'Chilled jelly'], 8, [], 0, ['Fremennik Slayer Dungeon', 'Catacombs of Kourend']),
|
|
62
|
+
new Task('Jungle horrors', 40, 90, [new CombatLevelRequirement(65), new QuestRequirement('Cabin Fever')], null, null, [], 8, [], 0, ["Mos Le'Harmless"]),
|
|
63
|
+
new Task('Kalphite', 40, 90, [new CombatLevelRequirement(15)], null, null, ['Kalphite worker', 'Kalphite soldier', 'Kalphite guardian', 'Kalphite Queen'], 7, [], 0, ['Kalphite Cave', 'Kalphite Lair']),
|
|
64
|
+
new Task('Kurask', 40, 90, [new SlayerLevelRequirement(70), new CombatLevelRequirement(65)], null, null, [], 7, [], 0, ['Fremennik Slayer Dungeon']),
|
|
65
|
+
new Task('Lesser demons', 40, 90, [new CombatLevelRequirement(60)], null, null, ["Zakl'n Gritch"], 7, [], 0, [
|
|
66
|
+
'Karamja Volcano',
|
|
67
|
+
'Wilderness',
|
|
68
|
+
]),
|
|
69
|
+
new Task('Mogres', 40, 90, [new SlayerLevelRequirement(32), new CombatLevelRequirement(30), new QuestRequirement('Skippy and the Mogres')], null, null, [], 7, [], 0, ['Mudskipper Point']),
|
|
70
|
+
new Task('Molanisks', 40, 50, [new SlayerLevelRequirement(39), new CombatLevelRequirement(50), new QuestRequirement('Death to the Dorgeshuun')], null, null, [], 7, [], 0, ['Dorgesh-Kaan South Dungeon']),
|
|
71
|
+
new Task('Moss giants', 40, 90, [new CombatLevelRequirement(40)], null, null, ['Bryophyta'], 7, [], 0, [
|
|
72
|
+
'Varrock Sewers',
|
|
73
|
+
'Crandor',
|
|
53
74
|
]),
|
|
75
|
+
new Task('Nechryael', 40, 90, [new SlayerLevelRequirement(80), new CombatLevelRequirement(85), new QuestRequirement('Priest in Peril')], 200, 250, ['Greater Nechryael'], 5, [], 0, ['Slayer Tower', 'Catacombs of Kourend']),
|
|
76
|
+
new Task('Ogres', 40, 90, [new CombatLevelRequirement(40)], null, null, ['Ogress Shaman', 'Ogress Warrior'], 7, [], 0, ['Corsair Cove Dungeon', 'Feldip Hills']),
|
|
77
|
+
new Task('Otherworldly beings', 40, 90, [new CombatLevelRequirement(40), new QuestRequirement('Lost City')], null, null, [], 8, [], 0, ['Zanaris']),
|
|
78
|
+
new Task('Pyrefiends', 40, 90, [new SlayerLevelRequirement(30), new CombatLevelRequirement(25)], null, null, ['Pyrelord'], 8, [], 0, ['Fremennik Slayer Dungeon']),
|
|
79
|
+
new Task('Sea snakes', 40, 90, [new SlayerLevelRequirement(40), new CombatLevelRequirement(50), new QuestRequirement('Royal Trouble')], null, null, ['Sea Snake Hatchling', 'Sea Snake Young'], 6, [], 0, ['Miscellania and Etceteria Dungeon']),
|
|
80
|
+
new Task('Shades', 40, 90, [new CombatLevelRequirement(30)], null, null, ['Loar Shade', 'Phrin Shade', 'Riyl Shade', 'Asyn Shade', 'Fiyr Shade', 'Urium Shade'], 8, [], 0, ["Mort'ton"]),
|
|
81
|
+
new Task('Shadow warriors', 30, 80, [new CombatLevelRequirement(60), new QuestRequirement("Legends' Quest")], null, null, [], 8, [], 0, ["Legends' Guild Basement"]),
|
|
82
|
+
new Task('Spiritual creatures', 40, 90, [
|
|
83
|
+
new SlayerLevelRequirement(63),
|
|
84
|
+
new CombatLevelRequirement(60),
|
|
85
|
+
new QuestRequirement('Death Plateau'),
|
|
86
|
+
new LevelRequirement(Skill.Strength, 60),
|
|
87
|
+
new LevelRequirement(Skill.Agility, 60),
|
|
88
|
+
], 181, 250, ['Spiritual ranger', 'Spiritual warrior', 'Spiritual mage'], 8, [], 0, ['God Wars Dungeon']),
|
|
89
|
+
new Task('Terror dogs', 20, 45, [new SlayerLevelRequirement(40), new CombatLevelRequirement(60), new QuestRequirement('Haunted Mine')], null, null, [], 6, [], 0, ['Haunted Mine']),
|
|
90
|
+
new Task('Trolls', 40, 90, [new CombatLevelRequirement(60)], null, null, ['Mountain Troll', 'Ice Troll', 'Troll General'], 7, [], 0, ['Death Plateau', 'Fremennik Isles']),
|
|
91
|
+
new Task('Turoth', 30, 90, [new SlayerLevelRequirement(55), new CombatLevelRequirement(60)], null, null, [], 8, [], 0, ['Fremennik Slayer Dungeon']),
|
|
92
|
+
new Task('Vampyres', 10, 20, [new CombatLevelRequirement(35), new QuestRequirement('Priest in Peril')], 200, 250, ['Feral Vampyre', 'Vampyre Juvinate', 'Vyrewatch', 'Vyrewatch Sentinel', 'Venator'], 7, [], 0, ['Darkmeyer', 'Meiyerditch', 'Slepe']),
|
|
93
|
+
new Task('Werewolves', 30, 60, [new CombatLevelRequirement(60), new QuestRequirement('Priest in Peril')], null, null, [], 7, [], 0, ['Canifis']),
|
|
54
94
|
];
|
|
55
95
|
export { vannakaTasks };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "osrs-tools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.12.0",
|
|
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,
|