MouseyPounds/stardew-checkup

Hats

Zamiell opened this issue · 1 comments

As an additional goal after "perfection", some players like to collect every hat. e.g. see Haboo's All Hats Speedrun: https://www.twitch.tv/videos/391054941?filter=highlights&sort=time

It would be fantastic if Stardew Checkup would track this, e.g. by looking in all of the chests in the save file and seeing if a hat is stored there.

Additionally, perhaps you could gate the feature behind an optional "show hat completion" button or something, so that "normal" players are not tricked into thinking that they need every hat.

If you truly want to find hats on save, there are some advice:

Information of the hat

They have a which tag which gives the identifier of the hat corresponding to the one in Data > hats.xnb.


The whole process for a solo save

For a solo save, they are stored:

in the player's inventory

> player > items
and then we follow the instructions at the end

the player's hat

> player > hat
and we can find directly the which tag

in chests (either Chest, Stone Chest or Mini-Fridge)

> locations > various GameLocation > objects
or > locations > various GameLocation > buildings > various Building > indoors > objects
and then we follow the instructions at the end

on the Rarecrow n°3 (alien)

> locations > various GameLocation > objects

  • > various item > value > Object and we can check its name tag is "Rarecrow"

The information for the hat is then stored in the quality tag as identifier+1: if it's 0 there is no hat, else the hat has the ID: quality-1.
For example, if it has the quality value 65 it means as it is different from 0 that first it has a hat, and its ID is 64 so it's the Elegant Turban.

in the furniture (either Fish Tank or Dressers)

They correspond to the fish tank where we can put hats on the Sea Urchin, and to the dressers where we can store clothing items.

> locations > various GameLocation > furniture
or > locations > various GameLocation > buildings > various Building > indoors > furniture
which list the different placed furniture and where we can find the fish tanks and the dressers

  • > various Furniture of xsi:type="FishTankFurniture" or xsi:type="StorageFurniture"
    • > various heldItems of xsi:type="Hat" where we can find the which tag

in the fridge

> locations > various GameLocation > fridge > items
and then we follow the instructions at the end

on NPC (either Horse or Child)

> locations > various GameLocation > NPC of xsi:type="Horse" or xsi:type="Child" > hat
and we can find directly the which tag

in the Junimo Chest

> junimoChest > various Item of xsi:type="Hat" where we can find the which tag


Looking for items in chests inside objects

> various item > value > Object of xsi:type="Chest" > items
and then we follow the next instructions

Looking for hats inside items

> various Item of xsi:type="Hat" where we can find the which tag


If you want me to be clearer, or you need any help, don't hesitate!

Actually, I've made a application using Python to parse the save file to find any clothes (shirts, pants and hats) and to tell the missing ones using the game files, and if they are tailorable, the corresponding tailoring recipe.