@dreadwood-types/types 0.1.274 → 0.1.275

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 (54) hide show
  1. package/dist/areaGates.d.ts.map +1 -1
  2. package/dist/areaGates.js +11 -0
  3. package/dist/areaGates.js.map +1 -1
  4. package/dist/areaTransitions.d.ts +1 -1
  5. package/dist/areaTransitions.d.ts.map +1 -1
  6. package/dist/areaTransitions.js +11 -0
  7. package/dist/areaTransitions.js.map +1 -1
  8. package/dist/attackableNpcs.d.ts.map +1 -1
  9. package/dist/attackableNpcs.js +2 -0
  10. package/dist/attackableNpcs.js.map +1 -1
  11. package/dist/bossSignatures.d.ts +1 -1
  12. package/dist/bossSignatures.d.ts.map +1 -1
  13. package/dist/bossSignatures.js +6 -0
  14. package/dist/bossSignatures.js.map +1 -1
  15. package/dist/bounty.d.ts +1 -1
  16. package/dist/bounty.d.ts.map +1 -1
  17. package/dist/bounty.js +3 -0
  18. package/dist/bounty.js.map +1 -1
  19. package/dist/campTraders.d.ts.map +1 -1
  20. package/dist/campTraders.js +12 -0
  21. package/dist/campTraders.js.map +1 -1
  22. package/dist/constants.d.ts +4 -0
  23. package/dist/constants.d.ts.map +1 -1
  24. package/dist/constants.js.map +1 -1
  25. package/dist/explorerLedger.d.ts +2 -1
  26. package/dist/explorerLedger.d.ts.map +1 -1
  27. package/dist/explorerLedger.js +7 -0
  28. package/dist/explorerLedger.js.map +1 -1
  29. package/dist/groundItems.d.ts.map +1 -1
  30. package/dist/groundItems.js +2 -0
  31. package/dist/groundItems.js.map +1 -1
  32. package/dist/index.d.ts +2 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +2 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/landmarks.d.ts.map +1 -1
  37. package/dist/landmarks.js +4 -0
  38. package/dist/landmarks.js.map +1 -1
  39. package/dist/quests.d.ts.map +1 -1
  40. package/dist/quests.js +25 -0
  41. package/dist/quests.js.map +1 -1
  42. package/dist/storyQuests.d.ts +1 -1
  43. package/dist/storyQuests.d.ts.map +1 -1
  44. package/dist/storyQuests.js +16 -0
  45. package/dist/storyQuests.js.map +1 -1
  46. package/dist/tollRoad.d.ts +368 -0
  47. package/dist/tollRoad.d.ts.map +1 -0
  48. package/dist/tollRoad.js +368 -0
  49. package/dist/tollRoad.js.map +1 -0
  50. package/dist/tollRoadQuests.d.ts +60 -0
  51. package/dist/tollRoadQuests.d.ts.map +1 -0
  52. package/dist/tollRoadQuests.js +233 -0
  53. package/dist/tollRoadQuests.js.map +1 -0
  54. package/package.json +2 -2
