@dreadwood-types/types 0.1.363 → 0.1.365

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/attackableNpcs.d.ts.map +1 -1
  2. package/dist/attackableNpcs.js +2 -0
  3. package/dist/attackableNpcs.js.map +1 -1
  4. package/dist/blacksmithing.d.ts.map +1 -1
  5. package/dist/blacksmithing.js +4 -0
  6. package/dist/blacksmithing.js.map +1 -1
  7. package/dist/bossSignatures.d.ts +1 -1
  8. package/dist/bossSignatures.d.ts.map +1 -1
  9. package/dist/bossSignatures.js +6 -0
  10. package/dist/bossSignatures.js.map +1 -1
  11. package/dist/campKitchens.d.ts.map +1 -1
  12. package/dist/campKitchens.js +5 -0
  13. package/dist/campKitchens.js.map +1 -1
  14. package/dist/campTraders.d.ts.map +1 -1
  15. package/dist/campTraders.js +13 -0
  16. package/dist/campTraders.js.map +1 -1
  17. package/dist/constants.d.ts +2 -0
  18. package/dist/constants.d.ts.map +1 -1
  19. package/dist/constants.js.map +1 -1
  20. package/dist/expandedContracts.d.ts.map +1 -1
  21. package/dist/expandedContracts.js +2 -1
  22. package/dist/expandedContracts.js.map +1 -1
  23. package/dist/fishingReaches.d.ts.map +1 -1
  24. package/dist/fishingReaches.js +9 -0
  25. package/dist/fishingReaches.js.map +1 -1
  26. package/dist/index.d.ts +7 -0
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +7 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/legacy.d.ts +4 -0
  31. package/dist/legacy.d.ts.map +1 -1
  32. package/dist/legacy.js +4 -0
  33. package/dist/legacy.js.map +1 -1
  34. package/dist/marksmenRange.d.ts +219 -0
  35. package/dist/marksmenRange.d.ts.map +1 -0
  36. package/dist/marksmenRange.js +280 -0
  37. package/dist/marksmenRange.js.map +1 -0
  38. package/dist/quests.d.ts.map +1 -1
  39. package/dist/quests.js +41 -0
  40. package/dist/quests.js.map +1 -1
  41. package/dist/saltgrassDens.d.ts +110 -0
  42. package/dist/saltgrassDens.d.ts.map +1 -0
  43. package/dist/saltgrassDens.js +170 -0
  44. package/dist/saltgrassDens.js.map +1 -0
  45. package/dist/saltgrassDowns.d.ts +295 -0
  46. package/dist/saltgrassDowns.d.ts.map +1 -0
  47. package/dist/saltgrassDowns.js +304 -0
  48. package/dist/saltgrassDowns.js.map +1 -0
  49. package/dist/saltgrassDrove.d.ts +111 -0
  50. package/dist/saltgrassDrove.d.ts.map +1 -0
  51. package/dist/saltgrassDrove.js +97 -0
  52. package/dist/saltgrassDrove.js.map +1 -0
  53. package/dist/saltgrassQuestDef.d.ts +35 -0
  54. package/dist/saltgrassQuestDef.d.ts.map +1 -0
  55. package/dist/saltgrassQuestDef.js +252 -0
  56. package/dist/saltgrassQuestDef.js.map +1 -0
  57. package/dist/storyQuests.d.ts +3 -1
  58. package/dist/storyQuests.d.ts.map +1 -1
  59. package/dist/storyQuests.js +25 -0
  60. package/dist/storyQuests.js.map +1 -1
  61. package/dist/timberErrands.d.ts +33 -0
  62. package/dist/timberErrands.d.ts.map +1 -0
  63. package/dist/timberErrands.js +192 -0
  64. package/dist/timberErrands.js.map +1 -0
  65. package/dist/timberGoods.d.ts +43 -0
  66. package/dist/timberGoods.d.ts.map +1 -0
  67. package/dist/timberGoods.js +58 -0
  68. package/dist/timberGoods.js.map +1 -0
  69. package/dist/woodwork.d.ts.map +1 -1
  70. package/dist/woodwork.js +11 -0
  71. package/dist/woodwork.js.map +1 -1
  72. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saltgrassDowns.js","sourceRoot":"","sources":["../src/saltgrassDowns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * THE DROVE (Saltgrass Downs, 2026-10-18; saltgrassDowns.ts has the place). Six ewes out of a high pasture pen, walked along the drove road to the
