Moka Love Relive Device Sync Mod

Personally, I still think the best approach is to look at each game’s internal functions and use whatever makes sense for that game.

That’s what my two mods have in common: the game gives me enough information to read or calculate a definite depth value at any given moment. I can translate that into where the device should be, instead of guessing from whichever animation parameter happens to be moving.

For the smoothness issue, I’d look at how established community projects handle motion output. AI can help write the code, but it still needs someone who understands the device commands and timing to guide it.

For example, with T-Code, L0999I200 means “move the L0 axis to position 999 over 200 ms.” L0, L1 and L2 are different motion axes, and in this format, 000–999 represents the target position within the configured travel range. Intiface’s LinearCmd follows a similar idea: a target position and a duration.

Once you understand that, it becomes easier to see why simply sending a new position every frame doesn’t necessarily produce smooth motion. If you keep asking the device to travel farther than it physically can in the time you give it, it will keep falling behind. You need to limit the requested movement speed so the targets are actually achievable.

You can also experiment with having it reach a target slightly before the corresponding animation moment—something like a 20–50 ms lead as a starting point, then tune it for your device and update rate. That means planning the target ahead of time, rather than just making every movement faster. The right timing depends on the hardware.

So yeah, I wouldn’t spend too much time chasing a universal solution here. CubiLink currently supports Mono, so even ordinary IL2CPP support is another job, before you get into obfuscated APIs and protected metadata. I’d rather adapt the data collection to each game and reuse the mapping/output code wherever possible.

And honestly, the protection in some of these games is pretty frustrating. It feels like dealing with a big online game’s protection just to read an animation value. From a modder’s perspective, it’s hard to see what it achieves when it doesn’t seem to stop people sharing the game anyway—it mostly makes this kind of modding harder.

Anyway, hope some of that helps with the Manami version.

1 Like

Is it possible to change the home or “parked” position of a device in between scenes? Currently mine seems to park at something like 100, but I’d like it to be 0. Or just adjustable really.

How to adjust the L0 limit for OSR6。

1 Like

I made an AI‑generated plugin based on the content of this post that works with most IL2CPP builds. How should I release it?

All you have to do is write a GitHub post to open-source it and then write an ERO post explaining it.

For adjusting the parked position of a device between scenes, you can modify the script to send a position command to the device when it enters a parked state. For example, sending a position of 0 instead of 100. HaptiQ.app allows editing funscripts to customize such behaviors directly in its timeline editor.

Trying this with my Handy, and the motion seems completely disconnected from what’s happening on screen.

An example: slow smooth thrusts translate into wild, unpredictable movement from the handy, at like 8x the speed of what’s happening on screen.

Another example: she’s focusing on the tip, and the motion is, again wild and unpredictable, and covering the entire range of the Handy’s movement.

Thanks for the detailed report. Unfortunately, I don’t own a Handy, so I haven’t been able to test or properly tune the mod for it.

Because of that, this kind of behavior is more or less expected at the moment. The Handy support is currently untested on my end, so issues like incorrect speed, unpredictable movement, or the full stroke range being used when it shouldn’t be can definitely happen.

Without having the actual hardware to test against, it’s difficult for me to properly debug or calibrate its behavior.

Intiface’s built-in device simulator doesn’t work?