osrs-tools
Version:
A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and game item information
304 lines (303 loc) • 15.1 kB
JavaScript
import { HunterRumour } from "./HunterRumour";
import { RumourLocation } from "./RumourLocation";
import { HunterGuildMasterName } from "./HunterGuildMaster";
import { HunterRumourMethods, HunterLeagueRegions } from "./types";
// Common location name constants to avoid repeated literal strings
const FELDIP_HUNTER_AREA = 'Feldip Hunter area';
const PISCATORIS_HUNTER_AREA = 'Piscatoris Hunter area';
const RELLEKKA_HUNTER_AREA = 'Rellekka Hunter area';
const THE_GREAT_CONCH = 'The Great Conch';
const TLATI_RAINFOREST = 'Tlati Rainforest';
const FARMING_GUILD = 'Farming Guild';
const PISCATORIS_FALCONRY_AREA = 'Piscatoris falconry area';
const AVIUM_SAVANNAH = 'Avium Savannah';
const MONS_GRATIA = 'Mons Gratia';
const NEYPOTZLI = 'Neypotzli';
const THE_BURROW = 'The Burrow';
const { BIRD_SNARE, DEADFALL, BUTTERFLY_NET, NET_TRAP, SPIKED_PIT, BOX_TRAP, FALCONRY, TRACKING, } = HunterRumourMethods;
const { KANDARIN, VARLAMORE, FREMENNIK, KOUREND, MORYTANIA, KARAMJA, DESERT, MISHTHALIN, TIRANNWN, } = HunterLeagueRegions;
export const HUNTER_RUMOUR_REGISTRY = [
new HunterRumour({
id: 'tropical-wagtail',
creature: 'Tropical wagtail',
method: 'Bird snare',
locations: [new RumourLocation(FELDIP_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Tropical_wagtail'), new RumourLocation(THE_GREAT_CONCH, 'https://oldschool.runescape.wiki/w/Tropical_wagtail'), new RumourLocation(TLATI_RAINFOREST, 'https://oldschool.runescape.wiki/w/Tropical_wagtail')],
requiredHunterLevel: 19,
tier: 'Novice',
masterNames: [HunterGuildMasterName.GILMAN],
leagueRegions: ["Kandarin", "Varlamore"],
}),
new HunterRumour({
id: 'wild-kebbit',
creature: 'Wild kebbit',
method: 'Deadfall',
locations: [new RumourLocation(PISCATORIS_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Wild_kebbit'), new RumourLocation('Auburnvale', 'https://oldschool.runescape.wiki/w/Wild_kebbit')],
requiredHunterLevel: 23,
tier: 'Novice',
masterNames: [HunterGuildMasterName.GILMAN],
leagueRegions: ["Kandarin", "Varlamore"],
}),
new HunterRumour({
id: 'sapphire-glacialis',
creature: 'Sapphire glacialis',
method: 'Butterfly net',
locations: [new RumourLocation(RELLEKKA_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Sapphire_glacialis'), new RumourLocation(FARMING_GUILD, 'https://oldschool.runescape.wiki/w/Sapphire_glacialis'), new RumourLocation(MONS_GRATIA, 'https://oldschool.runescape.wiki/w/Sapphire_glacialis')],
requiredHunterLevel: 25,
tier: 'Novice',
masterNames: [HunterGuildMasterName.GILMAN],
leagueRegions: ["Fremennik", "Kourend", "Varlamore"],
}),
new HunterRumour({
id: 'swamp-lizard',
creature: 'Swamp lizard',
method: 'Net trap',
locations: [new RumourLocation('Canifis Hunter area', 'https://oldschool.runescape.wiki/w/Swamp_lizard'), new RumourLocation('North-west of Slepe', 'https://oldschool.runescape.wiki/w/Swamp_lizard')],
requiredHunterLevel: 29,
tier: 'Adept',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus'],
leagueRegions: ["Morytania"],
}),
new HunterRumour({
id: 'spined-larupia',
creature: 'Spined larupia',
method: 'Spiked pit',
locations: [new RumourLocation(FELDIP_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Spined_larupia')],
requiredHunterLevel: 31,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Aco'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'barb-tailed-kebbit',
creature: 'Barb-tailed kebbit',
method: 'Deadfall',
locations: [new RumourLocation(FELDIP_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Barb-tailed_kebbit')],
requiredHunterLevel: 33,
tier: 'Novice',
masterNames: [HunterGuildMasterName.GILMAN],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'snowy-knight',
creature: 'Snowy knight',
method: 'Butterfly net',
locations: [new RumourLocation(RELLEKKA_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Snowy_knight'), new RumourLocation('Weiss', 'https://oldschool.runescape.wiki/w/Snowy_knight'), new RumourLocation(FARMING_GUILD, 'https://oldschool.runescape.wiki/w/Snowy_knight'), new RumourLocation(MONS_GRATIA, 'https://oldschool.runescape.wiki/w/Snowy_knight')],
requiredHunterLevel: 35,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Aco'],
leagueRegions: ["Fremennik", "Kandarin", "Kourend", "Varlamore"],
}),
new HunterRumour({
id: 'prickly-kebbit',
creature: 'Prickly kebbit',
method: 'Deadfall',
locations: [new RumourLocation(PISCATORIS_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Prickly_kebbit')],
requiredHunterLevel: 37,
tier: 'Novice',
masterNames: [HunterGuildMasterName.GILMAN],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'embertailed-jerboa',
creature: 'Embertailed jerboa',
method: 'Box trap',
locations: [new RumourLocation('West of Hunter Guild', 'https://oldschool.runescape.wiki/w/Embertailed_jerboa'), new RumourLocation('North-west of the Locus Oasis', 'https://oldschool.runescape.wiki/w/Embertailed_jerboa')],
requiredHunterLevel: 39,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Aco'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'horned-graahk',
creature: 'Horned graahk',
method: 'Spiked pit',
locations: [new RumourLocation('Karamja Hunter area', 'https://oldschool.runescape.wiki/w/Horned_graahk')],
requiredHunterLevel: 41,
tier: 'Adept',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus'],
leagueRegions: ["Karamja"],
}),
new HunterRumour({
id: 'spotted-kebbit',
creature: 'Spotted kebbit',
method: 'Falconry',
locations: [new RumourLocation(PISCATORIS_FALCONRY_AREA, 'https://oldschool.runescape.wiki/w/Spotted_kebbit')],
requiredHunterLevel: 43,
tier: 'Adept',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Ornus'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'black-warlock',
creature: 'Black warlock',
method: 'Butterfly net',
locations: [new RumourLocation(FELDIP_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Black_warlock'), new RumourLocation(FARMING_GUILD, 'https://oldschool.runescape.wiki/w/Black_warlock'), new RumourLocation('Crypt of Tonali hunter area', 'https://oldschool.runescape.wiki/w/Black_warlock'), new RumourLocation(TLATI_RAINFOREST, 'https://oldschool.runescape.wiki/w/Black_warlock'), new RumourLocation('Shimmering Atoll', 'https://oldschool.runescape.wiki/w/Black_warlock')],
requiredHunterLevel: 45,
tier: 'Adept',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus'],
leagueRegions: ["Kandarin", "Kourend", "Varlamore"],
}),
new HunterRumour({
id: 'orange-salamander',
creature: 'Orange salamander',
method: 'Net trap',
locations: [new RumourLocation(THE_GREAT_CONCH, 'https://oldschool.runescape.wiki/w/Orange_salamander'), new RumourLocation('Uzer Hunter area', 'https://oldschool.runescape.wiki/w/Orange_salamander'), new RumourLocation('Necropolis Hunter area', 'https://oldschool.runescape.wiki/w/Orange_salamander')],
requiredHunterLevel: 47,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Ornus'],
leagueRegions: ["Desert"],
}),
new HunterRumour({
id: 'razor-backed-kebbit',
creature: 'Razor-backed kebbit',
method: 'Tracking',
locations: [new RumourLocation(PISCATORIS_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Razor-backed_kebbit')],
requiredHunterLevel: 49,
tier: 'Adept',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'sabre-toothed-kebbit',
creature: 'Sabre-toothed kebbit',
method: 'Deadfall',
locations: [new RumourLocation(RELLEKKA_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Sabre-toothed_kebbit')],
requiredHunterLevel: 51,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Ornus'],
leagueRegions: ["Fremennik"],
}),
new HunterRumour({
id: 'grey-chinchompa',
creature: 'Grey chinchompa',
method: 'Box trap',
locations: [new RumourLocation(PISCATORIS_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Grey_chinchompa'), new RumourLocation('Kourend Woodland', 'https://oldschool.runescape.wiki/w/Grey_chinchompa'), new RumourLocation('Isle of Souls', 'https://oldschool.runescape.wiki/w/Grey_chinchompa')],
requiredHunterLevel: 53,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Aco', 'Teco'],
leagueRegions: ["Kandarin", "Kourend", "Misthalin"],
}),
new HunterRumour({
id: 'sabre-toothed-kyatt',
creature: 'Sabre-toothed kyatt',
method: 'Spiked pit',
locations: [new RumourLocation(RELLEKKA_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Sabre-toothed_kyatt')],
requiredHunterLevel: 55,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Ornus', 'Aco', 'Teco'],
leagueRegions: ["Fremennik"],
}),
new HunterRumour({
id: 'dark-kebbit',
creature: 'Dark kebbit',
method: 'Falconry',
locations: [new RumourLocation(PISCATORIS_FALCONRY_AREA, 'https://oldschool.runescape.wiki/w/Dark_kebbit')],
requiredHunterLevel: 57,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Aco', 'Teco'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'pyre-fox',
creature: 'Pyre fox',
method: 'Deadfall',
locations: [new RumourLocation(AVIUM_SAVANNAH, 'https://oldschool.runescape.wiki/w/Pyre_fox')],
requiredHunterLevel: 57,
tier: 'Expert',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Ornus'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'red-salamander',
creature: 'Red salamander',
method: 'Net trap',
locations: [new RumourLocation('Ourania Hunter area', 'https://oldschool.runescape.wiki/w/Red_salamander'), new RumourLocation('Charred Island', 'https://oldschool.runescape.wiki/w/Red_salamander')],
requiredHunterLevel: 59,
tier: 'Master',
masterNames: [HunterGuildMasterName.GILMAN, 'Aco', 'Teco', 'Wolf'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'red-chinchompa',
creature: 'Red chinchompa',
method: 'Box trap',
locations: [new RumourLocation('Chinchompa Island', 'https://oldschool.runescape.wiki/w/Red_chinchompa'), new RumourLocation(FELDIP_HUNTER_AREA, 'https://oldschool.runescape.wiki/w/Red_chinchompa'), new RumourLocation(THE_GREAT_CONCH, 'https://oldschool.runescape.wiki/w/Red_chinchompa'), new RumourLocation('Gwenith Hunter area', 'https://oldschool.runescape.wiki/w/Red_chinchompa'), new RumourLocation('Red chinchompa hunting ground', 'https://oldschool.runescape.wiki/w/Red_chinchompa'), new RumourLocation(TLATI_RAINFOREST, 'https://oldschool.runescape.wiki/w/Red_chinchompa')],
requiredHunterLevel: 63,
tier: 'Master',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Ornus', 'Aco', 'Teco', 'Wolf'],
leagueRegions: ["Kandarin", "Tirannwn", "Varlamore"],
}),
new HunterRumour({
id: 'dashing-kebbit',
creature: 'Dashing kebbit',
method: 'Falconry',
locations: [new RumourLocation(PISCATORIS_FALCONRY_AREA, 'https://oldschool.runescape.wiki/w/Dashing_kebbit')],
requiredHunterLevel: 69,
tier: 'Master',
masterNames: [HunterGuildMasterName.GILMAN, 'Aco', 'Teco', 'Wolf'],
leagueRegions: ["Kandarin"],
}),
new HunterRumour({
id: 'sunlight-antelope',
creature: 'Sunlight antelope',
method: 'Spiked pit',
locations: [new RumourLocation(AVIUM_SAVANNAH, 'https://oldschool.runescape.wiki/w/Sunlight_antelope')],
requiredHunterLevel: 72,
tier: 'Master',
masterNames: ['Aco', 'Teco', 'Wolf'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'sunlight-moth',
creature: 'Sunlight moth',
method: 'Butterfly net',
locations: [new RumourLocation(AVIUM_SAVANNAH, 'https://oldschool.runescape.wiki/w/Sunlight_moth'), new RumourLocation(NEYPOTZLI, 'https://oldschool.runescape.wiki/w/Sunlight_moth')],
requiredHunterLevel: 75,
tier: 'Master',
masterNames: [HunterGuildMasterName.GILMAN, 'Cervus', 'Teco'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'tecu-salamander',
creature: 'Tecu salamander',
method: 'Net trap',
locations: [new RumourLocation("Ralos' Rise", 'https://oldschool.runescape.wiki/w/Tecu_salamander')],
requiredHunterLevel: 79,
tier: 'Master',
masterNames: ['Aco', 'Wolf'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'herbiboar',
creature: 'Herbiboar',
method: 'Tracking',
locations: [new RumourLocation('Mushroom Forest on Fossil Island', 'https://oldschool.runescape.wiki/w/Herbiboar')],
requiredHunterLevel: 80,
tier: 'Master',
masterNames: ['Teco', 'Wolf'],
questRequirements: ['Bone Voyage'],
notes: 'Also requires Herblore 31',
leagueRegions: ["Misthalin"],
}),
new HunterRumour({
id: 'moonlight-moth',
creature: 'Moonlight moth',
method: 'Butterfly net',
locations: [new RumourLocation(THE_BURROW, 'https://oldschool.runescape.wiki/w/Moonlight_moth'), new RumourLocation(NEYPOTZLI, 'https://oldschool.runescape.wiki/w/Moonlight_moth'), new RumourLocation('Ruins of Tapoyauik', 'https://oldschool.runescape.wiki/w/Moonlight_moth'), new RumourLocation('Tonali Cavern', 'https://oldschool.runescape.wiki/w/Moonlight_moth')],
requiredHunterLevel: 85,
tier: 'Master',
masterNames: ['Aco', 'Wolf'],
leagueRegions: ["Varlamore"],
}),
new HunterRumour({
id: 'moonlight-antelope',
creature: 'Moonlight antelope',
method: 'Spiked pit',
locations: [new RumourLocation(THE_BURROW, 'https://oldschool.runescape.wiki/w/Moonlight_antelope')],
requiredHunterLevel: 91,
tier: 'Master',
masterNames: ['Wolf'],
questRequirements: ['At First Light'],
leagueRegions: ["Varlamore"],
}),
];