Triggers

Triggers are Raised whenever a specific event occurs in the game. Unmodded Stardew Valley includes three triggers: DayStarted, DayEnding, and LocationChanged. BETAS adds 30 new triggers to the game that your mod can react to.

In order to provide more information about the event that occurred, most of the triggers will also create an item to send along with the trigger as the Target item. This item will sometimes be an ordinary Stardew Valley item, like a fish or a crop. Other times, it will be a fake item that only exists for the purpose of the trigger, which I will simply call a Trigger Item. The documentation for each trigger will specify whether the Target item is just a Trigger Item or if it is an actual item. If it is just a Trigger Item, it may still contain useful data in some of its fields, which will be shown in the documentation as necessary. You will be able to use the standard item Game State Queries to get information from the Target item along with the new item Game State Queries added by BETAS.

Most often, the Target item will contain information about the trigger event stored in its mod data and will require the use of the new item Game State Queries added by BETAS to access that information. The Target item will often include boolean values in specific mod data entries. These are the entries that start with words like "Was" or "Is" like they are asking a yes or no question. These boolean entries will always contain a value of either true or false no matter what. Non-boolean values may or may not exist at all depending on whether or not their information is relevant. Please keep this in mind.

(Sometimes an Input item is included too. This will also be documented where necessary.)

The Target location of the trigger will be wherever the trigger occurred or wherever the event was witnessed, which is usually the current location of the local player. Please keep in mind that all triggers will look for these events from the perspective of the current, local player. This means that if you are playing multiplayer, the triggers will not apply if anyone other than yourself witnesses or causes the event in question. For all intents and purposes, assume that any trigger listed here will only work if you do something.

All triggers, both vanilla or otherwise, can be used to perform the new Trigger Actions added by BETAS.

List of Triggers:

AnimalPetted

Spiderbuttons.BETAS_AnimalPetted
Target Item Trigger Item
Target Location Location of the animal petted

Raised whenever the current player pets an animal. Pets are included.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The type of animal that was petted (i.e. Cat or Cow)

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/AnimalPetted/Name The name of the animal String
BETAS/AnimalPetted/Friendship The friendship of the animal towards the player Integer
BETAS/AnimalPetted/Breed The breed of the animal String This value will only exist if the animal is a pet
BETAS/AnimalPetted/Happiness The happiness of the animal Integer This value will only exist if the animal is a farm animal
BETAS/AnimalPetted/ProduceQuality The quality of the produce this animal creates. Possible values are 0 (normal), 1 (silver), 2 (gold), and 4 (iridium) Integer This value will only exist if the animal is a farm animal
BETAS/AnimalPetted/WasPet Whether or not the animal was a pet and not a farm animal Boolean
BETAS/AnimalPetted/WasFarmAnimal Whether or not the animal was a farm animal and not a pet Boolean
BETAS/AnimalPetted/WasBaby Whether or not the animal was a baby Boolean This value is always false for pets

BombExploded

Spiderbuttons.BETAS_BombExploded
Target Item Trigger Item
Target Location Location of the bomb explosion

Raised whenever a bomb explodes, including when that bomb is a Hot Head enemy.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId (O)287 This value will always be (O)287 regardless of what type of bomb exploded.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/BombExploded/Radius The radius of the explosion Integer

BookRead

Spiderbuttons.BETAS_BookRead
Target Item The book that was read
Target Location The location the book was read in

Raised whenever the current player reads a book.

CropHarvested

Spiderbuttons.BETAS_CropHarvested
Target Item The crop that was harvested
Target Location Location of the crop harvested

Raised whenever a crop is harvested, including when that crop is harvested by a Junimo.

TARGET ITEM

The Target item in this case is the crop that was pulled from the ground. Therefore, you can use ordinary item game state queries to check things like its item ID, quality, stack size (if multiple crops were dug up from potatoes, for example), etc.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/CropHarvested/WasHarvestedByJunimo Whether or not the crop was harvested by a Junimo Boolean

