NPC clothing frame
Allows you to provide NPCs with clothing or accessories that they will wear, or use Content Patcher logic to manually assign clothing to NPCs.
Screenshots 2 screenshots
About this mod Machine translation
Allows you to provide NPCs with clothing or accessories that they will wear, or use Content Patcher logic to manually assign clothing to NPCs.
NPC Clothing Framework
🎭 **Let NPCs in Stardew Valley have a personalized clothing system! **
✨ Core Functions
Using this mod, you can create a Content Patcher that assigns wearable items to specific NPCs:
- 🎩 **Any item is wearable** - Not limited to the items that can usually be gifted, any item can be set as wearable
- 🎯 **Smart Assignment** - Assign a clothing slot name (such as "hat") to the NPC, and the NPC will randomly select an item in that slot to wear every day
- 📊 **Probability Control** - You can set the daily wear percentage probability for each garment
- 🔄 **EASY REMOVAL** - Gift the same item again to remove the item from the NPC's clothing list
🛠️ Technical details
Clothing is worn by editing the character and portrait sprite sheets directly. If you use a custom character sheet, you may need to adjust the clothing sprite sheet accordingly.
📦 Content package configuration
Here is an example **content.json** file:
```json
{
"Format": "1.23.0",
"Changes": [
{
"Action": "EditData",
"Target": "aedenthorn.NPCClothing/dictionary",
"Entries": {
"hat_0": {
"id": "hat_0",
"giftName": "Cowboy Hat",
"giftReaction": "like",
"clothingSlot": "hat",
"spriteTexturePath": "aedenthorn.NCFHatsCP/hat_0_sprite",
"portraitTexturePath": null,
"spriteOffsets": [
{
"offset": { "X": 0, "Y": -3 },
"names": ["Demetrius"],
"ages": null,
"genders": null
}
],
"portraitOffsets": null,
"namesAllow": ["Demetrius", "Abigail", "George", "Evelyn"],
"namesForbid": null,
"agesAllow": null,
"gendersAllow": null,
"skinColors": null,
"percentChance": 100,
"zIndex": 0
}
}
},
{
"Action": "Load",
"Target": "aedenthorn.NCFHatsCP/hat_0_sprite",
"FromFile": "assets/hat_0_sprite.png"
}
]
}
```
📋 Configuration parameter description
- **id** - any identifier, should be the same as the entry key
- **giftName** - the name of the item (not the display name), if omitted, it can be worn without giving a gift
- **giftReaction** - only applies to items that are not normally giftable. Optional values: love, like, dislike, hate, neutral
- **clothingSlot** - any slot name, only one piece of clothing in a given slot can be worn at the same time
- **spriteTexturePath** - The virtual path of the sprite texture that will be overlaid on top of the character sprite sheet
- **portraitTexturePath** - Portrait texture path (either can be omitted to make the garment only appear in sprites or portraits)
- **spriteOffsets** - Pixel offsets that allow using a single tilesheet for different sized characters by name, age or gender
- **percentChance** - The daily percentage probability of wearing this clothing
- **zIndex** - an arbitrary integer specifying the drawing order
🎨 Texture processing
The texture will scan for non-transparent pixels, which will be overlaid on top of existing pixels, unless the new pixel's opacity is less than 10%. Use almost transparent pixels to tell the mod to replace existing sprite pixels with transparent pixels (e.g. for covering hair).
🔗 Related modules
Mods using this framework:
- Flower Crowns for Townspeople
- NPC Wearable Hats
⚙️ Technical requirements
- SMAPI required
- Use Harmony
- Implemented the Generic Mod Config Menu interface to change configuration settings in the game
- Compatible with Mod Updater, supports automatic updates
🌟 Community Support
The code is located in: GitHub repository
List of all Stardew Valley mods: Mod Collection
Install & use Install: SMAPI mod (Stardew Valley standard)
- Install SMAPI first (Stardew Valley's mod loader): download it from smapi.io, run 'install on Windows.bat' and pick your game folder.
- Unzip the archive from playbuff and find the folder that contains manifest.json — that folder is the mod.
- Copy that whole folder into Stardew Valley/Mods/.
- Launch the game through SMAPI (run StardewModdingAPI.exe or set it as the launch option). The console before the title screen lists each mod's load result.
Cheat-style tools may not need SMAPI — unzip and run them as the readme describes. Back up your save before editing it; SMAPI lists failed mods in its console.