3
+ * Riversend Fold in about three minutes, with wolves and rustlers harrying the flock. It reuses what the game already has:
4
+ *
5
+ * - Hog Wild's pet and Nye's led ewe: the animals follow YOU, on their own pace, by the trail you walk (so they can never be led through a wall);
6
+ * - the Brindlecross sheep fold: the destination, a fenced fold, here with a Count Board;
7
+ * - the Timber Convoy's server-driven tame creatures (`sheep` NPCs the server walks) and its ambush wolves (a creature that goes for the thing you
8
+ * escort, not for you, until you hit it).
9
+ *
10
+ * Rules (all pure here, the backend's saltgrassDrove.ts runs them):
11
+ * - a pen gate opens only when you have no flock out, are alive, are not in a fight and are NOT inside the cooldown after your last PAID drove;
12
+ * - the flock walks DROVE_SHEEP_SPEED tiles a second behind you, DROVE_GAP tiles of your trail apart. You walk faster (3.9, running 5.85) so you
13
+ * wait for them; a ewe more than DROVE_STRAY_TILES from you for DROVE_STRAY_MS bolts and is lost; a flock more than DROVE_ABANDON_TILES away, a
14
+ * teleport, a death, a logout or DROVE_MAX_MS ends the drove;
15
+ * - two ambushes cut in on the road (a wolf at the gorse edge, a rustler at the salt pans). An ambusher goes for the nearest ewe that no player is
16
+ * within DROVE_GUARD_TILES of; a ewe it stands beside for DROVE_HARRY_MS is lost. Hit it and it turns on you and lets the flock go;
17
+ * - the Count Board at the fold tallies the ewes at the fold and pays: coins and wool for each, a bonus for all six, a bonus inside the par time.
18
+ * Nothing in it heals. Rewards are placeholders for the balance pass.
19
+ */
20
+ import type { LanternWakePoint } from './lanternWake.js';
21
+ export declare const DROVE_SHEEP_COUNT = 6;
22
+ export declare const DROVE_SHEEP_KIND = "sheep";
23
+ export declare const DROVE_SHEEP_NAME = "Drove Ewe";
24
+ /** A flock's NPC ids are `<prefix><player id>-<n>`; an ambusher's `<ambush prefix><player id>-<n>`. */
25
+ export declare const DROVE_ID_PREFIX = "sgdr-";
26
+ export declare const DROVE_AMBUSH_ID_PREFIX = "sgam-";
27
+ /** Tiles a second the flock walks (a steady plod: the player's walk is 3.9). */
28
+ export declare const DROVE_SHEEP_SPEED = 2.2;
29
+ /** Trail tiles between one ewe and the next, and between the first ewe and you. */
30
+ export declare const DROVE_GAP = 1.4;
31
+ /** A ewe farther than this (tiles, straight line; the last ewe of a straight flock is 6 x DROVE_GAP behind you) from you for DROVE_STRAY_MS bolts; the first warning is at DROVE_WARN_TILES. */
32
+ export declare const DROVE_STRAY_TILES = 18;
33
+ export declare const DROVE_WARN_TILES = 11;
34
+ export declare const DROVE_STRAY_MS = 6000;
35
+ /** The whole drove ends (the flock scatters) when you are this far from every ewe, or this long after it began. */
36
+ export declare const DROVE_ABANDON_TILES = 40;
37
+ export declare const DROVE_MAX_MS: number;
38
+ /** A step of the trail longer than this is a teleport: the flock is left behind. */
39
+ export declare const DROVE_TELEPORT_TILES = 6;
40
+ /** The par time for the bonus (three minutes: the road is about 150 seconds of a flock's walk, so a clean drove with one fight just makes it), and the cooldown after a PAID drove (per character, kept in memory). */
41
+ export declare const DROVE_PAR_MS = 180000;
42
+ export declare const DROVE_PAY_COOLDOWN_MS: number;
43
+ /** Pen gates can be opened this far from the gate (tiles). */
44
+ export declare const DROVE_PEN_REACH = 4;
45
+ /** At the Count Board: the flock counts when it stands within this many tiles of the fold's box, and you within this many of the board. */
46
+ export declare const DROVE_FOLD_PAD = 5;
47
+ export declare const DROVE_BOARD_REACH = 6;
48
+ /** The road's six waypoints (the milestones), world tiles. */
49
+ export declare const DROVE_WAYPOINTS: readonly LanternWakePoint[];
50
+ /** The full road as a polyline (the pens, the out leg, the shore bend, the back leg to the fold), for the length and the marker spacing. */
51
+ export declare const DROVE_ROUTE: readonly LanternWakePoint[];
52
+ export declare function droveRouteLength(): number;
53
+ export type DroveAmbush = {
54
+ readonly id: 'wolf' | 'rustler';
55
+ readonly kind: 'wolf' | 'hijacker';
56
+ readonly name: string;
57
+ /** The flock's lead (or you) coming within `trigger` tiles of `at` springs it. */
58
+ readonly at: LanternWakePoint;
59
+ readonly trigger: number;
60
+ /** It appears this many tiles off, from the side `from` (a tile) so it comes out of the gorse or off the sand. */
61
+ readonly from: LanternWakePoint;
62
+ readonly level: readonly [number, number];
63
+ readonly maxHit: number;
64
+ readonly healthScale: number;
65
+ readonly notice: string;
66
+ /** Tiles a second it runs at the flock. */
67
+ readonly speed: number;
68
+ };
69
+ export declare const DROVE_AMBUSHES: readonly DroveAmbush[];
70
+ /** Tiles within which a ewe is "guarded": an ambusher ignores her while a player stands this close (it goes for an unguarded one). */
71
+ export declare const DROVE_GUARD_TILES = 3;
72
+ /** Milliseconds an ambusher must stand beside a ewe to make her bolt. */
73
+ export declare const DROVE_HARRY_MS = 3000;
74
+ /** An ambusher is taken off the road this long after it appeared even if nobody killed it. */
75
+ export declare const DROVE_AMBUSH_LIFE_MS = 120000;
76
+ export type DroveReward = {
77
+ coins: number;
78
+ wool: number;
79
+ explorerXp: number;
80
+ allSix: boolean;
81
+ underPar: boolean;
82
+ };
83
+ /** What the Count Board pays: per ewe at the fold, a bonus for the whole flock and one for beating the par time. No healing. */
84
+ export declare const DROVE_PAY: {
85
+ readonly perEwe: 60;
86
+ readonly allSixBonus: 80;
87
+ readonly parBonus: 60;
88
+ readonly woolPerEwe: 1;
89
+ readonly explorerXpPerEwe: 90;
90
+ };
91
+ export declare function droveReward(kept: number, elapsedMs: number): DroveReward;
92
+ /** The fewest ewes at the fold that count for The First Drove's step. */
93
+ export declare const DROVE_QUEST_MIN_KEPT = 4;
94
+ export declare const DROVE_TEXT: {
95
+ readonly started: "The pen gate swings open and six ewes trot out and fall in behind you. Keep to the drove road and walk them to the Riversend Fold. They follow at their own pace: do not outrun them.";
96
+ readonly already: "You already have a flock out. Walk them to the Riversend Fold, or let them go.";
97
+ readonly busy: "Not while you are fighting.";
98
+ readonly cooldown: "The pens are shut for a while: the flock you brought in is still being counted. Come back in a few minutes.";
99
+ readonly behind: "The flock is falling behind. Slow down and let them catch up.";
100
+ readonly bolted: (left: number) => string;
101
+ readonly scattered: "The flock scatters. The drove is over.";
102
+ readonly abandoned: "You have left the flock too far behind. The ewes wander off home. The drove is over.";
103
+ readonly timeout: "The drove has taken too long and the ewes have wandered off. The drove is over.";
104
+ readonly fold: "The flock is at the fold. Read the Count Board to be paid.";
105
+ readonly noFlock: "The board is chalked with the day's counts. You have no flock out: open a pen gate at the High Pasture Pens to begin a drove.";
106
+ readonly notYet: "Your flock is not at the fold yet. Bring them in through the east gate.";
107
+ readonly paid: (kept: number, r: DroveReward) => string;
108
+ readonly lostNone: "Not one ewe reached the fold. The count board stays blank.";
109
+ readonly farFromBoard: "You are too far from the board to read it.";
110
+ };
111
+ //# sourceMappingURL=saltgrassDrove.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saltgrassDrove.d.ts","sourceRoot":"","sources":["../src/saltgrassDrove.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ export const DROVE_SHEEP_COUNT = 6;
2
+ export const DROVE_SHEEP_KIND = 'sheep';
3
+ export const DROVE_SHEEP_NAME = 'Drove Ewe';
4
+ /** A flock's NPC ids are `<prefix><player id>-<n>`; an ambusher's `<ambush prefix><player id>-<n>`. */
5
+ export const DROVE_ID_PREFIX = 'sgdr-';
6
+ export const DROVE_AMBUSH_ID_PREFIX = 'sgam-';
7
+ /** Tiles a second the flock walks (a steady plod: the player's walk is 3.9). */
8
+ export const DROVE_SHEEP_SPEED = 2.2;
9
+ /** Trail tiles between one ewe and the next, and between the first ewe and you. */
10
+ export const DROVE_GAP = 1.4;
11
+ /** A ewe farther than this (tiles, straight line; the last ewe of a straight flock is 6 x DROVE_GAP behind you) from you for DROVE_STRAY_MS bolts; the first warning is at DROVE_WARN_TILES. */
12
+ export const DROVE_STRAY_TILES = 18;
13
+ export const DROVE_WARN_TILES = 11;
14
+ export const DROVE_STRAY_MS = 6_000;
15
+ /** The whole drove ends (the flock scatters) when you are this far from every ewe, or this long after it began. */
16
+ export const DROVE_ABANDON_TILES = 40;
17
+ export const DROVE_MAX_MS = 15 * 60_000;
18
+ /** A step of the trail longer than this is a teleport: the flock is left behind. */
19
+ export const DROVE_TELEPORT_TILES = 6;
20
+ /** The par time for the bonus (three minutes: the road is about 150 seconds of a flock's walk, so a clean drove with one fight just makes it), and the cooldown after a PAID drove (per character, kept in memory). */
21
+ export const DROVE_PAR_MS = 180_000;
22
+ export const DROVE_PAY_COOLDOWN_MS = 4 * 60_000;
23
+ /** Pen gates can be opened this far from the gate (tiles). */
24
+ export const DROVE_PEN_REACH = 4;
25
+ /** At the Count Board: the flock counts when it stands within this many tiles of the fold's box, and you within this many of the board. */
26
+ export const DROVE_FOLD_PAD = 5;
27
+ export const DROVE_BOARD_REACH = 6;
28
+ /** The road's six waypoints (the milestones), world tiles. */
29
+ export const DROVE_WAYPOINTS = [
30
+ [2021, 840],
31
+ [2068, 856],
32
+ [2108, 874],
33
+ [2134, 898],
34
+ [2044, 932],
35
+ [1957, 906],
36
+ ];
37
+ /** The full road as a polyline (the pens, the out leg, the shore bend, the back leg to the fold), for the length and the marker spacing. */
38
+ export const DROVE_ROUTE = [
39
+ [2021, 840], [2036, 848], [2052, 846], [2068, 856], [2086, 862], [2096, 872], [2108, 874], [2124, 884], [2134, 898],
40
+ [2128, 912], [2112, 920], [2090, 924], [2070, 930], [2044, 932], [2020, 934], [1994, 934], [1978, 926], [1964, 914], [1957, 906],
41
+ ];
42
+ export function droveRouteLength() {
43
+ let n = 0;
44
+ for (let i = 1; i < DROVE_ROUTE.length; i++)
45
+ n += Math.hypot(DROVE_ROUTE[i][0] - DROVE_ROUTE[i - 1][0], DROVE_ROUTE[i][1] - DROVE_ROUTE[i - 1][1]);
46
+ return n;
47
+ }
48
+ export const DROVE_AMBUSHES = [
49
+ {
50
+ id: 'wolf', kind: 'wolf', name: 'Downs Wolf', at: [2108, 874], trigger: 14, from: [2108, 858], level: [16, 18], maxHit: 14, healthScale: 1.2, speed: 4.2,
51
+ notice: 'A wolf cuts in from the gorse and goes for the flock! Get between it and the ewes, or hit it.',
52
+ },
53
+ {
54
+ id: 'rustler', kind: 'hijacker', name: 'Rustler', at: [2134, 898], trigger: 14, from: [2146, 906], level: [19, 20], maxHit: 15, healthScale: 1.1, speed: 3.6,
55
+ notice: 'A rustler in a patched coat slips off the sand with a hooked staff and goes for the stragglers! Stop him.',
56
+ },
57
+ ];
58
+ /** Tiles within which a ewe is "guarded": an ambusher ignores her while a player stands this close (it goes for an unguarded one). */
59
+ export const DROVE_GUARD_TILES = 3;
60
+ /** Milliseconds an ambusher must stand beside a ewe to make her bolt. */
61
+ export const DROVE_HARRY_MS = 3_000;
62
+ /** An ambusher is taken off the road this long after it appeared even if nobody killed it. */
63
+ export const DROVE_AMBUSH_LIFE_MS = 120_000;
64
+ /** What the Count Board pays: per ewe at the fold, a bonus for the whole flock and one for beating the par time. No healing. */
65
+ export const DROVE_PAY = { perEwe: 60, allSixBonus: 80, parBonus: 60, woolPerEwe: 1, explorerXpPerEwe: 90 };
66
+ export function droveReward(kept, elapsedMs) {
67
+ const k = Math.max(0, Math.min(DROVE_SHEEP_COUNT, Math.floor(kept)));
68
+ const allSix = k === DROVE_SHEEP_COUNT;
69
+ const underPar = k > 0 && elapsedMs <= DROVE_PAR_MS;
70
+ return {
71
+ coins: k * DROVE_PAY.perEwe + (allSix ? DROVE_PAY.allSixBonus : 0) + (underPar ? DROVE_PAY.parBonus : 0),
72
+ wool: k * DROVE_PAY.woolPerEwe,
73
+ explorerXp: k * DROVE_PAY.explorerXpPerEwe,
74
+ allSix,
75
+ underPar,
76
+ };
77
+ }
78
+ /** The fewest ewes at the fold that count for The First Drove's step. */
79
+ export const DROVE_QUEST_MIN_KEPT = 4;
80
+ export const DROVE_TEXT = {
81
+ started: 'The pen gate swings open and six ewes trot out and fall in behind you. Keep to the drove road and walk them to the Riversend Fold. They follow at their own pace: do not outrun them.',
82
+ already: 'You already have a flock out. Walk them to the Riversend Fold, or let them go.',
83
+ busy: 'Not while you are fighting.',
84
+ cooldown: 'The pens are shut for a while: the flock you brought in is still being counted. Come back in a few minutes.',
85
+ behind: 'The flock is falling behind. Slow down and let them catch up.',
86
+ bolted: (left) => (left > 0 ? `A ewe bolts into the gorse and is lost. ${left} left in the flock.` : 'The last ewe bolts. The drove is over.'),
87
+ scattered: 'The flock scatters. The drove is over.',
88
+ abandoned: 'You have left the flock too far behind. The ewes wander off home. The drove is over.',
89
+ timeout: 'The drove has taken too long and the ewes have wandered off. The drove is over.',
90
+ fold: 'The flock is at the fold. Read the Count Board to be paid.',
91
+ noFlock: 'The board is chalked with the day\'s counts. You have no flock out: open a pen gate at the High Pasture Pens to begin a drove.',
92
+ notYet: 'Your flock is not at the fold yet. Bring them in through the east gate.',
93
+ paid: (kept, r) => `${kept} of ${DROVE_SHEEP_COUNT} ewes reach the fold. The count board pays ${r.coins} coins and ${r.wool} wool${r.allSix ? ', with the whole-flock bonus' : ''}${r.underPar ? ' and the quick-drove bonus' : ''}.`,
94
+ lostNone: 'Not one ewe reached the fold. The count board stays blank.',
95
+ farFromBoard: 'You are too far from the board to read it.',
96
+ };
97
+ //# sourceMappingURL=saltgrassDrove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saltgrassDrove.js","sourceRoot":"","sources":["../src/saltgrassDrove.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Saltgrass Downs' five quests (2026-10-18; saltgrassDowns.ts, saltgrassDens.ts, saltgrassDrove.ts), levels 14-24, on mechanics the game already has:
3
+ *
4
+ * The First Drove (Head Drover Hob Marlowe, Combat 14): open a pen gate (a flock gathers), walk the flock to the Riversend Fold and read the Count Board
5
+ * with at least four ewes (the Drove, saltgrassDrove.ts), report.
6
+ * Fleece and Fang (Shepherd Tilly Ashworth, Combat 16): touch three torn fleeces along wolf country's south edge, put down five downs wolves, report.
7
+ * Salt for the Pot (Cook Dilys Ferris, Fishing 14): rake four sea salt from the pans (Foraging 9), land three tide snapper off the Eastshore pegs, hand over
8
+ * two grilled tide snapper cooked at a fire (the cook BUYS cooking: she pays the quest's coins, nothing in the camp sells food).
9
+ * The Rustlers' Cut (Bounty Steward Cass Roper, Combat 19): touch three cut hurdles at the rustlers' camp, put down four rustlers, report.
10
+ * Greyback (Lookout Jem Harker, Combat 22, after The First Drove): light the beacon basket, put down Greyback, whose Pounce is told a full turn ahead
11
+ * (step clear), report.
12
+ *
13
+ * Kept in their own file and entered in storyQuests.ts STORY_QUESTS. Types only from storyQuests.ts (no runtime import, so there is no cycle).
14
+ * Rewards are placeholders for the balance pass (James, 2026-10-12: balance last).
15
+ */
16
+ import type { StoryQuestDef, StoryNpcRef } from './storyQuests.js';
17
+ export declare const SG_DROVER: StoryNpcRef;
18
+ export declare const SG_SHEPHERD: StoryNpcRef;
19
+ export declare const SG_STEWARD: StoryNpcRef;
20
+ export declare const SG_LOOKOUT: StoryNpcRef;
21
+ export declare const SG_COOK: StoryNpcRef;
22
+ export declare const DROVE_COMBAT_LEVEL = 14;
23
+ export declare const FLEECE_COMBAT_LEVEL = 16;
24
+ export declare const SALT_FISHING_LEVEL = 14;
25
+ export declare const CUT_COMBAT_LEVEL = 19;
26
+ export declare const GREYBACK_COMBAT_LEVEL = 22;
27
+ export declare const SALT_RAKED = 4;
28
+ export declare const SNAPPER_CAUGHT = 3;
29
+ export declare const SNAPPER_COOKED = 2;
30
+ export declare const THE_FIRST_DROVE_QUEST: StoryQuestDef;
31
+ export declare const FLEECE_AND_FANG_QUEST: StoryQuestDef;
32
+ export declare const SALT_FOR_THE_POT_QUEST: StoryQuestDef;
33
+ export declare const THE_RUSTLERS_CUT_QUEST: StoryQuestDef;
34
+ export declare const GREYBACK_QUEST: StoryQuestDef;
35
+ //# sourceMappingURL=saltgrassQuestDef.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saltgrassQuestDef.d.ts","sourceRoot":"","sources":["../src/saltgrassQuestDef.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AASnE,eAAO,MAAM,SAAS,aAAmC,CAAC;AAC1D,eAAO,MAAM,WAAW,aAAqC,CAAC;AAC9D,eAAO,MAAM,UAAU,aAAoC,CAAC;AAC5D,eAAO,MAAM,UAAU,aAAoC,CAAC;AAC5D,eAAO,MAAM,OAAO,aAA2B,CAAC;AAEhD,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,cAAc,IAAI,CAAC;AAChC,eAAO,MAAM,cAAc,IAAI,CAAC;AAMhC,eAAO,MAAM,qBAAqB,EAAE,aAiDnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAiDnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,aA2CpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,aAgDpC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aA+C5B,CAAC"}
@@ -0,0 +1,252 @@
1
+ import { SALTGRASS_COOK_NAME, SALTGRASS_FOLK_NAMES, SG_BEACON, SG_CUT_ONE, SG_CUT_THREE, SG_CUT_TWO, SG_FLEECE_ONE, SG_FLEECE_THREE, SG_FLEECE_TWO, SG_PEN_ONE, SG_PEN_THREE, SG_PEN_TWO, SG_COUNT_BOARD, SG_PROP, } from './saltgrassDowns.js';
2
+ import { DROVE_QUEST_MIN_KEPT } from './saltgrassDrove.js';
3
+ import { GREYBACK_KIND, SG_DEN_SITES } from './saltgrassDens.js';
4
+ const ref = (name) => ({ kind: 'resident', name });
5
+ export const SG_DROVER = ref(SALTGRASS_FOLK_NAMES.drover);
6
+ export const SG_SHEPHERD = ref(SALTGRASS_FOLK_NAMES.shepherd);
7
+ export const SG_STEWARD = ref(SALTGRASS_FOLK_NAMES.steward);
8
+ export const SG_LOOKOUT = ref(SALTGRASS_FOLK_NAMES.lookout);
9
+ export const SG_COOK = ref(SALTGRASS_COOK_NAME);
10
+ export const DROVE_COMBAT_LEVEL = 14;
11
+ export const FLEECE_COMBAT_LEVEL = 16;
12
+ export const SALT_FISHING_LEVEL = 14;
13
+ export const CUT_COMBAT_LEVEL = 19;
14
+ export const GREYBACK_COMBAT_LEVEL = 22;
15
+ export const SALT_RAKED = 4;
16
+ export const SNAPPER_CAUGHT = 3;
17
+ export const SNAPPER_COOKED = 2;
18
+ const COMBAT_CHOICE = ['strength', 'archery', 'precision'];
19
+ const wolfCountry = SG_DEN_SITES.find((s) => s.id === 'wolf-country').box;
20
+ const rustlersCamp = SG_DEN_SITES.find((s) => s.id === 'rustlers-camp').box;
21
+ export const THE_FIRST_DROVE_QUEST = {
22
+ giver: SG_DROVER,
23
+ requires: {
24
+ combat: DROVE_COMBAT_LEVEL,
25
+ refuse: `The Downs are no place for a drover who cannot swing a stick at a wolf. Come back at Combat ${DROVE_COMBAT_LEVEL}.`,
26
+ },
27
+ offer: 'Six ewes from the high pasture have to be at the Riversend Fold before the wool buyer comes down the river. The lads who should walk them are in bed with the wolf bite. It is a plain job: open a pen gate, walk the flock along the drove road and read the count. Will you walk them for me?',
28
+ accept: `The pens are on the high pasture, north of the camp. Click a pen gate and six ewes will fall in behind you. Walk the drove road east to the shore and back west along the south to the fold: the milestone posts show the way. Keep close: a ewe left behind bolts. Wolves cut in at the gorse edge and rustlers work the salt pans. At least ${DROVE_QUEST_MIN_KEPT} must reach the fold. Read the Count Board there, then tell me.`,
29
+ decline: 'Then the wool buyer goes home empty and the sheep stay where they are. I will be at the fold.',
30
+ steps: [
31
+ {
32
+ kind: 'touch',
33
+ prop: SG_PROP.pen,
34
+ qty: 1,
35
+ label: 'Open a pen gate at the High Pasture Pens',
36
+ hint: 'The three pens stand on the high pasture north of Drovers\' Rest. Click any pen gate: six ewes come out and follow you.',
37
+ notices: {
38
+ [SG_PEN_ONE.style]: 'You lift the hurdle latch and six ewes crowd out of the west pen and fall in behind you. Walk them along the drove road to the Riversend Fold.',
39
+ [SG_PEN_TWO.style]: 'You lift the hurdle latch and six ewes crowd out of the middle pen and fall in behind you. Walk them along the drove road to the Riversend Fold.',
40
+ [SG_PEN_THREE.style]: 'You lift the hurdle latch and six ewes crowd out of the east pen and fall in behind you. Walk them along the drove road to the Riversend Fold.',
41
+ },
42
+ },
43
+ {
44
+ kind: 'touch',
45
+ prop: SG_PROP.board,
46
+ qty: 1,
47
+ label: `Bring at least ${DROVE_QUEST_MIN_KEPT} ewes to the Riversend Fold and read the Count Board`,
48
+ hint: 'Follow the drove road east to the shore bend and back west along the south to the fold across the river from Riversend\'s mill. Take the flock in at the east gate, then click the Count Board.',
49
+ notices: {
50
+ [SG_COUNT_BOARD.style]: 'The count is chalked and the wool buyer\'s clerk nods. The ewes are penned and Riversend has its wool.',
51
+ },
52
+ },
53
+ {
54
+ kind: 'talk',
55
+ npc: SG_DROVER,
56
+ label: 'Tell Head Drover Hob Marlowe the flock is in',
57
+ hint: "Hob Marlowe stands by the camp's long fold at Drovers' Rest.",
58
+ say: 'Counted and penned, and your boots only half wet. That is a drove. The lads will be sorry they missed it.',
59
+ },
60
+ ],
61
+ done: 'The flock is in and the wool is sold. Here is the head drover\'s fee, and a drover\'s share in the count.',
62
+ after: 'The pens are yours any time you want a drove. Keep them close and keep your stick handy.',
63
+ rewards: {
64
+ coins: 700,
65
+ xp: { explorer: 900 },
66
+ choiceXp: { qty: 900, skills: COMBAT_CHOICE },
67
+ },
68
+ };
69
+ export const FLEECE_AND_FANG_QUEST = {
70
+ giver: SG_SHEPHERD,
71
+ requires: {
72
+ combat: FLEECE_COMBAT_LEVEL,
73
+ refuse: `Wolf country eats shepherds. Come back at Combat ${FLEECE_COMBAT_LEVEL}.`,
74
+ },
75
+ offer: 'The wolves have been at the pens\' lambs again. Biscuit and I find a tuft of fleece on the gorse every morning, a little further down the road. I would like the three tufts looked at, so I know how close they come, and I would like fewer wolves.',
76
+ accept: 'Touch the three torn fleeces along the south edge of wolf country, north-east of the drove road, then put down five downs wolves. They hunt you only inside wolf country and give up when you leave it. Then tell me.',
77
+ decline: 'Then the wolves keep the lambs and I keep the dog. She says I am being stubborn.',
78
+ steps: [
79
+ {
80
+ kind: 'touch',
81
+ prop: SG_PROP.fleece,
82
+ qty: 3,
83
+ label: 'Look over the three torn fleeces on wolf country\'s south edge',
84
+ hint: 'Wolf country is the high ground north-east of the drove road, past milestone 2. The fleeces lie along its southern edge. Click each.',
85
+ notices: {
86
+ [SG_FLEECE_ONE.style]: 'A fleece torn clean off a ewe and dropped where the gorse begins. The wolf did not stop to eat.',
87
+ [SG_FLEECE_TWO.style]: 'Wool and a smear of blood on a stone, and a track as broad as your hand going back up the slope. A big one.',
88
+ [SG_FLEECE_THREE.style]: 'A third scrap, further east. They are working the whole edge of the high ground, one stretch a night.',
89
+ },
90
+ },
91
+ {
92
+ kind: 'kill',
93
+ npcKinds: ['wolf'],
94
+ qty: 5,
95
+ npcLabel: 'Downs Wolf',
96
+ label: 'Put down five downs wolves',
97
+ hint: 'Downs wolves roam wolf country (level 16 to 19). They hunt you inside it and give up at their leash. Defeat five there.',
98
+ inArea: wolfCountry,
99
+ },
100
+ {
101
+ kind: 'talk',
102
+ npc: SG_SHEPHERD,
103
+ label: 'Tell Shepherd Tilly Ashworth the fleeces are read',
104
+ hint: 'Tilly Ashworth stands between the pens on the high pasture, with her collie Biscuit.',
105
+ say: 'Three tufts, five fewer wolves and a dog who approves of you. That is a good morning\'s work. The lambs thank you, in their way.',
106
+ },
107
+ ],
108
+ done: 'The fleeces are read and the wolves are fewer. Here is the shepherd\'s fee, and a pelt for the road.',
109
+ after: 'Biscuit has not left your side since. She does that with people she thinks are worth the trouble.',
110
+ rewards: {
111
+ coins: 900,
112
+ items: [{ kind: 'wolfpelt', qty: 1 }],
113
+ xp: { explorer: 1100 },
114
+ choiceXp: { qty: 1100, skills: COMBAT_CHOICE },
115
+ },
116
+ };
117
+ export const SALT_FOR_THE_POT_QUEST = {
118
+ giver: SG_COOK,
119
+ requires: {
120
+ skill: { skill: 'fishing', level: SALT_FISHING_LEVEL },
121
+ refuse: `The Eastshore pegs want a steady hand with a small rod. Come back at Fishing ${SALT_FISHING_LEVEL}.`,
122
+ },
123
+ offer: 'The drovers say I cook a good pot and they pay me for it in wool. I would sooner be paid in salt and fish, and I will pay for both. Rake me salt off the pans, land me tide snapper off the Eastshore pegs and I will tell you what to do with them.',
124
+ accept: `Rake ${SALT_RAKED} sea salt from the pan rims on the shore (Foraging 9), land ${SNAPPER_CAUGHT} tide snapper off the pegs on the Eastshore (Fishing ${SALT_FISHING_LEVEL}, a small rod and crab meat), then cook ${SNAPPER_COOKED} of them at a fire or the stove and bring me ${SNAPPER_COOKED} grilled tide snapper. I do not sell food; I buy it.`,
125
+ decline: 'Then the pot stays plain. The drovers will not complain: they never do.',
126
+ steps: [
127
+ {
128
+ kind: 'gather',
129
+ items: ['seasalt'],
130
+ qty: SALT_RAKED,
131
+ label: `Rake ${SALT_RAKED} sea salt from the salt pans`,
132
+ hint: 'The Salt Pans lie on the shore east of the drove road. Rake the pan rims (Foraging 9).',
133
+ at: { x: 2133, z: 872, label: 'The Salt Pans' },
134
+ },
135
+ {
136
+ kind: 'catch',
137
+ fish: ['rawtidesnapper'],
138
+ qty: SNAPPER_CAUGHT,
139
+ label: `Land ${SNAPPER_CAUGHT} tide snapper off the Eastshore pegs`,
140
+ hint: 'Three timber pegs stand on the sand south of the shore flats (Fishing 14, a small rod and crab meat).',
141
+ },
142
+ {
143
+ kind: 'deliver',
144
+ npc: SG_COOK,
145
+ items: [{ kinds: ['cookedtidesnapper'], qty: SNAPPER_COOKED, label: 'Grilled tide snapper' }],
146
+ label: `Bring Cook Dilys Ferris ${SNAPPER_COOKED} grilled tide snapper`,
147
+ hint: 'Cook the snapper at the camp fire or the stove at Drovers\' Rest, then hand them to Dilys Ferris.',
148
+ say: 'Golden and not a bone out of place. Salt does that. The drovers will think I have been to the city.',
149
+ short: `${SNAPPER_COOKED} grilled tide snapper, cooked at a fire or the stove.`,
150
+ },
151
+ ],
152
+ done: 'The pot is salted and the drovers are fed. Here is the cook\'s pay, and a word with the wool buyer.',
153
+ after: 'There is a little left of the salt. I save it for the first fish of the day.',
154
+ rewards: {
155
+ coins: 800,
156
+ xp: { fishing: 1200, foraging: 900, cooking: 700 },
157
+ },
158
+ };
159
+ export const THE_RUSTLERS_CUT_QUEST = {
160
+ giver: SG_STEWARD,
161
+ requires: {
162
+ combat: CUT_COMBAT_LEVEL,
163
+ refuse: `The rustlers carry slings and hooked staves and they are not shy. Come back at Combat ${CUT_COMBAT_LEVEL}.`,
164
+ },
165
+ offer: 'Somebody has been cutting the hurdles on the south side of the road and driving off what runs out. The tracks lead to a camp under the ridge. I want the cut hurdles seen, so I can show the drovers it was not them, and I want the rustlers taught that the Downs are watched.',
166
+ accept: 'Touch the three cut hurdles at the edge of the rustlers\' camp, south-east of the road, then put down four rustlers. They hunt you inside their camp and give up at its edge. Then tell me.',
167
+ decline: 'Then the hurdles stay cut and the sheep keep running. I will keep the board.',
168
+ steps: [
169
+ {
170
+ kind: 'touch',
171
+ prop: SG_PROP.cut,
172
+ qty: 3,
173
+ label: 'Look over the three cut hurdles at the rustlers\' camp',
174
+ hint: 'The camp lies in the lee of the south ridge, south-east of the drove road. The cut hurdles stand along its north edge. Click each.',
175
+ notices: {
176
+ [SG_CUT_ONE.style]: 'A hurdle cut at the ties with a good knife. Not a gap in the whole fence, just the one hurdle that runs out onto the road.',
177
+ [SG_CUT_TWO.style]: 'Another, and a boot print with a patched sole. Whoever it was has done this a dozen times.',
178
+ [SG_CUT_THREE.style]: 'The last, further east. A pair of fresh ruts: they have a hand cart. They are not stealing one or two.',
179
+ },
180
+ },
181
+ {
182
+ kind: 'kill',
183
+ npcKinds: ['hijacker'],
184
+ qty: 4,
185
+ npcLabel: 'Rustler',
186
+ label: 'Put down four rustlers',
187
+ hint: 'Rustlers (level 19 to 21) hold the camp in the lee of the south ridge. Defeat four there.',
188
+ inArea: rustlersCamp,
189
+ },
190
+ {
191
+ kind: 'talk',
192
+ npc: SG_STEWARD,
193
+ label: 'Tell Bounty Steward Cass Roper the camp is quiet',
194
+ hint: "Cass Roper keeps the Bounty Board at Drovers' Rest.",
195
+ say: 'Three cut hurdles, four rustlers and no more gaps in my fences. The drovers will want to buy you a drink, which is a mercy, because I will not.',
196
+ },
197
+ ],
198
+ done: 'The camp is quiet and the fences are whole. Here is the steward\'s fee, and a mark on the board for your name.',
199
+ after: 'They will be back, they always are. But they will remember the Downs are watched.',
200
+ rewards: {
201
+ coins: 1200,
202
+ xp: { explorer: 1400 },
203
+ choiceXp: { qty: 1400, skills: COMBAT_CHOICE },
204
+ },
205
+ };
206
+ export const GREYBACK_QUEST = {
207
+ giver: SG_LOOKOUT,
208
+ requires: {
209
+ combat: GREYBACK_COMBAT_LEVEL,
210
+ quest: 'theFirstDrove',
211
+ refuse: `Greyback is no wolf for a stranger. Walk a drove for Hob Marlowe first, and come back at Combat ${GREYBACK_COMBAT_LEVEL}.`,
212
+ },
213
+ offer: 'From up here I have watched one grey wolf for three summers: a big scarred brute with a torn ear, who leads the others down off the knoll every dusk. The drovers call him Greyback. If I light the beacon he stays up there; if you put him down he stays down for good. Will you do it?',
214
+ accept: 'Light the beacon basket on the Lookout Mound so the camp knows you are going, then go up to Greyback\'s Den on the stony knoll in the north-west of wolf country and put him down. He is passive until struck. Every fourth blow he crouches and a ring closes round him, told a full turn ahead: step out of the ring and his Pounce goes wide. Then tell me.',
215
+ decline: 'Then he walks the Downs another dusk. I will keep the basket dry.',
216
+ steps: [
217
+ {
218
+ kind: 'touch',
219
+ prop: SG_PROP.beacon,
220
+ qty: 1,
221
+ label: 'Light the beacon basket on the Lookout Mound',
222
+ hint: 'The Lookout Mound stands north of the drove road, west of the gorse. Click the basket on its top.',
223
+ notices: {
224
+ [SG_BEACON.style]: 'You touch a flame to the tarred rope. The basket roars up and the whole camp will see it. Greyback is up on the knoll to the north-east. Take your time.',
225
+ },
226
+ },
227
+ {
228
+ kind: 'kill',
229
+ npcKinds: [GREYBACK_KIND],
230
+ qty: 1,
231
+ npcLabel: 'Greyback',
232
+ label: 'Put down Greyback',
233
+ hint: 'Greyback lairs in his Den on the stony knoll, the north-west corner of wolf country. Passive until struck. His Pounce is told a full turn ahead: step out of the ring.',
234
+ },
235
+ {
236
+ kind: 'talk',
237
+ npc: SG_LOOKOUT,
238
+ label: 'Tell Lookout Jem Harker Greyback is down',
239
+ hint: 'Jem Harker stands on top of the Lookout Mound.',
240
+ say: 'I saw the ring and I saw you step out of it. He is down, and the Downs are quiet for the first time in three summers. I will put the beacon out.',
241
+ },
242
+ ],
243
+ done: 'Greyback is down and the Downs are quiet. Here is the lookout\'s thanks, and the camp\'s.',
244
+ after: 'The beacon is out and the basket is dry. If anything comes down off the knoll, you will be the first I tell.',
245
+ rewards: {
246
+ coins: 1600,
247
+ items: [{ kind: 'wolfpelt', qty: 1 }],
248
+ xp: { explorer: 1800 },
249
+ choiceXp: { qty: 1800, skills: COMBAT_CHOICE },
250
+ },
251
+ };
252
+ //# sourceMappingURL=saltgrassQuestDef.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saltgrassQuestDef.js","sourceRoot":"","sources":["../src/saltgrassQuestDef.ts"],"names":[],"mappings":"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"}