From 3223a2764b1c5bd4ea3bd05d5cfe6ea16bdddf64 Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Wed, 8 May 2024 02:26:08 -0500 Subject: [PATCH 1/9] removded package-lock.json --- prisma/robochimp.prisma | 93 ----------------------------------------- 1 file changed, 93 deletions(-) delete mode 100644 prisma/robochimp.prisma diff --git a/prisma/robochimp.prisma b/prisma/robochimp.prisma deleted file mode 100644 index e69c51ed5a..0000000000 --- a/prisma/robochimp.prisma +++ /dev/null @@ -1,93 +0,0 @@ -generator client { - provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] - output = "../node_modules/@prisma/robochimp" -} - -datasource db { - provider = "postgresql" - url = env("ROBOCHIMP_DATABASE_URL") -} - -model TriviaQuestion { - id Int @id @unique @default(autoincrement()) - question String @db.VarChar() - answers String[] @db.VarChar() - - @@map("trivia_question") -} - -enum BlacklistedEntityType { - guild - user -} - -model BlacklistedEntity { - id BigInt @id @unique - type BlacklistedEntityType - reason String? - date DateTime @default(now()) @db.Timestamp(6) - - @@map("blacklisted_entity") -} - -model User { - id BigInt @id @unique - bits Int[] - github_id Int? - patreon_id String? - migrated_user_id BigInt? - - leagues_completed_tasks_ids Int[] - leagues_points_balance_osb Int @default(0) - leagues_points_balance_bso Int @default(0) - leagues_points_total Int @default(0) - - react_emoji_id String? - - osb_total_level Int? - bso_total_level Int? - osb_total_xp BigInt? - bso_total_xp BigInt? - osb_cl_percent Float? - bso_cl_percent Float? - osb_mastery Float? - bso_mastery Float? - - tag Tag[] - - store_bitfield Int[] - - testing_points Float @default(0) - testing_points_balance Float @default(0) - - @@map("user") -} - -model PingableRole { - role_id String @id - name String @unique @db.VarChar(32) - - @@map("pingable_role") -} - -model Tag { - id Int @id @unique @default(autoincrement()) - name String @unique @db.VarChar(32) - content String @db.VarChar(2000) - - user_id BigInt - creator User @relation(fields: [user_id], references: [id]) - - @@map("tag") -} - -model StoreCode { - product_id Int - code String @id @unique - - redeemed_at DateTime? - redeemed_by_user_id String? @db.VarChar(19) - - @@map("store_code") -} From a06b828d7e080ff5b3c82307f53c4dfe1abb9f37 Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 13:15:28 -0500 Subject: [PATCH 2/9] reworded the return trip KC --- src/lib/data/Collections.ts | 25 ---------------- src/lib/invention/groups/Metals.ts | 2 +- src/tasks/minions/agilityActivity.ts | 30 ++++++++++++------- .../minions/bso/turaelsTrialsActivity.ts | 7 ++++- tests/unit/snapshots/clsnapshots.test.ts.snap | 6 ---- 5 files changed, 27 insertions(+), 43 deletions(-) diff --git a/src/lib/data/Collections.ts b/src/lib/data/Collections.ts index a0f8d94b2d..07dc10b2d1 100644 --- a/src/lib/data/Collections.ts +++ b/src/lib/data/Collections.ts @@ -1257,17 +1257,6 @@ export const allCollectionLogs: ICollection = { Camdozaal: { items: camdozaalCL }, - "Champion's Challenge": { - alias: ['champion', 'champion scrolls', 'champion scroll', 'scroll', 'scrolls'], - items: championsChallengeCL, - isActivity: true, - fmtProg: mgProg('champions_challenge') - }, - 'Chaos Druids': { - allItems: Monsters.ElderChaosDruid.allItems, - kcActivity: Monsters.ElderChaosDruid.name, - items: chaosDruisCL - }, 'Chompy Birds': { alias: ['chompy', 'bgc', 'big chompy hunting', 'ch', 'chompyhunting', 'chompyhunt'], kcActivity: 'BigChompyBirdHunting', @@ -1397,20 +1386,6 @@ export const allCollectionLogs: ICollection = { alias: ['pet', 'pets'], items: allPetsCL }, - Camdozaal: { - items: camdozaalCL - }, - 'Chompy Birds': { - alias: ['chompy', 'bgc', 'big chompy hunting', 'ch', 'chompyhunting', 'chompyhunt'], - kcActivity: 'BigChompyBirdHunting', - items: chompyBirdsCL - }, - 'Creature Creation': { - items: creatureCreationCL - }, - 'Fossil Island Notes': { - items: fossilIslandNotesCL - }, 'Random Events': { alias: ['random'], items: randomEventsCL diff --git a/src/lib/invention/groups/Metals.ts b/src/lib/invention/groups/Metals.ts index 1332877df2..88d9f2450e 100644 --- a/src/lib/invention/groups/Metals.ts +++ b/src/lib/invention/groups/Metals.ts @@ -24,5 +24,5 @@ export const Metals: DisassemblySourceGroup = { { item: i('Rune dart tip'), lvl: 9 }, { item: i('Dragon dart tip'), lvl: 80, flags: new Set(['orikalkum']) } ], - parts: { strong: 10, plated: 10, heavy: 10, metallic: 70 } + parts: { strong: 10, plated: 20, heavy: 10, metallic: 60 } }; diff --git a/src/tasks/minions/agilityActivity.ts b/src/tasks/minions/agilityActivity.ts index 8125c57af1..652a20f194 100644 --- a/src/tasks/minions/agilityActivity.ts +++ b/src/tasks/minions/agilityActivity.ts @@ -151,13 +151,16 @@ export const agilityTask: MinionTask = { const [hasArdyElite] = await userhasDiaryTier(user, ArdougneDiary.elite); const hasDiaryBonus = hasArdyElite && course.name === 'Ardougne Rooftop Course'; + const messages: string[] = []; + const petMessages: string[] = []; + const portentResult = await chargePortentIfHasCharges({ user, portentID: PortentID.GracefulPortent, charges: minutes }); - const { successfulLaps, loot, xpReceived, lapsFailed, portentXP } = calculateAgilityResult({ + const { successfulLaps, loot, xpReceived, lapsFailed, portentXP, boosts } = calculateAgilityResult({ quantity, course, agilityLevel: currentLevel, @@ -218,7 +221,7 @@ export const agilityTask: MinionTask = { if (currentLapCount < monkey.lapsRequired) break; if (!user.hasEquippedOrInBank(monkey.id)) { loot.add(monkey.id); - str += `\nYou received the ${monkey.name} monkey backpack!`; + messages.push(`You received the ${monkey.name} monkey backpack!`); } } } @@ -235,8 +238,9 @@ export const agilityTask: MinionTask = { for (let i = 0; i < minutes; i++) { if (roll(scruffyDroprate)) { loot.add('Scruffy'); - str += - "\n\n<:scruffy:749945071146762301> As you jump off the rooftop in Varrock, a stray dog covered in flies approaches you. You decide to adopt the dog, and name him 'Scruffy'."; + petMessages.push( + "<:scruffy:749945071146762301> As you jump off the rooftop in Varrock, a stray dog covered in flies approaches you. You decide to adopt the dog, and name him 'Scruffy'." + ); break; } } @@ -246,8 +250,9 @@ export const agilityTask: MinionTask = { for (let i = 0; i < minutes; i++) { if (roll(1600)) { loot.add('Harry'); - str += - '\n\n<:harry:749945071104819292> As you jump across a rooftop, you notice a monkey perched on the roof - which has escaped from the Ardougne Zoo! You decide to adopt the monkey, and call him Harry.'; + petMessages.push( + '<:harry:749945071104819292> As you jump across a rooftop, you notice a monkey perched on the roof - which has escaped from the Ardougne Zoo! You decide to adopt the monkey, and call him Harry.' + ); break; } } @@ -258,8 +263,9 @@ export const agilityTask: MinionTask = { for (let i = 0; i < minutes; i++) { if (roll(dropRate)) { loot.add('Skipper'); - str += - "\n\n<:skipper:755853421801766912> As you finish the Penguin agility course, a lone penguin asks if you'd like to hire it as your accountant, you accept."; + petMessages.push( + "<:skipper:755853421801766912> As you finish the Penguin agility course, a lone penguin asks if you'd like to hire it as your accountant, you accept." + ); break; } } @@ -276,7 +282,7 @@ export const agilityTask: MinionTask = { shardQty *= 2; } loot.add(item.id, shardQty); - str += `\nYou received **${shardQty}x ${item.name}**`; + messages.push(`You received **${shardQty}x ${item.name}**`); } } } @@ -284,7 +290,7 @@ export const agilityTask: MinionTask = { const { petDropRate } = skillingPetDropRate(user, SkillsEnum.Agility, course.petChance); if (roll(petDropRate / quantity)) { loot.add('Giant squirrel'); - str += "\nYou have a funny feeling you're being followed..."; + petMessages.push("You have a funny feeling you're being followed..."); } await transactItems({ @@ -293,6 +299,10 @@ export const agilityTask: MinionTask = { itemsToAdd: loot }); + for (const msgs of [boosts, messages, petMessages]) { + if (msgs.length > 0) str += `\n\n${msgs.join('\n')}`; + } + handleTripFinish(user, channelID, str, undefined, data, loot); } }; diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 4bf35dcb98..9655bd59a4 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -1,6 +1,7 @@ import { Bank } from 'oldschooljs'; import { TuraelsTrialsMethod } from '../../../lib/bso/turaelsTrials'; +import { incrementMinigameScore } from '../../../lib/settings/settings'; import { XPBank } from '../../../lib/structures/Banks'; import { TuraelsTrialsOptions } from '../../../lib/types/minions'; import { handleTripFinish } from '../../../lib/util/handleTripFinish'; @@ -37,6 +38,8 @@ export const turaelsTrialsTask: MinionTask = { const result = calculateTuraelsTrialsResult({ quantity, method }); + const { newScore } = await incrementMinigameScore(userID, 'turaels_trials', quantity); + await user.addItemsToBank({ items: result.loot, collectionLog: true }); await trackClientBankStats('turaels_trials_loot_bank', result.loot); await userStatsBankUpdate(user.id, 'turaels_trials_loot_bank', result.loot); @@ -51,7 +54,9 @@ export const turaelsTrialsTask: MinionTask = { return handleTripFinish( user, channelID, - `${user}, your minion finished slaying ${quantity}x superiors in Turaels Trials. ${xpResults.join(', ')}`, + `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n**Your ${name} KC is now ${newScore}**.\n${xpResults.join( + ', ' + )}`, undefined, data, result.loot diff --git a/tests/unit/snapshots/clsnapshots.test.ts.snap b/tests/unit/snapshots/clsnapshots.test.ts.snap index 96349ed9be..5159a0d2fe 100644 --- a/tests/unit/snapshots/clsnapshots.test.ts.snap +++ b/tests/unit/snapshots/clsnapshots.test.ts.snap @@ -20,20 +20,16 @@ BSO Birthday 2022 (4) BSO Birthday 2023 (5) Callisto and Artio (6) Camdozaal (10) -Camdozaal (10) Capes (189) Castle Wars (44) Celestara (4) Cerberus (7) Chamber's of Xeric (23) Champion's Challenge (11) -Champion's Challenge (11) -Chaos Druids (3) Chaos Druids (3) Chaos Elemental (3) Chaos Fanatic (3) Chompy Birds (19) -Chompy Birds (19) Christmas 2021 (27) Christmas 2022 (15) Christmas 2023 (15) @@ -46,7 +42,6 @@ Crafting (175) Crazy archaeologist (3) Creatables (750) Creature Creation (7) -Creature Creation (7) Custom Pets (47) Custom Pets (Discontinued) (20) Cyclopes (8) @@ -76,7 +71,6 @@ Fist of Guthix (6) Fletching (145) Forestry (23) Fossil Island Notes (10) -Fossil Island Notes (10) General Graardor (8) Giant Mole (3) Giants' Foundry (9) From f87061d819097ac41de1db3b8d46958438603de4 Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 13:22:17 -0500 Subject: [PATCH 3/9] added the constant for name --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 9655bd59a4..200d7fa833 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -39,6 +39,8 @@ export const turaelsTrialsTask: MinionTask = { const result = calculateTuraelsTrialsResult({ quantity, method }); const { newScore } = await incrementMinigameScore(userID, 'turaels_trials', quantity); + + const name = "Turaels Trials"; await user.addItemsToBank({ items: result.loot, collectionLog: true }); await trackClientBankStats('turaels_trials_loot_bank', result.loot); From f44e1833bfcb9c5d18a28db6e50df0aee7cbda96 Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 23:24:50 -0500 Subject: [PATCH 4/9] li t --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 200d7fa833..f87d62ef74 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -39,8 +39,8 @@ export const turaelsTrialsTask: MinionTask = { const result = calculateTuraelsTrialsResult({ quantity, method }); const { newScore } = await incrementMinigameScore(userID, 'turaels_trials', quantity); - - const name = "Turaels Trials"; + + const name = 'Turaels Trials'; await user.addItemsToBank({ items: result.loot, collectionLog: true }); await trackClientBankStats('turaels_trials_loot_bank', result.loot); From 2394150ab536442fb4037a6c3ab22dbf39387dc5 Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 23:34:24 -0500 Subject: [PATCH 5/9] added another \n --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index f87d62ef74..847a088585 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -56,9 +56,9 @@ export const turaelsTrialsTask: MinionTask = { return handleTripFinish( user, channelID, - `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n**Your ${name} KC is now ${newScore}**.\n${xpResults.join( + `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n\n**Your ${name} KC is now ${newScore}**.\n\n${xpResults.join( ', ' - )}`, + )}`\n, undefined, data, result.loot From 895128d0fa96feb67e3088ce0766bc6f0130223c Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 23:37:51 -0500 Subject: [PATCH 6/9] fixed \n --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 847a088585..fa687a180e 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -58,7 +58,7 @@ export const turaelsTrialsTask: MinionTask = { channelID, `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n\n**Your ${name} KC is now ${newScore}**.\n\n${xpResults.join( ', ' - )}`\n, + )}\n`, undefined, data, result.loot From 68d8658fad3d04d771de9b58dcd76453a7b135af Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 23:45:09 -0500 Subject: [PATCH 7/9] fix --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index fa687a180e..74fdaf19e5 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -56,7 +56,7 @@ export const turaelsTrialsTask: MinionTask = { return handleTripFinish( user, channelID, - `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n\n**Your ${name} KC is now ${newScore}**.\n\n${xpResults.join( + `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n\n**Your ${name} KC is now ${newScore}**.\n${xpResults.join( ', ' )}\n`, undefined, From ce7d52e47603d2bdff5f7840bd698495f6f39d0a Mon Sep 17 00:00:00 2001 From: I-am-TURBO Date: Tue, 21 May 2024 23:49:15 -0500 Subject: [PATCH 8/9] fix --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 74fdaf19e5..1f1632832f 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -56,7 +56,7 @@ export const turaelsTrialsTask: MinionTask = { return handleTripFinish( user, channelID, - `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n\n**Your ${name} KC is now ${newScore}**.\n${xpResults.join( + `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n**Your ${name} KC is now ${newScore}**.\n\n${xpResults.join( ', ' )}\n`, undefined, From ff05b97eea21abf143164764ff9c5d281d8304ce Mon Sep 17 00:00:00 2001 From: "ellipsis-dev[bot]" <65095814+ellipsis-dev[bot]@users.noreply.github.com> Date: Wed, 22 May 2024 05:18:56 +0000 Subject: [PATCH 9/9] address comments left by @I-am-TURBO on #5893 (Fixed formatting of Turaels Trials tracking); --- src/tasks/minions/bso/turaelsTrialsActivity.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/tasks/minions/bso/turaelsTrialsActivity.ts b/src/tasks/minions/bso/turaelsTrialsActivity.ts index 1f1632832f..20d67ec1e8 100644 --- a/src/tasks/minions/bso/turaelsTrialsActivity.ts +++ b/src/tasks/minions/bso/turaelsTrialsActivity.ts @@ -12,10 +12,10 @@ export function calculateTuraelsTrialsResult({ quantity, method }: { quantity: n const xpBank = new XPBank().add('slayer', 36_009 * quantity); if (method === 'melee') { - const meleeXP = Math.floor((89_000 * quantity) / 3); - xpBank.add('attack', meleeXP); - xpBank.add('strength', meleeXP); - xpBank.add('defence', meleeXP); + const meleeXP = Math.floor((89_000 * quantity) / 3); + xpBank.add('attack', meleeXP); + xpBank.add('strength', meleeXP); + xpBank.add('defence', meleeXP); } else if (method === 'range') { xpBank.add('ranged', 89_000 * quantity); } else { @@ -56,12 +56,14 @@ export const turaelsTrialsTask: MinionTask = { return handleTripFinish( user, channelID, - `${user}, your minion finished slaying; ${quantity}x superiors in ${name}.\n**Your ${name} KC is now ${newScore}**.\n\n${xpResults.join( - ', ' - )}\n`, + `${user}, your minion finished slaying ${quantity}x superiors in ${name}. +**Your ${name} KC is now ${newScore}**. + +${xpResults.join(', ')} +`, undefined, data, result.loot ); } -}; +}; \ No newline at end of file