OSC Triggers

Trigger keypresses and macros from OSC messages


What is OSC?

OSC is a communication protocol primarily intended for sound devices but has been adopted for other things as well, such as VRChat leveraging it to make interactions between the game and other software possible.

What is OSC Triggers?

OSC Triggers allows us to map "events" to actual keypresses on the host computer, either over the network or from localhost. It's currently developed with a focus on VRChat OSC integration, but is written in a fairly generic way.

How do I use it?

OSC Triggers doesn't currently have a user interface, but the configuration file is designed to be as straightforward as possible with TOML. Here's an example configuration file that will press the F7 key when the you toggle mute in VRChat. Download the relevant file from below, unpack it somewhere safe, then save this alongside the executable as a config.toml file:

[[mapping]]
event = "/avatar/parameters/MuteSelf"
key = "F7"
You can define multiple mappings if you want to, for example, issue a keypress for each unique value of a event. In this example, muting yourself will press F7, while unmuting will press F8.
[[mapping]]
event = "/avatar/parameters/MuteSelf"
key = "F7"
value = 1

[[mapping]]
event = "/avatar/parameters/MuteSelf"
key = "F8"
 value = 0
You can then run the executable file by double clicking it. It will run in the background and listen for VRChat or another OSC program.

The event is entirely dependant on the program you're using. You can see an example list of VRChat OSC events here. Custom parameters can be added with some work in Unity. Any alphanumeric key, and F keys 1-24 are supported.

Where can I download it?

Downloads are available from GitHub. Be sure to download the file labelled with your operating system. If you know a bit of Rust, you can also build it yourself from the repository here.

How can I get in touch?

You can reach out with Mastodon at floofy.tech/@arch, or with Discord: arch#1919. No, there is no Discord server.