UNPKG

osrs-tools

Version:

A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and game item information

289 lines (288 loc) 11.3 kB
import { LevelRequirement, QuestRequirement } from "../../Requirement"; const quest = (name) => new QuestRequirement(name); const skill = (skillName, level, boostable = true) => new LevelRequirement(skillName, level, boostable); /** * Desert Achievement Diary data, authored directly in TypeScript. * * Source: https://oldschool.runescape.wiki/w/Desert_Diary */ export const DesertDiary = { name: "Desert Diary", itemReward: "Desert amulet", easy: { itemReward: "Desert amulet 1", rewards: { description: [ { main: "Desert amulet 1", other: ["Provides unlimited teleports to the Nardah area"], }, { main: "1 Antique lamp worth 2,500 experience in any skill of at least level 30", other: [], }, { main: "10% more Agility experience in the Shantay Pass Dungeon", other: [], }, ], lamps: [{ amount: 1, experience: 2500, levelToUse: 30 }], }, tasks: [ { description: "Complete a lap of the Shantay Pass course.", requirements: [skill("agility", 20)], }, { description: "Mine copper ore south of Pollnivneach using a copper pickaxe.", requirements: [skill("mining", 1)], }, { description: "Enter the Smoke Dungeon.", requirements: [skill("slayer", 1)], }, { description: "Chop a log in the desert with a hatchet.", requirements: [skill("woodcutting", 1)], }, { description: "Catch a scorpion in the Pollnivneach oasis.", requirements: [skill("hunter", 4)], }, { description: "Travel to the Kharidian Desert using a carpet or traverse the desert.", requirements: [], }, { description: "Craft an Amulet of Glory.", requirements: [skill("crafting", 80)], notes: "Must have obtained the unfinished amulet from a dungeon.", }, { description: "Have a barbarian give you tools at the Uncivilized Area.", requirements: [skill("barbarian", 30, false)], }, { description: "Uncover the pyramid in the Pyramid Plunder minigame.", requirements: [skill("thieving", 21)], }, { description: "Defeat a dust devil in the Smoke Dungeon.", requirements: [skill("slayer", 65)], }, ], itemsRequired: ["Pickaxe", "Hatchet", "Hunter supplies"], questsRequired: [], skillsRequired: [ { skill: "agility", level: 20, boostable: true }, { skill: "hunter", level: 4, boostable: true }, { skill: "thieving", level: 21, boostable: true }, ], }, medium: { itemReward: "Desert amulet 2", rewards: { description: [ { main: "Desert amulet 2", other: ["Provides five daily teleports to the desert"], }, { main: "1 Antique lamp worth 7,500 experience in any skill of at least level 40", other: [], }, { main: "10% more Agility experience in the Agility Pyramid", other: [], }, ], lamps: [{ amount: 1, experience: 7500, levelToUse: 40 }], }, tasks: [ { description: "Assign a Slayer task from Sumona.", requirements: [quest("Desert Treasure I"), skill("slayer", 50)], }, { description: "Complete the Agility Pyramid course.", requirements: [skill("agility", 52)], }, { description: "Complete the Pyramid Plunder minigame.", requirements: [skill("thieving", 21)], }, { description: "Make a fire in the desert.", requirements: [skill("firemaking", 50)], }, { description: "Kill a blue dragon in the Lair.", requirements: [skill("combat", 34)], }, { description: "Travel to the Desert using the Carpet Ride.", requirements: [quest("The Feud")], }, { description: "Fletch a shortbow in the desert.", requirements: [skill("fletching", 5)], }, { description: "Fish in the river north of Al Kharid.", requirements: [skill("fishing", 20)], }, { description: "Visit the Dye Shop in Pollnivneach.", requirements: [], }, { description: "Harvest cactus spines.", requirements: [skill("woodcutting", 1)], }, ], itemsRequired: ["Slayer supplies", "Firemaking supplies", "Fletching supplies"], questsRequired: ["Desert Treasure I", "The Feud"], skillsRequired: [ { skill: "slayer", level: 50, boostable: true }, { skill: "agility", level: 52, boostable: true }, { skill: "thieving", level: 21, boostable: true }, { skill: "firemaking", level: 50, boostable: true }, { skill: "fletching", level: 5, boostable: true }, { skill: "fishing", level: 20, boostable: true }, ], }, hard: { itemReward: "Desert amulet 3", rewards: { description: [ { main: "Desert amulet 3", other: ["Provides ten daily teleports to the desert"], }, { main: "1 Antique lamp worth 15,000 experience in any skill of at least level 50", other: [], }, { main: "10% increased XP in the Pyramid Plunder minigame", other: [], }, ], lamps: [{ amount: 1, experience: 15000, levelToUse: 50 }], }, tasks: [ { description: "Craft an onyx.", requirements: [skill("crafting", 67)], }, { description: "Complete the Fortress of Security.", requirements: [skill("construction", 60, false)], }, { description: "Kill a blue dragon in the Lair.", requirements: [skill("combat", 50)], }, { description: "Mine diamonds in the diamond quarry.", requirements: [skill("mining", 67)], }, { description: "Kill a kalphite guardian or kalphite dungeon monster.", requirements: [skill("slayer", 85)], }, { description: "Defeat all bosses in the Ancient Dungeon.", requirements: [quest("Desert Treasure II - The Fallen Empire")], }, { description: "Complete high-level Pyramid Plunder.", requirements: [skill("thieving", 71)], }, { description: "Cook a shark in the desert.", requirements: [skill("cooking", 80)], }, { description: "Smith an adamant or better item in the desert.", requirements: [skill("smithing", 70)], }, { description: "Teleport to Pollnivneach with Magic.", requirements: [skill("magic", 66)], }, ], itemsRequired: ["Mining supplies", "Crafting supplies", "Cooking supplies", "Combat gear"], questsRequired: ["Desert Treasure I", "Desert Treasure II - The Fallen Empire", "The Feud"], skillsRequired: [ { skill: "crafting", level: 67, boostable: true }, { skill: "construction", level: 60, boostable: false }, { skill: "mining", level: 67, boostable: true }, { skill: "slayer", level: 85, boostable: true }, { skill: "thieving", level: 71, boostable: true }, { skill: "cooking", level: 80, boostable: true }, { skill: "smithing", level: 70, boostable: true }, { skill: "magic", level: 66, boostable: true }, ], }, elite: { itemReward: "Desert amulet 4", rewards: { description: [ { main: "Desert amulet 4", other: ["Provides unlimited daily teleports to the desert"], }, { main: "1 Antique lamp worth 50,000 experience in any skill of at least level 70", other: [], }, { main: "Permanently doubled Desert Treasure drops", other: [], }, { main: "Access to the Vault of Shadows", other: [], }, ], lamps: [{ amount: 1, experience: 50000, levelToUse: 70 }], }, tasks: [ { description: "Complete the entire Pyramid Plunder at elite level.", requirements: [skill("thieving", 91)], }, { description: "Craft 100 onyx jewelry.", requirements: [skill("crafting", 90)], }, { description: "Defeat Kelibimor.", requirements: [quest("Desert Treasure II - The Fallen Empire"), skill("combat", 95)], }, { description: "Achieve 99 Experience in three desert-related skills.", requirements: [skill("mining", 99), skill("smithing", 99), skill("crafting", 99)], }, { description: "Complete the Ancient Challenges.", requirements: [quest("Desert Treasure II - The Fallen Empire"), skill("magic", 92)], }, ], itemsRequired: [ "Crafting supplies", "Combat gear", "High-level runes and spells", ], questsRequired: ["Desert Treasure I", "Desert Treasure II - The Fallen Empire"], skillsRequired: [ { skill: "thieving", level: 91, boostable: true }, { skill: "crafting", level: 90, boostable: true }, { skill: "magic", level: 92, boostable: true }, { skill: "mining", level: 99, boostable: false }, { skill: "smithing", level: 99, boostable: false }, ], }, }; export default DesertDiary;