[Game Integration] My Dystopian Robot Girlfriend v0.95+

Same here seems to only work when i focus on ‘command’ window not game.

Hey! Bazzite typically uses Flatpak Steam, which stores games in a different path than the installer checks. The auto-detect looks in ~/.steam/steam/… and ~/.local/share/Steam/…, but Flatpak Steam uses:
~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/common/MyDystopian Robot Girlfriend

Try running the installer with the path explicitly:

./install.sh ~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/common/My\ Dystopian\ Robot\ Girlfriend

If you’re not sure where your game is, you can find it via: find / -name “My Dystopian Robot Girlfriend” -type d 2>/dev/null

Also make sure you’re launching the game with run_bepinex.sh as the launch command in Steam (right-click game > Properties > Launch Options): /path/to/run_bepinex.sh %command%

If it still doesn’t work, what error are you getting exactly? A log from BepInEx/LogOutput.log would help a lot.

That’s a weird one — the mod’s device communication runs on a separate background thread, so window focus shouldn’t matter.

A few questions:

  1. What do you mean by “command window” — the BepInEx console, a terminal you launched the game from, or Intiface Central?
  2. Are you using BepInEx or MelonLoader?
  3. When you say it “works” with the command window focused — does the device respond to scene speed, or just vibrate at a constant level?

Can you enable DebugLogging = true in the config (BepInEx/config/HandyMod.cfg) and send me the log?
That’ll show whether speed values are being detected and what commands are actually being sent to the device.

I cannot find a BepInEx.log. I don’t think the installer got that far

It says:

“Installing BepInEx…

BepInEx installed

Installing HandyMod plugin…

ERROR: Plugin files not found in package!

As far as I am aware the game is not available on Steam. Do you need to add it via Non-Steam games?

I got the game from Itch.io, if that is relevant

1 Like

Ah, Itch.io explains a lot! The Steam auto-detect in the installer won’t help here since it’s not a Steam game.

The “Plugin files not found in package!” error means the installer exe can’t find the BepInEx/plugins/HandyMod/ folder next to itself. This can happen when running the .exe through Wine on Linux — the path resolution sometimes breaks.

Easiest fix: just install manually. It’s literally just copying folders:

  1. Extract the ZIP somewhere (e.g. your Downloads folder)
  2. Copy these into your game folder (where My Dystopian Robot Girlfriend.exe lives):
    - BepInEx/ (entire folder)
    - dotnet/ (entire folder)
    - doorstop_config.ini
    - winhttp.dll
  3. Launch the game once through Proton and close it (BepInEx generates files on first run — takes 1-2 min)
  4. Edit the config: /BepInEx/config/com.handymod.mdrg.cfg

Important for Itch.io + Proton/Wine:

  • You’ll need to add the game as a Non-Steam game in Steam, then force Proton compatibility (right-click > Properties > Compatibility > Force Proton)
  • Or run it directly with Wine: wine “My Dystopian Robot Girlfriend.exe”
  • The winhttp.dll file is what makes BepInEx load — make sure it’s in the same folder as the game exe

Does the game itself run fine on Bazzite without the mod?

1 Like

I am running the Linux native version, so Proton is unnecessary.

The game runs perfectly otherwise

files have been updated to newer version
there is a new linux installer inside, hopefully it fixes the problems

Found and fixed several issues with the Linux installer. Grab v1.12.0 — it should work properly now.

What was broken:

  • The installer couldn’t find its own files due to a .NET single-file packaging bug (that’s the “Plugin files not found in package!” error)
  • File permissions weren’t being set automatically (chmod +x)

What’s new in v1.12.0:

  • Installer auto-detects your game directory — it searches common locations including Steam, Flatpak Steam, ~/Games, ~/Downloads, etc. Since you got it from Itch.io, just put the game somewhere under your home directory and the installer should find it
  • If it finds multiple installations, you get a numbered list to pick from
  • If it can’t find anything, it asks you to enter the path manually
  • All file permissions are set automatically (no more manual chmod)

To install:
chmod +x HandyMod-Installer-MelonLoader
./HandyMod-Installer-MelonLoader

The installer walks you through everything (game directory, device setup, config).

To launch natively:
cd /path/to/your/game
LD_PRELOAD=“./MelonLoader.Bootstrap.so” ./“My Dystopian Robot Girlfriend.x86_64”

First launch takes 1-2 minutes while MelonLoader generates IL2CPP assemblies.

Heads up: MelonLoader on native Linux is experimental — if you run into issues with IL2CPP generation or Bootstrap.so, the BepInEx version (HandyMod-v1.12.0-MDRG-linux.zip) tends to be more stable on native Linux. Same mod, just a different loader.

One thing: if you get an error about libicu, run sudo dnf install libicu (Bazzite/Fedora) first. Most systems have it already.

Let me know if it works!

1 Like

