Jump to content

Skyrim Lovense API


Recommended Posts

Posted

Skyrim Lovense API

View File

Lovense API

An API to easily control Lovense Toys via Papyrus calls.

*This version is identical to the Nexus upload

 

Usage Instructions

In order for other mods to control your Toys, you will first need to connect it to Skyrim. Interaction will then be handled by mods using this API. You don't need to do anything further.

  • If you do not own a Lovense Toy, you can buy one here: Lovense.com

 

1. Enable LAN Mode

Ensure you have the Lovense Remote App installed on your phone. Open it, and navigate:

  • Discover -> Game Mode -> Enable Lan

Toggle the Lan Switch and you should find a "Local IP" and "Port" field. We will need these in a moment.

 

When connecting via the Usb Dongle:

  • Your IP will be 127.0.0.1
  • For Port,
    • The default Port is 20010
    • The default SSL Port is 30010
    • You can also manually search for the port by typing those two lines into the terminal:
      • tasklist | findstr Lovense
        • This will give you an output of shape: Lovense_Remote.exe  <process id> ...
      • netstat -ano | findstr 0.0.0.0 | findstr <process id>
        • Ensure to replace <process id> with the value you obtained in the previous command
  • Ensure to enable Allow Control in your Lovense Remote App, under External Control in the App's Task Bar.
  • If it does not work, ensure to check back into the App and confirm access permissions.

 

For either of those methods, LovenseAPI by default will prefer regular (non-SSL) Ports. If you want to connect via the SSL Port, ensure you go to Data/SKSE/Plugins/Lovense.ini and set bUseSSEL = 1.

 

2. Connecting the App

To connect to Lovense Remote, there are two options available:

  • Via the Interface (Not available for VR)
  • Via the Console (Requires Custom Console)

 

2.1 Connecting via Interface

Open the Connection Menu via Hotkey, by default this will use the F10 key. This will open the interface:

interface.png

In the Menu:

  • Enter the Local IP from Lovense Remote into the IP field.
  • Enter the Port Number into Port field.
  • Press the Connect button.

 

Afterwards, you'll see a list of all Toys that are now connected to your game.

 

2.2 Connecting via the Console

Alternatively, you can also establish a connection using the console. If you want to take this approach, ensure you have Custom Console installed. Type the following into your console line by line, replacing <*> with the respective requested information:

  • lovense sa <Local IP>
  • lovense sp <Port>
  • lovense c

 

After typing out all three lines, you should be getting a message along the lines of:

  • Connected to Lovense API. Connected Toys: [...]

 

3. Toy Categories

If you want to be extra-immersive and have access to the Interface, you can assign a category to each Toy that is currently connected by cycling through the list of categories using the arrow buttons next to each registered Toy. Categories are useful for letting mod authors know that you only want to active a specific Toy under certain.. stimulating conditions.

Let's consider a very plain example: Say we are using an adult animation framework utilizing this API and respecting the Category feature. Then, if you set the category of your Toy to Anal, the Toy will only be activated when the animation currently playing is somehow considered anally stimulating. Easy, right? And all the more immersive if you use more than 1 Toy at once. :)

 

Please note however that this feature opt-in for both you and the author. If either of you decides not to use this feature, then any category requests/preferences will not be respected.

 

Information for Mod Authors

Interaction with Lovense is done entirely through the script Lovense.psc. Documentation is part of the source, located above each function individually.

You usually want to start every call to the API by requesting the IDs of currently loaded toys, either by using GetToyIDs() or, if you want to utilize the category feature, GetToysByCategory(). Note that the latter will also return any toy not assigned a category. This may become important if you manage multiple categories at once.

 

Requirements

 

---------------------------------------------

 

Some links if you want to support me:

 

---------------------------------------------

 

 


  • Submitter
  • Submitted
    11/15/2024
  • Category
  • Requirements
  • Regular Edition Compatible
    No

 

Posted
25 minutes ago, Amatum said:

Very interesting! Does the categories option enable specifying and assigning each motor on multi-motor toys to separate categories?

You can assign any Toy to any category any amount of times but a single toy may only be assigned a single category. Theres no further distinction between what a single Toy can do in that area (mostly because the amount of features would exponentially explode if I implemented that which is unreasonable for a Papyrus API, at least currently think of a design that could handle that in a reasonable manner)

Posted

Cool to see more development in this space. Looks similar to Telekinesis, and tangentially similar to GIFT (It's external as opposed to native, but also supports estim, xtoys, lovense, etc).

 

Posted

My only issue with the Telekinesis mod is that with a Lovense toy like the Solace oscillator, the only option to modify the stroker speed is to link it with the character's arousal, which can vary wildly depending on different factors in the game.

 

I use Sexlab in VR so ideally my goal would be to link things like oscillator/stroker speed and/or plug/vibrator intensity with each stage of a Sexlab scene. There are typically around 4 different stages to each scene in most Sexlab animations, so I'm wondering if it's possible to trigger connected Lovense toys when a Sexlab scene begins and start off with things like slow stroker speed and/or low intensity for the first animation, then ramp either/both of those up for maximum speed/intensity during the climax animation at the end. To me this makes the most sense and is the most immersive.

 

Very cool that you allow different toy types to be activated under different conditions, at least! Interested to see where this goes from here.

Posted
On 11/15/2024 at 6:01 AM, Scrab said:

You can assign any Toy to any category any amount of times but a single toy may only be assigned a single category. Theres no further distinction between what a single Toy can do in that area (mostly because the amount of features would exponentially explode if I implemented that which is unreasonable for a Papyrus API, at least currently think of a design that could handle that in a reasonable manner)

 

Thanks for the reply and explanation. That's a shame, but maybe some day. 😊

Posted

Does it integrate with SL on it's own or does it need some addon mod for integration and by default only provides papyrus API / console commands?

Posted (edited)
21 hours ago, Lapsio said:

Does it integrate with SL on it's own or does it need some addon mod for integration and by default only provides papyrus API / console commands?

This isnt a SexLab mod, its a standalone API, so the latter applies

 

SLP+ has support for this framework, SL has backported supported currently in testing

Edited by Scrab
Posted (edited)
9 hours ago, Scrab said:

SL has backported supported currently in testing

Do newer versions of SL work with .640 build? I'm on some older version of SL (1.65) bc I remember newest one was crashing on me due to incompatible SKSE :<

Edited by Lapsio
  • 5 months later...
  • 10 months later...
Posted

Is there a maximum number of toys that this can connect to?  I plan to stream a playthrough soon and am deciding whether to allow my viewers control my toys vs have the game handle it.

image.png

Posted
46 minutes ago, SongBlossom said:

Is there a maximum number of toys that this can connect to? 

no

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...