@@ -0,0 +1,233 @@
1
+ import { CELLAR_KEY_KIND, PAYROLL_SATCHEL_KIND, REDCAP_CAPTAIN_KIND, REDCAP_CAPTAIN_NAME, RIDGE_CELLAR_COMBAT_LEVEL, RIDGE_CELLAR_HALL_AREA, RIDGE_CELLAR_MOUTH, RIDGE_INFORMER_KIND, RIDGE_INFORMER_NAME, TOLL_WARDEN_KIND, TOLL_WARDEN_NAME, TOLL_ROAD_WRONG_TRACKS_NOTICE, TR_DEAD_DROP, TR_PAYROLL_CHEST, TR_PROP, TR_TALLY_HOUSE, TR_TALLY_POND, TR_TALLY_STILE, TR_TOLL_BOOK, TR_TRACKS, TR_TRACKS_ORDER, } from './tollRoad.js';
2
+ export const TOLL_ROAD_QUEST_IDS = ['tollsAndTallies', 'theMissingPayroll', 'whisperInTheReeds', 'theCaptainsCellar'];
3
+ /** Combat levels each quest asks. */
4
+ export const TOLL_ROAD_COMBAT_LEVELS = {
5
+ tollsAndTallies: 18,
6
+ theMissingPayroll: 19,
7
+ whisperInTheReeds: 21,
8
+ theCaptainsCellar: RIDGE_CELLAR_COMBAT_LEVEL,
9
+ };
10
+ export const TOLL_ROAD_QUEST_NAMES = {
11
+ tollsAndTallies: 'Tolls and Tallies',
12
+ theMissingPayroll: 'The Missing Payroll',
13
+ whisperInTheReeds: 'Whisper in the Reeds',
14
+ theCaptainsCellar: "The Captain's Cellar",
15
+ };
16
+ /** Counts. */
17
+ export const TOLL_TALLIES_TO_READ = 3;
18
+ export const TOLL_REDCAPS_TO_DEFEAT = 5;
19
+ export const PAYROLL_REDCAPS_TO_DEFEAT = 4;
20
+ export const PIM_ARCHERS_TO_DEFEAT = 3;
21
+ /** What each quest pays: coins, Explorer XP, a combat XP lump and bars (iron). Placeholders. */
22
+ export const TOLL_ROAD_REWARDS = {
23
+ tollsAndTallies: { coins: 700, explorerXp: 400, choiceXp: 1200, ironBars: 0 },
24
+ theMissingPayroll: { coins: 900, explorerXp: 500, choiceXp: 1600, ironBars: 0 },
25
+ whisperInTheReeds: { coins: 800, explorerXp: 450, choiceXp: 0, ironBars: 3 },
26
+ theCaptainsCellar: { coins: 1800, explorerXp: 900, choiceXp: 2500, ironBars: 2 },
27
+ };
28
+ /** The last quest's gear piece (existing item). */
29
+ export const TOLL_ROAD_FINAL_GEAR = 'ironshield';
30
+ const ANSEL = { kind: TOLL_WARDEN_KIND, name: TOLL_WARDEN_NAME };
31
+ const PIM = { kind: RIDGE_INFORMER_KIND, name: RIDGE_INFORMER_NAME };
32
+ const COMBAT_SKILLS = ['strength', 'archery', 'precision'];
33
+ function rewards(r, extra = []) {
34
+ return {
35
+ coins: r.coins,
36
+ xp: { explorer: r.explorerXp },
37
+ ...(r.choiceXp > 0 ? { choiceXp: { qty: r.choiceXp, skills: COMBAT_SKILLS } } : {}),
38
+ items: [...(r.ironBars > 0 ? [{ kind: 'ironbar', qty: r.ironBars }] : []), ...extra],
39
+ };
40
+ }
41
+ export const TOLLS_AND_TALLIES_QUEST = {
42
+ giver: ANSEL,
43
+ requires: {
44
+ quest: 'everyRoadPays',
45
+ combat: TOLL_ROAD_COMBAT_LEVELS.tollsAndTallies,
46
+ refuse: `The Toll House is for the guard and for those who finished Sergeant Mabry's work at the Ridge. Break the hold first, then come and talk tolls (Combat ${TOLL_ROAD_COMBAT_LEVELS.tollsAndTallies}).`,
47
+ },
48
+ offer: 'Black Tom is down and the road is still bleeding. The Redcaps did not go home: they run two camps east of the cutting and a toll of their own, and we lose a cart a week. I need the tally of what they take. Read the three boards (mine here, the pond road\'s and the one at Stile Camp\'s gate), put a few of them down, and come back and tell me what you saw.',
49
+ accept: 'The boards are slates on posts: one by my fire, one east of the road by the pond, one at the gate of Stile Camp, the camp in the grass east of the cutting. Footpads and archers hold the camp. Go armed and go fed.',
50
+ decline: 'Then keep to the road and keep your purse close. The camp will still be there.',
51
+ steps: [
52
+ {
53
+ kind: 'touch',
54
+ prop: TR_PROP.tally,
55
+ qty: TOLL_TALLIES_TO_READ,
56
+ label: 'Read the three tally boards',
57
+ hint: "One stands by the Toll House fire, one east of the road by the pond (a short walk across the verge and east), one at the gate of Stile Camp in the grass east of the cutting. Click each.",
58
+ notices: {
59
+ [TR_TALLY_HOUSE.style]: 'The Toll House slate: sixty-one carts through since the spring, forty-four ticked as "stopped". Chalk, in a careful hand.',
60
+ [TR_TALLY_POND.style]: 'The pond road\'s slate, scratched by a nail: "Three lads at the stile. Two at the hollow. One with a book, never seen the road."',
61
+ [TR_TALLY_STILE.style]: 'The Redcaps\' own board at Stile Camp: a column of tolls in pennies, a column of cart names, and at the bottom "Captain wants it all by the 20th".',
62
+ },
63
+ },
64
+ {
65
+ kind: 'kill',
66
+ npcKinds: ['redcap', 'redcaparcher'],
67
+ qty: TOLL_REDCAPS_TO_DEFEAT,
68
+ npcLabel: 'Redcaps',
69
+ label: `Put down ${TOLL_REDCAPS_TO_DEFEAT} Redcaps`,
70
+ hint: "Stile Camp, in the grass east of the cutting, holds four footpads and two archers (levels 15 to 20); they rush anyone inside its stakes. The Ridge's own yard also counts. Bring food: Combat 20 recommended.",
71
+ },
72
+ {
73
+ kind: 'talk',
74
+ npc: ANSEL,
75
+ label: 'Tell Toll-Warden Pike what you saw',
76
+ hint: 'Toll-Warden Pike keeps the Ridge Toll House, on the west verge of the Fishery road south of the cutting.',
77
+ say: 'Three boards and five of their lads: now I know what they take and where they take it. The "Captain" in their column is the one I do not know. I can pay for the tally, and when you are ready there is a wagon of Calverton\'s wages that never reached me.',
78
+ },
79
+ ],
80
+ done: 'There is the tally paid, and a little over. The guard thanks you.',
81
+ after: 'The tally grows by the day. Ask me about the missing wages when you are ready.',
82
+ rewards: rewards(TOLL_ROAD_REWARDS.tollsAndTallies),
83
+ };
84
+ export const THE_MISSING_PAYROLL_QUEST = {
85
+ giver: ANSEL,
86
+ requires: {
87
+ quest: 'tollsAndTallies',
88
+ combat: TOLL_ROAD_COMBAT_LEVELS.theMissingPayroll,
89
+ refuse: `Read the tally first, and put a few Redcaps down, then we will talk about the wages (Combat ${TOLL_ROAD_COMBAT_LEVELS.theMissingPayroll}).`,
90
+ },
91
+ offer: "Calverton's wages for the Fishery crew went up the road on a wagon three weeks ago and never arrived. What is left of the wagon is in the verge east of the road, north of the cutting. The wheels went east. Follow the tracks, find the cache and bring me the satchel.",
92
+ accept: 'The wagon wreck lies on the east verge just north of the cutting. Five sets of cart tracks lead away from it south-east, round the north-east corner of Stile Camp and down into the hollow. Follow them in order: a wrong set only sends you in circles.',
93
+ decline: 'Then the crew goes unpaid a little longer. I will be here.',
94
+ steps: [
95
+ {
96
+ kind: 'touch',
97
+ prop: TR_PROP.tracks,
98
+ qty: TR_TRACKS.length,
99
+ order: TR_TRACKS_ORDER,
100
+ wrong: { notice: TOLL_ROAD_WRONG_TRACKS_NOTICE },
101
+ label: 'Follow the cart tracks from the wagon to Hollow Camp',
102
+ hint: 'Start at the first set of tracks beside the wagon wreck, on the east verge north of the cutting, then follow them south-east. Click each set in order.',
103
+ notices: {
104
+ [TR_TRACKS[0].style]: 'Deep ruts and a spill of boot prints, heading east: the wagon was dragged off the road here by a dozen men.',
105
+ [TR_TRACKS[1].style]: 'The ruts bend south-east; a dropped strap and a flattened patch of grass where they stopped to rest.',
106
+ [TR_TRACKS[2].style]: 'The trail passes the north-east corner of a camp: tent pegs, a fire pit, men\'s voices. Keep your head down.',
107
+ [TR_TRACKS[3].style]: 'Down into a dip. The wheel marks end and the boot prints go on alone. The wagon was broken up here.',
108
+ [TR_TRACKS[4].style]: 'The last set of tracks runs straight into a hollow with a fire and a tent: this is where the payroll went.',
109
+ },
110
+ },
111
+ {
112
+ kind: 'kill',
113
+ npcKinds: ['redcap', 'redcaparcher'],
114
+ qty: PAYROLL_REDCAPS_TO_DEFEAT,
115
+ npcLabel: 'Redcaps',
116
+ label: `Put down ${PAYROLL_REDCAPS_TO_DEFEAT} Redcaps in Hollow Camp`,
117
+ hint: 'Hollow Camp lies in the dip south-east of Stile Camp: three footpads and two archers hold it and rush anyone inside the stakes. Combat 21 recommended.',
118
+ },
119
+ {
120
+ kind: 'touch',
121
+ prop: TR_PROP.chest,
122
+ qty: 1,
123
+ label: 'Take the payroll from the cache',
124
+ hint: "The cache is a hammered-open strongbox by the tent in Hollow Camp.",
125
+ notices: { [TR_PAYROLL_CHEST.style]: "Under a torn tarp, a stitched leather satchel with Calverton's seal still on the strap. The coin is mostly there. Mostly." },
126
+ give: { kind: PAYROLL_SATCHEL_KIND, qty: 1 },
127
+ },
128
+ {
129
+ kind: 'deliver',
130
+ npc: ANSEL,
131
+ items: [{ kinds: [PAYROLL_SATCHEL_KIND], qty: 1, label: "Calverton's Payroll Satchel" }],
132
+ label: "Bring the payroll satchel to Toll-Warden Pike",
133
+ hint: 'Toll-Warden Pike keeps the Ridge Toll House, on the west verge of the Fishery road south of the cutting.',
134
+ say: 'The seal is whole, and so is most of the coin. The crew will have their wages tonight. And here is a thing: the Redcaps in that hollow did not strike like thieves, they struck like men with a plan. There is a talker by the pond, Whisper Pim, who knows where the plan lives. Ask him about the cellar.',
135
+ short: 'The satchel, friend, not a story about it. It is in the cache in Hollow Camp.',
136
+ },
137
+ ],
138
+ done: 'Wages home, tally paid. Calverton owes you.',
139
+ after: 'The crew is paid. Go and see Whisper Pim by the pond if you want to know where the Redcaps keep their books.',
140
+ rewards: rewards(TOLL_ROAD_REWARDS.theMissingPayroll),
141
+ };
142
+ export const WHISPER_IN_THE_REEDS_QUEST = {
143
+ giver: PIM,
144
+ requires: {
145
+ quest: 'theMissingPayroll',
146
+ combat: TOLL_ROAD_COMBAT_LEVELS.whisperInTheReeds,
147
+ refuse: `Not here. Not now. Go and ask the Toll-Warden about the wages first, and come back when the Redcaps know your face (Combat ${TOLL_ROAD_COMBAT_LEVELS.whisperInTheReeds}).`,
148
+ },
149
+ offer: "Keep your voice down. Their archers watch this pond from three trees: the minute I say anything to a stranger, one of them tells the Captain. I can give you the way into the cellar, but not while they watch. Put three of those archers down and I'll show you where I left the key.",
150
+ accept: "Three archers, any of them: the camps are full of them and so is the Ridge. Then come to the stump by the pond, the hollow one with the flat stone, and take what's under it. Don't be seen taking it.",
151
+ decline: 'Then I never said a word. Mind the reeds.',
152
+ steps: [
153
+ {
154
+ kind: 'kill',
155
+ npcKinds: ['redcaparcher'],
156
+ qty: PIM_ARCHERS_TO_DEFEAT,
157
+ npcLabel: 'Redcap archers',
158
+ label: `Put down ${PIM_ARCHERS_TO_DEFEAT} Redcap archers`,
159
+ hint: "Archers hold both camps east of the cutting (two each) and the Ridge's yard (three). They loose from five tiles away: close the distance. Combat 22 recommended.",
160
+ },
161
+ {
162
+ kind: 'touch',
163
+ prop: TR_PROP.drop,
164
+ qty: 1,
165
+ label: 'Take the key from the hollow stump by the pond',
166
+ hint: "A hollow stump with a flat stone on it, a few paces from Whisper Pim, east of the road by the pond.",
167
+ notices: { [TR_DEAD_DROP.style]: 'Under the stone, wrapped in an oily rag: a small black key on a greasy cord. It looks copied from something much bigger.' },
168
+ give: { kind: CELLAR_KEY_KIND, qty: 1 },
169
+ },
170
+ {
171
+ kind: 'talk',
172
+ npc: PIM,
173
+ label: 'Tell Whisper Pim you have the key',
174
+ hint: 'Whisper Pim hides in the reeds by the pond, east of the Fishery road a little south of the cutting.',
175
+ say: "Good. There's a hatch in the north-west corner of the Ridge's yard, behind the stable: the Captain thinks nobody knows. Under it a stair, a store room full of his lads, and at the back the Captain with his book. He swings a cleave every fourth blow and he lifts it first. Step out of his reach when you see the red ring. Now I never met you.",
176
+ },
177
+ ],
178
+ done: 'You were never here. Take this for the favour.',
179
+ after: 'The hatch is in the north-west corner of the Ridge yard. I was never here.',
180
+ rewards: rewards(TOLL_ROAD_REWARDS.whisperInTheReeds),
181
+ };
182
+ export const THE_CAPTAINS_CELLAR_QUEST = {
183
+ giver: ANSEL,
184
+ requires: {
185
+ quest: 'whisperInTheReeds',
186
+ combat: TOLL_ROAD_COMBAT_LEVELS.theCaptainsCellar,
187
+ refuse: `Pim has the way in, not me. Ask him about the cellar first (Combat ${TOLL_ROAD_COMBAT_LEVELS.theCaptainsCellar}).`,
188
+ },
189
+ offer: 'If Pim is right, the Redcaps keep their books and their Captain in a cellar under the Ridge yard. Dorran Voss, they call him, a big man in a red tabard who keeps a toll book chained to a table. Put him down and bring me that book, and the Fishery road is ours. It is a real fight: footpads and an archer in the store room, then the Captain, and every fourth blow of his is a cleave you must step clear of.',
190
+ accept: 'The hatch is in the north-west corner of the Ridge yard behind the stable, and it takes the cellar key. Go through the gate and the yard (the Redcaps there rush anyone inside the palisade), lift the hatch, fight down the stair. Eat before you go in.',
191
+ decline: 'Then the Captain keeps counting. The book can wait a day.',
192
+ onAccept: [{ kind: CELLAR_KEY_KIND, qty: 1, ifMissing: true }],
193
+ keep: [{ kind: CELLAR_KEY_KIND, untilStep: 1, say: 'You lost the key? Pim cut me a second one. Do not lose this one: the hatch will not take anything else.' }],
194
+ steps: [
195
+ {
196
+ kind: 'reach',
197
+ area: RIDGE_CELLAR_HALL_AREA,
198
+ at: { x: RIDGE_CELLAR_MOUTH.x, z: RIDGE_CELLAR_MOUTH.z + 2, label: 'the hatch in the Ridge yard' },
199
+ place: { x: RIDGE_CELLAR_MOUTH.x, z: RIDGE_CELLAR_MOUTH.z + 2, label: 'the hatch in the Ridge yard' },
200
+ label: "Go down into the Captain's hall",
201
+ hint: 'The hatch is in the north-west corner of the Ridge yard behind the stable. It needs the cellar key and Combat 22. Fight down the stair past the store room and through the passage to the hall.',
202
+ },
203
+ {
204
+ kind: 'kill',
205
+ npcKinds: [REDCAP_CAPTAIN_KIND],
206
+ qty: 1,
207
+ npcLabel: REDCAP_CAPTAIN_NAME,
208
+ label: `Put down ${REDCAP_CAPTAIN_NAME}`,
209
+ hint: 'He keeps the hall at the back of the cellar (level 26). Every fourth blow is a cleave, announced a full turn ahead by a red ring: step out of his reach and it misses. Combat 26 recommended.',
210
+ place: { x: RIDGE_CELLAR_MOUTH.x, z: RIDGE_CELLAR_MOUTH.z + 2, label: 'the hatch in the Ridge yard' },
211
+ },
212
+ {
213
+ kind: 'touch',
214
+ prop: TR_PROP.book,
215
+ qty: 1,
216
+ label: "Take the Captain's toll book",
217
+ hint: "The toll book is chained to the Captain's table at the back of the hall.",
218
+ notices: { [TR_TOLL_BOOK.style]: "The toll book: every cart for three years, every name, every pound. The last page ends \"Black Tom's share: nothing. He's no use to us now.\"" },
219
+ place: { x: RIDGE_CELLAR_MOUTH.x, z: RIDGE_CELLAR_MOUTH.z + 2, label: 'the hatch in the Ridge yard' },
220
+ },
221
+ {
222
+ kind: 'talk',
223
+ npc: ANSEL,
224
+ label: 'Bring the news to Toll-Warden Pike',
225
+ hint: 'Toll-Warden Pike keeps the Ridge Toll House, on the west verge of the Fishery road south of the cutting.',
226
+ say: 'The Captain is down, and the book is read: I have every name in Calverton who sold them a date. The road is the guard\'s again. Take this, and keep the Toll House in mind: the patrols come back a few times a day, and I will not turn down a hand.',
227
+ },
228
+ ],
229
+ done: 'The Redcaps are leaderless and the book is in the guard\'s hands. Here is the guard\'s purse, an iron shield and a pair of bars for your trouble.',
230
+ after: 'The road is quiet. Mind the patrols when the bell rings.',
231
+ rewards: rewards(TOLL_ROAD_REWARDS.theCaptainsCellar, [{ kind: TOLL_ROAD_FINAL_GEAR, qty: 1 }]),
232
+ };
233
+ //# sourceMappingURL=tollRoadQuests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tollRoadQuests.js","sourceRoot":"","sources":["../src/tollRoadQuests.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dreadwood-types/types",
3
- "version": "0.1.274",
3
+ "version": "0.1.275",
4
4
  "description": "Public wire protocol and client-safe constants for Dreadwoods",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -22,7 +22,7 @@