I’m having issues with HDSP
I’m trying to use positional, as if it goes from the tip to the base it should only move the stroker from the tip to the base
but what it does is stroke countless times rapidly without positionals

there is a problem in the hdsp implementation, please use hamp until fixed

new version is ready, hdsp should work now. (files updated)
But i think HAMP mode is better than HDSP, depens on your liking.

have fun.

1 Like

tried new version, positional working on hdsp but there’s 2 issues

tested the connection with direct with handy key, returned connected when it loaded
[Info :MDRG TheHandy Integration] [H] TheHandy is connected!
but when testing an animation it returns:
[Info :MDRG TheHandy Integration] [H] v3 slider/stroke set: 0.05 - 0.95
[Info :MDRG TheHandy Integration] [H] PUT mode2 error 400: {“name”:“Bad request. Only OTA mode is supported for fw3”}
[Info :MDRG TheHandy Integration] >>> HDSP POSITIONAL START (zone 5-95)

and then i switched to intiface, which connects and works almost perfectly, it has somewhat a delay making it slow to catch up with the game animation, so it does get the right position but by the time it takes to go from 90 to 10 the stroker is still at halfway. so any way to make stroker responses faster?

ill give the fix you posted a try in the near future if others dont verify it first for you. Im on central 3.0.3+39

Edit: Wondering if it might be better to have it read vibrators at depth=strength. Vibe is being detected but it seems speed based. Not sure of how others would want it though

files have been updated

Is this syntax correct? It says “No such file or directory”
Apologies. I am new to Linux/Bazzite. I’m still learning how to use the terminal

Still no luck getting it working yet. I have got MelonLoader installed, but can’t seem to get the bootstrap to execute. I can see the IL2CPP files have been installed. There’s 147 files totalling 81mb

I may have to try a fresh install with BepInEx instead

Hey FunkyMunky! You don’t need to do any of that manually – the MelonLoader Linux ZIP includes a dedicated installer that handles everything for you.

Just extract the ZIP, then run:
chmod +x HandyMod-Installer-MelonLoader
./HandyMod-Installer-MelonLoader

It will auto-detect your game folder, install MelonLoader + the plugin, and set up the config.
No need to mess with LD_PRELOAD yourself.

If the installer can’t find the game automatically, it’ll ask you to enter the path manually – just point it to the folder that contains GameAssembly.so.

Hy

Can’t manage to use this mod with a OSR6+
Any way to do it ?

The game is connected to intiface ( check with melon loader log)
But can’t connect the OSR6 to intiface with this config
Serial:
COM3
Baud 115200

Thanks for all

The OSR6+ is supported by the mod, but only through Intiface Central (no direct serial
connection). The issue is likely in your Intiface configuration.

Connecting OSR6+ to Intiface Central
The OSR6+ uses the TCode protocol over serial. It needs to be added manually in
Intiface Central:

  1. Open Intiface Central
  2. Go to Settings → Device Managers
  3. Enable “Serial Port Device Manager” (if not already active)
  4. Add a Serial Port Device:
    - Port: COM3
    - Baud Rate: 115200
    - Protocol: TCode v0.3 (or whichever TCode version your OSR6+ uses)
  5. Start the server → your OSR6+ should now appear as a connected device
  6. Test it inside Intiface Central before launching the game

HandyMod Configuration

In your config file (depending on your loader):

MelonLoader: UserData/MelonPreferences.cfg
[HandyMod]
Backend = “Intiface”
IntifaceUrl = “ws://127.0.0.1:12345”

BepInEx: BepInEx/config/com.handymod.mdrg.cfg
Backend = Intiface
IntifaceUrl = ws://127.0.0.1:12345

Troubleshooting

  • Make sure the OSR6+ shows up as a connected device in Intiface Central before you
    launch the game
  • Set DebugLogging = true for detailed logs
  • If detected as a LinearCmd device, HDSP (positional tracking) will work — with
    VibrateCmd only speed control is available
  • If Intiface can’t find the COM port: check Windows Device Manager that COM3 is
    correctly assigned and no other program is blocking it (e.g. Arduino IDE, serial
    monitor)

The core issue is almost always the Intiface serial configuration — once the device is
visible there, HandyMod will auto-detect it.

If this all is matched, and it is still not working, then please send logs via DM

THANKS A LOT
Hope it can help some others people in the future

The only think where I mess up is the protocol " Tcode" I didn’t known that, after choosing it, everything work fine.

For the intifaceurl - websocket (ws), I did something different.
When I install the melonloader mod, I made a change on the websocket on the installer, I use this instead - ws://localhost:12345 - , the one who appear on my intiface

No manip needed in the config file.
Just to configure the OSR6+ and ready to go :+1: ( if you known how to do it :grin: )

1 Like

Does anyone have new links?, all seem to be not found.

the links in the main post still work