diff --git a/src/services/worldStateService.ts b/src/services/worldStateService.ts index b929331d..a7a2bf51 100644 --- a/src/services/worldStateService.ts +++ b/src/services/worldStateService.ts @@ -8,6 +8,7 @@ import syndicateMissions from "@/static/fixed_responses/worldState/syndicateMiss import darvoDeals from "@/static/fixed_responses/worldState/darvoDeals.json"; import invasionNodes from "@/static/fixed_responses/worldState/invasionNodes.json"; import invasionRewards from "@/static/fixed_responses/worldState/invasionRewards.json"; +import pvpChallenges from "@/static/fixed_responses/worldState/pvpChallenges.json"; import { buildConfig } from "@/src/services/buildConfigService"; import { unixTimesInMs } from "@/src/constants/timeConstants"; import { config } from "@/src/services/configService"; @@ -21,6 +22,7 @@ import { ILiteSortie, IPrimeVaultTrader, IPrimeVaultTraderOffer, + IPVPChallengeInstance, ISeasonChallenge, ISortie, ISortieMission, @@ -1401,6 +1403,7 @@ export const getWorldState = (buildLabel?: string): IWorldState => { DailyDeals: [], EndlessXpChoices: [], KnownCalendarSeasons: [], + PVPChallengeInstances: [], ...staticWorldState, SyndicateMissions: [...staticWorldState.SyndicateMissions], InGameMarket: { @@ -2629,6 +2632,23 @@ export const getWorldState = (buildLabel?: string): IWorldState => { pushSyndicateMissions(worldState, sdy, rng.randomInt(0, 100_000), "ba6f84724fa48061", "SteelMeridianSyndicate"); } + { + const conclaveDayStart = EPOCH + day * unixTimesInMs.day + 5 * unixTimesInMs.hour + 30 * unixTimesInMs.minute; + const conclaveDayEnd = conclaveDayStart + unixTimesInMs.day; + const conclaveWeekStart = weekStart + 40 * unixTimesInMs.minute - 2 * unixTimesInMs.day; + const conclaveWeekEnd = conclaveWeekStart + unixTimesInMs.week; + + pushConclaveWeakly(worldState.PVPChallengeInstances, week); + pushConclaveDailys(worldState.PVPChallengeInstances, day); + + if (isBeforeNextExpectedWorldStateRefresh(timeMs, conclaveDayEnd)) { + pushConclaveDailys(worldState.PVPChallengeInstances, day + 1); + } + if (isBeforeNextExpectedWorldStateRefresh(timeMs, conclaveWeekEnd)) { + pushConclaveWeakly(worldState.PVPChallengeInstances, week + 1); + } + } + // Archon Hunt cycling every week worldState.LiteSorties.push(getLiteSortie(week)); if (isBeforeNextExpectedWorldStateRefresh(timeMs, weekEnd)) { @@ -3014,3 +3034,136 @@ const updateDailyDeal = async (): Promise => { export const updateWorldStateCollections = async (): Promise => { await Promise.all([updateFissures(), updateDailyDeal()]); }; + +const pushConclaveDaily = ( + activeChallenges: IPVPChallengeInstance[], + PVPMode: string, + pool: { + key: string; + ScriptParamValue: number; + PVPModeAllowed: string[]; + SyndicateXP: number; + DuringSingleMatch?: boolean; + }[], + day: number, + id: number +): void => { + const conclaveDayStart = EPOCH + day * unixTimesInMs.day + 5 * unixTimesInMs.hour + 30 * unixTimesInMs.minute; + const conclaveDayEnd = conclaveDayStart + unixTimesInMs.day; + const challengeId = day * 8 + id; + const rng = new SRng(new SRng(challengeId).randomInt(0, 100_000)); + let challenge: { + key: string; + ScriptParamValue: number; + PVPModeAllowed?: string[]; + SyndicateXP?: number; + DuringSingleMatch?: boolean; + }; + do { + challenge = rng.randomElement(pool)!; + } while ( + activeChallenges.some(x => x.challengeTypeRefID == challenge.key) && + activeChallenges.some(x => x.PVPMode == PVPMode) + ); + activeChallenges.push({ + _id: { + $oid: "689ec5d985b55902" + challengeId.toString().padStart(8, "0") + }, + challengeTypeRefID: challenge.key, + startDate: { $date: { $numberLong: conclaveDayStart.toString() } }, + endDate: { $date: { $numberLong: conclaveDayEnd.toString() } }, + params: [{ n: "ScriptParamValue", v: challenge.ScriptParamValue }], + isGenerated: true, + PVPMode, + subChallenges: [], + Category: "PVPChallengeTypeCategory_DAILY" + }); +}; + +const pushConclaveDailys = (activeChallenges: IPVPChallengeInstance[], day: number): void => { + const modes = [ + "PVPMODE_SPEEDBALL", + "PVPMODE_CAPTURETHEFLAG", + "PVPMODE_DEATHMATCH", + "PVPMODE_TEAMDEATHMATCH" + ] as const; + + const challengesMap: Record< + string, + { + key: string; + ScriptParamValue: number; + PVPModeAllowed: string[]; + SyndicateXP: number; + DuringSingleMatch?: boolean; + }[] + > = {}; + + for (const mode of modes) { + challengesMap[mode] = Object.entries(pvpChallenges) + .filter(([_, challenge]) => challenge.PVPModeAllowed.includes(mode)) + .map(([key, challenge]) => ({ key, ...challenge })); + } + + modes.forEach((mode, index) => { + pushConclaveDaily(activeChallenges, mode, challengesMap[mode], day, index * 2); + pushConclaveDaily(activeChallenges, mode, challengesMap[mode], day, index * 2 + 1); + }); +}; + +const pushConclaveWeakly = (activeChallenges: IPVPChallengeInstance[], week: number): void => { + const weekStart = EPOCH + week * unixTimesInMs.week; + const conclaveWeekStart = weekStart + 40 * unixTimesInMs.minute - 2 * unixTimesInMs.day; + const conclaveWeekEnd = conclaveWeekStart + unixTimesInMs.week; + const conclaveIdStart = ((conclaveWeekStart / 1000) & 0xffffffff).toString(16).padStart(8, "0").padEnd(23, "0"); + activeChallenges.push( + { + _id: { $oid: conclaveIdStart + "1" }, + challengeTypeRefID: "/Lotus/PVPChallengeTypes/PVPTimedChallengeGameModeWins", + startDate: { $date: { $numberLong: conclaveWeekStart.toString() } }, + endDate: { $date: { $numberLong: conclaveWeekEnd.toString() } }, + params: [{ n: "ScriptParamValue", v: 6 }], + isGenerated: true, + PVPMode: "PVPMODE_ALL", + subChallenges: [], + Category: "PVPChallengeTypeCategory_WEEKLY" + }, + { + _id: { $oid: conclaveIdStart + "2" }, + challengeTypeRefID: "/Lotus/PVPChallengeTypes/PVPTimedChallengeGameModeComplete", + startDate: { $date: { $numberLong: conclaveWeekStart.toString() } }, + endDate: { $date: { $numberLong: conclaveWeekEnd.toString() } }, + params: [{ n: "ScriptParamValue", v: 20 }], + isGenerated: true, + PVPMode: "PVPMODE_ALL", + subChallenges: [], + Category: "PVPChallengeTypeCategory_WEEKLY" + }, + { + _id: { $oid: conclaveIdStart + "3" }, + challengeTypeRefID: "/Lotus/PVPChallengeTypes/PVPTimedChallengeOtherChallengeCompleteANY", + startDate: { $date: { $numberLong: conclaveWeekStart.toString() } }, + endDate: { $date: { $numberLong: conclaveWeekEnd.toString() } }, + params: [{ n: "ScriptParamValue", v: 10 }], + isGenerated: true, + PVPMode: "PVPMODE_ALL", + subChallenges: [], + Category: "PVPChallengeTypeCategory_WEEKLY" + }, + { + _id: { $oid: conclaveIdStart + "4" }, + challengeTypeRefID: "/Lotus/PVPChallengeTypes/PVPTimedChallengeWeeklyStandardSet", + startDate: { $date: { $numberLong: conclaveWeekStart.toString() } }, + endDate: { $date: { $numberLong: conclaveWeekEnd.toString() } }, + params: [{ n: "ScriptParamValue", v: 0 }], + isGenerated: true, + PVPMode: "PVPMODE_NONE", + subChallenges: [ + { $oid: conclaveIdStart + "1" }, + { $oid: conclaveIdStart + "2" }, + { $oid: conclaveIdStart + "3" } + ], + Category: "PVPChallengeTypeCategory_WEEKLY_ROOT" + } + ); +}; diff --git a/static/fixed_responses/worldState/pvpChallenges.json b/static/fixed_responses/worldState/pvpChallenges.json new file mode 100644 index 00000000..36cf9288 --- /dev/null +++ b/static/fixed_responses/worldState/pvpChallenges.json @@ -0,0 +1,290 @@ +{ + "/Lotus/PVPChallengeTypes/PVPTimedChallengeFlagCaptureEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_CAPTURETHEFLAG"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeFlagCaptureMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_CAPTURETHEFLAG"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeFlagReturnEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_CAPTURETHEFLAG"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsComboEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsComboMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsHeadShotsEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsHeadShotsMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsMeleeEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsMeleeMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsMeleeHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsMultiMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPaybackEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPayback_MEDIUM": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPowerEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPowerMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPowerHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPrimaryEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPrimaryMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPrimaryHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsSecondaryEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsSecondaryMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsSecondaryHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreak_MEDIUM": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakDominationEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakDomination_MEDIUM": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakDominationHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakStoppedEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakStopped_MEDIUM": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakHARD": { + "ScriptParamValue": 2, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsTargetInAirEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsTargetInAirMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsTargetInAirHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsWhileSlidingEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsWhileSlidingMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsWhileSlidingHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 3000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeMatchCompleteEASY": { + "ScriptParamValue": 1, + "PVPModeAllowed": ["PVPMODE_CAPTURETHEFLAG", "PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeMatchCompleteMEDIUM": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_CAPTURETHEFLAG", "PVPMODE_DEATHMATCH", "PVPMODE_TEAMDEATHMATCH"], + "SyndicateXP": 1500 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballCatchesEASY": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballCatchesMEDIUM": { + "ScriptParamValue": 10, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballCatchesHARD": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballChecksEASY": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballChecksMEDIUM": { + "ScriptParamValue": 10, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballChecksHARD": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballGoalsEASY": { + "ScriptParamValue": 2, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballGoalsMEDIUM": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballGoalsHARD": { + "ScriptParamValue": 4, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballInterceptionsEASY": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballInterceptionsMEDIUM": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballInterceptionsHARD": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballPassesEASY": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballPassesMEDIUM": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballPassesHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000, + "DuringSingleMatch": true + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballStealsEASY": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 1000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballStealsMEDIUM": { + "ScriptParamValue": 6, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 3000 + }, + "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballStealsHARD": { + "ScriptParamValue": 3, + "PVPModeAllowed": ["PVPMODE_SPEEDBALL"], + "SyndicateXP": 6000 + } +} diff --git a/static/fixed_responses/worldState/worldState.json b/static/fixed_responses/worldState/worldState.json index 8c04c4a2..e25d1bf1 100644 --- a/static/fixed_responses/worldState/worldState.json +++ b/static/fixed_responses/worldState/worldState.json @@ -311,140 +311,6 @@ "PrimeVaultAvailabilities": [false, false, false, false, false], "PrimeTokenAvailability": true, "LibraryInfo": { "LastCompletedTargetType": "/Lotus/Types/Game/Library/Targets/Research7Target" }, - "PVPChallengeInstances": [ - { - "_id": { "$oid": "6635562d036ce37f7f98e264" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeGameModeComplete", - "startDate": { "$date": { "$numberLong": "1714771501460" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 20 }], - "isGenerated": true, - "PVPMode": "PVPMODE_ALL", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_WEEKLY" - }, - { - "_id": { "$oid": "6635562d036ce37f7f98e263" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeGameModeWins", - "startDate": { "$date": { "$numberLong": "1714771501460" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 6 }], - "isGenerated": true, - "PVPMode": "PVPMODE_ALL", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_WEEKLY" - }, - { - "_id": { "$oid": "6635562d036ce37f7f98e265" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeOtherChallengeCompleteANY", - "startDate": { "$date": { "$numberLong": "1714771501460" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 10 }], - "isGenerated": true, - "PVPMode": "PVPMODE_ALL", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_WEEKLY" - }, - { - "_id": { "$oid": "6635562d036ce37f7f98e266" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeWeeklyStandardSet", - "startDate": { "$date": { "$numberLong": "1714771501460" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 0 }], - "isGenerated": true, - "PVPMode": "PVPMODE_NONE", - "subChallenges": [{ "$oid": "6635562d036ce37f7f98e263" }, { "$oid": "6635562d036ce37f7f98e264" }, { "$oid": "6635562d036ce37f7f98e265" }], - "Category": "PVPChallengeTypeCategory_WEEKLY_ROOT" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75fee" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeFlagReturnEASY", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 1 }], - "isGenerated": true, - "PVPMode": "PVPMODE_CAPTURETHEFLAG", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75fed" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeMatchCompleteMEDIUM", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 4 }], - "isGenerated": true, - "PVPMode": "PVPMODE_CAPTURETHEFLAG", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75ff2" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeMatchCompleteEASY", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 1 }], - "isGenerated": true, - "PVPMode": "PVPMODE_DEATHMATCH", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75ff1" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsPayback_MEDIUM", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 3 }], - "isGenerated": true, - "PVPMode": "PVPMODE_DEATHMATCH", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75fef" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsStreakDominationEASY", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 1 }], - "isGenerated": true, - "PVPMode": "PVPMODE_TEAMDEATHMATCH", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75ff0" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeKillsWhileInAirHARD", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 3 }], - "isGenerated": true, - "PVPMode": "PVPMODE_TEAMDEATHMATCH", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75ff3" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballCatchesMEDIUM", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 10 }], - "isGenerated": true, - "PVPMode": "PVPMODE_SPEEDBALL", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - }, - { - "_id": { "$oid": "6639ca6967c1192987d75ff4" }, - "challengeTypeRefID": "/Lotus/PVPChallengeTypes/PVPTimedChallengeSpeedballInterceptionsEASY", - "startDate": { "$date": { "$numberLong": "1715063401824" } }, - "endDate": { "$date": { "$numberLong": "2000000000000" } }, - "params": [{ "n": "ScriptParamValue", "v": 3 }], - "isGenerated": true, - "PVPMode": "PVPMODE_SPEEDBALL", - "subChallenges": [], - "Category": "PVPChallengeTypeCategory_DAILY" - } - ], "PersistentEnemies": [], "PVPAlternativeModes": [], "PVPActiveTournaments": [],