@dreadwood-types/types 0.1.268 → 0.1.270
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.
- package/dist/attackableNpcs.d.ts.map +1 -1
- package/dist/attackableNpcs.js +2 -0
- package/dist/attackableNpcs.js.map +1 -1
- package/dist/bossSignatures.d.ts +1 -1
- package/dist/bossSignatures.d.ts.map +1 -1
- package/dist/bossSignatures.js +6 -0
- package/dist/bossSignatures.js.map +1 -1
- package/dist/calvertonExtension.d.ts +217 -0
- package/dist/calvertonExtension.d.ts.map +1 -0
- package/dist/calvertonExtension.js +334 -0
- package/dist/calvertonExtension.js.map +1 -0
- package/dist/calvertonQuestDef.d.ts +64 -0
- package/dist/calvertonQuestDef.d.ts.map +1 -0
- package/dist/calvertonQuestDef.js +354 -0
- package/dist/calvertonQuestDef.js.map +1 -0
- package/dist/constants.d.ts +4 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/expandedContracts.d.ts.map +1 -1
- package/dist/expandedContracts.js +4 -1
- package/dist/expandedContracts.js.map +1 -1
- package/dist/explorerLedger.d.ts.map +1 -1
- package/dist/explorerLedger.js +1 -0
- package/dist/explorerLedger.js.map +1 -1
- package/dist/gravewatch.d.ts +103 -0
- package/dist/gravewatch.d.ts.map +1 -0
- package/dist/gravewatch.js +80 -0
- package/dist/gravewatch.js.map +1 -0
- package/dist/gravewatchQuest.d.ts +121 -0
- package/dist/gravewatchQuest.d.ts.map +1 -0
- package/dist/gravewatchQuest.js +96 -0
- package/dist/gravewatchQuest.js.map +1 -0
- package/dist/gravewatchQuestDefs.d.ts +11 -0
- package/dist/gravewatchQuestDefs.d.ts.map +1 -0
- package/dist/gravewatchQuestDefs.js +198 -0
- package/dist/gravewatchQuestDefs.js.map +1 -0
- package/dist/groundItems.d.ts.map +1 -1
- package/dist/groundItems.js +1 -0
- package/dist/groundItems.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/legacy.d.ts +2 -0
- package/dist/legacy.d.ts.map +1 -1
- package/dist/legacy.js +2 -0
- package/dist/legacy.js.map +1 -1
- package/dist/quests.d.ts.map +1 -1
- package/dist/quests.js +80 -0
- package/dist/quests.js.map +1 -1
- package/dist/safePockets.d.ts.map +1 -1
- package/dist/safePockets.js +8 -0
- package/dist/safePockets.js.map +1 -1
- package/dist/sparringYard.d.ts +10 -2
- package/dist/sparringYard.d.ts.map +1 -1
- package/dist/sparringYard.js +14 -7
- package/dist/sparringYard.js.map +1 -1
- package/dist/storyQuests.d.ts +1 -1
- package/dist/storyQuests.d.ts.map +1 -1
- package/dist/storyQuests.js +42 -0
- package/dist/storyQuests.js.map +1 -1
- package/package.json +43 -43
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
import { INN_BREAD_PRICE } from './tavern.js';
|
|
2
|
+
export const CALVERTON_YARD_NAME = "Wardens' Yard";
|
|
3
|
+
export const CALVERTON_SMITHS_NAME = "Smiths' Row";
|
|
4
|
+
export const CALVERTON_MARKET_NAME = 'Lakeside Market';
|
|
5
|
+
/** The claimed ground of each district (the whole box is cleared of scatter and eased into the land). */
|
|
6
|
+
export const CALVERTON_YARD_BOX = { minX: 714, maxX: 746, minZ: 636, maxZ: 660 };
|
|
7
|
+
export const CALVERTON_SMITHS_BOX = { minX: 714, maxX: 738, minZ: 674, maxZ: 692 };
|
|
8
|
+
export const CALVERTON_MARKET_BOX = { minX: 802, maxX: 850, minZ: 692, maxZ: 707 };
|
|
9
|
+
export const CALVERTON_BOXES = [
|
|
10
|
+
{ id: 'wardens-yard', name: CALVERTON_YARD_NAME, box: CALVERTON_YARD_BOX },
|
|
11
|
+
{ id: 'smiths-row', name: CALVERTON_SMITHS_NAME, box: CALVERTON_SMITHS_BOX },
|
|
12
|
+
{ id: 'lakeside-market', name: CALVERTON_MARKET_NAME, box: CALVERTON_MARKET_BOX },
|
|
13
|
+
];
|
|
14
|
+
/** Each district is levelled flat at the town's own height (3) and eased into the land over this many tiles. */
|
|
15
|
+
export const CALVERTON_GROUND_HEIGHT = 3;
|
|
16
|
+
export const CALVERTON_EASE = 3;
|
|
17
|
+
/** The discovery zones (types expandedContracts.ts INSERTED_DISCOVERY_ZONES): the three districts, each a place on the paper map. */
|
|
18
|
+
export const CALVERTON_DISCOVERY_ZONES = CALVERTON_BOXES.map((b) => ({
|
|
19
|
+
id: b.id,
|
|
20
|
+
label: b.name,
|
|
21
|
+
coordinateFrame: 'world',
|
|
22
|
+
...b.box,
|
|
23
|
+
}));
|
|
24
|
+
/** The paper-map labels. */
|
|
25
|
+
export const CALVERTON_MAP_LABELS = [
|
|
26
|
+
{ x: 730, z: 648, label: CALVERTON_YARD_NAME },
|
|
27
|
+
{ x: 726, z: 683, label: CALVERTON_SMITHS_NAME },
|
|
28
|
+
{ x: 826, z: 700, label: CALVERTON_MARKET_NAME },
|
|
29
|
+
];
|
|
30
|
+
export function inCvBox(x, z, b, pad = 0) {
|
|
31
|
+
return x >= b.minX - pad && x <= b.maxX + pad && z >= b.minZ - pad && z <= b.maxZ + pad;
|
|
32
|
+
}
|
|
33
|
+
/** Which district a tile is in (with `pad` tiles of margin), or null. */
|
|
34
|
+
export function calvertonDistrictAt(x, z, pad = 0) {
|
|
35
|
+
return CALVERTON_BOXES.find((b) => inCvBox(x, z, b.box, pad)) ?? null;
|
|
36
|
+
}
|
|
37
|
+
/** The gate road (Dreadwoods east gate to Calverton's west gate) runs along these rows; the yard and the row open onto it. */
|
|
38
|
+
export const CALVERTON_GATE_ROAD = { minZ: 664, maxZ: 668 };
|
|
39
|
+
/** Where each district is entered from the road, and where a player is told to stand. */
|
|
40
|
+
export const CALVERTON_STANDS = {
|
|
41
|
+
yardGate: { x: 730, z: 661 },
|
|
42
|
+
smithsLane: { x: 726, z: 669 },
|
|
43
|
+
marketLane: { x: 800, z: 699 },
|
|
44
|
+
};
|
|
45
|
+
/** Worn lanes (width, polyline): the yard's gate lane, the row's lane and cross lane, the market's connection to the gate road. */
|
|
46
|
+
export const CALVERTON_PATHS = [
|
|
47
|
+
{ id: 'yard-lane', surface: 'dirt', w: 3, pts: [[730, 663], [730, 656], [730, 646]] },
|
|
48
|
+
{ id: 'yard-plaza', surface: 'dirt', w: 3, pts: [[720, 646], [738, 646]] },
|
|
49
|
+
{ id: 'yard-ground', surface: 'dirt', w: 9, pts: [[722, 652], [723, 652]] },
|
|
50
|
+
{ id: 'yard-range', surface: 'dirt', w: 9, pts: [[739, 653], [740, 653]] },
|
|
51
|
+
{ id: 'row-lane', surface: 'dirt', w: 3, pts: [[726, 669], [726, 686]] },
|
|
52
|
+
{ id: 'row-cross', surface: 'dirt', w: 3, pts: [[716, 685], [734, 685]] },
|
|
53
|
+
{ id: 'row-forge', surface: 'stone', w: 11, pts: [[720, 680], [721, 680]] },
|
|
54
|
+
{ id: 'market-lane', surface: 'path', w: 3, pts: [[799, 699], [812, 699]] },
|
|
55
|
+
{ id: 'market-floor', surface: 'path', w: 11, pts: [[810, 700], [842, 700]] },
|
|
56
|
+
];
|
|
57
|
+
/** The kit models are the Hope Town ones (CAPITAL_BUILDING_MODELS); the id prefix `cv-` keeps the cleanup and the tests able to find them. */
|
|
58
|
+
export const CALVERTON_PIECES = [
|
|
59
|
+
// The Wardens' Yard.
|
|
60
|
+
{ id: 'cv-yard-barracks', model: 'towntrainingstore5x3', facing: 's', x: 718, z: 640 },
|
|
61
|
+
{ id: 'cv-yard-hall', model: 'townmarkethall7x5', facing: 's', x: 738, z: 641 },
|
|
62
|
+
{ id: 'cv-yard-stall', model: 'towntradersstall3x3', facing: 's', x: 726, z: 641 },
|
|
63
|
+
{ id: 'cv-yard-banner-w', model: 'townbannerpost1x1', facing: 's', x: 727, z: 659 },
|
|
64
|
+
{ id: 'cv-yard-banner-e', model: 'townbannerpost1x1', facing: 's', x: 733, z: 659 },
|
|
65
|
+
{ id: 'cv-yard-lantern-1', model: 'townlantern1x1', facing: 's', x: 728, z: 655 },
|
|
66
|
+
{ id: 'cv-yard-lantern-2', model: 'townlantern1x1', facing: 's', x: 732, z: 655 },
|
|
67
|
+
{ id: 'cv-yard-lantern-3', model: 'townlantern1x1', facing: 's', x: 728, z: 647 },
|
|
68
|
+
{ id: 'cv-yard-bench', model: 'townrestbench3x1', facing: 's', x: 734, z: 649 },
|
|
69
|
+
// Smiths' Row.
|
|
70
|
+
{ id: 'cv-row-smithy', model: 'bcsmithy', facing: 's', x: 721, z: 678 },
|
|
71
|
+
{ id: 'cv-row-quench', model: 'hbtrough', facing: 's', x: 720, z: 684 },
|
|
72
|
+
{ id: 'cv-row-workshop', model: 'townworkshop5x3', facing: 'w', x: 734, z: 679 },
|
|
73
|
+
{ id: 'cv-row-cookhouse', model: 'towncookhouse5x3', facing: 's', x: 722, z: 691 },
|
|
74
|
+
{ id: 'cv-row-racks', model: 'toolrack', facing: 's', x: 736, z: 683 },
|
|
75
|
+
{ id: 'cv-row-logs', model: 'birchlogpile', facing: 's', x: 736, z: 689 },
|
|
76
|
+
{ id: 'cv-row-lantern-1', model: 'townlantern1x1', facing: 's', x: 724, z: 675 },
|
|
77
|
+
{ id: 'cv-row-lantern-2', model: 'townlantern1x1', facing: 's', x: 728, z: 675 },
|
|
78
|
+
{ id: 'cv-row-lantern-3', model: 'townlantern1x1', facing: 's', x: 728, z: 686 },
|
|
79
|
+
// The Lakeside Market.
|
|
80
|
+
{ id: 'cv-market-hall', model: 'townmarkethall7x5', facing: 's', x: 826, z: 697 },
|
|
81
|
+
{ id: 'cv-market-stall-1', model: 'towntradersstall3x3', facing: 's', x: 811, z: 697 },
|
|
82
|
+
{ id: 'cv-market-stall-2', model: 'towntradersstall3x3', facing: 's', x: 817, z: 697 },
|
|
83
|
+
{ id: 'cv-market-stall-3', model: 'towntradersstall3x3', facing: 's', x: 835, z: 697 },
|
|
84
|
+
{ id: 'cv-market-stall-4', model: 'towntradersstall3x3', facing: 's', x: 841, z: 697 },
|
|
85
|
+
{ id: 'cv-market-fishstall', model: 'towntradersstall3x3', facing: 's', x: 846, z: 703 },
|
|
86
|
+
{ id: 'cv-market-fair-red', model: 'fairstallred', facing: 's', x: 810, z: 705 },
|
|
87
|
+
{ id: 'cv-market-fair-blue', model: 'fairstallblue', facing: 's', x: 816, z: 705 },
|
|
88
|
+
{ id: 'cv-market-fair-green', model: 'fairstallgreen', facing: 's', x: 836, z: 705 },
|
|
89
|
+
{ id: 'cv-market-well', model: 'townwell1x1', facing: 's', x: 826, z: 703 },
|
|
90
|
+
{ id: 'cv-market-planter-1', model: 'townplanter1x1', facing: 's', x: 822, z: 694 },
|
|
91
|
+
{ id: 'cv-market-planter-2', model: 'townplanter1x1', facing: 's', x: 830, z: 694 },
|
|
92
|
+
{ id: 'cv-market-wagon-1', model: 'merchantwagon', facing: 's', x: 840, z: 706 },
|
|
93
|
+
{ id: 'cv-market-wagon-2', model: 'merchantwagon', facing: 's', x: 844, z: 707 },
|
|
94
|
+
{ id: 'cv-market-crates', model: 'hbcrates', facing: 's', x: 838, z: 704 },
|
|
95
|
+
{ id: 'cv-market-netrack', model: 'hbnetrack', facing: 's', x: 806, z: 706 },
|
|
96
|
+
{ id: 'cv-market-cages', model: 'evcrabcages', facing: 's', x: 808, z: 703 },
|
|
97
|
+
{ id: 'cv-market-bench-1', model: 'townrestbench3x1', facing: 's', x: 820, z: 701 },
|
|
98
|
+
{ id: 'cv-market-bench-2', model: 'townrestbench3x1', facing: 's', x: 832, z: 701 },
|
|
99
|
+
{ id: 'cv-market-lantern-1', model: 'townlantern1x1', facing: 's', x: 805, z: 695 },
|
|
100
|
+
{ id: 'cv-market-lantern-2', model: 'townlantern1x1', facing: 's', x: 820, z: 695 },
|
|
101
|
+
{ id: 'cv-market-lantern-3', model: 'townlantern1x1', facing: 's', x: 832, z: 695 },
|
|
102
|
+
{ id: 'cv-market-lantern-4', model: 'townlantern1x1', facing: 's', x: 847, z: 695 },
|
|
103
|
+
{ id: 'cv-market-lantern-5', model: 'townlantern1x1', facing: 's', x: 805, z: 701 },
|
|
104
|
+
{ id: 'cv-market-lantern-6', model: 'townlantern1x1', facing: 's', x: 849, z: 700 },
|
|
105
|
+
];
|
|
106
|
+
/**
|
|
107
|
+
* The working stations (real entities: the skills' own kinds). `style` is '' unless the kind wants one. Dummies and butts are `yardprop`
|
|
108
|
+
* styles `dummy` and `butt`; the boards are `bountyboard` style `wall-s`.
|
|
109
|
+
*/
|
|
110
|
+
export const CALVERTON_STATIONS = [
|
|
111
|
+
// Wardens' Yard: training.
|
|
112
|
+
...[[718, 650], [722, 650], [726, 650], [718, 654], [722, 654], [726, 654]].map(([x, z], i) => ({ id: `cv-dummy-${i + 1}`, kind: 'yardprop', style: 'dummy', x: x, z: z })),
|
|
113
|
+
{ id: 'cv-butt-1', kind: 'yardprop', style: 'butt', x: 735, z: 656 },
|
|
114
|
+
{ id: 'cv-butt-2', kind: 'yardprop', style: 'butt', x: 739, z: 656 },
|
|
115
|
+
{ id: 'cv-butt-3', kind: 'yardprop', style: 'butt', x: 743, z: 656 },
|
|
116
|
+
{ id: 'cv-yard-board', kind: 'bountyboard', style: 'wall-s', x: 733, z: 644 },
|
|
117
|
+
{ id: 'cv-yard-fire', kind: 'campfire', style: '', x: 733, z: 647 },
|
|
118
|
+
// Smiths' Row.
|
|
119
|
+
{ id: 'cv-furnace-1', kind: 'furnace', style: '', x: 717, z: 682 },
|
|
120
|
+
{ id: 'cv-furnace-2', kind: 'furnace', style: '', x: 724, z: 682 },
|
|
121
|
+
{ id: 'cv-anvil-1', kind: 'anvil', style: '', x: 717, z: 684 },
|
|
122
|
+
{ id: 'cv-anvil-2', kind: 'anvil', style: '', x: 724, z: 684 },
|
|
123
|
+
{ id: 'cv-bench-1', kind: 'workbench', style: 'face0', x: 730, z: 683 },
|
|
124
|
+
{ id: 'cv-bench-2', kind: 'workbench', style: 'face0', x: 730, z: 687 },
|
|
125
|
+
{ id: 'cv-stove-1', kind: 'stove', style: '', x: 721, z: 688 },
|
|
126
|
+
{ id: 'cv-stove-2', kind: 'stove', style: '', x: 723, z: 688 },
|
|
127
|
+
{ id: 'cv-row-fire', kind: 'campfire', style: '', x: 727, z: 690 },
|
|
128
|
+
{ id: 'cv-mound', kind: 'charcoalmound', style: '', x: 736, z: 686 },
|
|
129
|
+
// Inside the walls: the empty kitchen shell gets its range.
|
|
130
|
+
{ id: 'cv-kitchen-stove', kind: 'stove', style: '', x: 816, z: 676 },
|
|
131
|
+
];
|
|
132
|
+
/** The archery drill's marks: a butt is shot from 6 tiles north of it (types archeryFiringPosition), so the lines and the bow rack sit there. */
|
|
133
|
+
export const CALVERTON_BUTT_IDS = ['cv-butt-1', 'cv-butt-2', 'cv-butt-3'];
|
|
134
|
+
export const CALVERTON_BUTT_ID_PREFIX = 'cv-butt-';
|
|
135
|
+
export const CALVERTON_BUTT_FIRING_Z = 650;
|
|
136
|
+
export const CALVERTON_BUTT_KIT = [
|
|
137
|
+
...[735, 739, 743].flatMap((x, i) => [
|
|
138
|
+
{ id: `cv-butt-backstop-${i + 1}`, kind: 'yardprop', style: 'trainingbackstop', x, z: 657 },
|
|
139
|
+
{ id: `cv-butt-line-${i + 1}`, kind: 'flowers', style: 'trainingline', x, z: 650 },
|
|
140
|
+
]),
|
|
141
|
+
{ id: 'cv-butt-bows', kind: 'yardprop', style: 'chainedbows', x: 745, z: 650 },
|
|
142
|
+
{ id: 'cv-yard-rack', kind: 'yardprop', style: 'trainingrack', x: 716, z: 648 },
|
|
143
|
+
{ id: 'cv-yard-water', kind: 'yardprop', style: 'trainingwater', x: 716, z: 650 },
|
|
144
|
+
];
|
|
145
|
+
/** Fence runs round the yard (kit `townfence3x1` modules and `townfencebit1x1` fillers), with the gate gap on the south run. */
|
|
146
|
+
export const CALVERTON_YARD_FENCE = [
|
|
147
|
+
{ id: 'cv-yard-fence-n', axis: 'x', at: 636, from: 714, to: 746 },
|
|
148
|
+
{ id: 'cv-yard-fence-s', axis: 'x', at: 660, from: 714, to: 746, gap: [728, 732] },
|
|
149
|
+
{ id: 'cv-yard-fence-w', axis: 'z', at: 714, from: 637, to: 659 },
|
|
150
|
+
{ id: 'cv-yard-fence-e', axis: 'z', at: 746, from: 637, to: 659 },
|
|
151
|
+
];
|
|
152
|
+
/** The signposts: where each district leaves the road. */
|
|
153
|
+
export const CALVERTON_SIGNS = [
|
|
154
|
+
{ id: 'cv-sign-yard', x: 733, z: 662, style: "fingerpost-Wardens' Yard|Calverton|Dreadwoods East Gate" },
|
|
155
|
+
{ id: 'cv-sign-row', x: 728, z: 670, style: "fingerpost-Smiths' Row|Calverton|Dreadwoods East Gate" },
|
|
156
|
+
{ id: 'cv-sign-market', x: 801, z: 697, style: 'fingerpost-Lakeside Market|Calverton Bridge|Calverton' },
|
|
157
|
+
];
|
|
158
|
+
/** The quest props: the patrol posts (The Night Watch) and the market stalls to set (Market Day Rush). */
|
|
159
|
+
export const CV_PROP = { post: 'cvpost', stall: 'cvstall' };
|
|
160
|
+
export const CV_POST_GATE = { id: 'cv-quest-post-gate', x: 718, z: 662, style: `${CV_PROP.post}:gate` };
|
|
161
|
+
export const CV_POST_MARKET = { id: 'cv-quest-post-market', x: 801, z: 695, style: `${CV_PROP.post}:market` };
|
|
162
|
+
export const CV_POST_EAST = { id: 'cv-quest-post-east', x: 853, z: 670, style: `${CV_PROP.post}:east` };
|
|
163
|
+
export const CV_STALL_BUNTING = { id: 'cv-quest-stall-bunting', x: 810, z: 702, style: `${CV_PROP.stall}:bunting` };
|
|
164
|
+
export const CV_STALL_SCALES = { id: 'cv-quest-stall-scales', x: 818, z: 702, style: `${CV_PROP.stall}:scales` };
|
|
165
|
+
export const CV_STALL_AWNING = { id: 'cv-quest-stall-awning', x: 828, z: 701, style: `${CV_PROP.stall}:awning` };
|
|
166
|
+
export const CV_STALL_BANNER = { id: 'cv-quest-stall-banner', x: 836, z: 701, style: `${CV_PROP.stall}:banner` };
|
|
167
|
+
export const CV_STALL_CRATES = { id: 'cv-quest-stall-crates', x: 843, z: 700, style: `${CV_PROP.stall}:crates` };
|
|
168
|
+
export const CALVERTON_QUEST_PROPS = [
|
|
169
|
+
CV_POST_GATE, CV_POST_MARKET, CV_POST_EAST, CV_STALL_BUNTING, CV_STALL_SCALES, CV_STALL_AWNING, CV_STALL_BANNER, CV_STALL_CRATES,
|
|
170
|
+
];
|
|
171
|
+
/** The order Market Day Rush wants the stalls set in. */
|
|
172
|
+
export const CV_STALL_ORDER = [CV_STALL_BUNTING.style, CV_STALL_SCALES.style, CV_STALL_AWNING.style, CV_STALL_BANNER.style, CV_STALL_CRATES.style];
|
|
173
|
+
export const CALVERTON_QUEST_PROP_NAMES = {
|
|
174
|
+
[CV_POST_GATE.style]: 'Patrol Post (Dreadwoods Gate)',
|
|
175
|
+
[CV_POST_MARKET.style]: 'Patrol Post (Lakeside)',
|
|
176
|
+
[CV_POST_EAST.style]: 'Patrol Post (East Road)',
|
|
177
|
+
[CV_STALL_BUNTING.style]: 'Stall Bunting',
|
|
178
|
+
[CV_STALL_SCALES.style]: 'Stall Scales',
|
|
179
|
+
[CV_STALL_AWNING.style]: 'Stall Awning',
|
|
180
|
+
[CV_STALL_BANNER.style]: 'Market Banner',
|
|
181
|
+
[CV_STALL_CRATES.style]: 'Stall Crates',
|
|
182
|
+
};
|
|
183
|
+
/** The model a Calverton quest prop draws with (CAPITAL_BUILDING_MODELS), or null for a prop that is not one of them. */
|
|
184
|
+
export function calvertonPropModel(prop) {
|
|
185
|
+
if (prop === CV_PROP.post)
|
|
186
|
+
return 'townwaypost1x1';
|
|
187
|
+
if (prop === CV_PROP.stall)
|
|
188
|
+
return 'townmarketgoods3x1';
|
|
189
|
+
return null;
|
|
190
|
+
}
|
|
191
|
+
export const CALVERTON_FOLK_NAMES = {
|
|
192
|
+
reeve: 'Reeve Alis Tilling',
|
|
193
|
+
innkeeper: 'Eadric Wyn',
|
|
194
|
+
captain: 'Captain Rhea Ironwell',
|
|
195
|
+
quartermaster: 'Quartermaster Bart Hollis',
|
|
196
|
+
drillmaster: 'Drillmaster Colm Verrick',
|
|
197
|
+
smith: 'Smith Ansel Moor',
|
|
198
|
+
joiner: 'Joiner Petra Lyle',
|
|
199
|
+
cook: 'Cook Dorcas Marsh',
|
|
200
|
+
marketmaster: 'Marketmaster Odo Fenn',
|
|
201
|
+
fishwife: 'Fishwife Greta Wick',
|
|
202
|
+
netmender: 'Net-mender Ned Tabb',
|
|
203
|
+
caravan: 'Caravan Master Hugh Tarrant',
|
|
204
|
+
};
|
|
205
|
+
const BREAD = { kind: 'bread', price: INN_BREAD_PRICE };
|
|
206
|
+
const RABBIT = { kind: 'cookedrabbit', price: 30 };
|
|
207
|
+
const TROUT = { kind: 'cookedtrout', price: 40 };
|
|
208
|
+
const CHAR = { kind: 'cookedchar', price: 46 };
|
|
209
|
+
export const CALVERTON_FOLK = [
|
|
210
|
+
{
|
|
211
|
+
id: 'cv-reeve',
|
|
212
|
+
name: CALVERTON_FOLK_NAMES.reeve,
|
|
213
|
+
place: 'the Town Hall, Calverton',
|
|
214
|
+
x: 790, z: 656, faceX: 792, faceZ: 653, leash: 1,
|
|
215
|
+
speak: "Alis Tilling, reeve of Calverton. The hall has stood empty of business for too long, and the town has outgrown its own front door. There are new yards out past the walls, and I want every newcomer to know where to find them.",
|
|
216
|
+
extras: [{ id: 'districts', label: 'The new yards', say: "The Wardens' Yard is out the west gate, north of the Dreadwoods road: drill, dummies and butts. Smiths' Row is south of the road, forge and joinery and cookhouse. The Lakeside Market is south of the wall, past the bridge road. Go and be seen." }],
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
id: 'cv-innkeeper',
|
|
220
|
+
name: CALVERTON_FOLK_NAMES.innkeeper,
|
|
221
|
+
place: 'the pub, Calverton',
|
|
222
|
+
x: 776, z: 677, faceX: 774, faceZ: 677, leash: 1,
|
|
223
|
+
speak: "Eadric Wyn. I pull the beer and I hear the rumours, and the rumours this month are all about the caravans. Nobody trusts the east road since the redcaps got bold, and nobody trusts the west one since forever.",
|
|
224
|
+
extras: [{ id: 'rumours', label: 'Rumours', say: "The Marketmaster is short of hands before every market day, and the Caravan Master pays well for anyone who can stand up straight and carry a manifest to the Marches and back. The Captain wants eyes on the roads, too." }],
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
id: 'cv-captain',
|
|
228
|
+
name: CALVERTON_FOLK_NAMES.captain,
|
|
229
|
+
place: "the Wardens' Yard, Calverton",
|
|
230
|
+
x: 738, z: 646, faceX: 738, faceZ: 650, leash: 1,
|
|
231
|
+
speak: "Captain Rhea Ironwell, Calverton Wardens. The Dreadwoods gate, the east road and the lakeside are mine to watch, and I have six wardens for three roads. If you can hold a blade and walk in a straight line, I can use you.",
|
|
232
|
+
extras: [{ id: 'yard', label: 'The yard', say: "Dummies for the strength, butts for the bow. Colm Verrick runs the drill. The board by the fire has contracts: read it, take one, hand it in at the town. Real fights are beyond the walls." }],
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
id: 'cv-quartermaster',
|
|
236
|
+
name: CALVERTON_FOLK_NAMES.quartermaster,
|
|
237
|
+
place: "the Wardens' Yard, Calverton",
|
|
238
|
+
x: 726, z: 644, faceX: 726, faceZ: 642, leash: 1,
|
|
239
|
+
speak: "Bart Hollis, quartermaster. Bread, arrows and torches for the wardens, and for anyone the Captain says may buy them. I keep the stores and I keep them honest.",
|
|
240
|
+
trade: "Hollis's Stores. Bread, birch arrows, a torch for the dark and cooked rabbit for the road. Nothing fancy, and the prices are the same as anyone's.",
|
|
241
|
+
shop: { title: "Hollis's Wardens' Stores", stock: [BREAD, { kind: 'bircharrow', price: 20 }, { kind: 'unlitbirchtorch', price: 12 }, RABBIT] },
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
id: 'cv-drillmaster',
|
|
245
|
+
name: CALVERTON_FOLK_NAMES.drillmaster,
|
|
246
|
+
place: "the Wardens' Yard, Calverton",
|
|
247
|
+
x: 722, z: 647, faceX: 722, faceZ: 650, leash: 2,
|
|
248
|
+
speak: "Colm Verrick, drillmaster. Hit the dummies until your arm stops aching, then hit them again. The butts are on the far side of the lane: the chained bows are lent to anyone without one. Come back when you can do both without thinking.",
|
|
249
|
+
extras: [{ id: 'drill', label: 'How the drill goes', say: "Dummies teach Strength and Weapon Mastery up to level ten, and the butts teach Archery to ten. After that the Capital's sergeants take over: Hale, Mott, Brack and Vane. They will spar a recruit properly." }],
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
id: 'cv-smith',
|
|
253
|
+
name: CALVERTON_FOLK_NAMES.smith,
|
|
254
|
+
place: "Smiths' Row, Calverton",
|
|
255
|
+
x: 720, z: 686, faceX: 720, faceZ: 684, leash: 1,
|
|
256
|
+
speak: "Ansel Moor, smith. Furnaces are lit and the anvils are free, so long as you leave the place as clean as you found it. Bars from ore at the furnace, blades and plates at the anvil. I charge nothing for the fire.",
|
|
257
|
+
extras: [{ id: 'forge', label: 'The forge', say: "Two furnaces and two anvils, all yours. Iron needs Blacksmithing fifteen to smelt, and gold a good deal more. If you have bars and no skill, I have a job that will teach you." }],
|
|
258
|
+
trade: "Moor's Forge Stores. A copper pickaxe for the seams, a folding saw for the timber and a bucket for the quench.",
|
|
259
|
+
shop: { title: "Moor's Forge Stores", stock: [{ kind: 'copperpickaxe', price: 60 }, { kind: 'foldingsaw', price: 30 }, { kind: 'bucket', price: 10 }] },
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
id: 'cv-joiner',
|
|
263
|
+
name: CALVERTON_FOLK_NAMES.joiner,
|
|
264
|
+
place: "Smiths' Row, Calverton",
|
|
265
|
+
x: 733, z: 684, faceX: 731, faceZ: 683, leash: 1,
|
|
266
|
+
speak: "Petra Lyle, joiner. Two benches in my shop and a stack of boards for whoever will plane them. The town hall roof wants timber, and I have no hands to spare for the hauling.",
|
|
267
|
+
trade: "Lyle's Joinery Stores. A carving knife for the fine work and a folding saw for the rough, both at the going price.",
|
|
268
|
+
shop: { title: "Lyle's Joinery Stores", stock: [{ kind: 'carvingknife', price: 50 }, { kind: 'foldingsaw', price: 30 }] },
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
id: 'cv-cook',
|
|
272
|
+
name: CALVERTON_FOLK_NAMES.cook,
|
|
273
|
+
place: "Smiths' Row, Calverton",
|
|
274
|
+
x: 722, z: 687, faceX: 722, faceZ: 689, leash: 1,
|
|
275
|
+
speak: "Dorcas Marsh. I feed the row and the yard, and the yard eats like it is paid by the plate. The stoves are free, and the fire outside is for anyone with a bit of fish and no patience.",
|
|
276
|
+
trade: "Marsh's Cookhouse. Bread, rabbit off the spit, trout and a char if you want a proper supper.",
|
|
277
|
+
shop: { title: "Marsh's Cookhouse", stock: [BREAD, RABBIT, TROUT, CHAR] },
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
id: 'cv-marketmaster',
|
|
281
|
+
name: CALVERTON_FOLK_NAMES.marketmaster,
|
|
282
|
+
place: 'the Lakeside Market, Calverton',
|
|
283
|
+
x: 826, z: 701, faceX: 826, faceZ: 699, leash: 1,
|
|
284
|
+
speak: "Odo Fenn, marketmaster. Every stall in this market answers to me, and every one of them is late. Market day starts at the bell and not a minute after: bunting, scales, awning, banner and crates, in that order, or the whole thing falls over.",
|
|
285
|
+
extras: [{ id: 'fair', label: 'The fair', say: "Past the east gate, Bramble Fair Green wants a different good every hour, and Maud and Perrin pay over the odds for it. This market is for steadier trade: the lake and the road and the town." }],
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
id: 'cv-fishwife',
|
|
289
|
+
name: CALVERTON_FOLK_NAMES.fishwife,
|
|
290
|
+
place: 'the Lakeside Market, Calverton',
|
|
291
|
+
x: 846, z: 701, faceX: 846, faceZ: 703, leash: 1,
|
|
292
|
+
speak: "Greta Wick. Fish off the lake and fish off the fishery, and a good deal of both gone before noon. I sell what I cook and I do not haggle, so do not ask.",
|
|
293
|
+
trade: "Wick's Fish Stall. A hot trout, a line and a hook, and a small rod if you have never held one.",
|
|
294
|
+
shop: { title: "Wick's Fish Stall", stock: [TROUT, { kind: 'smallfishingrod', price: 200 }, { kind: 'fishinghook', price: 10 }, { kind: 'fishingfloat', price: 8 }] },
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
id: 'cv-netmender',
|
|
298
|
+
name: CALVERTON_FOLK_NAMES.netmender,
|
|
299
|
+
place: 'the Lakeside Market, Calverton',
|
|
300
|
+
x: 808, z: 701, faceX: 808, faceZ: 704, leash: 1,
|
|
301
|
+
speak: "Ned Tabb. I mend nets and I tell lies about the pike that took the last one. The lake is deep off the old pier, and the fishery fish are tame by comparison.",
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
id: 'cv-caravan',
|
|
305
|
+
name: CALVERTON_FOLK_NAMES.caravan,
|
|
306
|
+
place: 'the Lakeside Market, Calverton',
|
|
307
|
+
x: 842, z: 704, faceX: 842, faceZ: 706, leash: 1,
|
|
308
|
+
speak: "Hugh Tarrant, caravan master. Two wagons, one road east and one very long way west, and never enough hands. If you can carry a ledger and not lose it, I have a run for you.",
|
|
309
|
+
extras: [{ id: 'run', label: 'The caravan run', say: "East along the road to the Last Weighhouse, where the Weighmaster stamps the tally, then the long way round by the Western Line to Lantern Wake. A clerk there signs for it, and you bring it home. Redcaps and thieves on the way, so keep your wits." }],
|
|
310
|
+
},
|
|
311
|
+
];
|
|
312
|
+
/**
|
|
313
|
+
* The two sparring sergeants of the Wardens' Yard (types sparringYard.ts, home 'calverton'): in the lane between the dummy rows. Not part of
|
|
314
|
+
* CALVERTON_FOLK, so their menu stays the yard's own (Begin a bout, Strike, Guard, Feint, Ask to stop). Same machinery as the Capital's four.
|
|
315
|
+
*/
|
|
316
|
+
export const CALVERTON_SERGEANT_SPOTS = [
|
|
317
|
+
{ name: 'Sergeant Pike', x: 720, z: 652, faceX: 720, faceZ: 650, leash: 1 },
|
|
318
|
+
{ name: 'Sergeant Lorne', x: 724, z: 652, faceX: 724, faceZ: 650, leash: 1 },
|
|
319
|
+
];
|
|
320
|
+
export function calvertonFolkByName(name) {
|
|
321
|
+
return name ? CALVERTON_FOLK.find((p) => p.name === name) ?? null : null;
|
|
322
|
+
}
|
|
323
|
+
export function calvertonFolkById(id) {
|
|
324
|
+
return id ? CALVERTON_FOLK.find((p) => p.id === id) ?? null : null;
|
|
325
|
+
}
|
|
326
|
+
/** The counters, keyed by the keeper's name (world.ts NAMED_SHOPKEEPERS). */
|
|
327
|
+
export const CALVERTON_SHOP_FOLK = CALVERTON_FOLK.filter((p) => !!p.shop);
|
|
328
|
+
/** Where the quest helper and the guide say each district is. */
|
|
329
|
+
export const CALVERTON_PLACE_TEXT = {
|
|
330
|
+
'wardens-yard': "The Wardens' Yard lies just outside Calverton's west gate, on the north side of the Dreadwoods road: a fenced yard with a barracks, a muster hall, dummies, archery butts and a board.",
|
|
331
|
+
'smiths-row': "Smiths' Row lies on the south side of the same road, a few tiles west of the town wall: the forge, the joinery and the cookhouse.",
|
|
332
|
+
'lakeside-market': "The Lakeside Market lies south of Calverton's wall, east of the road to the bridge: a paved market with a hall, stalls, a fish stall and the caravan yard.",
|
|
333
|
+
};
|
|
334
|
+
//# sourceMappingURL=calvertonExtension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calvertonExtension.js","sourceRoot":"","sources":["../src/calvertonExtension.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The eight Calverton extension quests (T71, 2026-10-14; calvertonExtension.ts), levels 10-26, so the hub of levels 10-30 has its own
|
|
3
|
+
* business in every band:
|
|
4
|
+
*
|
|
5
|
+
* Reeve's Notices (Reeve Alis Tilling, no gate): a tour of the three new districts, introducing the people.
|
|
6
|
+
* Straw and Steel (Drillmaster Colm Verrick, Combat 12): the three butts, then the drillmaster.
|
|
7
|
+
* Supper for the Muster (Cook Dorcas Marsh, Cooking 5): cook, then feed the muster.
|
|
8
|
+
* A Smith's Order (Smith Ansel Moor, Blacksmithing 15): iron bars to the anvil.
|
|
9
|
+
* Planks for the Hall (Joiner Petra Lyle, Woodwork 15): the Reeve's roof, in spruce and pine.
|
|
10
|
+
* The Night Watch (Captain Rhea Ironwell, Combat 18): three patrol posts and the raiders on the roads.
|
|
11
|
+
* Market Day Rush (Marketmaster Odo Fenn, a TIMED set piece, after the Reeve's tour): set the five stalls in order and feed the market before
|
|
12
|
+
* the bell.
|
|
13
|
+
* The Caravan Run (Caravan Master Hugh Tarrant, Combat 24 and the Night Watch): the long errand east to the Last Weighhouse and by the
|
|
14
|
+
* Western Line to Lantern Wake, and home.
|
|
15
|
+
*
|
|
16
|
+
* Kept in their own file and entered in storyQuests.ts STORY_QUESTS, like windwardChalkshellQuestDef.ts. Types only from storyQuests.ts (no
|
|
17
|
+
* runtime import, so there is no cycle). Rewards are placeholders for the balance pass (James, 2026-10-12: balance last).
|
|
18
|
+
*/
|
|
19
|
+
import type { StoryQuestDef, StoryNpcRef } from './storyQuests.js';
|
|
20
|
+
export declare const CV_REEVE: StoryNpcRef;
|
|
21
|
+
export declare const CV_CAPTAIN: StoryNpcRef;
|
|
22
|
+
export declare const CV_QUARTERMASTER: StoryNpcRef;
|
|
23
|
+
export declare const CV_DRILLMASTER: StoryNpcRef;
|
|
24
|
+
export declare const CV_SMITH: StoryNpcRef;
|
|
25
|
+
export declare const CV_JOINER: StoryNpcRef;
|
|
26
|
+
export declare const CV_COOK: StoryNpcRef;
|
|
27
|
+
export declare const CV_MARKETMASTER: StoryNpcRef;
|
|
28
|
+
export declare const CV_CARAVAN: StoryNpcRef;
|
|
29
|
+
export declare const STRAW_AND_STEEL_COMBAT_LEVEL = 12;
|
|
30
|
+
export declare const SUPPER_COOKING_LEVEL = 5;
|
|
31
|
+
export declare const SMITHS_ORDER_BLACKSMITHING_LEVEL = 15;
|
|
32
|
+
export declare const SMITHS_ORDER_BARS = 4;
|
|
33
|
+
export declare const PLANKS_WOODWORK_LEVEL = 15;
|
|
34
|
+
export declare const PLANKS_SPRUCE = 6;
|
|
35
|
+
export declare const PLANKS_PINE = 4;
|
|
36
|
+
export declare const NIGHT_WATCH_COMBAT_LEVEL = 18;
|
|
37
|
+
export declare const NIGHT_WATCH_KILLS = 8;
|
|
38
|
+
export declare const NIGHT_WATCH_KINDS: readonly string[];
|
|
39
|
+
export declare const MARKET_RUSH_MS: number;
|
|
40
|
+
export declare const MARKET_RUSH_BREAD = 4;
|
|
41
|
+
export declare const MARKET_RUSH_MEALS = 2;
|
|
42
|
+
export declare const CARAVAN_RUN_COMBAT_LEVEL = 24;
|
|
43
|
+
/** Where the helper points on the Caravan Run's long leg: the Western Line's first stop. */
|
|
44
|
+
export declare const CARAVAN_RUN_WAKE: {
|
|
45
|
+
readonly x: 2052;
|
|
46
|
+
readonly z: 1091;
|
|
47
|
+
readonly label: "Lantern Wake (take the Western Line from the Forge Halt under the Capital)";
|
|
48
|
+
};
|
|
49
|
+
/** The area that counts as arriving at Lantern Wake's town (its street and quay). */
|
|
50
|
+
export declare const CARAVAN_RUN_WAKE_AREA: {
|
|
51
|
+
readonly minX: 2020;
|
|
52
|
+
readonly maxX: 2090;
|
|
53
|
+
readonly minZ: 1070;
|
|
54
|
+
readonly maxZ: 1115;
|
|
55
|
+
};
|
|
56
|
+
export declare const REEVES_NOTICES_QUEST: StoryQuestDef;
|
|
57
|
+
export declare const STRAW_AND_STEEL_QUEST: StoryQuestDef;
|
|
58
|
+
export declare const SUPPER_FOR_THE_MUSTER_QUEST: StoryQuestDef;
|
|
59
|
+
export declare const SMITHS_ORDER_QUEST: StoryQuestDef;
|
|
60
|
+
export declare const PLANKS_FOR_THE_HALL_QUEST: StoryQuestDef;
|
|
61
|
+
export declare const NIGHT_WATCH_QUEST: StoryQuestDef;
|
|
62
|
+
export declare const MARKET_DAY_RUSH_QUEST: StoryQuestDef;
|
|
63
|
+
export declare const CARAVAN_RUN_QUEST: StoryQuestDef;
|
|
64
|
+
//# sourceMappingURL=calvertonQuestDef.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calvertonQuestDef.d.ts","sourceRoot":"","sources":["../src/calvertonQuestDef.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAQnE,eAAO,MAAM,QAAQ,aAAkC,CAAC;AACxD,eAAO,MAAM,UAAU,aAAoC,CAAC;AAC5D,eAAO,MAAM,gBAAgB,aAA0C,CAAC;AACxE,eAAO,MAAM,cAAc,aAAwC,CAAC;AACpE,eAAO,MAAM,QAAQ,aAAkC,CAAC;AACxD,eAAO,MAAM,SAAS,aAAmC,CAAC;AAC1D,eAAO,MAAM,OAAO,aAAiC,CAAC;AACtD,eAAO,MAAM,eAAe,aAAyC,CAAC;AACtE,eAAO,MAAM,UAAU,aAAoC,CAAC;AAI5D,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAA6C,CAAC;AAC7F,eAAO,MAAM,cAAc,QAAc,CAAC;AAC1C,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,4FAA4F;AAC5F,eAAO,MAAM,gBAAgB;;;;CAAqH,CAAC;AACnJ,qFAAqF;AACrF,eAAO,MAAM,qBAAqB;;;;;CAA8D,CAAC;AAKjG,eAAO,MAAM,oBAAoB,EAAE,aAwClC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aA0CnC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,aAgCzC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,aAwBhC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,aAkCvC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,aA+C/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAuDnC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,aAkD/B,CAAC"}
|