💤 A collection of utilities to assist with sleeping in virtual reality. 💤
Oyasumi is an open source tool to assist with sleeping in virtual reality (VRChat).
Oyasumiは、バーチャルリアリティの中で睡眠をアシストするオープンソースソフトウェアです。
booth.pmのストアページには、日本語の説明文が掲載されています。
If you want to come chat, join our Discord Server!
Grab the latest installer over on the Releases page.
Overview |
Sleeping Animations |
GPU Power Limiting |
MSI Afterburner Automations |
Sleep Detection |
Status Automations |
Resolution Automations |
Auto Accept Invite Requests |
Battery Automations |
Brightness Automations |
- 🔌 GPU Automations:
- When you go to sleep, or when you wake up:
- Activate your MSI Afterburner profiles. (NVIDIA/AMD)
- Tweak your power limits. (NVIDIA)
- When you go to sleep, or when you wake up:
- 🔋 Battery automations:
- Automatically turn off trackers and/or controllers:
- When you go to sleep (so you still have some juice left in the morning!)
- When putting them on a charger
- Automatically turn off trackers and/or controllers:
- 🔵 VRChat Status Automations
- Automatically change your status based on the number of players in your world:
Switch to blue when you are sleeping alone so your friends can join you, and switch to orange when there's enough people around!
- Automatically change your status based on the number of players in your world:
- 🔧 Turning off all trackers and/or controllers with a single click.
- 📧 Automatically accept invite requests on VRChat
- Automatically let friends in while you are asleep!
- Configure whose invite requests are accepted using a black- or whitelist.
- 🔅 Automatic smooth adjustment of display brightness (Valve Index)
- Allows you to gradually lower your headset's brightness when you fall asleep
- 👓 Automatic adjustment of SteamVR's render resolution
- Allows you to lower your headset's render resolution when you fall asleep
- 📲 Premade expression menu for controlling some features right from within VRChat
- 💫 Automatic sleep animations with pose detection
- Detects your sleeping position to switch between your avatar's sleeping animations automatically.
- Trigger your own animations with the included OSC script editors.
- Presets for popular locomotion assets, including:
- ごろ寝システム v2.2 - 2.3 by みんみんみーん
(Sleep System v2.2 - 2.3 by minminmiin)
(EX version also supported!) - GoGo Loco v1.7.1+ by franada
(Semi-functional workaround available for 1.6.2 - 1.7.0)
- ごろ寝システム v2.2 - 2.3 by みんみんみーん
- 💤 Automatically enable and disable sleep mode for triggering automations
- Detect falling asleep:
- When Oyasumi guesses you are asleep based on your movement
- When a controller or tracker battery percentage falls below a threshold
- When turning off your controllers
- On a time schedule
- Detect waking up:
- When turning on a controller or tracker
- On a time schedule
- When SteamVR is stopped
- Detect falling asleep:
- 🗺️ Multi language support
- English
- Dutch (Nederlands)
- Japanese (日本語) (Outsourced + Community contributions by なき)
- Korean* (한국어) (Community contribution by Soumt)
- Traditional Chinese* (繁體中文) (Community contribution by 狐 Kon)
- Simplified Chinese* (简体中文) (Community contribution by 狐 Kon)
- French (Français)* (Community contribution by neuroblack)
If you would like to help out with adding more languages and/or missing translations, please check out the wiki page on adding translations for instructions on how to get started!
(*) Support for this language is a community contribution and as such the translations might not have 100% coverage with each and every update.
Oyasumi has been built with Angular and Tauri.
Currently Oyasumi supports battery automations for all SteamVR devices that:
- Support reporting for battery levels and charging status
- Support being turned off via SteamVR.
This includes, but is not limited to the following devices:
- HTC Vive Controllers/Wands
- Index Controllers/Knuckles
- Vive Trackers (1.0/2.0/3.0)
- Tundra Trackers*
This means that any Oculus controller is unlikely to work, and SlimeVR trackers are unsupported unless they implement this functionality in their OpenVR driver.
(*) Tundra trackers have very delayed reporting of battery levels and charging status. This means that while automations will still work, they will be very delayed (minutes in the double digits), unless Tundra fixes this in their tracker firmware. (https://forum.tundra-labs.com/t/firmware-issues/746)
Any NVIDIA or AMD graphics card that is supported by MSI Afterburner can be automated by having Oyasumi activate the profiles you've set up within MSI Afterburner.
Directly controlling the power limits of your graphics card with Oyasumi is only supported with NVIDIA cards. AMD users will have to use the MSI Afterburner profile automations to be able to control their power limits with Oyasumi.
These automations are currently only supported on the Valve Index.
Supporting more headsets by adjusting the image brightness is something that is planned for a future release.
To start development on Oyasumi, start by following Tauri's prerequisites (Installing Rust). Make sure to grab the nightly, as Oyasumi uses some functionality that is not yet available in the current stable release of Rust.
After you have followed the guide and installed Rust, install NodeJS.
It could be helpful to install the Angular CLI globally.
Once you have set up these dependencies, you can continue as follows:
- Check out Oyasumi on your machine.
- Run
npm run install
oryarn
, depending on whether you prefer usingnpm
oryarn
. - Run
npm run build
oryarn build
at least once.
From here, you can run npm run tauri dev
or yarn tauri dev
to run the application locally.
Some features of Oyasumi require you to log in with your VRChat account for them to work. (E.g. status automations)
This is only required for features that rely on this. You can use features that don't rely on this without having to provide credentials. Your login credentials will never be stored anywhere and are only ever sent to VRChat's servers for authentication purposes.
Oyasumi isn't endorsed by VRChat and doesn't reflect the views or opinions of VRChat or anyone officially involved in producing or managing VRChat. VRChat is a trademark of VRChat inc. VRChat © VRChat Inc.
The Oyasumi developer and any of this project's contributors are not responsible for any problems caused by Oyasumi (to your VRChat account or otherwise). Use at your own risk.
Oyasumi is available under the MIT license.