How to connect your toy to VRChat

Four VRChat plugins drive a toy from avatar contacts, OSC messages, or shader tricks. PlugChat, VRbrations, VrcLovenseConnect, VRChatVibratorController.

VRChat is the most popular social VR platform, and the community has built several plugins that drive a real toy from avatar interactions. A partner touches your avatar, a touch contact fires, your toy reacts.

There are four main plugins. They use slightly different paths but all talk to either Lovense Game Mode or Buttplug.io, both of which ToyControl supports. Pick the one that fits your setup.

Before you pick a plugin

Three plugins below (PlugChat, VRbrations on the Buttplug path, VrcLovenseConnect on the Buttplug path, VRChatVibratorController) connect through ToyControl's Intiface bridge. Before you start any of them:

See Turning on the Intiface bridge if no URL appears.

The four plugins

PluginProtocolCostBest for
PlugChatButtplug.io (OSC bridge)Paid (one-time)Polished partner-play experience in PlugChat-compatible worlds
VRbrationsButtplug.io or Lovense APIPaid (with free trial)Shader-based; no client mod needed
VrcLovenseConnectLovense Connect API + ButtplugFree, open sourceDIY users who want the cheapest path
VRChatVibratorControllerButtplug.ioFree, open sourceDriving someone else's toy with your VR controllers

All four are friend-and-partner-play tools. The avatar receives contact events, and the plugin maps them to toy output.

Path 1: PlugChat (polished, paid)

PlugChat is a paid plugin specifically designed for partner play in PlugChat-compatible avatars. It uses Buttplug.io under the hood (over 700 supported toys) and routes through OSC messages from VRChat.

Install

  1. Buy PlugChat from Gumroad.
  2. Follow the installer's instructions to drop the necessary files into your VRChat folder.
  3. Point PlugChat at ToyControl's Intiface bridge (the URL is in ToyControl's Game Link tab).
  4. Set up your avatar with the included contact receivers.

Use

In a PlugChat-compatible world (the seller maintains a list), a partner's avatar touching yours fires the configured contact, which PlugChat reads and sends to your toy.

Path 2: VRbrations (shader-based, paid with trial)

VRbrations avoids client mods entirely by using a shader strategy. Vibrating triggers are encoded in the avatar's shader, and VRbrations reads them through screen capture.

It supports both Buttplug.io and the Lovense Connect API. For ToyControl users, the Buttplug.io path is cleaner.

Install

  1. Download VRbrations (free trial available).
  2. Install on your computer.
  3. Point at ToyControl's Intiface bridge (Buttplug path) or Game Link (Lovense path).
  4. Wear a VRbrations-enabled avatar in VRChat.

Use

The plugin reads triggers from the avatar shader and drives the toy. No mods loaded into VRChat.

Path 3: VrcLovenseConnect (free, open source)

VrcLovenseConnect is a .NET implementation of both the Lovense Connect API and Buttplug.io, designed to synchronize a connected toy with a VRChat avatar through OSC messages.

Install

  1. Clone or download VrcLovenseConnect from GitHub.
  2. Build and run the .NET application.
  3. Configure it to connect to ToyControl's Intiface bridge (Buttplug path) or Game Link (Lovense path).
  4. Set up your avatar to send OSC parameters that VrcLovenseConnect can read.

Use

VRChat's built-in OSC support sends avatar parameter changes to the app, which translates them into toy commands.

Path 4: VRChatVibratorController (controller-driven)

VRChatVibratorController is different from the others. Instead of avatar contacts driving your own toy, it lets you control someone else's toy with your VR controllers. The connection is also Buttplug-based.

Use

Install on the driver's computer. Connect to ToyControl on the receiver's side (or vice versa, depending on setup). In VRChat, the driver's controller movements map to the receiver's toy.

This overlaps with ToyControl's built-in Remote Control rooms, which may be a simpler path if you do not need the in-VRChat overlay. Pick the one that fits.

Setting up VRChat OSC

Three of the four plugins read VRChat's OSC output. Enable it in VRChat:

  1. Open the VRChat menu.
  2. Go to Options > OSC.
  3. Enable OSC.
  4. (Optional) Set the OSC port if a plugin requires a specific one.

Most plugins default to VRChat's standard OSC port (9000).

Consent and avatar setup

VRChat toy plugins are deeply tied to partner interactions. A few practical notes:

Tuning the feel

Standard ToyControl controls:

If a plugin's defaults are too sensitive (every avatar touch maxes the toy), lower the Multiplier to 0.5x.

Troubleshooting

Plugin cannot connect to Buttplug server

VRChat is not sending OSC

Avatar not triggering toy

Performance hits in VRChat

VR is performance-sensitive. Adding plugins can drop frame rate. If VRChat stutters, try the shader-based path (VRbrations) which has lower overhead than mod-based paths.

Privacy

PlugChat, VrcLovenseConnect, and VRChatVibratorController run on your computer and talk to ToyControl over localhost or LAN. Nothing leaves your house unless you specifically use cloud features.

VRbrations uses screen capture and runs locally too.

For social VR generally, the receiver's safety controls in ToyControl (max cap, Stop, disconnect) work the same as in any Remote Control session.

Related