Update Healer Man server

This commit is contained in:
phenom committed 2026-09-20 13:40:23 -04:00
1 parent cc3b2fa4d5
commit daa417ec17
46 files changed
+1334 -172

No files matched your search

+13 -3
View File
@@ -6,7 +6,13 @@ import { clearPartyRuntimeRegistry } from "./partyRuntimeRegistry";
import { resetPartyRuntimeClock } from "./partyRuntime";
import { usePartyStore } from "./partyStore";
import { useGameStore, type BossTestSession, type GameMode } from "./store";
import { bossTestingSourceDungeonId, dungeonCanEnter, dungeonDefinitionById, type DungeonId } from "./dungeonRegistry";
import {
bossTestingSourceDungeonId,
dungeonCanEnter,
dungeonDefinitionById,
prepareDungeonSessionDefinition,
type DungeonId,
} from "./dungeonRegistry";
import type { WorldSpawn } from "./dungeonTypes";
import type { GmReviewTarget } from "./gmContentReview";
import { shelvedDungeonSpawn } from "@shelvedDungeonSession";
@@ -39,6 +45,8 @@ export interface DungeonSessionOptions {
readonly encounterSnapshots?: readonly DungeonEncounterSnapshot[];
readonly runProgress?: DungeonRunProgress;
readonly legacyResume?: boolean;
/** Shared online activity id, or another stable fresh-run identity used by seeded variants. */
readonly runId?: string;
}
/**
@@ -51,7 +59,7 @@ export function activateDungeonSession(
difficultyId?: string,
options: DungeonSessionOptions = {},
): boolean {
const definition = dungeonDefinitionById(dungeonId);
let definition = dungeonDefinitionById(dungeonId);
const testingSource = bossTestingSourceDungeonId(dungeonId);
const testing = Boolean(testingSource && options.gmTestMode && options.bossTest?.sourceDungeonId === testingSource);
const dungeonSimulation = Boolean(options.dungeonSimulation && options.gmTestMode && dungeonRouteDefinition(dungeonId));
@@ -67,8 +75,10 @@ export function activateDungeonSession(
if (previousDefinition) releaseDungeonGltfCache(previousDefinition);
if (!options.preserveCharacter) {
useDungeonRunStore.getState().begin(dungeonId, difficultyId ?? definition.defaultDifficultyId,
options.runProgress, options.legacyResume, bossDifficulty);
options.runProgress, options.legacyResume, bossDifficulty, options.runId);
}
const runSeed = useDungeonRunStore.getState().progress?.id ?? options.runId ?? "catalog-template";
definition = prepareDungeonSessionDefinition(dungeonId, runSeed) ?? definition;
activateDungeonEncounterDefinitions(
dungeonId,
definition.encounters ?? [],