0b1b94fa-1d5f-4db8-b2a4-c9ceb743561c
With this mod you can create a content pack to add "coats" to individual pet breeds that will be selectable during new game creation.
To change a pet's coat during new game creation, either click on the pet's icon, or hold down the mod key (default:
Left Shift) when pressing the change pet arrow keys.
You can also change an individual pet's coat in-game by hovering over the pet, holding down the coat key (default
Left Control) and scrolling with the mouse.
You can also change an individual pet's breed in-game by hovering over the pet, holding down the breed key (default
Left Alt) and scrolling with the mouse.
You can also change an individual pet's type in-game by hovering over the pet, holding down the type key (default
Right Alt) and scrolling with the mouse.
Content Packs
There are three ways you can add a coat for a specific breed:
Replacing the breed's entire texture (you will need to provide an icon texture as well)
Swapping specific colors in the breed's default texture
Tinting the breed's texture using a specific color (this can be combined with one of the other two methods)
You can set a DisplayName to be shown as the tooltip title when hovering over the pet icon.
Replacement Example:
{
"Format": "2.7.0",
"Changes": [
{
"Action": "EditData",
"Target": "aedenthorn.PetCoats/dict",
"Entries":
{
"{{ModId}}.GermanShepard":
{
"DisplayName":"German Shepard",
"PetType":"Dog",
"PetBreed":"1",
"TexturePath":"{{ModId}}.GermanShepard/texture",
"IconTexturePath":"{{ModId}}.GermanShepard/iconTexture"
}
}
},
{
"Action": "Load",
"Target": "{{ModId}}.GermanShepard/texture",
"FromFile": "assets/GermanShepard.png"
},
{
"Action": "Load",
"Target": "{{ModId}}.GermanShepard/iconTexture",
"FromFile": "assets/GermanShepardIcon.png"
}
]
}
Swap Example:
{
"Format": "2.7.0",
"Changes": [
{
"Action": "EditData",
"Target": "aedenthorn.PetCoats/dict",
"Entries":
{
"{{ModId}}.GermanShepard":
{
"DisplayName":"German Shepard",
"PetType":"Dog",
"PetBreed":"1",
"Swap":{
"81,34,16":"57,35,27",
"125,54,25":"83,63,55",
"56,19,2":"39,21,13",
"39,21,13":"255,174,78",
"202,109,25":"165,120,79"
}
}
}
}
]
}
Swap keys and values should be 3 or 4 0-255 values (R,G,B,A - A is optional). It will match exact colors for each key and replace each pixel with the given value.
Tint example:
{
"Format": "2.7.0",
"Changes": [
{
"Action": "EditData",
"Target": "aedenthorn.PetCoats/dict",
"Entries": {
"{{ModId}}.BorderCollie": {
"DisplayName": "Border Collie",
"PetType": "Dog",
"PetBreed": "3",
"Tint": {
"R": 155,
"G": 155,
"B": 155
}
}
}
}
]
}
Technical
Requires Content Patcher.
Code is at
https://github.com/aedenthorn/StardewValleyMods/