22
22
  ],
23
23
  "scripts": {
24
24
  "build": "tsc -p tsconfig.json",
25
- "test": "node --test scripts/animation-test.mjs scripts/starter-jobs-test.mjs scripts/cooking-nudge-test.mjs scripts/surface-chart-test.mjs scripts/south-expansion-test.mjs scripts/rudd-test.mjs scripts/cave-map-test.mjs scripts/birch-combat-test.mjs scripts/fort-rook-bosses-test.mjs scripts/bounty-first-test.mjs scripts/bounty-high-tiers-test.mjs scripts/running-test.mjs scripts/energy-test.mjs scripts/starter-town-test.mjs scripts/starter-expansion-test.mjs scripts/five-arches-test.mjs scripts/landing-test.mjs scripts/cove-ship-test.mjs scripts/south-fields-quests-test.mjs scripts/south-fields-errands-test.mjs scripts/arcane-lands-test.mjs scripts/fair-folk-test.mjs scripts/fair-contests-test.mjs scripts/missing-shipment-test.mjs scripts/world-boss-ring-test.mjs scripts/ringstone-fight-test.mjs scripts/highstone-test.mjs scripts/fenstone-test.mjs scripts/hopewood-wildlife-test.mjs scripts/hollin-wildlife-test.mjs scripts/hopewood-quests-test.mjs scripts/western-train-test.mjs scripts/moving-train-test.mjs scripts/train-circuit-test.mjs scripts/forge-halt-test.mjs scripts/forge-polish-test.mjs scripts/western-station-test.mjs scripts/hollin-quests-test.mjs scripts/western-lost-supplies-test.mjs scripts/western-herbal-remedies-test.mjs scripts/western-field-shrine-test.mjs scripts/western-kingdoms-test.mjs scripts/lantern-wake-test.mjs scripts/brindlecross-test.mjs scripts/brindlecross-quest-test.mjs scripts/greenwood-wilds-test.mjs scripts/greenwood-wildlife-test.mjs scripts/greenwood-quest-test.mjs scripts/dwarf-road-wildlife-test.mjs scripts/dwarf-road-test.mjs scripts/riversend-test.mjs scripts/riversend-content-test.mjs scripts/gatewarden-rounds-test.mjs scripts/boss-e8-test.mjs scripts/lantern-wake-town-test.mjs scripts/world-regions-test.mjs scripts/copse-wildlife-test.mjs scripts/copse-quests-test.mjs scripts/marches-wildlife-test.mjs scripts/marches-quests-test.mjs scripts/train-seats-test.mjs scripts/lantern-wake-gallery-test.mjs scripts/lantern-wake-wildlife-test.mjs scripts/lantern-wake-quest-test.mjs scripts/dwarf-hold-test.mjs scripts/western-line-texts-test.mjs scripts/xp-test.mjs scripts/bank-test.mjs scripts/timed-access-test.mjs scripts/ground-items-test.mjs scripts/name-filter-test.mjs scripts/woodwork-logs-test.mjs scripts/area-gates-test.mjs scripts/frozen-dungeons-test.mjs scripts/long-winter-test.mjs scripts/roster-delta-test.mjs scripts/bow-ladder-test.mjs scripts/lantern-wake-ledge-test.mjs scripts/explorer-ledger-test.mjs scripts/ore-smithing-test.mjs scripts/red-waste-test.mjs scripts/red-waste-folk-test.mjs scripts/daily-hooks-test.mjs scripts/sparring-yard-test.mjs scripts/t16-siege-floe-beach-test.mjs scripts/mammoth-road-test.mjs scripts/mammoth-road-test.mjs scripts/gulls-map-test.mjs scripts/gulls-rook-test.mjs scripts/ride-the-line-test.mjs scripts/gallowmere-test.mjs scripts/gallowmere-content-test.mjs scripts/fishing-derby-test.mjs scripts/sled-run-test.mjs scripts/eastern-marches-a-test.mjs scripts/windward-chalkshell-test.mjs scripts/gullhook-head-test.mjs scripts/webfen-test.mjs scripts/safe-pockets-test.mjs scripts/gallowmere-extras-test.mjs scripts/t53-high-ledge-skill-quests-test.mjs scripts/camp-traders-recommended-test.mjs scripts/west-coast-test.mjs scripts/heartwood-hunt-test.mjs scripts/calverton-extension-test.mjs scripts/gravewatch-test.mjs scripts/tide-of-blood-test.mjs scripts/north-wilds-test.mjs",
25
+ "test": "node --test scripts/animation-test.mjs scripts/starter-jobs-test.mjs scripts/cooking-nudge-test.mjs scripts/surface-chart-test.mjs scripts/south-expansion-test.mjs scripts/rudd-test.mjs scripts/cave-map-test.mjs scripts/birch-combat-test.mjs scripts/fort-rook-bosses-test.mjs scripts/bounty-first-test.mjs scripts/bounty-high-tiers-test.mjs scripts/running-test.mjs scripts/energy-test.mjs scripts/starter-town-test.mjs scripts/starter-expansion-test.mjs scripts/five-arches-test.mjs scripts/landing-test.mjs scripts/cove-ship-test.mjs scripts/south-fields-quests-test.mjs scripts/south-fields-errands-test.mjs scripts/arcane-lands-test.mjs scripts/fair-folk-test.mjs scripts/fair-contests-test.mjs scripts/missing-shipment-test.mjs scripts/world-boss-ring-test.mjs scripts/ringstone-fight-test.mjs scripts/highstone-test.mjs scripts/fenstone-test.mjs scripts/hopewood-wildlife-test.mjs scripts/hollin-wildlife-test.mjs scripts/hopewood-quests-test.mjs scripts/western-train-test.mjs scripts/moving-train-test.mjs scripts/train-circuit-test.mjs scripts/forge-halt-test.mjs scripts/forge-polish-test.mjs scripts/western-station-test.mjs scripts/hollin-quests-test.mjs scripts/western-lost-supplies-test.mjs scripts/western-herbal-remedies-test.mjs scripts/western-field-shrine-test.mjs scripts/western-kingdoms-test.mjs scripts/lantern-wake-test.mjs scripts/brindlecross-test.mjs scripts/brindlecross-quest-test.mjs scripts/greenwood-wilds-test.mjs scripts/greenwood-wildlife-test.mjs scripts/greenwood-quest-test.mjs scripts/dwarf-road-wildlife-test.mjs scripts/dwarf-road-test.mjs scripts/riversend-test.mjs scripts/riversend-content-test.mjs scripts/gatewarden-rounds-test.mjs scripts/boss-e8-test.mjs scripts/lantern-wake-town-test.mjs scripts/world-regions-test.mjs scripts/copse-wildlife-test.mjs scripts/copse-quests-test.mjs scripts/marches-wildlife-test.mjs scripts/marches-quests-test.mjs scripts/train-seats-test.mjs scripts/lantern-wake-gallery-test.mjs scripts/lantern-wake-wildlife-test.mjs scripts/lantern-wake-quest-test.mjs scripts/dwarf-hold-test.mjs scripts/western-line-texts-test.mjs scripts/xp-test.mjs scripts/bank-test.mjs scripts/timed-access-test.mjs scripts/ground-items-test.mjs scripts/name-filter-test.mjs scripts/woodwork-logs-test.mjs scripts/area-gates-test.mjs scripts/frozen-dungeons-test.mjs scripts/long-winter-test.mjs scripts/roster-delta-test.mjs scripts/bow-ladder-test.mjs scripts/lantern-wake-ledge-test.mjs scripts/explorer-ledger-test.mjs scripts/ore-smithing-test.mjs scripts/red-waste-test.mjs scripts/red-waste-folk-test.mjs scripts/daily-hooks-test.mjs scripts/sparring-yard-test.mjs scripts/t16-siege-floe-beach-test.mjs scripts/mammoth-road-test.mjs scripts/mammoth-road-test.mjs scripts/gulls-map-test.mjs scripts/gulls-rook-test.mjs scripts/ride-the-line-test.mjs scripts/gallowmere-test.mjs scripts/gallowmere-content-test.mjs scripts/fishing-derby-test.mjs scripts/sled-run-test.mjs scripts/eastern-marches-a-test.mjs scripts/windward-chalkshell-test.mjs scripts/gullhook-head-test.mjs scripts/webfen-test.mjs scripts/safe-pockets-test.mjs scripts/gallowmere-extras-test.mjs scripts/t53-high-ledge-skill-quests-test.mjs scripts/camp-traders-recommended-test.mjs scripts/west-coast-test.mjs scripts/heartwood-hunt-test.mjs scripts/calverton-extension-test.mjs scripts/gravewatch-test.mjs scripts/tide-of-blood-test.mjs scripts/north-wilds-test.mjs scripts/toll-road-test.mjs",
26
26
  "dev": "tsc -p tsconfig.json --watch",
27
27
  "prepare": "npm run build",
28
28
  "prepublishOnly": "npm run build"