DamageTaken

Spiderbuttons.BETAS_DamageTaken
Target Item Trigger Item
Target Location Current location of the player

Raised whenever the current player takes damage.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the monster that dealt the damage If the damage came from a source other than a monster, the value will be Unknown

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/DamageTaken/Damage The amount of damage taken Integer
BETAS/DamageTaken/WasParried Whether or not the player parried the damage Boolean

DialogueOpened

Spiderbuttons.BETAS_DialogueOpened
Target Item Trigger Item
Target Location Location of the NPC

Raised whenever the current player opens a dialogue box when talking with an NPC.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC
Stack How many lines of dialogue the NPC has left to say

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/DialogueOpened/Age The age of the NPC. Possible values are Adult, Teen, and Child String
BETAS/DialogueOpened/Gender The gender of the NPC. Possible values are Female, Male, and Undefined String
BETAS/DialogueOpened/Friendship The friendship level the player has with the NPC Integer
BETAS/DialogueOpened/WasDatingFarmer Whether or not the farmer is dating the NPC Boolean This may not behave as expected if the dialogue is a result of giving the NPC a relationship-changing item (e.g. mermaid pendant). See RelationshipChanged

ExperienceGained

Spiderbuttons.BETAS_ExperienceGained
Target Item Trigger Item
Target Location Current location of the player

Raised whenever the current player gains experience in a skill.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the skill in which the player gained experience. Possible values are Farming, Fishing, Foraging, Mining, Combat, and Luck

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/ExperienceGained/Amount The amount of experience gained Integer
BETAS/ExperienceGained/WasLevelUp Whether or not the experience gain resulted in a level up Boolean

FishCaught

Spiderbuttons.BETAS_FishCaught
Target Item The fish that was caught
Target Location Location of the fish caught

Raised whenever the current player catches a fish. This does not include trash.

TARGET ITEM

The Target item in this case is the fish that was caught. Therefore, you can use ordinary item game state queries to check things like its item ID, quality, stack size (if multiple fish were caught), etc.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/FishCaught/Size The size of the fish caught Integer
BETAS/FishCaught/Difficulty The difficulty value for the fish that was caught Integer
BETAS/FishCaught/WasPerfect Whether or not the fish was caught perfectly Boolean
BETAS/FishCaught/WasLegendary Whether or not the fish caught was a legendary fish Boolean
BETAS/FishCaught/WasWithTreasure Whether or not the player also got a treasure chest while fishing Boolean

FloraShaken

Spiderbuttons.BETAS_FloraShaken
Target Item Trigger Item
Target Location Location of the tree or bush shaken

Raised whenever the current player shakes a tree or a bush.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId If it was a tree, the value will be the type or ID of the tree. If it was a bush, the value will be Bush

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/FloraShaken/Stage The growth stage of the flora that was shaken Integer This value will not exist for bushes.
BETAS/FloraShaken/Seed The item ID of the seed used to grow this flora. String This value will not exist for bushes.
BETAS/FloraShaken/Quality The quality of the produce that this flora produces. Possible values are 0 (normal), 1 (silver), 2 (gold), and 4 (iridium) Integer This value will only exist for fruit trees
BETAS/FloraShaken/Produce A list of the produce item IDs that were on this flora when it was shaken String List This value will only exist for fruit trees and berry bushes
BETAS/FloraShaken/ProduceCount The number of produce items that were on this flora when it was shaken String This value will only exist for fruit trees
BETAS/FloraShaken/PossibleProduce A list of all the produce item IDs that this flora can ever possibly produce String List This value will only exist for fruit trees
BETAS/FloraShaken/Size The size of this flora. Possible values are 0, 1, 2, 3, and 4 Integer This value will only exist for bushes. Sizes 0, 1, and 2 are small, medium, and large bushes respectively. Size 3 is a green tea bush. Size 4 is a golden walnut bush
BETAS/FloraShaken/WasInSeason Whether or not this flora was in season Boolean For fruit trees, this checks whether or not the tree can currently produce a fruit. For non-fruit trees, this checks whether or not the tree can grow. For bushes, this checks whether or not the bush is in bloom.
BETAS/FloraShaken/WasMossy Whether or not this flora was mossy Boolean
BETAS/FloraShaken/WasSeedy Whether or not this flora had a seed that fell out when shaken (I think) Boolean
BETAS/FloraShaken/WasFertilized Whether or not this flora was fertilized Boolean
BETAS/FloraShaken/WasTapped Whether or not this flora had a tapper on it Boolean
BETAS/FloraShaken/WasTree Whether or not this flora was a tree Boolean
BETAS/FloraShaken/WasFruitTree Whether or not this flora was a fruit tree Boolean
BETAS/FloraShaken/WasBush Whether or not this flora was a bush Boolean

