← Index
This page documents how the game stores and parses data for pets. This is an advanced guide for mod developers.
Data Format
You can create and customize pets & pet breeds by editing the Data/Pets asset.
This consists of a string → model lookup, where...
- The key is a unique string ID for the pet (not the pet breed). The vanilla IDs are Cat and Dog.
- The value is a model with the fields listed below.
Basic info
field | effect |
---|---|
DisplayName | A tokenizable string for the pet type's display name (e.g. "cat" or "dog"). For example, the vanilla adoption events show this when Marnie asks if you want to adopt the cat/dog. |
Audio & sprites
field | effect |
---|---|
BarkSound | The cue ID for the pet's occasional 'bark' sound. |
ContentSound | The cue ID for the sound which the pet makes when you pet it. |
RepeatContentSoundAfter | (Optional) The number of milliseconds until the ContentSound is repeated once. This is used by the dog, who pants twice when pet. Defaults to -1 (disabled). |
EmoteOffset | (Optional) A pixel offset for the emote drawn above the pet sprite, specified as an object with X and Y fields. For example, this affects the heart emote shown after petting it. Default none. |
Events
field | effect | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EventOffset | (Optional) The pixel offset for the pet when shown in events like Marnie's adoption event, specified as an object with X and Y fields. Default none. | ||||||||||||
AdoptionEventLocation AdoptionEventId |
(Optional) If both fields are set, the location and event ID which lets the player adopt this pet. This forces the event to play after 20 days if its preconditions haven't been met yet. Default Farm and none respectively. | ||||||||||||
SummitPerfectionEvent | (Optional) How to render the pet during the summit perfection slideshow. If this isn't set, the pet won't be shown in the slideshow.
This consists of a model with these fields:
|
Gifts
field | effect | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GiftChance | (Optional) The random probability each day that the pet will give the player a gift from the Gifts list when they interact with the pet. Specified as a value between 0 (never) and 1 (always). Default .2 (20% chance). | ||||||||||||
Gifts | (Optional) The list of gifts that this pet can give if the GiftChance is successful. Default none.
This consists of a list of models with these fields:
|
Behavior
field | effect | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Id | The unique string ID for this entry within the list. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MoveSpeed | (Optional) How quickly the pet can move. Default 2. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SleepOnBedChance SleepNearBedChance SleepOnRugChance |
(Optional) The percentage chances for the locations where the pet will sleep each night, as a decimal value between 0 (never) and 1 (always). Each value is checked in the order listed at left until a match is found. If none of them match, the pet will choose a random empty spot in the farmhouse; if none was found, it'll sleep next to its pet bowl outside. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Behaviors | The pet's possible actions and behaviors, defined as the states in a state machine. Essentially the pet will be in one state at any given time, which also determines which state they can transition to next. For example, a cat can transition from Walk to BeginSitDown, but it can't skip instantly from Walk to SitDownLick.
This consists of a list of models with these fields:
|
Breeds
field | effect | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Breeds | The cosmetic breeds which can be selected in the character customization menu when creating a save. This consists of a list of models with these fields:
|
Advanced
field | effect |
---|---|
CustomFields | The custom fields for this entry. |