From b073bbc7187fdb048ba8b948acc41a6f4ae11e62 Mon Sep 17 00:00:00 2001 From: gc <30398469+gc@users.noreply.github.com> Date: Tue, 27 Feb 2024 16:43:05 +1100 Subject: [PATCH 1/8] Undo bso changes to tob --- src/lib/simulation/tob.ts | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/lib/simulation/tob.ts b/src/lib/simulation/tob.ts index 6993e2a0da..47264dc4a3 100644 --- a/src/lib/simulation/tob.ts +++ b/src/lib/simulation/tob.ts @@ -94,9 +94,6 @@ export class TheatreOfBloodClass { return new Bank().add('Cabbage'); } - if (BOT_TYPE === 'BSO') { - NonUniqueTable.tertiary(25, 'Clue scroll (elite)'); - } const loot = new Bank(); for (let i = 0; i < 3; i++) { loot.add(NonUniqueTable.roll()); @@ -111,10 +108,8 @@ export class TheatreOfBloodClass { loot.add(HardModeExtraTable.roll()); } - if (BOT_TYPE === 'OSB') { - if (roll(25)) { - loot.add('Clue scroll (elite)'); - } + if (roll(25)) { + loot.add('Clue scroll (elite)'); } let petChance = isHardMode ? 500 : 650; From 0b0d67cbc0999376eacc5ae16efcbe5dae1c0b9b Mon Sep 17 00:00:00 2001 From: gc <30398469+gc@users.noreply.github.com> Date: Tue, 27 Feb 2024 17:36:28 +1100 Subject: [PATCH 2/8] Update toolkit --- package.json | 2 +- src/lib/simulation/tob.ts | 1 - yarn.lock | 8 ++++---- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 2e28c085c8..226848a0bc 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "@fastify/sensible": "^5.2.0", "@napi-rs/canvas": "0.1.38", "@octokit/graphql": "^4.8.0", - "@oldschoolgg/toolkit": "^0.0.23", + "@oldschoolgg/toolkit": "^0.0.24", "@prisma/client": "^5.10.2", "@sapphire/stopwatch": "^1.4.0", "@sapphire/time-utilities": "^1.6.0", diff --git a/src/lib/simulation/tob.ts b/src/lib/simulation/tob.ts index 47264dc4a3..3148333da4 100644 --- a/src/lib/simulation/tob.ts +++ b/src/lib/simulation/tob.ts @@ -4,7 +4,6 @@ import { Bank, LootTable } from 'oldschooljs'; import { LootBank } from 'oldschooljs/dist/meta/types'; import { convertLootBanksToItemBanks, JSONClone } from 'oldschooljs/dist/util'; -import { BOT_TYPE } from '../constants'; import { TOBRooms } from '../data/tob'; import { assert } from '../util/logError'; diff --git a/yarn.lock b/yarn.lock index 6c5fe69ffa..8879d788cb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -653,10 +653,10 @@ eslint-plugin-unicorn "^44.0.2" prettier "^2.7.1" -"@oldschoolgg/toolkit@^0.0.23": - version "0.0.23" - resolved "https://registry.yarnpkg.com/@oldschoolgg/toolkit/-/toolkit-0.0.23.tgz#6805c7f6321ca0f13c5ad84478ea79051e13e319" - integrity sha512-84RhRCa8McsB5SJ39sJ51XxSapdr008ZCILNz7xVBTvyagBso2BlxM81tMx0+mcn/Xu3IbQnvrv7nKw5eyXZbQ== +"@oldschoolgg/toolkit@^0.0.24": + version "0.0.24" + resolved "https://registry.yarnpkg.com/@oldschoolgg/toolkit/-/toolkit-0.0.24.tgz#86867f126565d278a209d0e95b3cd9ae527b39ac" + integrity sha512-z73pPLvVohlimglhWcgGcX/bF2oadUDaZvrWBpDKKChr4kiNhVXgBlnGyOQ6xJxwZGvQ+QhepSK/ZQTHaQ4ufA== dependencies: deepmerge "^4.3.1" e "^0.2.3" From c105a2fc8dc396b9f1e1e38d5845d10c1d3fd635 Mon Sep 17 00:00:00 2001 From: Jonesy <69014816+nwjgit@users.noreply.github.com> Date: Tue, 27 Feb 2024 01:14:36 -0600 Subject: [PATCH 3/8] Add Volcanic Ore Pack & fix errors with 2.4.0 osjs (#5709) --- package.json | 2 +- src/lib/bankImage.ts | 6 +- src/lib/data/CollectionsExport.ts | 9 +- src/lib/data/buyables/buyables.ts | 10 +- src/lib/data/itemAliases.ts | 4 + src/lib/openables.ts | 16 +- .../giantsFoundryCommand.ts | 4 +- .../volcanicMineCommand.ts | 6 + tests/integration/commands/sacrifice.test.ts | 12 +- .../unit/snapshots/banksnapshots.test.ts.snap | 108 +++---- tests/unit/snapshots/clsnapshots.test.ts.snap | 5 +- tests/unit/util.test.ts | 4 +- yarn.lock | 293 ++---------------- 13 files changed, 124 insertions(+), 355 deletions(-) diff --git a/package.json b/package.json index 226848a0bc..ff5deba517 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "murmurhash": "^2.0.1", "node-cron": "^3.0.3", "node-fetch": "^2.6.7", - "oldschooljs": "^2.3.8", + "oldschooljs": "^2.4.0", "p-queue": "^6.6.2", "piscina": "^4.3.2", "random-js": "^2.1.0", diff --git a/src/lib/bankImage.ts b/src/lib/bankImage.ts index 0ca299199d..583c80706f 100644 --- a/src/lib/bankImage.ts +++ b/src/lib/bankImage.ts @@ -230,7 +230,11 @@ const forcedShortNameMap = new Map([ [i('Sanguinesti staff (uncharged)'), 'Unch.'], [i('Scythe of vitur (uncharged)'), 'Unch.'], [i('Holy scythe of vitur (uncharged)'), 'Unch.'], - [i('Sanguine scythe of vitur (uncharged)'), 'Unch.'] + [i('Sanguine scythe of vitur (uncharged)'), 'Unch.'], + + // Ore Packs + [27_019, 'GF Pack'], + [27_693, 'VM Pack'] ]); function drawTitle(ctx: SKRSContext2D, title: string, canvas: Canvas) { diff --git a/src/lib/data/CollectionsExport.ts b/src/lib/data/CollectionsExport.ts index f5444b37c0..983b9a773d 100644 --- a/src/lib/data/CollectionsExport.ts +++ b/src/lib/data/CollectionsExport.ts @@ -1488,7 +1488,12 @@ export const troubleBrewingCL = resolveItems([ 'Red rum (trouble brewing)', 'Blue rum (trouble brewing)' ]); -export const volcanicMineCL = resolveItems(['Ash covered tome', 'Large water container', 'Volcanic mine teleport']); +export const volcanicMineCL = resolveItems([ + 'Ash covered tome', + 'Large water container', + 'Volcanic mine teleport', + 'Dragon pickaxe (broken)' +]); export const anglerOutfit = resolveItems(['Angler hat', 'Angler top', 'Angler waders', 'Angler boots']); export const aerialFishingCL = resolveItems([ 'Golden tench', @@ -2265,8 +2270,6 @@ export const LMSBuyables: LMSBuyable[] = [ { item: getOSItem('Guthixian icon'), cost: 500 }, { item: getOSItem('Trouver parchment'), cost: 18 }, { item: getOSItem('Wilderness crabs teleport'), cost: 1 }, - { item: getOSItem('Blighted bind sack'), quantity: 300, cost: 1 }, - { item: getOSItem('Blighted snare sack'), quantity: 150, cost: 1 }, { item: getOSItem('Blighted entangle sack'), quantity: 70, cost: 1 }, { item: getOSItem('Blighted teleport spell sack'), quantity: 50, cost: 1 }, { item: getOSItem('Blighted vengeance sack'), quantity: 50, cost: 1 }, diff --git a/src/lib/data/buyables/buyables.ts b/src/lib/data/buyables/buyables.ts index 80b894a886..5b69586a38 100644 --- a/src/lib/data/buyables/buyables.ts +++ b/src/lib/data/buyables/buyables.ts @@ -590,7 +590,7 @@ const questBuyables: Buyable[] = [ name: 'Berserker helm', gpCost: 780_000, qpRequired: 60, - ironmanPrice: 78_000 + ironmanPrice: 98_000 }, { name: 'Archer helm', @@ -792,7 +792,7 @@ const Buyables: Buyable[] = [ { name: 'Bucket', gpCost: 30, - ironmanPrice: 5 + ironmanPrice: 10 }, { name: 'Cup of hot water', @@ -888,7 +888,7 @@ const Buyables: Buyable[] = [ { name: 'Steel pickaxe', gpCost: 2000, - ironmanPrice: 500 + ironmanPrice: 600 }, { name: 'Mithril pickaxe', @@ -958,7 +958,7 @@ const Buyables: Buyable[] = [ { name: 'Adamant halberd', gpCost: 100_000, - ironmanPrice: 9600, + ironmanPrice: 50_000, qpRequired: 150, skillsNeeded: soteSkillRequirements }, @@ -1113,7 +1113,7 @@ for (const cape of allTeamCapes) { Buyables.push({ name: cape.name, outputItems: new Bank().add(cape.id), - gpCost: 5000 + gpCost: 15_000 }); } diff --git a/src/lib/data/itemAliases.ts b/src/lib/data/itemAliases.ts index ae76091853..b0c543562b 100644 --- a/src/lib/data/itemAliases.ts +++ b/src/lib/data/itemAliases.ts @@ -145,6 +145,10 @@ setItemAlias(11_901, 'Decorative quiver'); // Lamp (Genie event) setItemAlias(2528, 'Genie lamp'); +// Ore Sack +setItemAlias(27_019, "Ore pack (Giant's Foundry)"); +setItemAlias(27_693, 'Ore pack (Volcanic Mine)'); + // Birds eggs setItemAlias(5076, 'Red bird egg'); setItemAlias(5077, 'Blue bird egg'); diff --git a/src/lib/openables.ts b/src/lib/openables.ts index 27be09fd39..e13b7127e2 100644 --- a/src/lib/openables.ts +++ b/src/lib/openables.ts @@ -345,12 +345,20 @@ const osjsOpenables: UnifiedOpenable[] = [ allItems: Openables.SinisterChest.table.allItems }, { - name: 'Ore pack', + name: "Ore pack (Giant's Foundry)", id: 27_019, openedItem: getOSItem(27_019), - aliases: ['ore pack'], - output: Openables.OrePack.table, - allItems: Openables.OrePack.table.allItems + aliases: ["ore pack (giant's foundry)", 'giants', 'foundry', 'giants foundry'], + output: Openables.GiantsFoundryOrePack.table, + allItems: Openables.GiantsFoundryOrePack.table.allItems + }, + { + name: 'Ore pack (Volcanic Mine)', + id: 27_693, + openedItem: getOSItem(27_693), + aliases: ['ore pack (volcanic mine)', 'volcanic', 'volcanic mine'], + output: Openables.VolcanicMineOrePack.table, + allItems: Openables.VolcanicMineOrePack.table.allItems }, { name: 'Intricate pouch', diff --git a/src/mahoji/lib/abstracted_commands/giantsFoundryCommand.ts b/src/mahoji/lib/abstracted_commands/giantsFoundryCommand.ts index 5bf72c7cbf..ff446c1877 100644 --- a/src/mahoji/lib/abstracted_commands/giantsFoundryCommand.ts +++ b/src/mahoji/lib/abstracted_commands/giantsFoundryCommand.ts @@ -103,8 +103,8 @@ export const giantsFoundryBuyables: { name: string; output: Bank; cost: number; aliases: [] }, { - name: 'Ore pack', - output: new Bank().add('Ore pack', 1), + name: "Ore pack (Giant's Foundry)", + output: new Bank().add("Ore pack (Giant's Foundry)", 1), cost: 200, aliases: [] }, diff --git a/src/mahoji/lib/abstracted_commands/volcanicMineCommand.ts b/src/mahoji/lib/abstracted_commands/volcanicMineCommand.ts index cc7f02db2b..7176aba741 100644 --- a/src/mahoji/lib/abstracted_commands/volcanicMineCommand.ts +++ b/src/mahoji/lib/abstracted_commands/volcanicMineCommand.ts @@ -69,6 +69,12 @@ export const VolcanicMineShop: { name: string; output: Bank; cost: number; clOnl output: new Bank({ Pyrophosphite: 1 }), cost: 70 }, + { + name: 'Ore pack (Volcanic Mine)', + output: new Bank({ 'Ore pack (Volcanic Mine)': 1 }), + cost: 4000, + addToCl: true + }, { name: 'Volcanic mine teleport', output: new Bank({ 'Volcanic mine teleport': 1 }), diff --git a/tests/integration/commands/sacrifice.test.ts b/tests/integration/commands/sacrifice.test.ts index e31b93c1b4..8d722b100b 100644 --- a/tests/integration/commands/sacrifice.test.ts +++ b/tests/integration/commands/sacrifice.test.ts @@ -18,28 +18,28 @@ describe('Sacrifice Command', async () => { expect(result).toEqual( `${Emoji.Incinerator} **Your Sacrifice Stats** ${Emoji.Incinerator}\n\n` + `**Current Minion Icon:** ${Emoji.Minion}\n` + - '**Sacrificed Value:** 1,635 GP\n' + + '**Sacrificed Value:** 1,922 GP\n' + '**Unique Items Sacrificed:** 2 items' ); }); test('No items provided', async () => { const result = await user.runCommand(sacrificeCommand, { items: 'aaaa' }); - expect(result).toEqual('No items were provided.\nYour current sacrificed value is: 1,635 (1.64k)'); + expect(result).toEqual('No items were provided.\nYour current sacrificed value is: 1,922 (1.92k)'); }); test('Successful', async () => { await user.addItemsToBank({ items: new Bank().add('Trout').add('Coal', 10) }); const result = await user.runCommand(sacrificeCommand, { items: '1 trout, 10 coal' }); expect(result).toEqual( - 'You sacrificed 10x Coal, 1x Trout, with a value of 1,635gp (1.64k). Your total amount sacrificed is now: 3,270. ' + 'You sacrificed 10x Coal, 1x Trout, with a value of 1,922gp (1.92k). Your total amount sacrificed is now: 3,844. ' ); const stats = await user.fetchStats({ sacrificed_bank: true }); expect(user.bank.equals(new Bank())).toBe(true); expect(new Bank(stats.sacrificed_bank as ItemBank).equals(new Bank().add('Coal', 20).add('Trout', 2))).toBe( true ); - expect(user.user.sacrificedValue).toEqual(BigInt(3270)); + expect(user.user.sacrificedValue).toEqual(BigInt(3844)); const clientSettings = await mahojiClientSettingsFetch({ economyStats_sacrificedBank: true }); expect( new Bank(clientSettings.economyStats_sacrificedBank as ItemBank).equals( @@ -49,7 +49,7 @@ describe('Sacrifice Command', async () => { await user.addItemsToBank({ items: new Bank().add('Trout').add('Cake') }); const res = await user.runCommand(sacrificeCommand, { items: '1 trout, 1 cake' }); expect(res).toEqual( - 'You sacrificed 1x Trout, 1x Cake, with a value of 206gp (206). Your total amount sacrificed is now: 3,476. ' + 'You sacrificed 1x Trout, 1x Cake, with a value of 169gp (169). Your total amount sacrificed is now: 4,013. ' ); await user.sync(); expect(user.bank.equals(new Bank())).toBe(true); @@ -57,7 +57,7 @@ describe('Sacrifice Command', async () => { expect( new Bank(stats2.sacrificed_bank as ItemBank).equals(new Bank().add('Coal', 20).add('Trout', 3).add('Cake')) ).toBe(true); - expect(user.user.sacrificedValue).toEqual(BigInt(3476)); + expect(user.user.sacrificedValue).toEqual(BigInt(4013)); const clientSettings2 = await mahojiClientSettingsFetch({ economyStats_sacrificedBank: true }); expect( diff --git a/tests/unit/snapshots/banksnapshots.test.ts.snap b/tests/unit/snapshots/banksnapshots.test.ts.snap index 4762a26d93..c41d2361c2 100644 --- a/tests/unit/snapshots/banksnapshots.test.ts.snap +++ b/tests/unit/snapshots/banksnapshots.test.ts.snap @@ -123,7 +123,7 @@ exports[`OSB Buyables 1`] = ` }, { "gpCost": 30, - "ironmanPrice": 5, + "ironmanPrice": 10, "itemCost": Bank { "bank": {}, "frozen": false, @@ -323,7 +323,7 @@ exports[`OSB Buyables 1`] = ` }, { "gpCost": 2000, - "ironmanPrice": 500, + "ironmanPrice": 600, "itemCost": Bank { "bank": {}, "frozen": false, @@ -563,7 +563,7 @@ exports[`OSB Buyables 1`] = ` }, { "gpCost": 100000, - "ironmanPrice": 9600, + "ironmanPrice": 50000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -1706,7 +1706,7 @@ exports[`OSB Buyables 1`] = ` }, { "gpCost": 780000, - "ironmanPrice": 78000, + "ironmanPrice": 98000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6274,7 +6274,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6288,7 +6288,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6302,7 +6302,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6316,7 +6316,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6330,7 +6330,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6344,7 +6344,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6358,7 +6358,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6372,7 +6372,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6386,7 +6386,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6400,7 +6400,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6414,7 +6414,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6428,7 +6428,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6442,7 +6442,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6456,7 +6456,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6470,7 +6470,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6484,7 +6484,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6498,7 +6498,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6512,7 +6512,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6526,7 +6526,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6540,7 +6540,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6554,7 +6554,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6568,7 +6568,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6582,7 +6582,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6596,7 +6596,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6610,7 +6610,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6624,7 +6624,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6638,7 +6638,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6652,7 +6652,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6666,7 +6666,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6680,7 +6680,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6694,7 +6694,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6708,7 +6708,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6722,7 +6722,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6736,7 +6736,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6750,7 +6750,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6764,7 +6764,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6778,7 +6778,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6792,7 +6792,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6806,7 +6806,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6820,7 +6820,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6834,7 +6834,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6848,7 +6848,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6862,7 +6862,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6876,7 +6876,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6890,7 +6890,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6904,7 +6904,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6918,7 +6918,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6932,7 +6932,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6946,7 +6946,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, @@ -6960,7 +6960,7 @@ exports[`OSB Buyables 1`] = ` }, }, { - "gpCost": 5000, + "gpCost": 15000, "itemCost": Bank { "bank": {}, "frozen": false, diff --git a/tests/unit/snapshots/clsnapshots.test.ts.snap b/tests/unit/snapshots/clsnapshots.test.ts.snap index f439565780..3cb60240be 100644 --- a/tests/unit/snapshots/clsnapshots.test.ts.snap +++ b/tests/unit/snapshots/clsnapshots.test.ts.snap @@ -106,7 +106,7 @@ TzHaar (10) Vardorvis (10) Venenatis and Spindel (6) Vet'ion and Calvar'ion (6) -Volcanic Mine (3) +Volcanic Mine (4) Vorkath (6) Wintertodt (10) Zalcano (4) @@ -595,6 +595,7 @@ Dragon limbs Dragon metal lump Dragon metal slice Dragon pickaxe +Dragon pickaxe (broken) Dragon pickaxe upgrade kit Dragon platebody ornament kit Dragon scimitar ornament kit @@ -1065,7 +1066,7 @@ Olmlet Onyx Orange boater Orange egg sac -Ore pack +Ore pack (Giant's Foundry) Ornate maul handle Osmumten's fang Pantaloons diff --git a/tests/unit/util.test.ts b/tests/unit/util.test.ts index 3ff7e45b4a..84faaba350 100644 --- a/tests/unit/util.test.ts +++ b/tests/unit/util.test.ts @@ -84,7 +84,7 @@ describe('util', () => { const { price } = item; let expected = reduceNumByPercent(price, 20); expect(sellPriceOfItem(item)).toEqual({ price: expected, basePrice: price }); - expect(sellPriceOfItem(getOSItem('A yellow square'))).toEqual({ price: 0, basePrice: 0 }); + expect(sellPriceOfItem(getOSItem('Yellow square'))).toEqual({ price: 0, basePrice: 0 }); }); test('sellStorePriceOfItem', () => { @@ -97,7 +97,7 @@ describe('util', () => { (((0.4 - 0.015 * Math.min(22 - 1, 10)) * Math.min(22, 11) + Math.max(22 - 11, 0) * 0.1) * cost) / 22; expect(sellStorePriceOfItem(item, 1)).toEqual({ price: expectedOneQty, basePrice: cost }); expect(sellStorePriceOfItem(item, 22)).toEqual({ price: expectedTwentytwoQty, basePrice: cost }); - expect(sellStorePriceOfItem(getOSItem('A yellow square'), 1)).toEqual({ price: 0, basePrice: 0 }); + expect(sellStorePriceOfItem(getOSItem('Yellow square'), 1)).toEqual({ price: 0, basePrice: 0 }); }); test('skillingPetRateFunction', () => { diff --git a/yarn.lock b/yarn.lock index 8879d788cb..99bed8acd5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -863,11 +863,6 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== -"@tootallnate/once@2": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" - integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== - "@types/deep-equal@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@types/deep-equal/-/deep-equal-1.0.4.tgz#c0a854be62d6b9fae665137a6639aab53389a147" @@ -1209,11 +1204,6 @@ resolved "https://registry.yarnpkg.com/@vladfrangu/async_event_emitter/-/async_event_emitter-2.2.2.tgz#84c5a3f8d648842cec5cc649b88df599af32ed88" integrity sha512-HIzRG7sy88UZjBJamssEczH5q7t5+axva19UbZLO6u0ySbYPrwzWiXBcC0WuHyhKKoeCyneH+FvYzKQq/zTtkQ== -abab@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - abort-controller@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" @@ -1226,45 +1216,25 @@ abstract-logging@^2.0.1: resolved "https://registry.yarnpkg.com/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839" integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA== -acorn-globals@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-7.0.1.tgz#0dbf05c44fa7c94332914c02066d5beff62c40c3" - integrity sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q== - dependencies: - acorn "^8.1.0" - acorn-walk "^8.0.2" - acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^8.0.2: - version "8.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" - integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== - acorn-walk@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa" integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A== -acorn@^8.1.0, acorn@^8.8.0, acorn@^8.8.2: - version "8.8.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" - integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== - acorn@^8.11.3: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" +acorn@^8.8.0, acorn@^8.8.2: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== ajv-formats@^2.1.1: version "2.1.1" @@ -1733,22 +1703,6 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -cssstyle@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-3.0.0.tgz#17ca9c87d26eac764bb8cfd00583cff21ce0277a" - integrity sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg== - dependencies: - rrweb-cssom "^0.6.0" - -data-urls@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-4.0.0.tgz#333a454eca6f9a5b7b0f1013ff89074c3f522dd4" - integrity sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g== - dependencies: - abab "^2.0.6" - whatwg-mimetype "^3.0.0" - whatwg-url "^12.0.0" - date-fns@^2.29.1: version "2.30.0" resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" @@ -1756,13 +1710,6 @@ date-fns@^2.29.1: dependencies: "@babel/runtime" "^7.21.0" -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -1770,10 +1717,12 @@ debug@^3.2.7: dependencies: ms "^2.1.1" -decimal.js@^10.4.3: - version "10.4.3" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" - integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" deep-eql@^4.1.3: version "4.1.3" @@ -1816,7 +1765,7 @@ deep-is@^0.1.3, deep-is@~0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= -deepmerge@^4.2.2, deepmerge@^4.3.1: +deepmerge@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== @@ -2090,13 +2039,6 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -domexception@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673" - integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw== - dependencies: - webidl-conversions "^7.0.0" - dotenv-cli@^7.3.0: version "7.3.0" resolved "https://registry.yarnpkg.com/dotenv-cli/-/dotenv-cli-7.3.0.tgz#21e33e7944713001677658d68856063968edfbd2" @@ -2150,11 +2092,6 @@ enhanced-resolve@^5.8.3: graceful-fs "^4.2.4" tapable "^2.2.0" -entities@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" - integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== - error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -2824,15 +2761,6 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - forwarded@0.2.0, forwarded@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -3142,13 +3070,6 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== -html-encoding-sniffer@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" - integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA== - dependencies: - whatwg-encoding "^2.0.0" - html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" @@ -3165,23 +3086,6 @@ http-errors@2.0.0, http-errors@^2.0.0: statuses "2.0.1" toidentifier "1.0.1" -http-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" - integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== - dependencies: - "@tootallnate/once" "2" - agent-base "6" - debug "4" - -https-proxy-agent@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - human-signals@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" @@ -3194,13 +3098,6 @@ iconv-lite@0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" - integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" - ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -3397,11 +3294,6 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" @@ -3640,38 +3532,6 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsdom@^21.1.1: - version "21.1.1" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-21.1.1.tgz#ab796361e3f6c01bcfaeda1fea3c06197ac9d8ae" - integrity sha512-Jjgdmw48RKcdAIQyUD1UdBh2ecH7VqwaXPN3ehoZN6MqgVbMn+lRm1aAT1AsdJRAJpwfa4IpwgzySn61h2qu3w== - dependencies: - abab "^2.0.6" - acorn "^8.8.2" - acorn-globals "^7.0.0" - cssstyle "^3.0.0" - data-urls "^4.0.0" - decimal.js "^10.4.3" - domexception "^4.0.0" - escodegen "^2.0.0" - form-data "^4.0.0" - html-encoding-sniffer "^3.0.0" - http-proxy-agent "^5.0.0" - https-proxy-agent "^5.0.1" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.2" - parse5 "^7.1.2" - rrweb-cssom "^0.6.0" - saxes "^6.0.0" - symbol-tree "^3.2.4" - tough-cookie "^4.1.2" - w3c-xmlserializer "^4.0.0" - webidl-conversions "^7.0.0" - whatwg-encoding "^2.0.0" - whatwg-mimetype "^3.0.0" - whatwg-url "^12.0.1" - ws "^8.13.0" - xml-name-validator "^4.0.0" - json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" @@ -4125,11 +3985,6 @@ npm-run-path@^5.1.0: dependencies: path-key "^4.0.0" -nwsapi@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" - integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== - object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.3" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" @@ -4172,14 +4027,13 @@ obliterator@^2.0.1: resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.4.tgz#fa650e019b2d075d745e44f1effeb13a2adbe816" integrity sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ== -oldschooljs@^2.3.8: - version "2.3.8" - resolved "https://registry.yarnpkg.com/oldschooljs/-/oldschooljs-2.3.8.tgz#56b788d083b68bebe01c1f7de2c9d3d258304293" - integrity sha512-e0N3ovIXdTY3yiGOLFydpQT+H0KEh9uBkGgvYg2fAGnx/lx1CObjCFg3vK3AiwWjXd85wuAVJ4lmQyehcqZSTA== +oldschooljs@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/oldschooljs/-/oldschooljs-2.4.0.tgz#e81d2f2603e1219f8251e4ee7af54171aa1e7acd" + integrity sha512-42QHKl0Xpd2dce/jrXhzVkIg0CRWA58iX309rJknHnrETO7m+zOpwV+9JRyjczCA31b798vTK1gMwwNraOAWaw== dependencies: - deepmerge "^4.2.2" + deepmerge "^4.3.1" e "^0.2.32" - jsdom "^21.1.1" node-fetch "^2.6.7" on-exit-leak-free@^2.1.0: @@ -4329,13 +4183,6 @@ parse-ms@^2.1.0: resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-2.1.0.tgz#348565a753d4391fa524029956b172cb7753097d" integrity sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA== -parse5@^7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" - integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== - dependencies: - entities "^4.4.0" - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -4617,21 +4464,11 @@ proxy-addr@^2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" -psl@^1.1.33: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== - -punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.0: +punycode@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -4777,11 +4614,6 @@ requirejs@^2.3.5: resolved "https://registry.yarnpkg.com/requirejs/-/requirejs-2.3.6.tgz#e5093d9601c2829251258c0b9445d4d19fa9e7c9" integrity sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg== -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== - resolve-dependency-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-dependency-path/-/resolve-dependency-path-2.0.0.tgz#11700e340717b865d216c66cabeb4a2a3c696736" @@ -4872,11 +4704,6 @@ rollup@^4.2.0: "@rollup/rollup-win32-x64-msvc" "4.12.0" fsevents "~2.3.2" -rrweb-cssom@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz#ed298055b97cbddcdeb278f904857629dec5e0e1" - integrity sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw== - run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -4924,7 +4751,7 @@ safe-stable-stringify@^2.3.1: resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.4.1.tgz#34694bd8a30575b7f94792aa51527551bd733d61" integrity sha512-dVHE6bMtS/bnL2mwualjc6IxEv1F+OCUpA46pKUj6F8uDbUM0jCCulPqRNPSnWwGNKx5etqMjZYdXtrm5KJZGA== -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": +"safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -4936,13 +4763,6 @@ sass-lookup@^3.0.0: dependencies: commander "^2.16.0" -saxes@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" - integrity sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA== - dependencies: - xmlchars "^2.2.0" - secure-json-parse@^2.4.0, secure-json-parse@^2.5.0: version "2.7.0" resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" @@ -5296,11 +5116,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - table@^6.8.1: version "6.8.1" resolved "https://registry.yarnpkg.com/table/-/table-6.8.1.tgz#ea2b71359fe03b017a5fbc296204471158080bdf" @@ -5375,23 +5190,6 @@ toidentifier@1.0.1: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== -tough-cookie@^4.1.2: - version "4.1.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" - integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tr46@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-4.1.1.tgz#281a758dcc82aeb4fe38c7dfe4d11a395aac8469" - integrity sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw== - dependencies: - punycode "^2.3.0" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -5557,11 +5355,6 @@ universal-user-agent@^6.0.0: resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - unpipe@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -5574,14 +5367,6 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - util-deprecate@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -5662,13 +5447,6 @@ vitest@^1.3.1: vite-node "1.3.1" why-is-node-running "^2.2.2" -w3c-xmlserializer@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" - integrity sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw== - dependencies: - xml-name-validator "^4.0.0" - walkdir@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/walkdir/-/walkdir-0.4.1.tgz#dc119f83f4421df52e3061e514228a2db20afa39" @@ -5686,31 +5464,6 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= -webidl-conversions@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" - integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== - -whatwg-encoding@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" - integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg== - dependencies: - iconv-lite "0.6.3" - -whatwg-mimetype@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" - integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== - -whatwg-url@^12.0.0, whatwg-url@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-12.0.1.tgz#fd7bcc71192e7c3a2a97b9a8d6b094853ed8773c" - integrity sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ== - dependencies: - tr46 "^4.1.1" - webidl-conversions "^7.0.0" - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -5802,16 +5555,6 @@ ws@^8.13.0: resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== -xml-name-validator@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" - integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" From ad35e7980e3950701d9412c11249484cc50c3550 Mon Sep 17 00:00:00 2001 From: gc <30398469+gc@users.noreply.github.com> Date: Tue, 27 Feb 2024 18:25:21 +1100 Subject: [PATCH 4/8] Update OSJS --- package.json | 2 +- src/mahoji/commands/sacrifice.ts | 7 ++++++- yarn.lock | 8 ++++---- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index ff5deba517..384b99a0da 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "murmurhash": "^2.0.1", "node-cron": "^3.0.3", "node-fetch": "^2.6.7", - "oldschooljs": "^2.4.0", + "oldschooljs": "^2.5.0", "p-queue": "^6.6.2", "piscina": "^4.3.2", "random-js": "^2.1.0", diff --git a/src/mahoji/commands/sacrifice.ts b/src/mahoji/commands/sacrifice.ts index c53732eac5..d4d7d9790f 100644 --- a/src/mahoji/commands/sacrifice.ts +++ b/src/mahoji/commands/sacrifice.ts @@ -42,7 +42,12 @@ const noSacPrice = resolveItems([ 'Helm of neitiznot', 'Cannon barrels', 'Broad arrowheads', - 'Rope' + 'Rope', + 'Eye of newt', + 'Bronze pickaxe', + 'Iron pickaxe', + 'Red dye', + 'Cannon furnace' ]); export function sacrificePriceOfItem(item: Item, qty: number) { diff --git a/yarn.lock b/yarn.lock index 99bed8acd5..a37086c2a8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4027,10 +4027,10 @@ obliterator@^2.0.1: resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.4.tgz#fa650e019b2d075d745e44f1effeb13a2adbe816" integrity sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ== -oldschooljs@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/oldschooljs/-/oldschooljs-2.4.0.tgz#e81d2f2603e1219f8251e4ee7af54171aa1e7acd" - integrity sha512-42QHKl0Xpd2dce/jrXhzVkIg0CRWA58iX309rJknHnrETO7m+zOpwV+9JRyjczCA31b798vTK1gMwwNraOAWaw== +oldschooljs@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/oldschooljs/-/oldschooljs-2.5.0.tgz#a490a8b11f9630621ac05fde858dde51c75c0da0" + integrity sha512-zTSKe/tfFQ3BAs6bJRLrTeacOuAltYIehSJgRLqXR0NBTsSmjJjrVxJbKZXURptzWVwQTB8incT2oizzwacubQ== dependencies: deepmerge "^4.3.1" e "^0.2.32" From f48b46ae2f1cc098db6587ab9642a7190dfb7166 Mon Sep 17 00:00:00 2001 From: themrrobert <10122432+themrrobert@users.noreply.github.com> Date: Tue, 27 Feb 2024 02:36:43 -0800 Subject: [PATCH 5/8] Fix Eagle Tame Support Level Boost --- src/mahoji/commands/tames.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mahoji/commands/tames.ts b/src/mahoji/commands/tames.ts index eb79c5b287..047e4a8cc1 100644 --- a/src/mahoji/commands/tames.ts +++ b/src/mahoji/commands/tames.ts @@ -1529,6 +1529,7 @@ export function determineTameClueResult({ const base = exponentialPercentScale(50, 0.03); const boostPercent = Math.max(0, s / 1.5 - base / 1.5); + timePerClue = reduceNumByPercent(timePerClue, boostPercent); boosts.push(`${boostPercent.toFixed(2)}% faster for support level`); if (equippedPrimary === itemID('Divine ring')) { From bb81181aa0a0beb59c10dd396d2eed511fc194d3 Mon Sep 17 00:00:00 2001 From: themrrobert <10122432+themrrobert@users.noreply.github.com> Date: Tue, 27 Feb 2024 02:42:12 -0800 Subject: [PATCH 6/8] Reduce Eagle Tame's Kibble cost by almost 30% --- src/mahoji/commands/tames.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mahoji/commands/tames.ts b/src/mahoji/commands/tames.ts index 047e4a8cc1..626559f07b 100644 --- a/src/mahoji/commands/tames.ts +++ b/src/mahoji/commands/tames.ts @@ -1541,7 +1541,7 @@ export function determineTameClueResult({ const duration = Math.floor(quantity * timePerClue); const baseCost = (ClueTiers.indexOf(clueTier) + 1) * quantity; - const kibbleNeeded = Math.ceil(baseCost / 1.5); + const kibbleNeeded = Math.ceil(baseCost / 2); const cost = new Bank().add('Extraordinary kibble', kibbleNeeded).add(clueTier.scrollID, quantity); let costSavedByDemonicJibwings = null; From d5d3f461f11ac3a9b0f77a69f7adc243a7a5b662 Mon Sep 17 00:00:00 2001 From: themrrobert <10122432+themrrobert@users.noreply.github.com> Date: Tue, 27 Feb 2024 02:47:34 -0800 Subject: [PATCH 7/8] OSJS Update Test fixes --- src/lib/data/buyables/bsoBuyables.ts | 2 +- src/lib/deletedItems.ts | 1 - tests/unit/parseStringBank.test.ts | 6 +++--- tests/unit/snapshots/banksnapshots.test.ts.snap | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/lib/data/buyables/bsoBuyables.ts b/src/lib/data/buyables/bsoBuyables.ts index 3d39bbbf00..e717f65513 100644 --- a/src/lib/data/buyables/bsoBuyables.ts +++ b/src/lib/data/buyables/bsoBuyables.ts @@ -145,7 +145,7 @@ export const bsoBuyables: Buyable[] = [ }, { name: 'Wooden spoon', - gpCost: 1000, + gpCost: 2000, outputItems: new Bank().add('Wooden spoon') } ]; diff --git a/src/lib/deletedItems.ts b/src/lib/deletedItems.ts index 8070c4dd57..3359b26562 100644 --- a/src/lib/deletedItems.ts +++ b/src/lib/deletedItems.ts @@ -36,7 +36,6 @@ export const itemsToDelete = [ [26_701, "Saika's hood (broken)"], [26_702, "Saika's veil (broken)"], [26_703, "Saika's shroud (broken)"], - [26_704, 'Blighted wave sack'], [26_705, 'Blighted surge sack'], [26_706, 'Scroll of imbuing'], [26_707, 'Dragon claws ornament kit'], diff --git a/tests/unit/parseStringBank.test.ts b/tests/unit/parseStringBank.test.ts index d6010cbfff..7a1980af80 100644 --- a/tests/unit/parseStringBank.test.ts +++ b/tests/unit/parseStringBank.test.ts @@ -394,21 +394,21 @@ describe('Bank Parsers', () => { expect( parseBank({ inputBank: usersBank, - inputStr: 'snakeweed mixture, 1 an indigo pentagon, an indigo square, tmb' + inputStr: 'snakeweed mixture, 1 indigo pentagon, indigo square, tmb' }).toString() ).toEqual('6x Tradeable Mystery Box'); expect( parseBank({ inputBank: usersBank, - inputStr: 'snakeweed mixture, 1 an indigo pentagon, an indigo square, mystery box' + inputStr: 'snakeweed mixture, 1 indigo pentagon, indigo square, mystery box' }).toString() ).toEqual('No items'); expect( parseBank({ inputBank: usersBank, - inputStr: 'snake@w-eed miXture, 0 doug, 1 lil lamb, 1 an indigo pentagon, an indigo square, mystery box' + inputStr: 'snake@w-eed miXture, 0 doug, 1 lil lamb, 1 indigo pentagon, indigo square, mystery box' }).toString() ).toEqual('3x Doug, 1x Lil Lamb'); diff --git a/tests/unit/snapshots/banksnapshots.test.ts.snap b/tests/unit/snapshots/banksnapshots.test.ts.snap index 92613e3e98..0b6d1f7e74 100644 --- a/tests/unit/snapshots/banksnapshots.test.ts.snap +++ b/tests/unit/snapshots/banksnapshots.test.ts.snap @@ -4474,7 +4474,7 @@ exports[`BSO Buyables 1`] = ` }, }, { - "gpCost": 1000, + "gpCost": 2000, "itemCost": Bank { "bank": {}, "frozen": false, From 41b082822a16caff07c7a02721a29efacce50197 Mon Sep 17 00:00:00 2001 From: themrrobert <10122432+themrrobert@users.noreply.github.com> Date: Tue, 27 Feb 2024 03:21:41 -0800 Subject: [PATCH 8/8] Fix sacrifice values in test --- tests/integration/commands/sacrifice.test.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/integration/commands/sacrifice.test.ts b/tests/integration/commands/sacrifice.test.ts index 8d722b100b..dbbd87cfba 100644 --- a/tests/integration/commands/sacrifice.test.ts +++ b/tests/integration/commands/sacrifice.test.ts @@ -18,28 +18,28 @@ describe('Sacrifice Command', async () => { expect(result).toEqual( `${Emoji.Incinerator} **Your Sacrifice Stats** ${Emoji.Incinerator}\n\n` + `**Current Minion Icon:** ${Emoji.Minion}\n` + - '**Sacrificed Value:** 1,922 GP\n' + + '**Sacrificed Value:** 1,909 GP\n' + '**Unique Items Sacrificed:** 2 items' ); }); test('No items provided', async () => { const result = await user.runCommand(sacrificeCommand, { items: 'aaaa' }); - expect(result).toEqual('No items were provided.\nYour current sacrificed value is: 1,922 (1.92k)'); + expect(result).toEqual('No items were provided.\nYour current sacrificed value is: 1,909 (1.91k)'); }); test('Successful', async () => { await user.addItemsToBank({ items: new Bank().add('Trout').add('Coal', 10) }); const result = await user.runCommand(sacrificeCommand, { items: '1 trout, 10 coal' }); expect(result).toEqual( - 'You sacrificed 10x Coal, 1x Trout, with a value of 1,922gp (1.92k). Your total amount sacrificed is now: 3,844. ' + 'You sacrificed 10x Coal, 1x Trout, with a value of 1,909gp (1.91k). Your total amount sacrificed is now: 3,818. ' ); const stats = await user.fetchStats({ sacrificed_bank: true }); expect(user.bank.equals(new Bank())).toBe(true); expect(new Bank(stats.sacrificed_bank as ItemBank).equals(new Bank().add('Coal', 20).add('Trout', 2))).toBe( true ); - expect(user.user.sacrificedValue).toEqual(BigInt(3844)); + expect(user.user.sacrificedValue).toEqual(BigInt(3818)); const clientSettings = await mahojiClientSettingsFetch({ economyStats_sacrificedBank: true }); expect( new Bank(clientSettings.economyStats_sacrificedBank as ItemBank).equals( @@ -49,7 +49,7 @@ describe('Sacrifice Command', async () => { await user.addItemsToBank({ items: new Bank().add('Trout').add('Cake') }); const res = await user.runCommand(sacrificeCommand, { items: '1 trout, 1 cake' }); expect(res).toEqual( - 'You sacrificed 1x Trout, 1x Cake, with a value of 169gp (169). Your total amount sacrificed is now: 4,013. ' + 'You sacrificed 1x Trout, 1x Cake, with a value of 156gp (156). Your total amount sacrificed is now: 3,974. ' ); await user.sync(); expect(user.bank.equals(new Bank())).toBe(true); @@ -57,7 +57,7 @@ describe('Sacrifice Command', async () => { expect( new Bank(stats2.sacrificed_bank as ItemBank).equals(new Bank().add('Coal', 20).add('Trout', 3).add('Cake')) ).toBe(true); - expect(user.user.sacrificedValue).toEqual(BigInt(4013)); + expect(user.user.sacrificedValue).toEqual(BigInt(3974)); const clientSettings2 = await mahojiClientSettingsFetch({ economyStats_sacrificedBank: true }); expect(