ForgeUsed

Spiderbuttons.BETAS_ForgeUsed
Target Item The item that was forged/unforged OR the first of two rings if the result was a combined ring
Input Item The item used to forge/unforged from the target item OR the second of two rings if the Target Item was a combined ring
Target Location Location of the current player

Raised whenever the current player uses the forge to forge/unforge an item.

TARGET ITEM

The Target item in this case is the resulting item that the player got from the forge. If they were forging/enchanting a tool or weapon, the Target item will be the resulting tool or weapon with whatever enchantments were applied. If the player was unforging a tool or weapon, the Target item will be the resulting item after any enchantments were taken off. If the player was either forging or unforging a combined ring, the Target item will be the first of the two rings that were used in the combined ring.

INPUT ITEM

The Input item in this case is the item that the player placed in the right slot to use to forge the Target item (e.g. a prismatic shard). If the player was unforging a tool or weapon, the Input item will not exist. If the player was either forging or unforging a combined ring, the Input item will be the second of the two rings that were used in the combined ring.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/ForgeUsed/WasUnforge Whether or not the player was unforging an item, rather than forging one Boolean This will also exist on the Input item (if it exists) with the same value as the mod data on the Target

GarbageChecked

Spiderbuttons.BETAS_GarbageChecked
Target Item The item found in the garbage OR Trigger Item
Target Location Location of the garbage can checked

Raised whenever the current player rummages through a garbage can.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The ID of the trash can that was checked Only if the player did not find an item in the garbage can.
If the player found an item in the trash can (such as bread, cookies, etc), the Target item will be the item that was found. In that case, you can use ordinary item game state queries to check things like its item ID, quality, etc.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/GarbageChecked/GarbageCanId The ID of the garbage can that was checked String
BETAS/GarbageChecked/Witnesses A list of NPCs that caught the player checking the garbage can String List This value will not exist if there were no witnesses
BETAS/GarbageChecked/WasMegaSuccess Whether or not this garbage can check was a mega success Boolean
BETAS/GarbageChecked/WasDoubleMegaSuccess Whether or not this garbage can check was a double mega success Boolean

GiftGiven

Spiderbuttons.BETAS_GiftGiven
Target Item Trigger Item
Input Item The item that was gifted
Target Location Location of the NPC

Raised whenever the current player gives a gift to an NPC.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC that received the gift

INPUT ITEM

The Input item in this case is the item that was gifted to the NPC. Therefore, you can use ordinary item game state queries to check things like its item ID, quality, etc. The Input item will not contain any mod data.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/GiftGiven/Taste The taste of the gift given. Possible values are Love, Hate, Like, Dislike, Neutral, and Special String Special is used for Stardrop Tea
BETAS/GiftGiven/Friendship The friendship level of the NPC that was given the gift Integer This value will reflect the friendship after the friendship was gained from the gifting.
BETAS/GiftGiven/WasBirthday Whether or not the gift was given on the NPC's birthday Boolean

ItemBought

Spiderbuttons.BETAS_ItemBought
Target Item The item that the player bought
Target Location Location of the player when they bought the item

