[Multi-Axis Game Integration] Doris - Lady of the Night (Complete)

About the Game

After growing donkey ears, Doris is sent to live in a sanctuary where chosen men and women are expected to be intimate in order to ensure a bountiful harvest. As the king, you take Doris as your wife and spend each night with her to secure the future of both the kingdom and her place within it.
The game features five main positions with multiple interactive options. You can control the speed and depth of the action, choose when to pause, and decide the timing of the climax. Certain scenes also include an Auto Mode, allowing Doris to take control while the scene continues automatically. Some scenes feature more complex combinations of movement, making the game well suited to multi-axis device integration.

Mod Information

Mod version: v1.0
Tested game version: v1.07
Current coverage: Full game — Story Mode (Transitional & Mature) + Free Mode (Bud, Bloom, Fruited)
Device compatibility: This release requires the MiraBot Motion Studio Windows Client and supports OSR-compatible multi-axis devices only.

This Mod includes multi-axis motion in supported scenes. Please confirm that you have a compatible multi-axis device before downloading the Mod.

Mod Features

  • Detects supported in-game button interactions and triggers the corresponding motion in real time
  • Automatically plays the corresponding motion when Auto Mode begins
  • Switches motion patterns according to changes in the scene or interaction
    The Mod integrates with the MiraBot Motion Studio Windows Client, which handles the distribution and processing of the required motion resources and controls the connected device during gameplay.

Multi-Axis Motion Test Video


How to Install and Use

First-Time Installation

  1. Extract the downloaded Mod package, open the extracted folder, and double-click Install Motion Mod.vbs to launch the Mod installer.
  2. Select the installation folder of Doris - Lady of the Night, then click Install Mod and wait for the installation to complete.
  3. Download and install the MiraBot Motion Studio Windows Client, then launch the client and sign in.
  4. Open Motion Hub, search for DORIS-LadyOfTheNight, and add the Motion Project to your account.
  5. Connect your device through the Motion Studio Windows Client and keep the client running.
  6. Launch the game normally.

Updating from an Earlier Version

  1. Close the game and install the latest Mod version normally. If you encounter any problems, uninstall the previous version first, then reinstall the latest version.
  2. Update the DORIS-LadyOfTheNight Motion Project previously added from Motion Hub to the latest version. Earlier versions may not include the latest motions and supported scenes.

Downloads and Related Links

Get the Game:

Download the Mod:

MiraBot Motion Studio Windows Client:

Get the Motion Project:

Open Motion Hub in the Client, search for DORIS-LadyOfTheNight, and add the Motion Project to your account.

Development Notes

Honestly, I almost gave up before I even started. Most of the game’s interactions are driven by Live2D, and later chapters include scenes with multi-axis movement. For someone with almost no experience creating motion scripts, the whole project looked far too complicated.
Then I found Motion Studio and thought, “Oh my god, this might actually make the project possible.” I started out with just the Stroke axis, and kept going from there until I’d finished all the motions. It was pretty easy to pick up, especially when it came to making multi-axis motions. Being able to preview the motions directly on the 3D model helped a lot too.
Now that I’ve finally finished covering the whole game, I’m pretty happy with how the Mod turned out.

Changelog

v1.0 — Completed the Mature part of Story Mode and all Free Mode stages — Bud, Bloom, and Fruited. Added the Sitting position and new multi-axis motion for Sitting and Rear-entry (Auto). Fixed missing motion in Rear-entry Auto Mode and some Missionary scenes.
v0.3.0 — Added support for Day 3, Day 4, and Daily Life, including new standing and rear-entry positions. All scenes from the Transitional part of Doris’s story are now covered.
v0.2.0 — Added Day 1 and Day 2 support, expanding coverage to Chapters 1–3 and introducing multi-axis motion in supported oral scenes.
v0.1.1 — Added the required runtime dependencies to the installer, fixing installation failures on computers without Node.js installed.
v0.1.0 — Initial release.

Thanks

I first got interested in game/device integration after seeing some of the Mods and device integrations for the previous game in the series. That’s also how I eventually found Doris.

So in a way, their work is what got me started. If I hadn’t come across their work back then, I probably wouldn’t have gotten this far — and this Mod probably wouldn’t exist either.
Thanks, guys. :smile:
This was also the first Mod I’ve ever made. I’ll definitely try making more when I get the time. Honestly, this was a lot of fun.

12 Likes

This is pretty neat! I’ve been working on a CubiLink version for HTML5/JavaScript-based games, including TyranoScript, mainly with this title in mind. I might check out Motion Studio and see how it could be used alongside CubiLink.

One of the big issues with this game, and why I wanted to rework CubiLink for it in the first place, is its dynamic Live2D animations, which are difficult to track and basically a nightmare to script manually, given the many motion states and variants.
It looks like you’re detecting TyranoScript states and triggering preset Motion Studio movements rather than tracking Live2D directly. Is that correct? I’m wondering how manageable that approach is for the full game, given how many custom motion presets the different states and variants might require.

2 Likes

That sounds really good. A CubiLink version for HTML5/JavaScript games could be very useful. I had looked into CubiLink before, but Unity is not really my area, so I eventually chose this game instead. It is also one of my favorite games, and your understanding is correct. I detect different states and conditions, then use them to trigger motions created in advance with Motion Studio.
Creating and adjusting those motions is much easier in Motion Studio, at least for me. I noticed that the Motion Studio API accepts parameters, although so far I have only seen support for duration. Since duration can already be passed through the API, it made me wonder whether the API also supports passing other motion parameters. That could greatly reduce the number of separate Motion presets required and make them much easier to manage.

