diff --git a/src/helpers/relicHelper.ts b/src/helpers/relicHelper.ts index 03b0e9c9..6889514e 100644 --- a/src/helpers/relicHelper.ts +++ b/src/helpers/relicHelper.ts @@ -14,7 +14,14 @@ export const crackRelic = async ( inventoryChanges: IInventoryChanges = {} ): Promise => { const relic = ExportRelics[participant.VoidProjection]; - const weights = refinementToWeights[relic.quality]; + let weights = refinementToWeights[relic.quality]; + if (relic.quality == "VPQ_SILVER" && config.exceptionalRelicsAlwaysGiveBronzeReward) { + weights = { COMMON: 1, UNCOMMON: 0, RARE: 0, LEGENDARY: 0 }; + } else if (relic.quality == "VPQ_GOLD" && config.flawlessRelicsAlwaysGiveSilverReward) { + weights = { COMMON: 0, UNCOMMON: 1, RARE: 0, LEGENDARY: 0 }; + } else if (relic.quality == "VPQ_PLATINUM" && config.radiantRelicsAlwaysGiveGoldReward) { + weights = { COMMON: 0, UNCOMMON: 0, RARE: 1, LEGENDARY: 0 }; + } logger.debug(`opening a relic of quality ${relic.quality}; rarity weights are`, weights); const reward = getRandomWeightedReward( ExportRewards[relic.rewardManifest][0] as { type: string; itemCount: number; rarity: TRarity }[], // rarity is nullable in PE+ typings, but always present for relics diff --git a/src/services/configService.ts b/src/services/configService.ts index aa649dd5..6b20c91d 100644 --- a/src/services/configService.ts +++ b/src/services/configService.ts @@ -64,6 +64,9 @@ export interface IConfig { noDojoResearchTime?: boolean; fastClanAscension?: boolean; missionsCanGiveAllRelics?: boolean; + exceptionalRelicsAlwaysGiveBronzeReward?: boolean; + flawlessRelicsAlwaysGiveSilverReward?: boolean; + radiantRelicsAlwaysGiveGoldReward?: boolean; unlockAllSimarisResearchEntries?: boolean; disableDailyTribute?: boolean; spoofMasteryRank?: number; diff --git a/static/webui/index.html b/static/webui/index.html index 80493572..66309c9d 100644 --- a/static/webui/index.html +++ b/static/webui/index.html @@ -778,6 +778,18 @@ +
+ + +
+
+ + +
+
+ + +
diff --git a/static/webui/translations/en.js b/static/webui/translations/en.js index 65594d49..225277ae 100644 --- a/static/webui/translations/en.js +++ b/static/webui/translations/en.js @@ -181,6 +181,9 @@ dict = { cheats_noDojoResearchTime: `No Dojo Research Time`, cheats_fastClanAscension: `Fast Clan Ascension`, cheats_missionsCanGiveAllRelics: `Missions Can Give All Relics`, + cheats_exceptionalRelicsAlwaysGiveBronzeReward: `Exceptional Relics Always Give Bronze Reward`, + cheats_flawlessRelicsAlwaysGiveSilverReward: `Flawless Relics Always Give Silver Reward`, + cheats_radiantRelicsAlwaysGiveGoldReward: `Radiant Relics Always Give Gold Reward`, cheats_unlockAllSimarisResearchEntries: `Unlock All Simaris Research Entries`, cheats_disableDailyTribute: `Disable Daily Tribute`, cheats_spoofMasteryRank: `Spoofed Mastery Rank (-1 to disable)`,