stardew-valley-data 0.31.0 → 0.33.0
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/CHANGELOG.md +31 -0
- package/data/hats.json +88 -44
- package/dist/index.d.mts +24 -10
- package/dist/index.d.ts +24 -10
- package/dist/index.js +140 -61
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +140 -61
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,37 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project
|
|
6
6
|
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.33.0] - 2026-04-04
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Prices now available on hats data when applicable.
|
|
13
|
+
|
|
14
|
+
## [0.32.0] - 2026-03-29
|
|
15
|
+
|
|
16
|
+
### Breaking Changes
|
|
17
|
+
|
|
18
|
+
- `SaveData.pet: SavePet | null` renamed to `pets: SavePet[]` — all pets are now returned as an
|
|
19
|
+
array; callers must update property access from `data.pet` to `data.pets`
|
|
20
|
+
- `parsePet(root)` renamed to `parsePets(root, player)` — new signature accepts the raw player node
|
|
21
|
+
to identify the starter pet; returns `SavePet[]` instead of `SavePet | null`
|
|
22
|
+
- `SavePet` gains a required `starter: boolean` field — `true` for the pet chosen at game start
|
|
23
|
+
(matched by `whichPetType` + `whichPetBreed`), `false` for all additional pets
|
|
24
|
+
- `SaveToolLevels` tool fields changed from `number` to
|
|
25
|
+
`SaveToolLevel { level: number; enchantment: string | null }` — callers must update e.g.
|
|
26
|
+
`toolLevels.axe` → `toolLevels.axe.level`
|
|
27
|
+
- `SaveToolLevels` gains a required `currentlyUpgrading: SaveUpgradingTool | null` field — set when
|
|
28
|
+
a tool is at the blacksmith; the tool's `level` is backfilled to its pre-upgrade value
|
|
29
|
+
|
|
30
|
+
### Added
|
|
31
|
+
|
|
32
|
+
- `SaveToolLevel` interface (`level`, `enchantment`) — enchantment name is stripped of its
|
|
33
|
+
`Enchantment` suffix (e.g. `ShavingEnchantment` → `Shaving`), or `null` if none applied
|
|
34
|
+
- `SaveUpgradingTool` interface (`tool`, `name`) — identifies which tool is at the blacksmith and
|
|
35
|
+
its display name (e.g. `{ tool: 'pan', name: 'Iridium Pan' }`)
|
|
36
|
+
- Enchantments are now parsed for all tools including FishingRod; array-format enchantment nodes are
|
|
37
|
+
handled (first entry used)
|
|
38
|
+
|
|
8
39
|
## [0.31.0] - 2026-03-29
|
|
9
40
|
|
|
10
41
|
### Added
|
package/data/hats.json
CHANGED
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
"name": "Archer's Cap",
|
|
19
19
|
"description": "Fashionable whether you're an archer or not.",
|
|
20
20
|
"obtain": "Cook every recipe (Gourmet Chef achievement)",
|
|
21
|
-
"image": "images/hats/Archer's Cap.png"
|
|
21
|
+
"image": "images/hats/Archer's Cap.png",
|
|
22
|
+
"price": 4000
|
|
22
23
|
},
|
|
23
24
|
{
|
|
24
25
|
"id": "53",
|
|
@@ -39,7 +40,8 @@
|
|
|
39
40
|
"name": "Blue Bonnet",
|
|
40
41
|
"description": "Harken back to simpler times with this prairie bonnet.",
|
|
41
42
|
"obtain": "Donate 40 items to Museum (Treasure Trove achievement)",
|
|
42
|
-
"image": "images/hats/Blue Bonnet.png"
|
|
43
|
+
"image": "images/hats/Blue Bonnet.png",
|
|
44
|
+
"price": 1000
|
|
43
45
|
},
|
|
44
46
|
{
|
|
45
47
|
"id": "BlueBow",
|
|
@@ -60,7 +62,8 @@
|
|
|
60
62
|
"name": "Blue Ribbon",
|
|
61
63
|
"description": "A lovely ribbon that sits behind the head.",
|
|
62
64
|
"obtain": "Get 1st place at Stardew Valley Fair competition",
|
|
63
|
-
"image": "images/hats/Blue Ribbon.png"
|
|
65
|
+
"image": "images/hats/Blue Ribbon.png",
|
|
66
|
+
"price": 1000
|
|
64
67
|
},
|
|
65
68
|
{
|
|
66
69
|
"id": "80",
|
|
@@ -74,7 +77,8 @@
|
|
|
74
77
|
"name": "Bowler Hat",
|
|
75
78
|
"description": "Made from smooth felt.",
|
|
76
79
|
"obtain": "Earn 1,000,000g (Millionaire achievement)",
|
|
77
|
-
"image": "images/hats/Bowler Hat.png"
|
|
80
|
+
"image": "images/hats/Bowler Hat.png",
|
|
81
|
+
"price": 10000
|
|
78
82
|
},
|
|
79
83
|
{
|
|
80
84
|
"id": "69",
|
|
@@ -95,28 +99,32 @@
|
|
|
95
99
|
"name": "Butterfly Bow",
|
|
96
100
|
"description": "This one is very soft.",
|
|
97
101
|
"obtain": "Reach 5-heart friendship level with someone (A New Friend achievement)",
|
|
98
|
-
"image": "images/hats/Butterfly Bow.png"
|
|
102
|
+
"image": "images/hats/Butterfly Bow.png",
|
|
103
|
+
"price": 1000
|
|
99
104
|
},
|
|
100
105
|
{
|
|
101
106
|
"id": "32",
|
|
102
107
|
"name": "Cat Ears",
|
|
103
108
|
"description": "Whiskers included.",
|
|
104
109
|
"obtain": "Reach 10-heart friendship with 8 people (The Beloved Farmer achievement)",
|
|
105
|
-
"image": "images/hats/Cat Ears.png"
|
|
110
|
+
"image": "images/hats/Cat Ears.png",
|
|
111
|
+
"price": 5000
|
|
106
112
|
},
|
|
107
113
|
{
|
|
108
114
|
"id": "61",
|
|
109
115
|
"name": "Chef Hat",
|
|
110
116
|
"description": "The traditional hat worn by a head chef.",
|
|
111
117
|
"obtain": "Cook every recipe (Gourmet Chef achievement)",
|
|
112
|
-
"image": "images/hats/Chef Hat.png"
|
|
118
|
+
"image": "images/hats/Chef Hat.png",
|
|
119
|
+
"price": 10000
|
|
113
120
|
},
|
|
114
121
|
{
|
|
115
122
|
"id": "10",
|
|
116
123
|
"name": "Chicken Mask",
|
|
117
124
|
"description": "You'll be sure to get them grinning with this one.",
|
|
118
125
|
"obtain": "Complete 40 Help Wanted requests (A Big Help achievement)",
|
|
119
|
-
"image": "images/hats/Chicken Mask.png"
|
|
126
|
+
"image": "images/hats/Chicken Mask.png",
|
|
127
|
+
"price": 2000
|
|
120
128
|
},
|
|
121
129
|
{
|
|
122
130
|
"id": "concerned-ape-hat",
|
|
@@ -137,7 +145,8 @@
|
|
|
137
145
|
"name": "Cool Cap",
|
|
138
146
|
"description": "It looks really faded, but it used to be a vibrant blue.",
|
|
139
147
|
"obtain": "Earn 250,000g (Homesteader achievement)",
|
|
140
|
-
"image": "images/hats/Cool Cap.png"
|
|
148
|
+
"image": "images/hats/Cool Cap.png",
|
|
149
|
+
"price": 5000
|
|
141
150
|
},
|
|
142
151
|
{
|
|
143
152
|
"id": "copper-pan-hat",
|
|
@@ -151,28 +160,32 @@
|
|
|
151
160
|
"name": "Cowboy Hat",
|
|
152
161
|
"description": "The leather is old and cracked, but surprisingly supple. It smells musty.",
|
|
153
162
|
"obtain": "Complete museum collection (A Complete Collection achievement)",
|
|
154
|
-
"image": "images/hats/Cowboy Hat.png"
|
|
163
|
+
"image": "images/hats/Cowboy Hat.png",
|
|
164
|
+
"price": 10000
|
|
155
165
|
},
|
|
156
166
|
{
|
|
157
167
|
"id": "33",
|
|
158
168
|
"name": "Cowgal Hat",
|
|
159
169
|
"description": "The band is studded with fake diamonds.",
|
|
160
170
|
"obtain": "Ship 300 of one crop (Monoculture achievement)",
|
|
161
|
-
"image": "images/hats/Cowgal Hat.png"
|
|
171
|
+
"image": "images/hats/Cowgal Hat.png",
|
|
172
|
+
"price": 5000
|
|
162
173
|
},
|
|
163
174
|
{
|
|
164
175
|
"id": "34",
|
|
165
176
|
"name": "Cowpoke Hat",
|
|
166
177
|
"description": "For dairy experts.",
|
|
167
178
|
"obtain": "Ship 15 of each crop (Polyculture achievement)",
|
|
168
|
-
"image": "images/hats/Cowpoke Hat.png"
|
|
179
|
+
"image": "images/hats/Cowpoke Hat.png",
|
|
180
|
+
"price": 5000
|
|
169
181
|
},
|
|
170
182
|
{
|
|
171
183
|
"id": "29",
|
|
172
184
|
"name": "Daisy",
|
|
173
185
|
"description": "A fresh spring daisy to put in your hair.",
|
|
174
186
|
"obtain": "Craft 15 different items (D.I.Y. achievement)",
|
|
175
|
-
"image": "images/hats/Daisy.png"
|
|
187
|
+
"image": "images/hats/Daisy.png",
|
|
188
|
+
"price": 1000
|
|
176
189
|
},
|
|
177
190
|
{
|
|
178
191
|
"id": "DarkBallcap",
|
|
@@ -200,7 +213,8 @@
|
|
|
200
213
|
"name": "Delicate Bow",
|
|
201
214
|
"description": "Little pink jewels glisten as you examine it.",
|
|
202
215
|
"obtain": "Cook 10 different recipes (Cook achievement)",
|
|
203
|
-
"image": "images/hats/Delicate Bow.png"
|
|
216
|
+
"image": "images/hats/Delicate Bow.png",
|
|
217
|
+
"price": 1000
|
|
204
218
|
},
|
|
205
219
|
{
|
|
206
220
|
"id": "81",
|
|
@@ -228,14 +242,16 @@
|
|
|
228
242
|
"name": "Earmuffs",
|
|
229
243
|
"description": "Keep your ears toasty. Lined with artisanal velvet from Castle Village.",
|
|
230
244
|
"obtain": "Reach 5-heart friendship with 20 people (Popular achievement)",
|
|
231
|
-
"image": "images/hats/Earmuffs.png"
|
|
245
|
+
"image": "images/hats/Earmuffs.png",
|
|
246
|
+
"price": 4000
|
|
232
247
|
},
|
|
233
248
|
{
|
|
234
249
|
"id": "64",
|
|
235
250
|
"name": "Elegant Turban",
|
|
236
251
|
"description": "A fine black silk turban with gold trim.",
|
|
237
252
|
"obtain": "Earn all other achievements",
|
|
238
|
-
"image": "images/hats/Elegant Turban.png"
|
|
253
|
+
"image": "images/hats/Elegant Turban.png",
|
|
254
|
+
"price": 50000
|
|
239
255
|
},
|
|
240
256
|
{
|
|
241
257
|
"id": "41",
|
|
@@ -249,7 +265,8 @@
|
|
|
249
265
|
"name": "Eye Patch",
|
|
250
266
|
"description": "You can't tell if it's real or just from a costume shop.",
|
|
251
267
|
"obtain": "Catch every fish (Master Angler achievement)",
|
|
252
|
-
"image": "images/hats/Eye Patch.png"
|
|
268
|
+
"image": "images/hats/Eye Patch.png",
|
|
269
|
+
"price": 5000
|
|
253
270
|
},
|
|
254
271
|
{
|
|
255
272
|
"id": "47",
|
|
@@ -319,14 +336,16 @@
|
|
|
319
336
|
"name": "Gnome's Cap",
|
|
320
337
|
"description": "This gnome had a very large head.",
|
|
321
338
|
"obtain": "Craft every item (Craft Master achievement)",
|
|
322
|
-
"image": "images/hats/Gnome's Cap.png"
|
|
339
|
+
"image": "images/hats/Gnome's Cap.png",
|
|
340
|
+
"price": 5000
|
|
323
341
|
},
|
|
324
342
|
{
|
|
325
343
|
"id": "9",
|
|
326
344
|
"name": "Goblin Mask",
|
|
327
345
|
"description": "Freak out the neighborhood with this creepy mask. Rubber ear joints for effect.",
|
|
328
346
|
"obtain": "Ship every item (Full Shipment achievement)",
|
|
329
|
-
"image": "images/hats/Goblin Mask.png"
|
|
347
|
+
"image": "images/hats/Goblin Mask.png",
|
|
348
|
+
"price": 10000
|
|
330
349
|
},
|
|
331
350
|
{
|
|
332
351
|
"id": "89",
|
|
@@ -361,14 +380,16 @@
|
|
|
361
380
|
"name": "Good Ol' Cap",
|
|
362
381
|
"description": "A floppy old topper with a creased bill. Looks like it's been through a lot.",
|
|
363
382
|
"obtain": "Earn 15,000g (Greenhorn achievement)",
|
|
364
|
-
"image": "images/hats/Good Ol' Cap.png"
|
|
383
|
+
"image": "images/hats/Good Ol' Cap.png",
|
|
384
|
+
"price": 1000
|
|
365
385
|
},
|
|
366
386
|
{
|
|
367
387
|
"id": "GovernorsHat",
|
|
368
388
|
"name": "Governor's Hat",
|
|
369
389
|
"description": "A replica of the Governor's iconic hat.",
|
|
370
390
|
"obtain": "Delight the Governor at Luau (An Unforgettable Soup achievement)",
|
|
371
|
-
"image": "images/hats/Governor's Hat.png"
|
|
391
|
+
"image": "images/hats/Governor's Hat.png",
|
|
392
|
+
"price": 5000
|
|
372
393
|
},
|
|
373
394
|
{
|
|
374
395
|
"id": "72",
|
|
@@ -396,14 +417,16 @@
|
|
|
396
417
|
"name": "Hunter's Cap",
|
|
397
418
|
"description": "The wool lining should stay warm deep into the forest.",
|
|
398
419
|
"obtain": "Upgrade house to maximum size (Living Large achievement)",
|
|
399
|
-
"image": "images/hats/Hunter's Cap.png"
|
|
420
|
+
"image": "images/hats/Hunter's Cap.png",
|
|
421
|
+
"price": 5000
|
|
400
422
|
},
|
|
401
423
|
{
|
|
402
424
|
"id": "InfinityCrown",
|
|
403
425
|
"name": "Infinity Crown",
|
|
404
426
|
"description": "It's made from an exotic metal you've never seen before.",
|
|
405
427
|
"obtain": "Obtain most powerful weapon (Infinite Power achievement)",
|
|
406
|
-
"image": "images/hats/Infinity Crown.png"
|
|
428
|
+
"image": "images/hats/Infinity Crown.png",
|
|
429
|
+
"price": 20000
|
|
407
430
|
},
|
|
408
431
|
{
|
|
409
432
|
"id": "iridium-pan-hat",
|
|
@@ -417,7 +440,8 @@
|
|
|
417
440
|
"name": "Jester Hat",
|
|
418
441
|
"description": "Put your inner clown on display.",
|
|
419
442
|
"obtain": "See a movie (Two Thumbs Up achievement)",
|
|
420
|
-
"image": "images/hats/Jester Hat.png"
|
|
443
|
+
"image": "images/hats/Jester Hat.png",
|
|
444
|
+
"price": 25000
|
|
421
445
|
},
|
|
422
446
|
{
|
|
423
447
|
"id": "JojaCap",
|
|
@@ -431,7 +455,8 @@
|
|
|
431
455
|
"name": "Junimo Hat",
|
|
432
456
|
"description": "To honor our little buddies...",
|
|
433
457
|
"obtain": "Reach Perfection and visit the Summit",
|
|
434
|
-
"image": "images/hats/Junimo Hat.png"
|
|
458
|
+
"image": "images/hats/Junimo Hat.png",
|
|
459
|
+
"price": 25000
|
|
435
460
|
},
|
|
436
461
|
{
|
|
437
462
|
"id": "50",
|
|
@@ -473,7 +498,8 @@
|
|
|
473
498
|
"name": "Lucky Bow",
|
|
474
499
|
"description": "The middle is made of solid gold.",
|
|
475
500
|
"obtain": "Earn 50,000g (Cowpoke achievement)",
|
|
476
|
-
"image": "images/hats/Lucky Bow.png"
|
|
501
|
+
"image": "images/hats/Lucky Bow.png",
|
|
502
|
+
"price": 2000
|
|
477
503
|
},
|
|
478
504
|
{
|
|
479
505
|
"id": "73",
|
|
@@ -494,7 +520,8 @@
|
|
|
494
520
|
"name": "Mouse Ears",
|
|
495
521
|
"description": "Made from synthetic fibers.",
|
|
496
522
|
"obtain": "Reach 10-heart friendship with someone (Best Friends achievement)",
|
|
497
|
-
"image": "images/hats/Mouse Ears.png"
|
|
523
|
+
"image": "images/hats/Mouse Ears.png",
|
|
524
|
+
"price": 2000
|
|
498
525
|
},
|
|
499
526
|
{
|
|
500
527
|
"id": "82",
|
|
@@ -529,14 +556,16 @@
|
|
|
529
556
|
"name": "Official Cap",
|
|
530
557
|
"description": "Looks like it belonged to a postman or policeman. Either way, it's still very soft and smells okay.",
|
|
531
558
|
"obtain": "Catch 24 different fish (Ol' Mariner achievement)",
|
|
532
|
-
"image": "images/hats/Official Cap.png"
|
|
559
|
+
"image": "images/hats/Official Cap.png",
|
|
560
|
+
"price": 2000
|
|
533
561
|
},
|
|
534
562
|
{
|
|
535
563
|
"id": "PageboyCap",
|
|
536
564
|
"name": "Pageboy Cap",
|
|
537
565
|
"description": "For some reason, it makes you want to sell newspapers.",
|
|
538
566
|
"obtain": "Read every book (Well-Read achievement)",
|
|
539
|
-
"image": "images/hats/Pageboy Cap.png"
|
|
567
|
+
"image": "images/hats/Pageboy Cap.png",
|
|
568
|
+
"price": 5000
|
|
540
569
|
},
|
|
541
570
|
{
|
|
542
571
|
"id": "36",
|
|
@@ -550,7 +579,8 @@
|
|
|
550
579
|
"name": "Paper Hat",
|
|
551
580
|
"description": "It's made out of special paper that won't disintegrate in the rain.",
|
|
552
581
|
"obtain": "Reach Ginger Island (A Distant Shore achievement)",
|
|
553
|
-
"image": "images/hats/Paper Hat.png"
|
|
582
|
+
"image": "images/hats/Paper Hat.png",
|
|
583
|
+
"price": 10000
|
|
554
584
|
},
|
|
555
585
|
{
|
|
556
586
|
"id": "party-hat-blue",
|
|
@@ -592,14 +622,16 @@
|
|
|
592
622
|
"name": "Plum Chapeau",
|
|
593
623
|
"description": "Looks alright.",
|
|
594
624
|
"obtain": "Cook 25 different recipes (Sous Chef achievement)",
|
|
595
|
-
"image": "images/hats/Plum Chapeau.png"
|
|
625
|
+
"image": "images/hats/Plum Chapeau.png",
|
|
626
|
+
"price": 2000
|
|
596
627
|
},
|
|
597
628
|
{
|
|
598
629
|
"id": "22",
|
|
599
630
|
"name": "Polka Bow",
|
|
600
631
|
"description": "This one's sure to turn heads.",
|
|
601
632
|
"obtain": "Complete 10 Help Wanted requests (Gofer achievement)",
|
|
602
|
-
"image": "images/hats/Polka Bow.png"
|
|
633
|
+
"image": "images/hats/Polka Bow.png",
|
|
634
|
+
"price": 1000
|
|
603
635
|
},
|
|
604
636
|
{
|
|
605
637
|
"id": "68",
|
|
@@ -655,14 +687,16 @@
|
|
|
655
687
|
"name": "Sailor's Cap",
|
|
656
688
|
"description": "It's fresh and starchy.",
|
|
657
689
|
"obtain": "Win fishing competition at Festival of Ice",
|
|
658
|
-
"image": "images/hats/Sailor's Cap.png"
|
|
690
|
+
"image": "images/hats/Sailor's Cap.png",
|
|
691
|
+
"price": 1000
|
|
659
692
|
},
|
|
660
693
|
{
|
|
661
694
|
"id": "25",
|
|
662
695
|
"name": "Santa Hat",
|
|
663
696
|
"description": "Celebrate the magical season.",
|
|
664
697
|
"obtain": "Reach 5-heart friendship with 10 people (Networking achievement)",
|
|
665
|
-
"image": "images/hats/Santa Hat.png"
|
|
698
|
+
"image": "images/hats/Santa Hat.png",
|
|
699
|
+
"price": 2000
|
|
666
700
|
},
|
|
667
701
|
{
|
|
668
702
|
"id": "8",
|
|
@@ -683,28 +717,32 @@
|
|
|
683
717
|
"name": "Sombrero",
|
|
684
718
|
"description": "A festively decorated hat made from woven straw.",
|
|
685
719
|
"obtain": "Earn 10,000,000g (Legend achievement)",
|
|
686
|
-
"image": "images/hats/Sombrero.png"
|
|
720
|
+
"image": "images/hats/Sombrero.png",
|
|
721
|
+
"price": 25000
|
|
687
722
|
},
|
|
688
723
|
{
|
|
689
724
|
"id": "28",
|
|
690
725
|
"name": "Sou'wester",
|
|
691
726
|
"description": "The shape helps to keep sailors dry during storms.",
|
|
692
727
|
"obtain": "Catch 10 different fish (Fisherman achievement)",
|
|
693
|
-
"image": "images/hats/Sou'wester.png"
|
|
728
|
+
"image": "images/hats/Sou'wester.png",
|
|
729
|
+
"price": 1000
|
|
694
730
|
},
|
|
695
731
|
{
|
|
696
732
|
"id": "SpaceHelmet",
|
|
697
733
|
"name": "Space Helmet",
|
|
698
734
|
"description": "Warning: This helmet has not actually been tested in outer space.",
|
|
699
735
|
"obtain": "Reach bottom of dangerous mines (Danger In The Deep achievement)",
|
|
700
|
-
"image": "images/hats/Space Helmet.png"
|
|
736
|
+
"image": "images/hats/Space Helmet.png",
|
|
737
|
+
"price": 20000
|
|
701
738
|
},
|
|
702
739
|
{
|
|
703
740
|
"id": "SportsCap",
|
|
704
741
|
"name": "Sports Cap",
|
|
705
742
|
"description": "The cap has a vintage team logo on it.",
|
|
706
743
|
"obtain": "Prize Machine at Mayor's Manor",
|
|
707
|
-
"image": "images/hats/Sports Cap.png"
|
|
744
|
+
"image": "images/hats/Sports Cap.png",
|
|
745
|
+
"price": 1000
|
|
708
746
|
},
|
|
709
747
|
{
|
|
710
748
|
"id": "52",
|
|
@@ -746,7 +784,8 @@
|
|
|
746
784
|
"name": "Straw Hat",
|
|
747
785
|
"description": "Light and cool, it's a farmer's delight.",
|
|
748
786
|
"obtain": "Win egg hunt at Egg Festival",
|
|
749
|
-
"image": "images/hats/Straw Hat.png"
|
|
787
|
+
"image": "images/hats/Straw Hat.png",
|
|
788
|
+
"price": 1000
|
|
750
789
|
},
|
|
751
790
|
{
|
|
752
791
|
"id": "88",
|
|
@@ -767,7 +806,8 @@
|
|
|
767
806
|
"name": "Tiara",
|
|
768
807
|
"description": "This one has a big amethyst encircled by gold.",
|
|
769
808
|
"obtain": "Reach 5-heart friendship with 4 people (Cliques achievement)",
|
|
770
|
-
"image": "images/hats/Tiara.png"
|
|
809
|
+
"image": "images/hats/Tiara.png",
|
|
810
|
+
"price": 2000
|
|
771
811
|
},
|
|
772
812
|
{
|
|
773
813
|
"id": "91",
|
|
@@ -802,14 +842,16 @@
|
|
|
802
842
|
"name": "Tropiclip",
|
|
803
843
|
"description": "It's shaped like a little palm tree.",
|
|
804
844
|
"obtain": "Upgrade your house (Moving Up achievement)",
|
|
805
|
-
"image": "images/hats/Tropiclip.png"
|
|
845
|
+
"image": "images/hats/Tropiclip.png",
|
|
846
|
+
"price": 1000
|
|
806
847
|
},
|
|
807
848
|
{
|
|
808
849
|
"id": "16",
|
|
809
850
|
"name": "Trucker Hat",
|
|
810
851
|
"description": "Mesh in the back to keep your head cool.",
|
|
811
852
|
"obtain": "Craft 30 different items (Artisan achievement)",
|
|
812
|
-
"image": "images/hats/Trucker Hat.png"
|
|
853
|
+
"image": "images/hats/Trucker Hat.png",
|
|
854
|
+
"price": 2000
|
|
813
855
|
},
|
|
814
856
|
{
|
|
815
857
|
"id": "93",
|
|
@@ -823,7 +865,8 @@
|
|
|
823
865
|
"name": "Watermelon Band",
|
|
824
866
|
"description": "The color scheme was inspired by the beloved summer melon.",
|
|
825
867
|
"obtain": "Catch 100 fish (Mother Catch achievement)",
|
|
826
|
-
"image": "images/hats/Watermelon Band.png"
|
|
868
|
+
"image": "images/hats/Watermelon Band.png",
|
|
869
|
+
"price": 1000
|
|
827
870
|
},
|
|
828
871
|
{
|
|
829
872
|
"id": "46",
|
|
@@ -837,7 +880,8 @@
|
|
|
837
880
|
"name": "White Bow",
|
|
838
881
|
"description": "A bow as white as snow.",
|
|
839
882
|
"obtain": "Help forest neighbors grow family (Good Neighbors achievement)",
|
|
840
|
-
"image": "images/hats/White Bow.png"
|
|
883
|
+
"image": "images/hats/White Bow.png",
|
|
884
|
+
"price": 5000
|
|
841
885
|
},
|
|
842
886
|
{
|
|
843
887
|
"id": "65",
|
package/dist/index.d.mts
CHANGED
|
@@ -581,6 +581,7 @@ interface Hat {
|
|
|
581
581
|
description: string;
|
|
582
582
|
obtain: string;
|
|
583
583
|
image: string;
|
|
584
|
+
price?: number;
|
|
584
585
|
}
|
|
585
586
|
|
|
586
587
|
interface Footwear {
|
|
@@ -2674,7 +2675,7 @@ interface SaveData {
|
|
|
2674
2675
|
walnuts: SaveWalnuts;
|
|
2675
2676
|
islandUpgrades: SaveIslandUpgrades;
|
|
2676
2677
|
children: SaveChild[];
|
|
2677
|
-
|
|
2678
|
+
pets: SavePet[];
|
|
2678
2679
|
horse: SaveHorse | null;
|
|
2679
2680
|
powers: SavePowers;
|
|
2680
2681
|
raccoons: SaveRaccoons;
|
|
@@ -2706,15 +2707,27 @@ interface SavePlayer {
|
|
|
2706
2707
|
gameVersion: string;
|
|
2707
2708
|
millisecondsPlayed: number;
|
|
2708
2709
|
}
|
|
2709
|
-
/**
|
|
2710
|
+
/** A tool currently being upgraded at the blacksmith. */
|
|
2711
|
+
interface SaveUpgradingTool {
|
|
2712
|
+
tool: 'wateringCan' | 'pan' | 'pickaxe' | 'axe' | 'hoe';
|
|
2713
|
+
name: string;
|
|
2714
|
+
}
|
|
2715
|
+
/** Level and active enchantment for a single tool. Enchantment is null when none is applied. */
|
|
2716
|
+
interface SaveToolLevel {
|
|
2717
|
+
level: number;
|
|
2718
|
+
enchantment: string | null;
|
|
2719
|
+
}
|
|
2720
|
+
/** Upgrade levels and enchantments for the player's tools (level 0 = base, 1 = copper, 2 = steel, 3 = gold, 4 = iridium). */
|
|
2710
2721
|
interface SaveToolLevels {
|
|
2711
|
-
wateringCan:
|
|
2712
|
-
pan:
|
|
2713
|
-
pickaxe:
|
|
2714
|
-
axe:
|
|
2715
|
-
hoe:
|
|
2716
|
-
trashCan:
|
|
2717
|
-
fishingRod:
|
|
2722
|
+
wateringCan: SaveToolLevel;
|
|
2723
|
+
pan: SaveToolLevel;
|
|
2724
|
+
pickaxe: SaveToolLevel;
|
|
2725
|
+
axe: SaveToolLevel;
|
|
2726
|
+
hoe: SaveToolLevel;
|
|
2727
|
+
trashCan: SaveToolLevel;
|
|
2728
|
+
fishingRod: SaveToolLevel;
|
|
2729
|
+
/** The tool currently at the blacksmith being upgraded, or null if none. */
|
|
2730
|
+
currentlyUpgrading: SaveUpgradingTool | null;
|
|
2718
2731
|
}
|
|
2719
2732
|
/** Mastery system progress including XP, levels spent, and unlocked perks. */
|
|
2720
2733
|
interface SaveMastery {
|
|
@@ -2915,12 +2928,13 @@ interface SaveChild {
|
|
|
2915
2928
|
age: number;
|
|
2916
2929
|
gender: string;
|
|
2917
2930
|
}
|
|
2918
|
-
/**
|
|
2931
|
+
/** A pet owned by the player. `starter` is true for the pet chosen at game start. */
|
|
2919
2932
|
interface SavePet {
|
|
2920
2933
|
name: string;
|
|
2921
2934
|
type: string;
|
|
2922
2935
|
breed: number;
|
|
2923
2936
|
friendship: number;
|
|
2937
|
+
starter: boolean;
|
|
2924
2938
|
}
|
|
2925
2939
|
/** The player's horse with name and unique ID. */
|
|
2926
2940
|
interface SaveHorse {
|
package/dist/index.d.ts
CHANGED
|
@@ -581,6 +581,7 @@ interface Hat {
|
|
|
581
581
|
description: string;
|
|
582
582
|
obtain: string;
|
|
583
583
|
image: string;
|
|
584
|
+
price?: number;
|
|
584
585
|
}
|
|
585
586
|
|
|
586
587
|
interface Footwear {
|
|
@@ -2674,7 +2675,7 @@ interface SaveData {
|
|
|
2674
2675
|
walnuts: SaveWalnuts;
|
|
2675
2676
|
islandUpgrades: SaveIslandUpgrades;
|
|
2676
2677
|
children: SaveChild[];
|
|
2677
|
-
|
|
2678
|
+
pets: SavePet[];
|
|
2678
2679
|
horse: SaveHorse | null;
|
|
2679
2680
|
powers: SavePowers;
|
|
2680
2681
|
raccoons: SaveRaccoons;
|
|
@@ -2706,15 +2707,27 @@ interface SavePlayer {
|
|
|
2706
2707
|
gameVersion: string;
|
|
2707
2708
|
millisecondsPlayed: number;
|
|
2708
2709
|
}
|
|
2709
|
-
/**
|
|
2710
|
+
/** A tool currently being upgraded at the blacksmith. */
|
|
2711
|
+
interface SaveUpgradingTool {
|
|
2712
|
+
tool: 'wateringCan' | 'pan' | 'pickaxe' | 'axe' | 'hoe';
|
|
2713
|
+
name: string;
|
|
2714
|
+
}
|
|
2715
|
+
/** Level and active enchantment for a single tool. Enchantment is null when none is applied. */
|
|
2716
|
+
interface SaveToolLevel {
|
|
2717
|
+
level: number;
|
|
2718
|
+
enchantment: string | null;
|
|
2719
|
+
}
|
|
2720
|
+
/** Upgrade levels and enchantments for the player's tools (level 0 = base, 1 = copper, 2 = steel, 3 = gold, 4 = iridium). */
|
|
2710
2721
|
interface SaveToolLevels {
|
|
2711
|
-
wateringCan:
|
|
2712
|
-
pan:
|
|
2713
|
-
pickaxe:
|
|
2714
|
-
axe:
|
|
2715
|
-
hoe:
|
|
2716
|
-
trashCan:
|
|
2717
|
-
fishingRod:
|
|
2722
|
+
wateringCan: SaveToolLevel;
|
|
2723
|
+
pan: SaveToolLevel;
|
|
2724
|
+
pickaxe: SaveToolLevel;
|
|
2725
|
+
axe: SaveToolLevel;
|
|
2726
|
+
hoe: SaveToolLevel;
|
|
2727
|
+
trashCan: SaveToolLevel;
|
|
2728
|
+
fishingRod: SaveToolLevel;
|
|
2729
|
+
/** The tool currently at the blacksmith being upgraded, or null if none. */
|
|
2730
|
+
currentlyUpgrading: SaveUpgradingTool | null;
|
|
2718
2731
|
}
|
|
2719
2732
|
/** Mastery system progress including XP, levels spent, and unlocked perks. */
|
|
2720
2733
|
interface SaveMastery {
|
|
@@ -2915,12 +2928,13 @@ interface SaveChild {
|
|
|
2915
2928
|
age: number;
|
|
2916
2929
|
gender: string;
|
|
2917
2930
|
}
|
|
2918
|
-
/**
|
|
2931
|
+
/** A pet owned by the player. `starter` is true for the pet chosen at game start. */
|
|
2919
2932
|
interface SavePet {
|
|
2920
2933
|
name: string;
|
|
2921
2934
|
type: string;
|
|
2922
2935
|
breed: number;
|
|
2923
2936
|
friendship: number;
|
|
2937
|
+
starter: boolean;
|
|
2924
2938
|
}
|
|
2925
2939
|
/** The player's horse with name and unique ID. */
|
|
2926
2940
|
interface SaveHorse {
|