Raised whenever the current player buys an item from a shop.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/ItemBought/ShopId The internal ID of the shop that the item was bought from (e.g. SeedShop) String

ItemSold

Spiderbuttons.BETAS_ItemSold
Target Item The item that the player sold
Target Location Location of the player when they sold the item

Raised whenever the current player sells an item to shop. This trigger is only raised when the player sells an item to a shop, not anything else like shipping bins.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/ItemSold/ShopId The internal ID of the shop that the item was sold to (e.g. SeedShop) String

ItemEquipped

Spiderbuttons.BETAS_ItemEquipped
Target Item The equipped item
Target Location Location of the player

Raised whenever the current player equips an item. This includes when they select a tool in their hotbar.

ItemUnequipped

Spiderbuttons.BETAS_ItemUnequipped
Target Item The unequipped item
Target Location Location of the player

Raised whenever the current player unequips an item. This includes when they deselect a tool in their hotbar.

LetterRead

Spiderbuttons.BETAS_LetterRead
Target Item Trigger Item
Target Location Location of the mailbox that the letter was read from

Raised whenever the current player opens their mailbox to read a letter. This trigger is not raised if the player reads the letter again in their Collections menu.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The Data/mail key of the letter

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/LetterRead/Money The amount of money that was attached to the letter Integer This value will not exist if there was no money attached
BETAS/LetterRead/Quest The quest ID that was attached to the letter String This value will not exist if there was no quest attached
BETAS/LetterRead/SpecialOrder The special order ID that was attached to the letter String This value will not exist if there was no special order attached
BETAS/LetterRead/WasRecipe Whether or not the letter contained a cooking or crafting recipe Boolean
BETAS/LetterRead/WasWithQuestOrSpecialOrder Whether or not the letter contained a quest or special order Boolean
BETAS/LetterRead/WasWithItem Whether or not the letter contained an item Boolean

LightningStruck

Spiderbuttons.BETAS_LightningStruck
Target Item Trigger Item
Target Location Location of the current player when the lightning struck

Raised whenever the player witnesses a lightning strike.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId Lightning Strike

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/LightningStruck/Size The size of the lightning strike. Possible values are Big and Small String
BETAS/LightningStruck/StruckTerrainFeature The type of terrain feature that was struck by lightning. Possible values are FruitTree, Crop, and Grass String This value will not exist if lightning did not strike one of these features
BETAS/LightningStruck/StruckCrop The item ID of the crop that was struck by this lightning strike String This value will not exist if this lightning strike did not strike a crop
BETAS/LightningStruck/StruckTree The tree ID of the tree that was struck by this lightning strike String This value will not exist if this lightning strike did not strike a fruit tree
BETAS/LightningStruck/WasLightningRod Whether or not this lightning strike struck a lightning rod Boolean
Target Item Trigger Item
Input Item Trigger Item
Target Location Location of the current player

Raised whenever the player changes their currently active menu (such as pausing, opening dialogue, dying clothing, etc). This includes modded menus. This is equivalent to SMAPI's MenuChanged event. Note that navigating between tabs of the pause screen, like switching from your inventory to the Collections page, does not raise this trigger.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The C# class name of the menu (e.g. GameMenu or BobberBar) that the player changed to, if applicable. If the player just closed a menu (and thus no longer has a menu open), the Target Item will not exist at all.

INPUT ITEM

FIELD VALUE USAGE NOTES
ItemId The C# class name of the menu (e.g. ItemListMenu or QuestLog) that the player previously had open, if applicable. If the player did not previously have a menu open (e.g. they had no menu but just now opened their inventory), the Input Item will not exist at all.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/LightningStruck/Size The size of the lightning strike. Possible values are Big and Small String
BETAS/LightningStruck/StruckTerrainFeature The type of terrain feature that was struck by lightning. Possible values are FruitTree, Crop, and Grass String This value will not exist if lightning did not strike one of these features
BETAS/LightningStruck/StruckCrop The item ID of the crop that was struck by this lightning strike String This value will not exist if this lightning strike did not strike a crop
BETAS/LightningStruck/StruckTree The tree ID of the tree that was struck by this lightning strike String This value will not exist if this lightning strike did not strike a fruit tree
BETAS/LightningStruck/WasLightningRod Whether or not this lightning strike struck a lightning rod Boolean

