From ed15fba70ba67b517b74f7e398ec9cd3404f2e6e Mon Sep 17 00:00:00 2001 From: Freddie Date: Sun, 18 Oct 2026 15:40:37 -0700 Subject: [PATCH 1/2] Add weekly Zul'jarra rep to delve chores --- apps/frontend/data/tasks/11-midnight/delves.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/apps/frontend/data/tasks/11-midnight/delves.ts b/apps/frontend/data/tasks/11-midnight/delves.ts index e3be36667..53fa0b1fb 100644 --- a/apps/frontend/data/tasks/11-midnight/delves.ts +++ b/apps/frontend/data/tasks/11-midnight/delves.ts @@ -87,6 +87,15 @@ export const midDelves: Task = { questReset: DbResetType.Weekly, questIds: [93820], }, + { + key: 'repZuljarra', + name: 'Rep: {faction:2772}', + minimumLevel: 90, + accountWide: true, + alwaysStarted: true, + questReset: DbResetType.Weekly, + questIds: [99222], + }, null, { key: 'bounty', From caf6df5108bf1844da95ae47c558e57ef5f59854 Mon Sep 17 00:00:00 2001 From: Freddie Date: Mon, 19 Oct 2026 16:56:18 -0700 Subject: [PATCH 2/2] Add Hallow's End task with HH/neighborhood chores --- .../frontend/data/tasks/events/hallows-end.ts | 68 +++++++++++++++++++ apps/frontend/data/tasks/events/index.ts | 2 + apps/frontend/shared/icons/library.ts | 3 + 3 files changed, 73 insertions(+) create mode 100644 apps/frontend/data/tasks/events/hallows-end.ts diff --git a/apps/frontend/data/tasks/events/hallows-end.ts b/apps/frontend/data/tasks/events/hallows-end.ts new file mode 100644 index 000000000..aea296b69 --- /dev/null +++ b/apps/frontend/data/tasks/events/hallows-end.ts @@ -0,0 +1,68 @@ +import { Holiday } from '@/enums/holiday'; +import { iconLibrary } from '@/shared/icons'; +import { DbResetType } from '@/shared/stores/db/enums'; +import type { Task } from '@/types/tasks'; + +export const eventHallowsEnd: Task = { + key: 'eventHallowsEnd', + name: "[Event] Hallow's End", + shortName: '🎃', + minimumLevel: 10, + requiredHolidays: [Holiday.HallowsEnd], + chores: [ + { + key: 'headlessHorseman', + name: 'Headless Horseman', + icon: iconLibrary.gameCloakedFigureOnHorseback, + alwaysStarted: true, + questResetForced: true, + questReset: DbResetType.Daily, + progressFunc: (char) => { + const lockout = char.lockouts?.['200285-1']; + return { have: lockout?.locked ? 1 : 0, need: 1 }; + }, + }, + // Neighborhoods + { + key: 'neighborhoodBroomstick', + name: 'Broomstick Express', + icon: iconLibrary.gameMagicBroom, + questResetForced: true, + questReset: DbResetType.Daily, + questIds: [ + 92104, // Broomstick Express + ], + }, + { + key: 'neighborhoodSpecter', + name: 'Specter Inspector', + icon: iconLibrary.mdiGhost, + questResetForced: true, + questReset: DbResetType.Daily, + questIds: [ + 92455, // Specter Inspector + ], + }, + { + key: 'neighborhoodSugar', + name: 'Sugar Rush', + icon: iconLibrary.gameCupcake, + questResetForced: true, + questReset: DbResetType.Daily, + questIds: [ + 92535, // Witchbane Truffles + 92536, // Bewitched Berry Bites + 92537, // Hexed Honeycombs + 93401, // Howling Honey Drops + 95822, // Twisted Vine Licorice + 95825, // Blighted Core Caramels + 95827, // Blighted Bloom Bites + 95828, // Felroot Crunch + 95829, // Rotleaf Wafers + 97219, // Candy Crafting + 98421, // Candy Crafting + 98422, // Candy Crafting + ], + }, + ], +}; diff --git a/apps/frontend/data/tasks/events/index.ts b/apps/frontend/data/tasks/events/index.ts index 3d8401dc1..96de5dde9 100644 --- a/apps/frontend/data/tasks/events/index.ts +++ b/apps/frontend/data/tasks/events/index.ts @@ -2,6 +2,7 @@ import { eventAnniversary } from './anniversary'; import { eventBonus } from './bonus'; import { eventBrewfest } from './brewfest'; import { eventDarkmoonFaire } from './darkmoon-faire'; +import { eventHallowsEnd } from './hallows-end'; import { eventNoblegarden } from './noblegarden'; import { eventTimewalking } from './timewalking'; @@ -10,6 +11,7 @@ export const eventTasks = [ eventBonus, eventBrewfest, eventDarkmoonFaire, + eventHallowsEnd, eventNoblegarden, eventTimewalking, ]; diff --git a/apps/frontend/shared/icons/library.ts b/apps/frontend/shared/icons/library.ts index d74374d56..19b2f06e2 100644 --- a/apps/frontend/shared/icons/library.ts +++ b/apps/frontend/shared/icons/library.ts @@ -37,11 +37,13 @@ export { default as gameCash } from '~icons/game-icons/cash'; export { default as gameCastle } from '~icons/game-icons/castle'; export { default as gameChestArmor } from '~icons/game-icons/chest-armor'; export { default as gameClosedDoors } from '~icons/game-icons/closed-doors'; +export { default as gameCloakedFigureOnHorseback } from '~icons/game-icons/cloaked-figure-on-horseback'; export { default as gameClothes } from '~icons/game-icons/clothes'; export { default as gameCompanionCube } from '~icons/game-icons/companion-cube'; export { default as gameCrossbow } from '~icons/game-icons/crossbow'; export { default as gameCrossedSwords } from '~icons/game-icons/crossed-swords'; export { default as gameCrownedSkull } from '~icons/game-icons/crowned-skull'; +export { default as gameCupcake } from '~icons/game-icons/cupcake'; export { default as gameCursedStar } from '~icons/game-icons/cursed-star'; export { default as gameCurvyKnife } from '~icons/game-icons/curvy-knife'; export { default as gameCutDiamond } from '~icons/game-icons/cut-diamond'; @@ -70,6 +72,7 @@ export { default as gameKnapsack } from '~icons/game-icons/knapsack'; export { default as gameLabradorHead } from '~icons/game-icons/labrador-head'; export { default as gameLockedFortress } from '~icons/game-icons/locked-fortress'; export { default as gameLockedHeart } from '~icons/game-icons/locked-heart'; +export { default as gameMagicBroom } from '~icons/game-icons/magic-broom'; export { default as gameMetalBoot } from '~icons/game-icons/metal-boot'; export { default as gameNightSky } from '~icons/game-icons/night-sky'; export { default as gameNotebook } from '~icons/game-icons/notebook';