Stardew Valley
0 of 0

File information

Last updated

Original upload

Created by


Uploaded by


Virus scan

Safe to use

Tags for this mod

About this mod

Add custom emotes into game and use them in events or in dialogues.

Permissions and credits
This mod doesn't add any content to game, it provides an interface to add custom above head bubble emotes via JSON content packs.


  • Download and install SMAPI
  • Download this mod
  • Unpack mod's ZIP file into Mods folder in the game directory
  • Find or create content pack(s) with custom emotes

How to create custom emotes

Create file manifest.json
  "Name": "<Your pack name>",
  "Author": "<You>",
  "Version": "1.0.0",
  "Description": "<description>",
  "UniqueID": "<your mod unique id>",
  "MinimumApiVersion": "3.13.0",
  "UpdateKeys": [ "" ],
  "ContentPackFor": {
"UniqueID": "PurrplingCat.CustomEmotes"

Create file emotes.json
"Image": "test_emotes.png",
// Map which row in your image refers which named emote. 
// Emote name is used to show the emote instead their sprite index.
// Row is every 16 pixels of height like in TileSheets\emotes
"Map": {
"0": "confused", // The string is the emote name you can refer in dialogues or events
"1": "check_ok" // Emote names can't contain space characters and other non-alphanumeric characters except underscore

Then add your image with your custom emotions. The filename of image must be tha same as is defined in the Image field in emotes.json definition file.

Image format

Emote texture image is a PNG file, which contains emotes and their animation frames. Every frame has 16x16 pixels and the horizontal frames are animation frames of an emote in row. Rows are every single emote. For better imagination see this cheat sheet. Your image file must contain ONLY YOUR CUSTOM EMOTES. Custom Emotes mod appends then into game's emote texture file in runtime.

Where to use custom emotes


You can use custom emote by refer their name in standard NPC dialogues. Just add %emote_<emoteName> into your dialogue line.

Okay, let's go find some trouble!$1%emote_check_ok

Also you can use custom emote for farmer during NPC Dialogue with %emote_farmer_<emoteName>. Add both (NPC emote and farmer emote on one line) is supported too.

Okay, let's go find some trouble!$1%emote_check_ok%emote_farmer_happy


You can use custom emotes in event scripts. Just use standard event command emote, but instead of a emote number you place your desired custom emote name.

emote farmer confused/pause 1000/emote Abigail confused/pause 2000/emote Pierre check_ok/pause 5000

Vanilla emote names

You can use vanilla emotes via their names (as custom emotes). This allows use vanilla emotes in standard NPC dialogues or use vanilla emotes as named in events. There are list of SDV vanilla emotes which can be reffered via their name:

happy, sad, heart, exclamation, note, sleep, game, question, x, pause, blush, angry

Future plans

  • Upload better images here
  • Write better docs
  • Expose source code
  • Add content patcher support
  • Add other features desired by community