MinecartUsed

Spiderbuttons.BETAS_MinecartUsed

Raised whenever the current player uses a minecart system to travel somewhere.

This trigger does not pass any item, fake or otherwise, to the trigger context. The only value it passes is the destination location that the player is traveling to, which is set as the Target location. Check the Here location to see where the player is leaving from.

MonsterKilled

Spiderbuttons.BETAS_MonsterKilled
Target Item Trigger Item
Target Location Location of the monster killed

Raised whenever the current player kills a monster.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the monster that was killed
Stack The number of items the monster dropped This does not take into account extra drops like books, Qi Gems, etc

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/MonsterKilled/MaxHealth The maximum health of the monster that was killed Integer
BETAS/MonsterKilled/Damage How much damage the monster that was killed would do to the player Integer
BETAS/MonsterKilled/Drops A list of item IDs that the monster dropped when it was killed String List
BETAS/MonsterKilled/WasHardmodeMonster Whether or not this was a hardmode monster Boolean

MorningStarted

Spiderbuttons.BETAS_MorningStarted

Raised when the player wakes up in the morning and the black screen fades out.

This trigger does not pass any item, fake or otherwise, to the trigger context. The only difference between this trigger and the vanilla DayStarted trigger is a minor difference in timing that may sometimes be important for reacting to Content Patcher token changes.

MusicChanged

Spiderbuttons.BETAS_MusicChanged
Target Item Trigger Item
Target Location Location of the current player

Raised whenever the currently playing song changes, including when it changes to silence.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the track that was changed to
The Target item will not contain any mod data.

NpcArrived

Spiderbuttons.BETAS_NpcArrived
Target Item Trigger Item
Target Location Location of the NPC

Raised whenever an NPC arrives and stops at a location during their daily schedule.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/NpcArrived/X The X coordinate of the map tile the NPC arrived at Integer
BETAS/NpcArrived/Y The Y coordinate of the map tile the NPC arrived at Integer

NpcKissed

Spiderbuttons.BETAS_NpcKissed
Target Item Trigger Item
Target Location Location of the NPC

Raised whenever the current player kisses or hugs an NPC.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC that was kissed

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/NpcKissed/Age The age of the NPC. Possible values are Adult, Teen, and Child String
BETAS/NpcKissed/Gender The gender of the NPC. Possible values are Female, Male, and Undefined. String
BETAS/NpcKissed/Friendship The friendship level the player has with the NPC Integer
BETAS/NpcKissed/WasDatingFarmer Whether or not the farmer is dating the NPC Boolean

PassedOut

Spiderbuttons.BETAS_PassedOut
Target Item Trigger Item
Target Location Location of the player when they passed out

Raised whenever the current player passes out either from exhaustion or from being up too late.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the location where the player passed out

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/PassedOut/Time The time of day when the player passed out Integer Standard 0600–2600 form
BETAS/PassedOut/Tool The ID of the tool that the player exhausted themselves with String This value will only exist if the player passed out from exhaustion via tool usage.
BETAS/PassedOut/WasUpTooLate Whether or not the player passed out from being up too late Boolean
BETAS/PassedOut/WasExhausted Whether or not the player passed out because they exhausted themselves Boolean
BETAS/PassedOut/WasSafe Whether or not the player passed out in a safe location (e.g. FarmHouse or IslandWest) Boolean

QuestAdded

Spiderbuttons.BETAS_QuestAdded
Target Item Trigger Item
Target Location Location of the current player

