/** * The Dreadwoods Hoard Chest (James, 2026-09-28: "think of the Booty Bay * chest event in World of Warcraft, it gets everyone there and battling for * the loot"). Every few hours a chest surfaces at one of a handful of * clearings deep in the woods, announced to everyone online. It stays sealed * for HOARD_CHEST_WARNING_MS so people can get there, then anyone may pry it * open: HOARD_CHEST_OPEN_MS of standing still at it, broken by a hit, a step * or a swing, and the first to finish takes the lot. The woods are PvP, so * that is where the fight is. * * The server runs it (dreadwoods-backend src/hoardChest.ts); the client draws * the chest (entity kind HOARD_CHEST_KIND, style sealed/ready), the opener's * bar (`channel` / `channel_end`) and the announcements (notice style * 'event'). */ export declare const HOARD_CHEST_KIND: "hoardchest"; /** The chest's look: sealed during the warning (chained, a red seal), then ready to pry. */ export type HoardChestStyle = 'sealed' | 'ready'; export type HoardChestSpot = { id: string; /** What the announcement calls the place. */ name: string; /** Where it is, for the announcement: "north of the Blood Lake". */ where: string; x: number; z: number; /** Relative chance of this spot being picked. */ weight: number; }; /** * Each is the centre of a 9 x 9 clearing of standable ground inside the * Dreadwoods, outside every lair and far from every gate (the dragon's * doorstep excepted, and rare). Checked by backend scripts/hoard-chest-smoke.ts. */ export declare const HOARD_CHEST_SPOTS: readonly HoardChestSpot[]; /** How long between one chest going and the next surfacing, rolled evenly. */ export declare const HOARD_CHEST_EVERY_MS: { readonly min: number; readonly max: number; }; /** Sealed after the announcement, so players have time to get there. */ export declare const HOARD_CHEST_WARNING_MS: number; /** Standing at the chest this long, unbroken, opens it. */ export declare const HOARD_CHEST_OPEN_MS = 8000; /** How close you must stand to pry at it (Chebyshev tiles). */ export declare const HOARD_CHEST_REACH = 1; /** Unopened this long after it unseals, it sinks back into the earth. */ export declare const HOARD_CHEST_LIFETIME_MS: number; export declare function hoardChestSpot(id: string): HoardChestSpot | undefined; /** A spot for `roll` in [0, 1), by weight. */ export declare function pickHoardChestSpot(roll: number): HoardChestSpot; //# sourceMappingURL=hoardChest.d.ts.map