I plan to ask the Motion Studio developers about this and a few other questions as I continue working on the later chapters.


This happens regardless of the version of the game i have installed

I noticed that the game folder path in your screenshot may contain special characters, such as the heart symbol. Rename or move the game folder so that the entire path contains only English letters and numbers, with no special characters, and then run the installer again.

If the installation still fails, please send me the motion-mod-install.log file located in the Mod installation folder.

Oki ill give that a go, thank you!

motion-mod-install.txt (1.6 KB)
Changed the file to .txt to send

what game version is the mod for? ive tried with 1.05 and 1.08 and both failed.

The Mod was developed and tested with game version v1.07, although v1.08 would normally be expected to work as well. I’ll review the log carefully to determine whether the failure is related to the game version or something else.

Yeah, im using an uncensored edit of the 1.08 version but idk if that would be the difference

Based on the log, the installation issue may be caused by missing runtime dependencies required by the Mod installer.
Please try installing the Mod using the updated package below, which includes the required dependencies:

Please let me know whether the installation completes successfully. Thank you.

1 Like

Ok the install worked for me now, but getting to the Mira play step, is there handy support at all?

Thats all i have at the moment before making my OSR2 upgrade.

1 Like

I think you can leave a comment in one of their official threads. I’m sure they’ll be able to help, and they may also have a dedicated support channel for questions like this.

Motion Studio 1.0 release post:

Motion Studio Windows Client post:

You can also leave questions here. If I’ve encountered the same issue during development, I’ll be happy to help.

  1. Mod installation was successfully completed

  2. After installing miraplay as well, the doris-ladyofthenight mod motion download was completed, and the connection between the device and miraplay was confirmed

  3. Problem occurred - After launching the game, the device is unresponsive at the scene where the motion is supposed to appear. In other words, it is suspected that the connection between the game and miraplay failed

  4. Question - This is my first time using miraplay. Is mod installation alone sufficient for the connection between the game and the program? If it is sufficient, I would like to hear your thoughts on why it might have failed

1 Like

Please try the following:

  1. Play one of the motions from the DORIS-LadyOfTheNight Project directly in Motion Studio, without launching the game, and confirm whether the device moves normally.
  2. If manual playback works, restart both Motion Studio and the game, then test the scene again.
  3. If it still does not work, please confirm that you have entered the story day labeled Prologue. Also, do none of the supported interactions in that scene trigger any motion?
1 Like

Multi-Axis Motion Is Here — Doris Mod v0.2.0

You can now experience the difference multi-axis motion makes in Doris.

This release includes Mod v0.2.0 and DORIS-LadyOfTheNight Motion Project v2.
The update adds support for Day 1 and Day 2, expanding the current coverage to:
Prologue, Day 1,Day 2

More importantly, the newly supported content introduces the first scenes created specifically for multi-axis motion.

In supported oral scenes, the main Stroke movement is now combined with Sway, Roll, and Twist. Instead of reducing complex movements to a single forward-and-back pattern, the device can now follow the lateral movement, angle changes, and rotation shown in the Live2D animation.

This makes the motion feel more closely matched to the scene, less repetitive, and more specific to each interaction. Details such as lateral tongue movement and twisting techniques can now be represented through separate axes rather than being compressed into a single Stroke pattern.

Each axis reproduces a different part of the on-screen movement, which is where multi-axis motion really starts to show its advantage.

How to Update

  1. Close the game and install the latest Mod version normally. If you encounter any problems, uninstall the previous version first, then reinstall the latest version.
  2. Update the DORIS-LadyOfTheNight Motion Project previously added from Motion Hub to v2. The earlier version does not include the new multi-axis motions and supported scenes.

The original post, test video, and download links have been updated.

As before, the Mod requires the MiraBot Motion Studio Windows Client and an OSR-compatible multi-axis device.

3 Likes

It’s really exciting to see someone build a game integration so soon! :heart_eyes:
From the demo video, the quality already looks very impressive, and this is exactly the kind of project we hoped Motion Studio would make possible when we started developing it.
I’d also be very happy to hear any feedback or suggestions you have after working with Motion Studio.
Looking forward to seeing more of your work! :+1:

On motion studio, is there anyway to set a min and max range for the device?

This is amazing, didn’t think I’d see the day!

I tried to connect MiraBot through Intiface Central which would let us control the range there but unfortunately it throws errors and it seems like the commands that MiraBot sends aren’t compatible with Intiface.

Can you share the uncensor mod? Didn’t know it had one.

Yeah, that’s a good question. I know you can set the range for each axis in a motion, and you can also adjust it yourself after adding my Motion Project. But I haven’t found a way to set that for the device itself.
Maybe @Gesmax knows whether this is possible?

At the moment, there isn’t a separate global setting to adjust the overall motion range of the device itself.
For now, the best way is to adjust the range / amplitude for each axis inside the Motion settings. After adding a Motion Project, users can also fine-tune those values themselves.


That said, a global device range setting does make sense, and I’ve already added it to our update list. We’ll look into adding this in a future version.

1 Like