Raised whenever the current player receives a new quest in their journal.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The ID of the quest (or the title if the quest has no ID, such as daily billboard quests)

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/QuestAdded/Title The title of the quest String
BETAS/QuestAdded/Description The description of the quest String
BETAS/QuestAdded/Type The type of the quest (ItemDelivery, Crafting, etc). String
BETAS/QuestAdded/NextQuests A list of IDs of quests that come after this quest String List
BETAS/QuestAdded/DaysLeft How many days the player has to complete the quest Integer This value will only exist for timed quests
BETAS/QuestAdded/MoneyReward How much money the quest will reward upon completion Integer This value will only exist if there is a money reward for the quest
BETAS/QuestAdded/WasDailyQuest Whether or not the quest was a daily quest (i.e. from the bulletin board) Boolean
BETAS/QuestAdded/WasSecretQuest Whether or not the quest was a secret quest Boolean
BETAS/QuestAdded/WasTimedQuest Whether or not the quest came with a time limit Boolean

RelationshipChanged

Spiderbuttons.BETAS_RelationshipChanged
Target Item Trigger Item (New Friendship Data)
Input Item Trigger Item (Old Friendship Data)
Target Location Location of the NPC

Raised whenever the current player's relationship status (not friendship value) with an NPC changes.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC whose relationship status changed

INPUT ITEM

FIELD VALUE USAGE NOTES
ItemId The name of the NPC whose relationship status changed
In this trigger, the Trigger Item that is given as the Target will contain the friendship data as it appears after the relationship status changed. The Trigger Item that is given as the Input item will contain the friendship data for the NPC as it appeared before the relationship status changed. This is so that you can compare the before and after values of the relationship. Please keep in mind which one you are using in your Game State Queries.

MOD DATA

KEY VALUE TYPE USAGE NOTES
BETAS/RelationshipChanged/Status The relationship status with the NPC. Possible values are Friendly, Dating, Engaged, Married, Roommate, and Divorced String
BETAS/RelationshipChanged/Friendship The friendship level with the NPC Integer
BETAS/RelationshipChanged/GiftsToday The number of gifts the NPC has been given today Integer
BETAS/RelationshipChanged/GiftsThisWeek The number of gifts the NPC has been given this week Integer
BETAS/RelationshipChanged/DaysSinceLastGift The number of days since the NPC was last given a gift Integer
BETAS/RelationshipChanged/WeddingSeason The name of the season for the wedding with this NPC. Possible values are Spring, Summer, Fall, and Winter String This value will only exist if the player had or will have a wedding with this NPC
BETAS/RelationshipChanged/WeddingDate The day of the month for the wedding with this NPC Integer This value will only exist if the player had or will have a wedding with this NPC
BETAS/RelationshipChanged/WeddingYear The year of the wedding with this NPC Integer This value will only exist if the player had or will have a wedding with this NPC
BETAS/RelationshipChanged/DaysMarried The number of days the player has been married to this NPC Integer This value will only exist if the player had or will have a wedding with this NPC
BETAS/RelationshipChanged/WasTalkedToToday Whether or not this NPC was talked to today Boolean
BETAS/RelationshipChanged/IsRoommate Whether or not this NPC is the player's roommate Boolean WasRoommate will also work here, but don't get confused about whether you are checking the new or the old friendship data
BETAS/RelationshipChanged/WasMemoryWiped Whether or not this relationship status change was the result of the player wiping their ex's memories Boolean
For this trigger, the Input item will receive all of the same mod data as the Target item except for WasMemoryWiped, which will not exist in the Input item. Again, please remember that the mod data in the Input item reflects the relationship as it was before it changed and the mod data in the Target item reflects the relationship as it was after it changed.

ShopOpened

Spiderbuttons.BETAS_ShopOpened
Target Item Trigger Item
Target Location Location of the player when they opened the shop

Raised whenever a player opens a shop.

TARGET ITEM

FIELD VALUE USAGE NOTES
ItemId The internal ID of the shop that was opened (e.g. SeedShop)

SwimmingChanged

Spiderbuttons.BETAS_SwimmingChanged

Raised when the player starts or stops swimming.

This trigger does not pass any item, fake or otherwise, to the trigger context.