How to connect your toy to Skyrim (SexLab, Toys & Love, Devious Devices)
Three Skyrim mods drive a toy from in-game events. Telekinesis (Buttplug), GIFT (standalone), and SexLab P+ with native Lovense API. Setup for LE, SE, and AE.
Skyrim has the most mature mod ecosystem in adult gaming, and several mods drive real toys from in-game events. Whether you play Devious Devices, Toys & Love, SexLab, or all of them at once, there are three solid paths to route in-game stimulation to your actual toy.
All three work with ToyControl. Pick the one that fits your setup.
The three paths
| Mod | Protocol | Best for |
|---|---|---|
| Telekinesis | Buttplug.io | Native SKSE plugin, runs inside Skyrim, any Buttplug-supported toy |
| GIFT (Game Interface For Toys) | Lovense or Buttplug | Standalone Python watcher, no SKSE required |
| SexLab P+ | Native Lovense API | Lovense toys, easiest setup for Lovense users |
All three work on Skyrim LE, SE, and AE.
Path 1: Telekinesis (recommended for most users)
Telekinesis is a native SKSE plugin. It runs inside Skyrim as a real mod, syncs with Devious Devices and Toys & Love events, and drives toys during SexLab animations.
It talks to a Buttplug.io server. ToyControl is a Buttplug.io server, so Telekinesis connects to ToyControl the same way it would connect to Intiface Central.
Install Telekinesis
- Download the latest Telekinesis release from the GitHub releases page.
- Install it as you would any other SKSE mod (drop into your Mod Organizer 2 / Vortex / manual
Data/SKSE/Pluginsdirectory). - Make sure SKSE is up to date for your Skyrim version.
Configure the Buttplug URL
Before you set the URL: in ToyControl, open the Game Link tab and turn on the Intiface bridge toggle. A URL appears next to it. Quit Intiface Central first if you have it installed, the two cannot share the port. See Turning on the Intiface bridge for the detail.
Telekinesis's config file is Data/SKSE/Plugins/Telekinesis.toml. Open it and paste the URL into the WebSocket URL field.
Or use the in-game MCM (Mod Configuration Menu) to set it.
Use it
Start Skyrim. SexLab animations, Devious Devices vibrators, and Toys & Love events all fire toy responses through Telekinesis.
Path 2: GIFT (Game Interface For Toys)
GIFT is a standalone Python application that watches Skyrim's log file and triggers connected toys. It runs outside Skyrim, so it does not need SKSE.
GIFT supports Lovense (via the Lovense Connect API) and Buttplug.io.
Install and run GIFT
- Download the latest GIFT release from its GitHub page.
- Extract it to a folder.
- Run
gift.exe. - Configure GIFT to connect to either ToyControl's Game Link (Lovense path) or ToyControl's Intiface bridge (Buttplug path).
Set up Skyrim event triggers
GIFT watches for specific log lines from supported mods (SexLab, Devious Devices, Toys & Love). Make sure your Skyrim's log file is enabled (usually it is by default).
Use it
Start Skyrim, then GIFT. As scenes play in-game, GIFT detects the log events and forwards them to ToyControl.
Path 3: SexLab P+ with Lovense API
SexLab P+ is a fork of the classic SexLab framework. Late in 2024 it added native Lovense API support, meaning the mod itself can drive a Lovense toy directly without GIFT or Telekinesis.
For ToyControl users, this maps to Game Link (since SexLab P+ targets Lovense Game Mode).
Install SexLab P+
Standard SKSE mod install (Mod Organizer 2 / Vortex / manual).
Configure the Lovense connection
In SexLab P+'s MCM:
- Open the Lovense section.
- Enter ToyControl's Game Link IP and port (from the Game Link tab).
- Click connect.
SexLab P+ treats ToyControl as a Lovense endpoint and drives the toy.
Which to pick
- Most users: Telekinesis. Cleanest integration, no extra apps, works with any toy ToyControl supports.
- Don't want to install SKSE plugins: GIFT. Runs separately, watches the log.
- Lovense-only users on SexLab P+: The native path is fast and avoids any third-party intermediary.
You can even run more than one for different mod ecosystems if you have a specific reason, though it gets complicated.
Devious Devices and Toys & Love event mapping
The most common Skyrim adult mods all produce events that the three integration paths watch for:
- Devious Devices: Vibrator items in-game trigger toy responses.
- Toys & Love: Same idea, different mod framework.
- SexLab animations: Scene events trigger speed changes.
- Estrus Chaurus, Aroused Redux: Status events can trigger toy responses (mod-dependent).
If you use a specific mod and the integration is not triggering, check that mod's wiki or the integration plugin's docs for the supported event list.
Tuning the feel
On the ToyControl side:
- Multiplier for whole-session scaling.
- Speed range for floor and ceiling.
- Per-device intensity for individual toys.
If a SexLab scene feels too intense, set Multiplier to 0.7x. If too gentle, 1.3x.
Troubleshooting
Telekinesis "Cannot connect to server"
- Confirm ToyControl's helper app is running.
- Confirm the WebSocket URL in Telekinesis.toml matches ToyControl's.
- Restart Skyrim after changing the config.
GIFT does not detect events
- Confirm Skyrim's log file is being written. Look in
My Games/Skyrim Special Edition/Logs. - Confirm GIFT is configured to watch the right log file path.
- Some mods need debug logging enabled to write events GIFT can detect.
SexLab P+ Lovense menu does not connect
- Verify the IP and port match ToyControl's Game Link tab.
- Check the firewall isn't blocking the helper app's port.
Two integrations fighting each other
If you install Telekinesis and GIFT and they both fire on the same event, your toy will get double the signal. Pick one as the primary and disable or uninstall the others.
My toy stops mid-scene
- Could be Bluetooth range. See My toy keeps disconnecting.
- Could be the mod's event timing. Check the integration's documentation.
Privacy
All three integrations are local. ToyControl runs on your computer. Telekinesis runs inside Skyrim on the same PC. GIFT watches a local log file. No cloud is involved (unless you use SexLab P+'s Lovense path with Lovense Remote in cloud mode, but with ToyControl in the middle it stays on LAN).