Action Repository
This is where the actions created by the community are exposed, to be shared and used with the Custom Actions SkyrimNet feature. To use them in your game you just need two simple things, the correct papyrus script and the action yaml file.
Download and install the " Skyrimnet_Actions" esp, provided below. Just activate it as any other mod. It is very lightweight, ony containing the required papyrus scripts for these actions.
You dont need to have all the actions installed, or enabled.You toggle them in list seen in : automation---custom action , on the web ui.
Additionally you just need to place each action yaml file in this folder :\SKSE\Plugins\SkyrimNet\config\actions, the action will appear in the web ui, with everything preconfigured and ready to use in-game. Or install the Yaml zip file as a mod, making the files go automatically to the proper place.
Downloads
These two zip files are all that is required to install the complete suite of actions by the author Severause. For now each author will have its own action plugin, that is required to download, if you want their actions. They will be updated as needed to include new additions ( and to prevent users having a growing number of light esp related to these actions).
If you only want certain ones, download the esp and and the correct yaml file, for the specific action, listed below, placing it on the folder described above. The settings show here, for each action, are exactly what is included in each yaml file. If you dont have an Actions folder, designing and saving even a non-working one, in the web ui, will auto create such folder.
Attack Action
This now gives agency to the npcs to lethally attack anyone, if deemed necessary, even you! They will ponder based on context and their own personalities. However,there are other actions, like Threaten and Brawl, intended to give more options for npcs to settle offenses, other than a deadly escalation.
author: Severause
name: Attack
description: "Use this action to make the speaking NPC immediately attack a specified target. Call it in either of these cases:\n(A) The Player issues a combat order (e.g., attack/kill/eliminate/engage/strike/sic), optionally naming a target; or\n(B) the speaking NPC decides retaliation or pre-emptive violence is necessary because they were harmed, threatened, blocked, or deliberately provoked.\nTargeting: if a name is given, attack that actor; else if the crosshair is on an actor, attack them; else attack a nearby actor consistent with the request.\nRelationship/faction is irrelevant—the target may be friend, foe, neutral, guard, civilian, or even The Player.\nAvoid triggering on non-combat idioms (e.g., “kill the lights,” “this quest is killing me”), negotiation-only requests, or while the speaker is unable to fight (dead, restrained, in bleedout). Respect cooldown; do not spam repeated calls. Do not become hostile over idle threats, only when you feel your life is in danger or the threat was strong enough to warrant such a response. Use your best judgement.\nIf the target is ambiguous but the situation is clearly hostile, prefer crosshair; otherwise request one brief clarification."
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_AttackAPI
executionFunctionName: OrderAttack
parameterMapping:
- type: dynamic
name: attacker
description: The person initiating the attack
- type: dynamic
name: Target
description: The Target of the attack
enabled: true
Draw Weapon and Threaten
author: Severause
name: DrawAndThreaten
description: "Use when: tension escalates in dialogue and a warning stance is appropriate, not a real attack. \nDo not be afraid to use it liberally when the speaker says they are putting their hand on their sword hilt or if a grievous insult is hurled at you. If a narration claims that the speaker has drawn their weapon, use this function as well"
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_EmotionWeaponFollowAPI
executionFunctionName: ApplyEmotion
parameterMapping:
- type: dynamic
name: akActor
description: actor to affect (usually the speaker).
- type: dynamic
name: asMoodToken
description: use "angry" (preferred), "threaten", or "hostile" to trigger the weapon-draw flow; any other value does a neutral pose.
- type: static
value: 0.1
name: afThreatIdleSeconds
description: Static float parameter
- type: static
value: 10
name: afHoldSeconds
description: Static float parameter
- type: static
value: true
name: abAutoSheathe
description: Static bool parameter
- type: dynamic
name: abApproachPlayer
description: true to walk toward the player with weapon out, false to stand and glare in place.
enabled: true
defaultPriority: 8
Stop Fighting
author: Severause
name: StopFighting
description: "Use this action to make the speaking NPC immediately disengage from combat with a target. Call it when:\n(A) The Player issues a stop order (e.g., stop / cease / hold fire / stand down / enough), optionally naming a target; or\n(B) the current target yields/surrenders (e.g., lines like “I yield,” “mercy,” “don’t kill me,” kneel/bleedout, or unconscious); or\n(C) continued fighting is clearly counterproductive (wrong target, collateral risk, friendly fire, quest/roleplay conflict).\nTargeting: if a name is given, cease vs that actor; else if the crosshair is on an actor, cease vs them; else cease vs the last engaged target.\nRelationship/faction is irrelevant—you may stop attacks against friend, foe, neutral, guard, civilian, or even The Player.\nAvoid triggering on non-combat idioms (“stop by,” “can’t stop laughing”), nonviolent requests, or when the speaker isn’t in combat. Respect cooldown; don’t spam repeated calls."
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_AttackAPI
executionFunctionName: CeaseFire
parameterMapping:
- type: dynamic
name: attacker
description: The initial attacker
- type: dynamic
name: Target
description: The initial target of the attacker
enabled: true
defaultPriority: 7
Drink Health Potion
author: Severause
Skyrimnet already gives vitals context for all npcs , so the gamemaster will often autonomously make them drink a health potion, if needed, with this action. Same for Magikca and Stamina potions.
Skyrim doesnt come with potion drink animations, as such you can use this mod to enable them: https://www.nexusmods.com/skyrimspecialedition/mods/73819?tab=description It has been proven to work well with these actions (and all regular potion drinking ), however take care, your own modlist conflicts or issues is your responsibility!
name: DrinkHealthNow
description: "Force the target NPC to drink a health potion now."
questEditorId: SkyrimNet_Tools
scriptName: skyrimnet_autopotionsapi
executionFunctionName: DrinkNow
parameterMapping:
- type: dynamic
name: akActor
description: The NPC who will drink the potion
- type: static
value: "\"health\""
name: asType
description: Static string parameter
enabled: true
defaultPriority: 9
Drink Magicka Potion
author: Severause
name: DrinkMagickaNow
description: "Force the target NPC to drink a magicka potion now."
questEditorId: SkyrimNet_Tools
scriptName: skyrimnet_autopotionsapi
executionFunctionName: DrinkNow
parameterMapping:
- type: dynamic
name: akActor
description: The NPC who will drink the potion
- type: static
value: "\"magicka\""
name: asType
description: Static string parameter
enabled: true
defaultPriority: 9
Drink Stamina Potion
author: Severause
name: DrinkStaminaNow
description: "Force the target NPC to drink a stamina potion now."
questEditorId: SkyrimNet_Tools
scriptName: skyrimnet_autopotionsapi
executionFunctionName: DrinkNow
parameterMapping:
- type: dynamic
name: akActor
description: The NPC who will drink the potion
- type: static
value: "\"stamina\""
name: asType
description: Static string parameter
enabled: true
defaultPriority: 9
Give Gold
This action will create the gold required, promised or asked, even if the npc doesnt have enough. This allows immersive situations like a Jarl always being able to properly reward a player. Abuses can happen, but if you want to cheat you always had the console anyway...
author: Severause
name: GiveGold
description: "Use this to give the player gold under certain conditions: When asked, when ordered, when threatened, when a job is complete and payment is required. Use your best judgement and think about your relationship with the player before agreeing to give them gold. You may refuse to give gold if it is not in your best interest for roleplay purposes."
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_CurrencyAPI
executionFunctionName: NPCGivesPlayerConjured
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC giving gold to the player
- type: dynamic
name: aiAmount
description: The amount of gold received
- type: dynamic
name: abAnimate
description: The animation that should play after gold is given
enabled: true
Give Gold Accounted
author: Severause
This Action only transfers gold within the owned maximum of the character, for maximum immersion and minimal tax evasion. He cant give money he doesnt possess in his inventory If having both "give gold" actions , its recommended to disable one of them.
name: GiveGoldReal
description: "Use this to give the player gold under certain conditions: When asked, when ordered, when threatened, when a job is complete and payment is required. Use your best judgement and think about your relationship with the player before agreeing to give them gold. You may refuse to give gold if it is not in your best interest for roleplay purposes. Only real gold will be removed from inventory"
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_CurrencyAPI
executionFunctionName: NPCGivesPlayerReal
parameterMapping:
- type: dynamic
name: akNPC
description: NPC who will hand over the gold (prefer the speaker or crosshair target).
- type: dynamic
name: aiAmount
description: The aiAmount parameter for this action
- type: dynamic
name: abAnimate
description: Amount of gold (septims) to transfer.
enabled: true
defaultPriority: 7
Start Brawl
Now your bickering, competing followers can duke it out, settling matters. Or you can fully experience the true nord tavern ambience, with some good old fashioned fist-fights. When this action is activated the involved npcs weapons are hidden from them, while the brawl lasts. The confrontation is entirely non-lethal.
author: Severause
name: StartBrawl
description: Start a non-lethal fistfight between two NPCs (no weapons). Prefer this for 'brawl/spar/fistfight/duke it out' or similar requests..
questEditorId: SkyrimNet_Tools
scriptName: SkyrimNet_BrawlAPI
executionFunctionName: StartNPCBrawl
parameterMapping:
- type: dynamic
name: akA
description: First participant (use crosshair/speaker if specified).
- type: dynamic
name: akB
description: Second participant (the opponent)
enabled: true
defaultPriority: 6
Actions Pack by Galanx
Download and install, just like a mod, the following file. it contains all the scripts and yaml files for the following actions. The plugins provided in the repository have been deemed safe by their creators and wont occupy an esp slot.
Give Item
author: Galanx
name: GiveItemToPlayer
description: "Give an item to the PLAYER on behalf of the target NPC. Targeting: akNPC MUST NEVER be player or 'Prisoner'. If the PLAYER is the speaker, set akNPC to the named NPC or the crosshair actor but never the player/Prisoner; otherwise ask one brief clarification. Category guidance: choose asCategory (bow, crossbow, arrows, bolts, lockpick, potion_health, potion_stamina, potion_magicka). If asPreferredName is provided (e.g., 'Hunting Bow'), prefer that if available in the pool; otherwise use the default item for the category. Respect mood/relationship and only conjure when appropriate for roleplay or configuration. Avoid triggering during combat or when the NPC cannot act."
questEditorId: SkyrimNet_Reactions_Plus
scriptName: SkyrimNet_ItemsAPI
executionFunctionName: GiveItem
# eligibilityScriptName: SkyrimNet_ItemsAPI
# eligibilityFunctionName: GiveItem_IsEligible
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC speaking (never the player or 'Prisoner')
- type: dynamic
name: asCategory
description: Category key (bow, crossbow, arrows, bolts, lockpick, potion_health, potion_stamina, potion_magicka)
- type: static
value: ""
name: asPreferredName
description: Specific item name (e.g., "Hunting Bow") if specified
- type: dynamic
name: aiAmount
description: Stack count for stackable items (default 1)
- type: static
value: true
name: abConjured
description: Static bool forcing conjured grant
- type: static
value: true
name: abAnimate
description: Whether to play a handover pose
- type: dynamic
name: asMood
description: The mood token, lowercase is important (friendly, threatened, coerced, flirty, romance, etc.)
- type: dynamic
name: asReason
description: Why the item is given, lowercase is important (reward, begged, threatened, coerced, trade, bet_loss, apology, charity, other)
enabled: true
defaultPriority: 6
Hand over Equipment
author: Galanx
name: HandOverEquipment
description: "Use when the PLAYER asks the target NPC to hand over equipment they are wearing/holding (robbery, playful theft, flirting, gift, reward). Targeting: akNPC MUST NEVER be the player or 'Prisoner'. If the PLAYER is the speaker, set akNPC to the named NPC or crosshair actor but never the player/Prisoner; otherwise ask one brief clarification. Use asTargetParts to specify what to hand over: 'all', or a body part like 'head', 'body/top', 'hands/gloves', 'feet/boots', 'jewelry', 'ring', 'amulet', 'shield', 'weapon_right/mainhand', 'weapon_left/offhand'. If ambiguous, prefer 'all' only when the context indicates coercion/robbery; otherwise ask for a short clarification."
questEditorId: SkyrimNet_Reactions_Plus
scriptName: SkyrimNet_ClothingAPI
executionFunctionName: HandOverEquipment
# eligibilityScriptName: SkyrimNet_ClothingAPI
# eligibilityFunctionName: HandOverEquipment_IsEligible
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC handing over equipment (never the player or 'Prisoner')
- type: dynamic
name: asTargetParts
description: "'all' or a specific part list (e.g., 'boots', 'ring', 'shield', 'weapon_right', 'weapon_left', 'head', 'body/top', 'hands/gloves', 'feet/boots', 'jewelry', 'ring', 'amulet', 'shield', 'weapon_left/offhand', 'weapon_right/mainhand')"
- type: static
value: true
name: abAnimate
description: Whether to play a handover pose
- type: dynamic
name: asMood
description: The mood token, lowercase is important (friendly, threatened, coerced, annoyed, persistent, romance, flirty, playful, etc.)
- type: dynamic
name: asReason
description: Why equipment is handed over, lowercase is important (reward, begged, threatened, coerced, romance, gift, bet_loss, apology, charity, other)
enabled: true
defaultPriority: 7
Travel to place
author: Galanx
name: TravelToPlace
description: "Always use when {{ player.name }} says things to the target NPC like: 'meet me at <place>', 'lead the way to <place> (should run)', 'head to <place>', 'go on ahead to <place>', 'wait for me at <place>', 'go to <place> and I will catch up', 'let's meet at <place>'. DO NOT use if {{ player.name }} says 'follow me', 'come with me', 'let's go together' or anything similar — in those cases choose AccompanyTarget instead. Also pay attention to the context and don't use if inappropriate. If ambiguous, ask one brief clarification. Avoid triggering during combat or if you cannot act. Use the CANONICAL_PLACE values listed below exactly for asPlaceName. If the target NPC agrees to travel/meet, this is a strong indicator that this action SHOULD be chosen."
questEditorId: SkyrimNet_Reactions_Plus
scriptName: SkyrimNet_TravelAPI
executionFunctionName: TravelToPlace
# eligibilityScriptName: SkyrimNet_TravelAPI
# eligibilityFunctionName: TravelToPlace_IsEligible
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC who will travel
- type: dynamic
name: asPlaceName
description: "CANONICAL_PLACE string. Allowed values (case-sensitive): Whiterun, Riften, Solitude, Windhelm, Markarth, Falkreath, Morthal, Dawnstar, Winterhold, Riverwood, Breezehome, Dragonsreach, Bannered Mare, Jorrvaskr, Temple of Kynareth, Warmaiden's, Belethor's General Goods, Arcadia's Cauldron, Honningbrew Meadery, Whiterun Stables, Riverwood Trader, Alvor's House, Sleeping Giant Inn, Mistveil Keep, Bee and Barb, Riften Stables, Blue Palace, Winking Skeever, Solitude Stables, Palace of the Kings, Candlehearth Hall, Windhelm Stables, Understone Keep, Silver-Blood Inn, Markarth Stables, Dead Man's Drink, Highmoon Hall, White Hall, College of Winterhold, Frozen Hearth"
- type: dynamic
name: asSpeed
description: 'Speed hint: "walk", "jog", or "run" (default - always use "walk" if not specified)'
- type: static
value: true
name: abStopFollowing
description: If true, stop following the player before traveling
enabled: true
defaultPriority: 1
# Guidance for LLM parameterization
# Use EXACTLY one of these strings for asPlaceName (case-sensitive):
# CITIES
# - Whiterun
# - Riften
# - Solitude
# - Windhelm
# - Markarth
# - Falkreath
# - Morthal
# - Dawnstar
# - Winterhold
# - Riverwood
# PLACES (WHITERUN)
# - Breezehome
# - Dragonsreach
# - Bannered Mare
# - Jorrvaskr
# - Temple of Kynareth
# - Warmaiden's
# - Belethor's General Goods
# - Arcadia's Cauldron
# - Honningbrew Meadery
# - Whiterun Stables
# PLACES (RIVERWOOD)
# - Riverwood Trader
# - Alvor's House
# - Sleeping Giant Inn
# PLACES (RIFTEN)
# - Mistveil Keep
# - Bee and Barb
# - Riften Stables
# PLACES (SOLITUDE)
# - Blue Palace
# - Winking Skeever
# - Solitude Stables
# PLACES (WINDHELM)
# - Palace of the Kings
# - Candlehearth Hall
# - Windhelm Stables
# PLACES (MARKARTH)
# - Understone Keep
# - Silver-Blood Inn
# - Markarth Stables
# PLACES (OTHERS)
# - Dead Man's Drink
# - Highmoon Hall
# - White Hall
# - College of Winterhold
# - Frozen Hearth
Cancel Travel
author: Galanx
name: CancelTravel
description: "Always use with prioritywhen {{ player.name }} says 'stop', 'stop running', 'wait', 'hold up', 'cancel that', 'new plan', or gives a different instruction that conflicts with ongoing travel (e.g., follow me, trade, fight, go somewhere else). Important: If the player constantly says stop or wait, this action SHOULD be chosen with highest priority!"
questEditorId: SkyrimNet_Reactions_Plus
scriptName: SkyrimNet_TravelAPI
executionFunctionName: CancelTravel
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC to stop
enabled: true
defaultPriority: 1
Change Clothing
author: Galanx
name: ChangeClothing
description: "Use to change dress/undress target NPC's clothing or equipment. Targeting: akNPC MUST NEVER be player or 'Prisoner'. If the PLAYER is the speaker, set akNPC to the named NPC or crosshair actor but never the player/Prisoner. Parameters: asTargetParts (one of: all, head, upper_body, hands, feet, jewelry) and asAction (one of: undress, dress, redress, get_dressed). Prefer specific parts over 'all'; use 'redress'/'dress' to put items back on."
questEditorId: SkyrimNet_Reactions_Plus
scriptName: SkyrimNet_ClothingAPI
executionFunctionName: ChangeClothing
# eligibilityScriptName: SkyrimNet_ClothingAPI
# eligibilityFunctionName: ChangeClothing_IsEligible
parameterMapping:
- type: dynamic
name: akNPC
description: The NPC changing clothing (never the player or 'Prisoner')
- type: dynamic
name: asTargetParts
description: "Token for body part: all | head | upper_body | hands | feet | jewelry"
- type: dynamic
name: asAction
description: "Action token: undress | dress | redress | get_dressed"
- type: static
value: true
name: abAnimate
description: Optional pose (currently used for handover only)
- type: dynamic
name: asMood
description: The mood token lowercase is important (friendly, threatened, coerced, annoyed, persistent, romance, flirty, etc.)
- type: dynamic
name: asReason
description: Why the clothing action is requested, lowercase is important (reward, begged, threatened, coerced, romance, flirty, other)
enabled: true
defaultPriority: 7