Jump to content

Recommended Posts

Posted

TETHER - Hand-Holding for Followers


An SKSE plugin for Skyrim SE / AE that implements continuous follower hand-holding: a hand connection that survives walking, running, and terrain movement without breaking. Built on a combination of a Havok ball-and-socket constraint and kinematic position control.
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ On AI use
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Most of this plugin's code was generated by Claude Code (Anthropic). The author (KEI997) handled:
- Spec decisions, prioritization, trade-off calls
- In-game testing and bug reports
- Pointing the AI at specific reference mod sources ("read this, use as reference")
- Reviewing and accepting/rejecting generated code
- SSEEdit ESP construction, Papyrus compilation, OAR animation authoring

All reference sources the AI read are publicly-licensed. Per-feature attribution is listed in the GitHub README:
https://github.com/Kei-BWV997/TETHER

If any listed author objects to their source being used this way, please contact and I will rework the affected feature or adjust the credit.
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ Features
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

- One hotkey to engage / release the hand-hold (default H, works with both keyboard and Xbox controller)
- While tethered, hands are physically bound via a Havok ball-and-socket constraint (the palms actually stay stuck together, not just visually near each other)
- The follower is kept directly behind the player via KeepOffsetFromActor
- While tethered, the player's max movement speed scales with distance to the follower — try to sprint away and you'll automatically be slowed down to a speed the follower can match (natural since you're literally holding their hand)
- Custom OAR conditions let you swap in dedicated tether animations
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ Animation status in v1.0.0
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Only ONE pattern currently has an authored motion: player-male (the puller). The other three folders (player-female, follower-male, follower-female) exist as empty structure — they contain only the OAR config.json, no .hkx files. Actors matching those conditions will just play vanilla locomotion while tethered.

The plugin ships this structure so users can drop their own .hkx into the correct folder to enable that pattern, or wait for future updates / a community animation pack.
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ Known issues
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

- Sometimes on engage, the follower doesn't start moving to the tether position. Workaround: release, walk a few steps away, then re-engage. Cause not yet identified.
- Third-person only (no first-person support)
- One active tether at a time (no multi-follower)
- Doesn't work while a weapon is drawn (deliberate — releases on draw)
- Very rare CTD possible if an actor's state changes at an unfortunate moment (auto-release handles the common cases: cell change, save load, weapon drawn, etc., but edge cases remain)
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ MCM options
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

- Toggle key rebind (keyboard + gamepad)
- Follower offset position, Follow / Catchup radius
- Elastic tether curve (ideal/slack distance, speed multipliers at both ends)
- Follower speed boost while tethered
- Palm attachment offset
- Auto-release toggles (on weapon drawn / on combat start / on extreme distance)
- R key resets a single option; "Reset All Settings" button
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ Source code / technical details
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Open source under MIT license:
https://github.com/Kei-BWV997/TETHER

The GitHub README covers:
- Per-feature reference-source table (which mods were used for which techniques)
- Technical details of each feature (hook sites, Papyrus APIs called, state machine)
- License and third-party file handling

Bug reports and pull requests are welcome via GitHub Issues.
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ About the author
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

I'm normally an OStim animator, active on the OStim Community Discord. If you want to chat about this mod, request features, or just say hi — come by:

[https://discord.gg/ostim]
GGmods_comehangout.png.1f94ee1d0a456fb2737ccc841aaeb9b7.png

(TETHER is not an adult mod, but I develop from that community and that's where I hang out.)


  • Submitter
  • Submitted
    08/13/26
  • Category
  • Requirements
    [Required]
    - Skyrim SE / AE (1.6.11xx recommended)
    - SKSE64 / SKSE-AE
    - Address Library for SKSE Plugins (AE version)
    - SkyUI 5.2 SE
    - Open Animation Replacer 3.0 or later
    - powerofthree's Tweaks (EditorID preservation — without it, the MCM values won't reach the plugin)

    [Strongly recommended]
    - Keep Up! Follower Locomotion Fix (TESFAN) — fixes an engine bug where followers get stuck on stairs or complex terrain. TETHER works without it, but this significantly reduces the "follower left behind" problem.

    [Confirmed compatible]
    - FOMS (Follower Organized Management System)
    - True Directional Movement
  • Regular Edition Compatible
    No
  • Install Instructions

    1. Install all Requirements first
    2. Install the TETHER zip via your mod manager (MO2 / Vortex) and enable it
    3. Make sure TETHER.esp is enabled in your load order
    4. Launch the game, load a save
    5. Confirm "TETHER" appears in the MCM list
    TWF.png.a78201d76ad5f3e2b59a1cae67643a91.png


    ■ In-game usage
    - With your weapon sheathed
    - Look directly at your follower
    - Press the hotkey (default H, rebindable in MCM) to hold hands
    - Same hotkey releases
    - Drawing a weapon automatically releases


    ■ Verifying it loaded correctly
    On a clean launch, Documents\My Games\Skyrim Special Edition\SKSE\TETHER.log should contain lines like:

    TETHER v1-0-0-0
    TETHER loaded
    OAR condition register (TETHER_IsTetheredPlayer): OK
    OAR condition register (TETHER_IsTetheredFollower): OK
    Settings::Load: 16/16 globals bound from TETHER.esp
    kDataLoaded: TETHER ready

    If you see "Settings::Load: 0/16", the plugin can't read EditorIDs. Make sure powerofthree's Tweaks is installed and TETHER.esp is enabled.


    ■ Uninstalling
    Release the tether (make sure you're not currently holding hands), save the game, then disable the mod. This avoids leaving any Havok state in the save.

 

Posted

Props for the transparency about how you used AI in developing the mod. I think this sets a good standard.

 

Also, it's a cute mod.

Posted (edited)

Don't hold raw pointers to bones: https://github.com/Kei-BWV997/TETHER/blob/dd8c7dfee4caaa12c6442f1261c4ebb16e27cea4/src/TetherController.h#L55
 

These nodes can free beyond just cell change (like mods), and you'll be left with a dangling pointer that'll corrupt memory. 

 

I'd use NiPointer's there. It don't guarantee lifecycle, but at least you'll hold a reference to the memory and get a clean CTD rather than corrupting memory. 

 

In FSMP, and my other mods we insure the nodes are still attached to the root skeleton every frame

 

Edit: This is almost certainly the cause of your "Very rare CTD possible". Although a CTD is ironically the GOOD outcome of this lol

Edited by asdt123123
Posted (edited)
36 minutes ago, asdt123123 said:

Don't hold raw pointers to bones: https://github.com/Kei-BWV997/TETHER/blob/dd8c7dfee4caaa12c6442f1261c4ebb16e27cea4/src/TetherController.h#L55
 

These nodes can free beyond just cell change (like mods), and you'll be left with a dangling pointer that'll corrupt memory. 

 

I'd use NiPointer's there. It don't guarantee lifecycle, but at least you'll hold a reference to the memory and get a clean CTD rather than corrupting memory. 

 

In FSMP, and my other mods we insure the nodes are still attached to the root skeleton every frame

 

Edit: This is almost certainly the cause of your "Very rare CTD possible". Although a CTD is ironically the GOOD outcome of this lol

So, verdict? Not safe, don't use?

 

Plus, no female female support? Just male - female?

Edited by TiamatTim
Posted

I'm back- cute and kino, I can see this being a perma in my loadlist- though I have an issue where both PC and Follower stare upwards, the weapon on may back also follows that direction and ends up impaling my PC lol- maybe an issue with the the idle/walk/run animations I use? The only gripe I really have is with the Follower pushing you to get back to their positions- if possible maybe disable follower-player collisions when tethered... Also that pointer thing that guy said if true.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...