@dreadwood-types/types 0.1.349 → 0.1.350
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/campStations.d.ts.map +1 -1
- package/dist/campStations.js +2 -1
- package/dist/campStations.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/quests.d.ts.map +1 -1
- package/dist/quests.js +13 -0
- package/dist/quests.js.map +1 -1
- package/dist/storyQuests.d.ts +2 -1
- package/dist/storyQuests.d.ts.map +1 -1
- package/dist/storyQuests.js +4 -0
- package/dist/storyQuests.js.map +1 -1
- package/dist/woodsBelts.d.ts +209 -0
- package/dist/woodsBelts.d.ts.map +1 -0
- package/dist/woodsBelts.js +509 -0
- package/dist/woodsBelts.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,509 @@
|
|
|
1
|
+
export const WOODS_RINGS_NAME = 'The Outer and Deep Woods';
|
|
2
|
+
export const WOODS_BELTS = [
|
|
3
|
+
{ id: 'spoil-heaps', ring: 2, name: 'The Spoil Heaps', x: 617, z: 590, band: 'levels 10-20', what: 'iron seams (Mining 15) and tin seams (Mining 5), a wolf pack on the east side' },
|
|
4
|
+
{ id: 'bank-beds', ring: 2, name: 'The Bank Beds', x: 614, z: 558, band: 'levels 10-20', what: "hawkweed (Foraging 14) and bloodroot (Foraging 18) on the Blood River's south bank" },
|
|
5
|
+
{ id: 'hardy-stand', ring: 2, name: 'The Hardy Stand', x: 627, z: 603, band: 'levels 10-20', what: 'living pine (Woodwork 10), spruce (15) and hazel (20) to fell, the last green trees on the east side' },
|
|
6
|
+
{ id: 'grave-cut', ring: 2, name: 'The Grave-Cut', x: 302, z: 588, band: 'levels 10-20', what: 'iron and tin seams, hawkweed, pine and spruce, and a wolf pack, north of the Crypt Grounds' },
|
|
7
|
+
{ id: 'deepwood-stand', ring: 3, name: 'The Deepwood Stand', x: 350, z: 442, band: 'levels 18-28', what: 'alder (Woodwork 25), ironwort (Foraging 22) and nightshade (Foraging 25), south of the Forester\'s camp' },
|
|
8
|
+
{ id: 'deepwood-cut', ring: 3, name: 'The Deepwood Cut', x: 350, z: 468, band: 'levels 18-28', what: 'coal (Mining 22) and iron (Mining 15) south of the Deepwood Stand' },
|
|
9
|
+
{ id: 'mire-rim', ring: 3, name: 'The Mire Rim', x: 580, z: 497, band: 'levels 22-28', what: "marsh marigold (Foraging 29) on the Blood Mire's north rim" },
|
|
10
|
+
];
|
|
11
|
+
const P = (belt, kind, style, list) => list.map(([dx, dz], i) => ({ id: `r23-${belt}-${style}-${i + 1}`, belt, kind, style, dx, dz }));
|
|
12
|
+
/** Every seam, patch and tree, as offsets from its belt's centre (at least four tiles apart, so a belt is walked and a pair of players never share a rock's tile). */
|
|
13
|
+
const PIECES = [
|
|
14
|
+
...P('spoil-heaps', 'orerock', 'iron', [[-8, -4], [-1, -8], [7, -5], [9, 3]]),
|
|
15
|
+
...P('spoil-heaps', 'orerock', 'tin', [[-6, 4], [2, 5]]),
|
|
16
|
+
...P('bank-beds', 'herbpatch', 'hawkweed', [[-10, 3], [-4, 5], [3, 4], [10, 2]]),
|
|
17
|
+
...P('bank-beds', 'herbpatch', 'bloodroot', [[-8, -3], [-2, -2], [5, -3], [11, -2]]),
|
|
18
|
+
...P('hardy-stand', 'tree', 'pine', [[-5, -2], [0, -4], [5, -2]]),
|
|
19
|
+
...P('hardy-stand', 'tree', 'spruce', [[-3, 1], [3, 1]]),
|
|
20
|
+
...P('hardy-stand', 'tree', 'hazel', [[-7, 3], [7, 3]]),
|
|
21
|
+
...P('grave-cut', 'orerock', 'iron', [[-7, -3], [0, -6], [7, -2]]),
|
|
22
|
+
...P('grave-cut', 'orerock', 'tin', [[-4, 3], [4, 4]]),
|
|
23
|
+
...P('grave-cut', 'herbpatch', 'hawkweed', [[-9, 9], [-3, 10], [3, 9], [9, 10]]),
|
|
24
|
+
...P('grave-cut', 'tree', 'pine', [[-12, 0], [-9, -7], [10, -8]]),
|
|
25
|
+
...P('grave-cut', 'tree', 'spruce', [[12, 1], [13, -4]]),
|
|
26
|
+
...P('deepwood-stand', 'tree', 'alder', [[-9, -4], [-4, -7], [1, -4], [6, -7], [10, -3]]),
|
|
27
|
+
...P('deepwood-stand', 'herbpatch', 'ironwort', [[-10, 5], [-5, 7], [0, 5]]),
|
|
28
|
+
...P('deepwood-stand', 'herbpatch', 'nightshade', [[5, 6], [10, 8], [14, 5], [-13, 8]]),
|
|
29
|
+
...P('deepwood-cut', 'orerock', 'coal', [[-8, -2], [-2, -5], [5, -2], [10, 2]]),
|
|
30
|
+
...P('deepwood-cut', 'orerock', 'iron', [[-5, 3], [4, 5]]),
|
|
31
|
+
...P('mire-rim', 'herbpatch', 'marshmarigold', [[-8, 0], [0, -2], [8, 0]]),
|
|
32
|
+
];
|
|
33
|
+
export const WOODS_PIECES = PIECES.map((p) => {
|
|
34
|
+
const belt = WOODS_BELTS.find((b) => b.id === p.belt);
|
|
35
|
+
return { ...p, x: belt.x + p.dx, z: belt.z + p.dz, ring: belt.ring };
|
|
36
|
+
});
|
|
37
|
+
/** The Mining, Foraging and Woodwork level each style asks (equal to the game's own tables: woods-belts-test.mjs). */
|
|
38
|
+
export const WOODS_PIECE_LEVEL = {
|
|
39
|
+
copper: { skill: 'mining', level: 1 },
|
|
40
|
+
tin: { skill: 'mining', level: 5 },
|
|
41
|
+
iron: { skill: 'mining', level: 15 },
|
|
42
|
+
coal: { skill: 'mining', level: 22 },
|
|
43
|
+
hawkweed: { skill: 'foraging', level: 14 },
|
|
44
|
+
bloodroot: { skill: 'foraging', level: 18 },
|
|
45
|
+
ironwort: { skill: 'foraging', level: 22 },
|
|
46
|
+
nightshade: { skill: 'foraging', level: 25 },
|
|
47
|
+
marshmarigold: { skill: 'foraging', level: 29 },
|
|
48
|
+
pine: { skill: 'woodwork', level: 10 },
|
|
49
|
+
spruce: { skill: 'woodwork', level: 15 },
|
|
50
|
+
hazel: { skill: 'woodwork', level: 20 },
|
|
51
|
+
alder: { skill: 'woodwork', level: 25 },
|
|
52
|
+
};
|
|
53
|
+
/** How far a seam, patch or tree may move to find a free tile (the backend's placer; checked in the smoke). */
|
|
54
|
+
export const WOODS_PIECE_SEARCH = 3;
|
|
55
|
+
export const WOODS_WOLF_PACKS = [
|
|
56
|
+
{ id: 'heaps-north', ring: 2, name: 'the wolves between the Bank Beds and the Spoil Heaps', spots: [{ x: 602, z: 572 }, { x: 607, z: 573 }, { x: 612, z: 571 }, { x: 617, z: 572 }] },
|
|
57
|
+
{ id: 'heaps-east', ring: 2, name: 'the wolves on the east side of the Spoil Heaps', spots: [{ x: 638, z: 584 }, { x: 641, z: 588 }, { x: 640, z: 592 }] },
|
|
58
|
+
{ id: 'cut-west', ring: 2, name: 'the wolves by the Grave-Cut', spots: [{ x: 292, z: 607 }, { x: 299, z: 612 }, { x: 306, z: 608 }] },
|
|
59
|
+
];
|
|
60
|
+
export const WOODS_WOLF_ID_PREFIX = 'woods-wolf-';
|
|
61
|
+
/** How far a pack wolf wanders from its spot. */
|
|
62
|
+
export const WOODS_WOLF_LEASH = { radius: 3, speed: 0.9 };
|
|
63
|
+
/** The east strip's box: only wolves put down here count for Wolves at the Heaps (the Spoil Heaps' packs and the Bank Beds'). */
|
|
64
|
+
export const WOODS_EAST_STRIP_BOX = { minX: 598, maxX: 642, minZ: 548, maxZ: 616 };
|
|
65
|
+
// ---- the tracks and the signs --------------------------------------------------------------------------------------------------------
|
|
66
|
+
/** Dirt tracks (surface only, two wide): the Heaps Track from the yard's south-west way in, and the Deepwood Track from the Forester's camp. */
|
|
67
|
+
export const WOODS_TRACKS = [
|
|
68
|
+
{ id: 'heaps-track', name: 'the Heaps Track', w: 2, pts: [[604, 649], [598, 648], [598, 612], [607, 602], [612, 594]] },
|
|
69
|
+
{ id: 'deepwood-track', name: 'the Deepwood Track', w: 2, pts: [[336, 414], [342, 424], [347, 434], [350, 440]] },
|
|
70
|
+
];
|
|
71
|
+
/** Signs only name places (the placard signpost). */
|
|
72
|
+
export const WOODS_SIGNS = [
|
|
73
|
+
{ id: 'r23-sign-heaps', x: 607, z: 599, text: 'The Spoil Heaps. Iron and tin seams, and wolves about. Dreadwoods ground: other players can fight you here.' },
|
|
74
|
+
{ id: 'r23-sign-cut', x: 310, z: 585, text: 'The Grave-Cut. Iron, tin and herbs, and wolves about. Dreadwoods ground: other players can fight you here.' },
|
|
75
|
+
{ id: 'r23-sign-deepwood', x: 344, z: 447, text: 'The Deepwood Stand. Alder, herbs and a board; the Cut lies south. Dreadwoods ground: other players can fight you here.' },
|
|
76
|
+
];
|
|
77
|
+
// ---- the two boards and their people ----------------------------------------------------------------------------------------------------
|
|
78
|
+
export const WOODS_BOARD_IDS = { yard: 'camp-board-yard', deepwood: 'camp-board-deepwood' };
|
|
79
|
+
/** Two generic Bounty Boards in the open (NOT a safe post: no bank, no stall, no pocket), laid by the backend's campStations.ts with the others. */
|
|
80
|
+
export const WOODS_BOUNTY_BOARDS = [
|
|
81
|
+
{ id: WOODS_BOARD_IDS.yard, kind: 'bountyboard', style: 'wall-s', x: 608, z: 650, place: "the Dreadwoods Mine yard, just inside its south-west way in" },
|
|
82
|
+
{ id: WOODS_BOARD_IDS.deepwood, kind: 'bountyboard', style: 'wall-s', x: 346, z: 447, place: "the Deepwood Stand, south of the Forester's camp" },
|
|
83
|
+
];
|
|
84
|
+
export const WOODS_FOREMAN = { name: 'Foreman Hobb Garrow', x: 610, z: 651, faceX: 608, faceZ: 650 };
|
|
85
|
+
export const WOODS_REEVE = { name: 'Reeve Maud Ellery', x: 348, z: 448, faceX: 346, faceZ: 447 };
|
|
86
|
+
const FOREMAN = { kind: 'resident', name: WOODS_FOREMAN.name };
|
|
87
|
+
const REEVE = { kind: 'resident', name: WOODS_REEVE.name };
|
|
88
|
+
// ---- the jobs ---------------------------------------------------------------------------------------------------------------------
|
|
89
|
+
export const YARD_JOB_IDS = ['yardHeaps', 'yardTin', 'yardIron', 'yardHerbs', 'yardWolves', 'yardProps'];
|
|
90
|
+
export const DEEP_JOB_IDS = ['deepAlder', 'deepIronwort', 'deepNightshade', 'deepCoal', 'deepMossWolves'];
|
|
91
|
+
export const WOODS_JOB_IDS = [...YARD_JOB_IDS, ...DEEP_JOB_IDS];
|
|
92
|
+
/** Combat levels (placeholders). The skills the goods ask (Mining, Foraging, Woodwork) are in WOODS_PIECE_LEVEL and said on each step. */
|
|
93
|
+
export const WOODS_JOB_COMBAT = {
|
|
94
|
+
yardHeaps: 10,
|
|
95
|
+
yardTin: 10,
|
|
96
|
+
yardIron: 12,
|
|
97
|
+
yardHerbs: 12,
|
|
98
|
+
yardWolves: 14,
|
|
99
|
+
yardProps: 16,
|
|
100
|
+
deepAlder: 18,
|
|
101
|
+
deepIronwort: 20,
|
|
102
|
+
deepNightshade: 22,
|
|
103
|
+
deepCoal: 22,
|
|
104
|
+
deepMossWolves: 24,
|
|
105
|
+
};
|
|
106
|
+
/** What each hand-in asks (placeholders). */
|
|
107
|
+
export const WOODS_JOB_GOODS = {
|
|
108
|
+
yardTin: { kind: 'tin', qty: 8 },
|
|
109
|
+
yardIron: { kind: 'iron', qty: 6 },
|
|
110
|
+
yardHawkweed: { kind: 'hawkweed', qty: 4 },
|
|
111
|
+
yardBloodroot: { kind: 'bloodroot', qty: 3 },
|
|
112
|
+
yardPine: { kind: 'pinewood', qty: 8 },
|
|
113
|
+
yardSpruce: { kind: 'sprucewood', qty: 6 },
|
|
114
|
+
deepAlder: { kind: 'alderwood', qty: 10 },
|
|
115
|
+
deepIronwort: { kind: 'ironwort', qty: 4 },
|
|
116
|
+
deepNightshade: { kind: 'nightshade', qty: 4 },
|
|
117
|
+
deepCoal: { kind: 'coal', qty: 8 },
|
|
118
|
+
};
|
|
119
|
+
/** Kill counts (placeholders), sized under the packs (ten wolves in three packs) and the Grove's moss wolves (four, plus the Hunt's brood). */
|
|
120
|
+
export const WOODS_JOB_KILLS = { yardWolves: 6, deepMossWolves: 8 };
|
|
121
|
+
/** The Rotwood Grove's box (types rotwoodGrove.ts: centre 330,380, half-extents 22 x 17): only moss wolves put down inside it count. */
|
|
122
|
+
export const WOODS_GROVE_BOX = { minX: 308, maxX: 352, minZ: 363, maxZ: 397 };
|
|
123
|
+
const around = (p, r) => ({ minX: p.x - r, maxX: p.x + r, minZ: p.z - r, maxZ: p.z + r });
|
|
124
|
+
const COMBAT_CHOICE = ['strength', 'archery', 'precision'];
|
|
125
|
+
const PVP_NOTE = 'The woods are PvP: other players can strike you out there, and nobody may eat in a fight.';
|
|
126
|
+
const heaps = WOODS_BELTS.find((b) => b.id === 'spoil-heaps');
|
|
127
|
+
const YARD_AT = "the Dreadwoods Mine yard's south-west way in, by the Bounty Board";
|
|
128
|
+
const DEEP_AT = "the Deepwood Stand, south of the Forester's camp, by the Bounty Board";
|
|
129
|
+
export const WOODS_JOB_QUESTS = {
|
|
130
|
+
yardHeaps: {
|
|
131
|
+
giver: FOREMAN,
|
|
132
|
+
requires: {
|
|
133
|
+
combat: WOODS_JOB_COMBAT.yardHeaps,
|
|
134
|
+
refuse: `The Heaps are Dreadwoods ground, and the wolves there do not ask your level. Come back at Combat ${WOODS_JOB_COMBAT.yardHeaps}.`,
|
|
135
|
+
},
|
|
136
|
+
offer: "The yard's seams are worked thin and the rest of the ore is out on the Spoil Heaps, north along the track. I need somebody to go and look before I send my own men: is the track clear, are the faces still standing, are the wolves close? Walk it and tell me.",
|
|
137
|
+
accept: `Take the Heaps Track out of the yard's south-west way in and follow it north to the Spoil Heaps, then come back and tell me. Keep an eye out for wolves. ${PVP_NOTE}`,
|
|
138
|
+
decline: 'Then I send nobody, and the ore stays in the ground.',
|
|
139
|
+
steps: [
|
|
140
|
+
{
|
|
141
|
+
kind: 'reach',
|
|
142
|
+
area: around(heaps, 12),
|
|
143
|
+
at: { x: heaps.x, z: heaps.z, label: 'The Spoil Heaps' },
|
|
144
|
+
label: 'Walk the Heaps Track to the Spoil Heaps',
|
|
145
|
+
hint: "The Heaps Track leaves the Mine yard's south-west way in and runs north to the Spoil Heaps, about 55 tiles. Wolves hunt along the east side.",
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
kind: 'talk',
|
|
149
|
+
npc: FOREMAN,
|
|
150
|
+
label: 'Tell Foreman Garrow what you saw',
|
|
151
|
+
hint: `Foreman Hobb Garrow stands at ${YARD_AT}.`,
|
|
152
|
+
say: 'Track clear, faces standing, wolves keeping their distance this once. That is more than I hoped. The rest of the work is on the board and with me.',
|
|
153
|
+
},
|
|
154
|
+
],
|
|
155
|
+
done: 'There is something for the walk. The rest of the work is on the board and with me.',
|
|
156
|
+
after: 'The Heaps are open. I have more, if you have the stomach for the wolves.',
|
|
157
|
+
rewards: { coins: 90, xp: { explorer: 400 }, choiceXp: { qty: 200, skills: COMBAT_CHOICE } },
|
|
158
|
+
},
|
|
159
|
+
yardTin: {
|
|
160
|
+
giver: FOREMAN,
|
|
161
|
+
requires: {
|
|
162
|
+
combat: WOODS_JOB_COMBAT.yardTin,
|
|
163
|
+
skill: { skill: 'mining', level: 5 },
|
|
164
|
+
refuse: `Tin wants a pickaxe and Mining 5, and the faces are out on the Heaps with the wolves. Come back at Combat ${WOODS_JOB_COMBAT.yardTin}.`,
|
|
165
|
+
},
|
|
166
|
+
offer: 'The rails want pins and the pins want tin. The yard has its one seam and half the crew fighting over it. Eight lumps from the Heaps, or from the Grave-Cut in the south-west if you would rather, and the yard pays well.',
|
|
167
|
+
accept: `Tin needs Mining 5 and a pickaxe. The Spoil Heaps have two tin seams and the Grave-Cut two more; a worked seam stands empty a while. ${PVP_NOTE}`,
|
|
168
|
+
decline: 'Then the rails stay loose.',
|
|
169
|
+
steps: [
|
|
170
|
+
{
|
|
171
|
+
kind: 'deliver',
|
|
172
|
+
npc: FOREMAN,
|
|
173
|
+
items: [{ kinds: [WOODS_JOB_GOODS.yardTin.kind], qty: WOODS_JOB_GOODS.yardTin.qty, label: 'Tin ore' }],
|
|
174
|
+
skill: { skill: 'mining', level: 5 },
|
|
175
|
+
label: `Bring Foreman Garrow ${WOODS_JOB_GOODS.yardTin.qty} tin ore`,
|
|
176
|
+
hint: `Mine tin at the Spoil Heaps or the Grave-Cut (Mining 5), then bring it to Foreman Hobb Garrow at ${YARD_AT}.`,
|
|
177
|
+
say: 'Grey and heavy, and enough of it. The pins will get cut tonight. Here is your pay.',
|
|
178
|
+
short: `Eight lumps of tin ore, mined by someone who can reach it (Mining 5).`,
|
|
179
|
+
},
|
|
180
|
+
],
|
|
181
|
+
done: 'Good tin. The yard remembers who brings it.',
|
|
182
|
+
after: 'The rails hold. Iron is the next thing I am short of.',
|
|
183
|
+
rewards: { coins: 120, xp: { explorer: 300, mining: 600 } },
|
|
184
|
+
},
|
|
185
|
+
yardIron: {
|
|
186
|
+
giver: FOREMAN,
|
|
187
|
+
requires: {
|
|
188
|
+
combat: WOODS_JOB_COMBAT.yardIron,
|
|
189
|
+
skill: { skill: 'mining', level: 15 },
|
|
190
|
+
refuse: `Iron wants an iron pickaxe and Mining 15, and the faces where it is are in wolf country. Come back at Combat ${WOODS_JOB_COMBAT.yardIron} with the pick for it.`,
|
|
191
|
+
},
|
|
192
|
+
offer: 'Iron is what the yard lives on and the yard has two seams to its name. The Spoil Heaps have four, and the Grave-Cut three. Bring me six lumps and I will pay for the walk and the wolves both.',
|
|
193
|
+
accept: `Iron needs an iron pickaxe (Mining 15; the smith in Calverton's quest for it is Iron for the Smith). Mine six at the Spoil Heaps or the Grave-Cut and bring them here. ${PVP_NOTE}`,
|
|
194
|
+
decline: 'Then the yard runs on what it has.',
|
|
195
|
+
steps: [
|
|
196
|
+
{
|
|
197
|
+
kind: 'deliver',
|
|
198
|
+
npc: FOREMAN,
|
|
199
|
+
items: [{ kinds: [WOODS_JOB_GOODS.yardIron.kind], qty: WOODS_JOB_GOODS.yardIron.qty, label: 'Iron ore' }],
|
|
200
|
+
skill: { skill: 'mining', level: 15 },
|
|
201
|
+
label: `Bring Foreman Garrow ${WOODS_JOB_GOODS.yardIron.qty} iron ore`,
|
|
202
|
+
hint: `Mine iron at the Spoil Heaps or the Grave-Cut (Mining 15, an iron pickaxe), then bring it to Foreman Hobb Garrow at ${YARD_AT}.`,
|
|
203
|
+
say: 'Six good lumps. The smith in the Hold will be glad of these, and so am I. Here.',
|
|
204
|
+
short: 'Six lumps of iron ore, mined by someone with Mining 15 and an iron pickaxe.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
done: 'That is a real day of work. Here is the yard\'s pay for it.',
|
|
208
|
+
after: 'The iron is moving. Herbs for the yard medic are next, if you want them.',
|
|
209
|
+
rewards: { coins: 220, xp: { explorer: 500, mining: 1100 } },
|
|
210
|
+
},
|
|
211
|
+
yardHerbs: {
|
|
212
|
+
giver: FOREMAN,
|
|
213
|
+
requires: {
|
|
214
|
+
combat: WOODS_JOB_COMBAT.yardHerbs,
|
|
215
|
+
skill: { skill: 'foraging', level: 18 },
|
|
216
|
+
refuse: `The herbs grow on the river bank and they want a forager's hand (Foraging 14 for hawkweed, 18 for bloodroot). Come back at Combat ${WOODS_JOB_COMBAT.yardHerbs}.`,
|
|
217
|
+
},
|
|
218
|
+
offer: "The yard's medic is out of everything that stops a wound going bad. Hawkweed and bloodroot grow along the river's south bank, north of the Heaps, in the Bank Beds. Four hawkweed and three bloodroot, and she will not be rude to you for a week.",
|
|
219
|
+
accept: `The Bank Beds are on the Blood River's south bank, north of the Spoil Heaps: hawkweed (Foraging 14) and bloodroot (Foraging 18). Wolves run between the Beds and the Heaps. ${PVP_NOTE}`,
|
|
220
|
+
decline: 'Then she goes on being rude to all of us.',
|
|
221
|
+
steps: [
|
|
222
|
+
{
|
|
223
|
+
kind: 'deliver',
|
|
224
|
+
npc: FOREMAN,
|
|
225
|
+
items: [
|
|
226
|
+
{ kinds: [WOODS_JOB_GOODS.yardHawkweed.kind], qty: WOODS_JOB_GOODS.yardHawkweed.qty, label: 'Hawkweed' },
|
|
227
|
+
{ kinds: [WOODS_JOB_GOODS.yardBloodroot.kind], qty: WOODS_JOB_GOODS.yardBloodroot.qty, label: 'Bloodroot' },
|
|
228
|
+
],
|
|
229
|
+
skill: { skill: 'foraging', level: 18 },
|
|
230
|
+
label: `Bring Foreman Garrow ${WOODS_JOB_GOODS.yardHawkweed.qty} hawkweed and ${WOODS_JOB_GOODS.yardBloodroot.qty} bloodroot`,
|
|
231
|
+
hint: `Pick them in the Bank Beds on the river's south bank (Foraging 14 and 18), then bring them to Foreman Hobb Garrow at ${YARD_AT}.`,
|
|
232
|
+
say: 'Yellow heads and red sap. She will be insufferable about it, which means she is pleased. Here is your share.',
|
|
233
|
+
short: 'Four hawkweed and three bloodroot, picked by a forager of Foraging 18.',
|
|
234
|
+
},
|
|
235
|
+
],
|
|
236
|
+
done: 'The medic is almost civil. That is worth a bonus.',
|
|
237
|
+
after: 'The Beds will grow back; the wolves will not stop.',
|
|
238
|
+
rewards: { coins: 240, xp: { explorer: 500, foraging: 1100 } },
|
|
239
|
+
},
|
|
240
|
+
yardWolves: {
|
|
241
|
+
giver: FOREMAN,
|
|
242
|
+
requires: {
|
|
243
|
+
combat: WOODS_JOB_COMBAT.yardWolves,
|
|
244
|
+
refuse: `The packs are level 12-14 and they hunt together. Come back at Combat ${WOODS_JOB_COMBAT.yardWolves}.`,
|
|
245
|
+
},
|
|
246
|
+
offer: 'The wolves on the east side have taken a man off the Heaps and two off the Bank Beds. Six of them put down will make the walk safe for a while. They drop good pelts, if you care to keep them.',
|
|
247
|
+
accept: `Two packs hunt the east side, between the Bank Beds and the Spoil Heaps: kill six wolves there (only the ones on the east side count) and come back. A wolf lunges at anyone within four paces. ${PVP_NOTE}`,
|
|
248
|
+
decline: 'Then they keep what they take.',
|
|
249
|
+
steps: [
|
|
250
|
+
{
|
|
251
|
+
kind: 'kill',
|
|
252
|
+
npcKinds: ['wolf'],
|
|
253
|
+
qty: WOODS_JOB_KILLS.yardWolves,
|
|
254
|
+
npcLabel: 'wolves on the east side',
|
|
255
|
+
inArea: { ...WOODS_EAST_STRIP_BOX },
|
|
256
|
+
label: `Kill ${WOODS_JOB_KILLS.yardWolves} wolves on the east side of the woods`,
|
|
257
|
+
hint: `Two packs (level 12-14) hunt the east strip between the Bank Beds and the Spoil Heaps. Only wolves put down there count. ${PVP_NOTE}`,
|
|
258
|
+
place: { x: heaps.x, z: heaps.z - 16, label: 'The east side wolves' },
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
kind: 'talk',
|
|
262
|
+
npc: FOREMAN,
|
|
263
|
+
label: 'Tell Foreman Garrow the wolves are thinned',
|
|
264
|
+
hint: `Foreman Hobb Garrow stands at ${YARD_AT}.`,
|
|
265
|
+
say: 'Six fewer. They will be back by the week, but my men will sleep tonight. A fair wage for it.',
|
|
266
|
+
},
|
|
267
|
+
],
|
|
268
|
+
done: 'That is the wolf wage. Sell the pelts, or keep them, but do not leave them on the ground.',
|
|
269
|
+
after: 'The east side is quieter, and the packs always fill up again.',
|
|
270
|
+
rewards: { coins: 260, xp: { explorer: 600 }, choiceXp: { qty: 800, skills: COMBAT_CHOICE } },
|
|
271
|
+
},
|
|
272
|
+
yardProps: {
|
|
273
|
+
giver: FOREMAN,
|
|
274
|
+
requires: {
|
|
275
|
+
combat: WOODS_JOB_COMBAT.yardProps,
|
|
276
|
+
skill: { skill: 'woodwork', level: 15 },
|
|
277
|
+
refuse: `Pit props want good timber and a woodcutter's hand (Woodwork 10 for pine, 15 for spruce). Come back at Combat ${WOODS_JOB_COMBAT.yardProps}.`,
|
|
278
|
+
},
|
|
279
|
+
offer: 'The shaft is breathing out dust and the old props are going. Pine and spruce, cut green and cut well: eight pine and six spruce. The Hardy Stand, north of the yard behind its knoll, is the only living timber on this side of the woods.',
|
|
280
|
+
accept: `The Hardy Stand stands north of the yard's knoll: pine (Woodwork 10), spruce (15) and hazel (20). Bring eight pine logs and six spruce logs. You need a hatchet. ${PVP_NOTE}`,
|
|
281
|
+
decline: 'Then the shaft keeps breathing.',
|
|
282
|
+
steps: [
|
|
283
|
+
{
|
|
284
|
+
kind: 'deliver',
|
|
285
|
+
npc: FOREMAN,
|
|
286
|
+
items: [
|
|
287
|
+
{ kinds: [WOODS_JOB_GOODS.yardPine.kind], qty: WOODS_JOB_GOODS.yardPine.qty, label: 'Pine logs' },
|
|
288
|
+
{ kinds: [WOODS_JOB_GOODS.yardSpruce.kind], qty: WOODS_JOB_GOODS.yardSpruce.qty, label: 'Spruce logs' },
|
|
289
|
+
],
|
|
290
|
+
skill: { skill: 'woodwork', level: 15 },
|
|
291
|
+
label: `Bring Foreman Garrow ${WOODS_JOB_GOODS.yardPine.qty} pine logs and ${WOODS_JOB_GOODS.yardSpruce.qty} spruce logs`,
|
|
292
|
+
hint: `Fell them at the Hardy Stand north of the yard's knoll (Woodwork 10 and 15, a hatchet), then bring them to Foreman Hobb Garrow at ${YARD_AT}.`,
|
|
293
|
+
say: 'Straight grain and green. The shaft will hold another year on these. Here is the yard\'s pay.',
|
|
294
|
+
short: 'Eight pine logs and six spruce logs, cut by a woodcutter of Woodwork 15.',
|
|
295
|
+
},
|
|
296
|
+
],
|
|
297
|
+
done: 'Good timber. That is the last of the yard\'s work I have for you.',
|
|
298
|
+
after: 'The shaft holds. The deeper woods have their own work: the Reeve at the Deepwood Stand keeps a board of it.',
|
|
299
|
+
rewards: { coins: 300, xp: { explorer: 700, woodwork: 1200 } },
|
|
300
|
+
},
|
|
301
|
+
deepAlder: {
|
|
302
|
+
giver: REEVE,
|
|
303
|
+
requires: {
|
|
304
|
+
combat: WOODS_JOB_COMBAT.deepAlder,
|
|
305
|
+
skill: { skill: 'woodwork', level: 25 },
|
|
306
|
+
refuse: `The Stand's alder wants a good axe arm (Woodwork 25) and the Deep Woods want Combat ${WOODS_JOB_COMBAT.deepAlder}. Come back when you have both.`,
|
|
307
|
+
},
|
|
308
|
+
offer: "I keep the tally for the Deepwood Stand: what comes in, what goes out to Gallowmere, and who did not come back. Alder first. It is the one wood that does not rot in the damp, and the Stand has five. Ten logs and my ledger shows you as a friend.",
|
|
309
|
+
accept: `The five alders of the Deepwood Stand are right here, south of the Forester's camp (Woodwork 25, a hatchet). Fell ten logs and bring them to me. ${PVP_NOTE}`,
|
|
310
|
+
decline: 'Then the ledger stays blank.',
|
|
311
|
+
steps: [
|
|
312
|
+
{
|
|
313
|
+
kind: 'deliver',
|
|
314
|
+
npc: REEVE,
|
|
315
|
+
items: [{ kinds: [WOODS_JOB_GOODS.deepAlder.kind], qty: WOODS_JOB_GOODS.deepAlder.qty, label: 'Alder logs' }],
|
|
316
|
+
skill: { skill: 'woodwork', level: 25 },
|
|
317
|
+
label: `Bring Reeve Ellery ${WOODS_JOB_GOODS.deepAlder.qty} alder logs`,
|
|
318
|
+
hint: `Fell them at the Deepwood Stand (Woodwork 25, a hatchet), then bring them to Reeve Maud Ellery at ${DEEP_AT}.`,
|
|
319
|
+
say: 'Ten logs, close grain, no rot. That goes in the ledger in your name. Here is your pay.',
|
|
320
|
+
short: 'Ten alder logs, cut by a woodcutter of Woodwork 25.',
|
|
321
|
+
},
|
|
322
|
+
],
|
|
323
|
+
done: 'Written down, and paid. The Stand has more than logs.',
|
|
324
|
+
after: 'The alders grow back in their own time. Herbs are next, if you want them.',
|
|
325
|
+
rewards: { coins: 380, xp: { explorer: 700, woodwork: 1400 } },
|
|
326
|
+
},
|
|
327
|
+
deepIronwort: {
|
|
328
|
+
giver: REEVE,
|
|
329
|
+
requires: {
|
|
330
|
+
combat: WOODS_JOB_COMBAT.deepIronwort,
|
|
331
|
+
skill: { skill: 'foraging', level: 22 },
|
|
332
|
+
refuse: `Ironwort is stiff and it wants a forager of Foraging 22. Come back at Combat ${WOODS_JOB_COMBAT.deepIronwort}.`,
|
|
333
|
+
},
|
|
334
|
+
offer: 'Ironwort grows in the stony ground at the Stand, and Gallowmere pays well for it: the crews put it in the poultice for a cut that will not close. Four stems, and I will say a good word to the village.',
|
|
335
|
+
accept: `Three ironwort patches grow at the Deepwood Stand (Foraging 22). Pick four stems and bring them to me. ${PVP_NOTE}`,
|
|
336
|
+
decline: 'Then the poultice goes without.',
|
|
337
|
+
steps: [
|
|
338
|
+
{
|
|
339
|
+
kind: 'deliver',
|
|
340
|
+
npc: REEVE,
|
|
341
|
+
items: [{ kinds: [WOODS_JOB_GOODS.deepIronwort.kind], qty: WOODS_JOB_GOODS.deepIronwort.qty, label: 'Ironwort' }],
|
|
342
|
+
skill: { skill: 'foraging', level: 22 },
|
|
343
|
+
label: `Bring Reeve Ellery ${WOODS_JOB_GOODS.deepIronwort.qty} ironwort`,
|
|
344
|
+
hint: `Pick ironwort at the Deepwood Stand (Foraging 22), then bring it to Reeve Maud Ellery at ${DEEP_AT}.`,
|
|
345
|
+
say: 'Stiff as tin and the right grey. Gallowmere will have its poultice. Here is your share.',
|
|
346
|
+
short: 'Four stems of ironwort, picked by a forager of Foraging 22.',
|
|
347
|
+
},
|
|
348
|
+
],
|
|
349
|
+
done: 'The Reeve pays in coin and in good words, and the words are worth more.',
|
|
350
|
+
after: 'The patches grow back slowly. Nightshade is the other herb the Stand keeps.',
|
|
351
|
+
rewards: { coins: 340, xp: { explorer: 700, foraging: 1100 } },
|
|
352
|
+
},
|
|
353
|
+
deepNightshade: {
|
|
354
|
+
giver: REEVE,
|
|
355
|
+
requires: {
|
|
356
|
+
combat: WOODS_JOB_COMBAT.deepNightshade,
|
|
357
|
+
skill: { skill: 'foraging', level: 25 },
|
|
358
|
+
refuse: `Nightshade is a careful pick (Foraging 25). Come back at Combat ${WOODS_JOB_COMBAT.deepNightshade}.`,
|
|
359
|
+
},
|
|
360
|
+
offer: 'Nightshade will drop a horse and cure a fever, depending on the dose, and the physicians in the towns pay for it by the sprig. It grows at the east end of the Stand and a little way off it. Four clusters, and do not taste your fingers.',
|
|
361
|
+
accept: `Nightshade patches grow at the Deepwood Stand (Foraging 25). Pick four clusters and bring them to me. ${PVP_NOTE}`,
|
|
362
|
+
decline: 'Then the physicians go without.',
|
|
363
|
+
steps: [
|
|
364
|
+
{
|
|
365
|
+
kind: 'deliver',
|
|
366
|
+
npc: REEVE,
|
|
367
|
+
items: [{ kinds: [WOODS_JOB_GOODS.deepNightshade.kind], qty: WOODS_JOB_GOODS.deepNightshade.qty, label: 'Nightshade' }],
|
|
368
|
+
skill: { skill: 'foraging', level: 25 },
|
|
369
|
+
label: `Bring Reeve Ellery ${WOODS_JOB_GOODS.deepNightshade.qty} nightshade`,
|
|
370
|
+
hint: `Pick nightshade at the Deepwood Stand (Foraging 25), then bring it to Reeve Maud Ellery at ${DEEP_AT}.`,
|
|
371
|
+
say: 'Ripe, and you kept your fingers out of your mouth. Good. Here is your pay.',
|
|
372
|
+
short: 'Four clusters of nightshade, picked by a forager of Foraging 25.',
|
|
373
|
+
},
|
|
374
|
+
],
|
|
375
|
+
done: 'Careful hands. The Reeve has marked you in the ledger.',
|
|
376
|
+
after: 'The patches ripen slowly. Coal is the other thing the Stand wants.',
|
|
377
|
+
rewards: { coins: 420, xp: { explorer: 800, foraging: 1300 } },
|
|
378
|
+
},
|
|
379
|
+
deepCoal: {
|
|
380
|
+
giver: REEVE,
|
|
381
|
+
requires: {
|
|
382
|
+
combat: WOODS_JOB_COMBAT.deepCoal,
|
|
383
|
+
skill: { skill: 'mining', level: 22 },
|
|
384
|
+
refuse: `Coal wants Mining 22 and an iron pickaxe. Come back at Combat ${WOODS_JOB_COMBAT.deepCoal}.`,
|
|
385
|
+
},
|
|
386
|
+
offer: 'Steel wants coal and the forge in Gallowmere is burning charcoal at three times the price. The Cut, just south of the Stand, has coal and iron both: eight lumps of coal and I will see the smith knows your name.',
|
|
387
|
+
accept: `The Deepwood Cut lies just south of the Stand: four coal seams (Mining 22, an iron pickaxe) and two iron. Mine eight coal and bring it to me. ${PVP_NOTE}`,
|
|
388
|
+
decline: 'Then the forge burns charcoal.',
|
|
389
|
+
steps: [
|
|
390
|
+
{
|
|
391
|
+
kind: 'deliver',
|
|
392
|
+
npc: REEVE,
|
|
393
|
+
items: [{ kinds: [WOODS_JOB_GOODS.deepCoal.kind], qty: WOODS_JOB_GOODS.deepCoal.qty, label: 'Coal' }],
|
|
394
|
+
skill: { skill: 'mining', level: 22 },
|
|
395
|
+
label: `Bring Reeve Ellery ${WOODS_JOB_GOODS.deepCoal.qty} coal`,
|
|
396
|
+
hint: `Mine coal at the Deepwood Cut (Mining 22, an iron pickaxe), then bring it to Reeve Maud Ellery at ${DEEP_AT}.`,
|
|
397
|
+
say: 'Black and hard and eight lumps of it. The forge will thank you. Here is your pay.',
|
|
398
|
+
short: 'Eight lumps of coal, mined by someone with Mining 22 and an iron pickaxe.',
|
|
399
|
+
},
|
|
400
|
+
],
|
|
401
|
+
done: 'That is a good load. The Cut is yours whenever the seams have refilled.',
|
|
402
|
+
after: 'The seams refill; the forge never stops asking.',
|
|
403
|
+
rewards: { coins: 450, xp: { explorer: 800, mining: 1500 } },
|
|
404
|
+
},
|
|
405
|
+
deepMossWolves: {
|
|
406
|
+
giver: REEVE,
|
|
407
|
+
requires: {
|
|
408
|
+
combat: WOODS_JOB_COMBAT.deepMossWolves,
|
|
409
|
+
refuse: `The moss wolves of the Grove are level 24 and they hunt in the open. Come back at Combat ${WOODS_JOB_COMBAT.deepMossWolves}.`,
|
|
410
|
+
},
|
|
411
|
+
offer: "North of the Forester's camp the Rotwood Grove breeds moss wolves, and the packs press on my Stand whenever the Ent stirs. Eight of them put down inside the Grove and I can sleep a few nights. It is the hardest thing I will ask of you.",
|
|
412
|
+
accept: `Go north into the Rotwood Grove and put down eight moss wolves inside it (only the ones in the Grove count). The Ent is there too: do not wake it for sport. ${PVP_NOTE}`,
|
|
413
|
+
decline: 'Then I keep one eye open.',
|
|
414
|
+
steps: [
|
|
415
|
+
{
|
|
416
|
+
kind: 'kill',
|
|
417
|
+
npcKinds: ['mosswolf'],
|
|
418
|
+
qty: WOODS_JOB_KILLS.deepMossWolves,
|
|
419
|
+
npcLabel: 'moss wolves in the Grove',
|
|
420
|
+
inArea: { ...WOODS_GROVE_BOX },
|
|
421
|
+
label: `Kill ${WOODS_JOB_KILLS.deepMossWolves} moss wolves in the Rotwood Grove`,
|
|
422
|
+
hint: `Moss wolves (level 24) prowl the Rotwood Grove, north of the Forester's camp. Only moss wolves put down inside the Grove count. ${PVP_NOTE}`,
|
|
423
|
+
place: { x: 330, z: 380, label: 'The Rotwood Grove' },
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
kind: 'talk',
|
|
427
|
+
npc: REEVE,
|
|
428
|
+
label: 'Tell Reeve Ellery the Grove is quieter',
|
|
429
|
+
hint: `Reeve Maud Ellery stands at ${DEEP_AT}.`,
|
|
430
|
+
say: 'Eight fewer, and the Stand still standing. That is the hardest job on my board and you did it. Here is the Reeve\'s best.',
|
|
431
|
+
},
|
|
432
|
+
],
|
|
433
|
+
done: 'That is the best I can pay, and it is not enough. The Deep Woods go on a long way past the Stand, for those with the legs for it.',
|
|
434
|
+
after: 'The Grove fills again. It always does.',
|
|
435
|
+
rewards: { coins: 600, xp: { explorer: 900 }, choiceXp: { qty: 1000, skills: COMBAT_CHOICE } },
|
|
436
|
+
},
|
|
437
|
+
};
|
|
438
|
+
export const WOODS_JOB_META = {
|
|
439
|
+
yardHeaps: {
|
|
440
|
+
title: 'Walk the Spoil Heaps',
|
|
441
|
+
description: `Foreman Hobb Garrow wants the Heaps Track walked from the Mine yard north to the Spoil Heaps and the news brought back. Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardHeaps}.`,
|
|
442
|
+
category: 'combat',
|
|
443
|
+
art: { item: 'iron' },
|
|
444
|
+
},
|
|
445
|
+
yardTin: {
|
|
446
|
+
title: 'Tin for the Rails',
|
|
447
|
+
description: `Foreman Hobb Garrow wants ${WOODS_JOB_GOODS.yardTin.qty} tin ore from the Spoil Heaps or the Grave-Cut (Mining 5). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardTin}.`,
|
|
448
|
+
category: 'skilling',
|
|
449
|
+
art: { item: 'tin' },
|
|
450
|
+
},
|
|
451
|
+
yardIron: {
|
|
452
|
+
title: 'Iron for the Yard',
|
|
453
|
+
description: `Foreman Hobb Garrow wants ${WOODS_JOB_GOODS.yardIron.qty} iron ore from the Spoil Heaps or the Grave-Cut (Mining 15, an iron pickaxe). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardIron}.`,
|
|
454
|
+
category: 'skilling',
|
|
455
|
+
art: { item: 'iron' },
|
|
456
|
+
},
|
|
457
|
+
yardHerbs: {
|
|
458
|
+
title: "Herbs for the Yard's Medic",
|
|
459
|
+
description: `Foreman Hobb Garrow wants ${WOODS_JOB_GOODS.yardHawkweed.qty} hawkweed and ${WOODS_JOB_GOODS.yardBloodroot.qty} bloodroot from the Bank Beds on the Blood River's south bank (Foraging 18). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardHerbs}.`,
|
|
460
|
+
category: 'skilling',
|
|
461
|
+
art: { item: 'bloodroot' },
|
|
462
|
+
},
|
|
463
|
+
yardWolves: {
|
|
464
|
+
title: 'Wolves at the Heaps',
|
|
465
|
+
description: `Kill ${WOODS_JOB_KILLS.yardWolves} wolves on the east side of the woods, between the Bank Beds and the Spoil Heaps, then tell Foreman Hobb Garrow. Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardWolves}.`,
|
|
466
|
+
category: 'combat',
|
|
467
|
+
art: { item: 'wolfpelt' },
|
|
468
|
+
},
|
|
469
|
+
yardProps: {
|
|
470
|
+
title: 'Pit Props for the Shaft',
|
|
471
|
+
description: `Foreman Hobb Garrow wants ${WOODS_JOB_GOODS.yardPine.qty} pine logs and ${WOODS_JOB_GOODS.yardSpruce.qty} spruce logs from the Hardy Stand north of the yard's knoll (Woodwork 15). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.yardProps}.`,
|
|
472
|
+
category: 'skilling',
|
|
473
|
+
art: { item: 'pinewood' },
|
|
474
|
+
},
|
|
475
|
+
deepAlder: {
|
|
476
|
+
title: 'Alder for the Ledger',
|
|
477
|
+
description: `Reeve Maud Ellery wants ${WOODS_JOB_GOODS.deepAlder.qty} alder logs from the Deepwood Stand (Woodwork 25). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.deepAlder}.`,
|
|
478
|
+
category: 'skilling',
|
|
479
|
+
art: { item: 'alderwood' },
|
|
480
|
+
},
|
|
481
|
+
deepIronwort: {
|
|
482
|
+
title: 'Ironwort for the Poultice',
|
|
483
|
+
description: `Reeve Maud Ellery wants ${WOODS_JOB_GOODS.deepIronwort.qty} ironwort from the Deepwood Stand (Foraging 22). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.deepIronwort}.`,
|
|
484
|
+
category: 'skilling',
|
|
485
|
+
art: { item: 'ironwort' },
|
|
486
|
+
},
|
|
487
|
+
deepNightshade: {
|
|
488
|
+
title: 'Nightshade for the Physicians',
|
|
489
|
+
description: `Reeve Maud Ellery wants ${WOODS_JOB_GOODS.deepNightshade.qty} nightshade from the Deepwood Stand (Foraging 25). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.deepNightshade}.`,
|
|
490
|
+
category: 'skilling',
|
|
491
|
+
art: { item: 'nightshade' },
|
|
492
|
+
},
|
|
493
|
+
deepCoal: {
|
|
494
|
+
title: 'Coal for the Forge',
|
|
495
|
+
description: `Reeve Maud Ellery wants ${WOODS_JOB_GOODS.deepCoal.qty} coal from the Deepwood Cut (Mining 22, an iron pickaxe). Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.deepCoal}.`,
|
|
496
|
+
category: 'skilling',
|
|
497
|
+
art: { item: 'coal' },
|
|
498
|
+
},
|
|
499
|
+
deepMossWolves: {
|
|
500
|
+
title: 'Moss Wolves in the Grove',
|
|
501
|
+
description: `Kill ${WOODS_JOB_KILLS.deepMossWolves} moss wolves inside the Rotwood Grove, then tell Reeve Maud Ellery. Other players can fight you there. Needs Combat ${WOODS_JOB_COMBAT.deepMossWolves}.`,
|
|
502
|
+
category: 'combat',
|
|
503
|
+
art: { item: 'wolffang' },
|
|
504
|
+
},
|
|
505
|
+
};
|
|
506
|
+
const YARD_PLACE = "Foreman Hobb Garrow stands by the Bounty Board just inside the Dreadwoods Mine yard's south-west way in (the yard is on the woods' east side, in the Outer Woods, west of the east gate). The woods are PvP and nobody may eat in a fight.";
|
|
507
|
+
const DEEP_PLACE = "Reeve Maud Ellery stands by the Bounty Board at the Deepwood Stand, south of the Forester's camp and the Rotwood Grove, in the Deep Woods (the Deepwood Track runs south from the camp). The woods are PvP and nobody may eat in a fight.";
|
|
508
|
+
export const WOODS_JOB_GIVER_PLACES = Object.fromEntries(WOODS_JOB_IDS.map((id) => [id, YARD_JOB_IDS.includes(id) ? YARD_PLACE : DEEP_PLACE]));
|
|
509
|
+
//# sourceMappingURL=woodsBelts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"woodsBelts.js","sourceRoot":"","sources":["../src/woodsBelts.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.
|
|
3
|
+
"version": "0.1.350",
|
|
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/pirate-bay-phase6-test.mjs scripts/bay-reaches-test.mjs scripts/pirate-ships-test.mjs scripts/crescent-queen-test.mjs scripts/port-blackwake-test.mjs scripts/pirate-treasure-test.mjs scripts/shop-food-test.mjs scripts/castaway-camp-test.mjs 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/border-kit-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/brackenstone-test.mjs scripts/lair-awakening-test.mjs scripts/spider-hollow-deeper-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/dwarf-road-camp-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/arcane-realms-test.mjs scripts/frozen-dungeons-test.mjs scripts/deep-seam-test.mjs scripts/hollow-delve-test.mjs scripts/mining-quests-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/ironjaw-watch-test.mjs scripts/beacon-night-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 scripts/capital-quests-test.mjs scripts/capital-shops-test.mjs scripts/lean-wanted-test.mjs scripts/delvers-ladder-test.mjs scripts/last-signal-test.mjs scripts/sea-salt-test.mjs scripts/dwarf-hold-hub-test.mjs scripts/field-guide-test.mjs scripts/titles-test.mjs scripts/dwarf-hold-hub-test.mjs scripts/voyages-test.mjs scripts/weekly-hunt-test.mjs scripts/west-branches-test.mjs scripts/skill-fill-test.mjs scripts/early-fill-test.mjs scripts/battlefield-test.mjs scripts/war-camp-drill-test.mjs scripts/camp-kitchens-test.mjs scripts/rangers-rest-test.mjs scripts/fishing-reaches-test.mjs scripts/thaw-crossing-test.mjs scripts/millstream-hamlet-test.mjs scripts/timber-convoy-test.mjs scripts/ashfall-camp-test.mjs scripts/tide-tunnel-test.mjs scripts/server-update-test.mjs scripts/border-jobs-test.mjs scripts/north-quarry-quest-test.mjs scripts/skills-31-40-test.mjs scripts/road-table-test.mjs scripts/woods-gear-ladder-test.mjs scripts/dark-heart-test.mjs",
|
|
25
|
+
"test": "node --test scripts/pirate-bay-phase6-test.mjs scripts/bay-reaches-test.mjs scripts/pirate-ships-test.mjs scripts/crescent-queen-test.mjs scripts/port-blackwake-test.mjs scripts/pirate-treasure-test.mjs scripts/shop-food-test.mjs scripts/castaway-camp-test.mjs 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/border-kit-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/brackenstone-test.mjs scripts/lair-awakening-test.mjs scripts/spider-hollow-deeper-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/dwarf-road-camp-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/arcane-realms-test.mjs scripts/frozen-dungeons-test.mjs scripts/deep-seam-test.mjs scripts/hollow-delve-test.mjs scripts/mining-quests-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/ironjaw-watch-test.mjs scripts/beacon-night-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 scripts/capital-quests-test.mjs scripts/capital-shops-test.mjs scripts/lean-wanted-test.mjs scripts/delvers-ladder-test.mjs scripts/last-signal-test.mjs scripts/sea-salt-test.mjs scripts/dwarf-hold-hub-test.mjs scripts/field-guide-test.mjs scripts/titles-test.mjs scripts/dwarf-hold-hub-test.mjs scripts/voyages-test.mjs scripts/weekly-hunt-test.mjs scripts/west-branches-test.mjs scripts/skill-fill-test.mjs scripts/early-fill-test.mjs scripts/battlefield-test.mjs scripts/war-camp-drill-test.mjs scripts/camp-kitchens-test.mjs scripts/rangers-rest-test.mjs scripts/fishing-reaches-test.mjs scripts/thaw-crossing-test.mjs scripts/millstream-hamlet-test.mjs scripts/timber-convoy-test.mjs scripts/ashfall-camp-test.mjs scripts/tide-tunnel-test.mjs scripts/server-update-test.mjs scripts/border-jobs-test.mjs scripts/north-quarry-quest-test.mjs scripts/skills-31-40-test.mjs scripts/road-table-test.mjs scripts/woods-gear-ladder-test.mjs scripts/dark-heart-test.mjs scripts/woods-belts-test.mjs",
|
|
26
26
|
"dev": "tsc -p tsconfig.json --watch",
|
|
27
27
|
"prepare": "npm run build",
|
|
28
28
|
"prepublishOnly": "npm run build"
|