WhiteKnuckleVR
A full VR conversion mod for White Knuckle, including 6DOF motion controls and gesture based climbing.
| Last updated | a day ago |
| Total downloads | 56 |
| Total rating | 2 |
| Categories | Mods Misc Gamemodes Tweaks |
| Dependency string | KyaniteRock-WhiteKnuckleVR-1.1.3 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2305README
White Knuckle VR
A full 6DOF VR conversion for White Knuckle, the speed climbing game from Dark Machine Games.
Features stereo rendering, roomscale movement, and 6DOF gesture-based motion controls. The philosophy of this mod is that it should be completely on-par with the physics-based gameplay of the vanilla game. All VR interactions work as inputs into the existing physics system, meaning that the player moves in exactly the same way as in vanilla. The only difference is that you are using your hands to climb and jump. This also means that buffs & debuffs should all work right out of the box.
Physical item interactions are not yet supported. This is something I'd like to add in the future, but it will likely require significant effort.
Installation
- Install through Thunderstore
- Activate your VR runtime (OpenXR or SteamVR), and launch the game. The game will launch once in flatscreen. Close the game.
- Launch the game with your VR runtime active. It should launch into VR.
The first launch writes three config files into BepInEx/config/. See
The VR settings menu.
Finding your game folder: in Steam, right-click White Knuckle → Manage → Browse local files.
Playing in flatscreen mode
Set activateVR to false in BepInEx/config/VRToggle.json and relaunch. The game will launch without the VR mod active.
Uninstalling
Unity has no built-in OpenXR support for this game, so on first launch the mod writes one small file
(White Knuckle_Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json, ~200 bytes) directly into
the game install to register the subsystem the engine needs. Removing the mod through your mod manager
won't delete this file, since it lives outside the mod's own folder. It's inert without the mod's DLLs
present, but delete it by hand if you want a byte-for-byte vanilla install back.
Controls
Right controller
| Control | Action |
|---|---|
| Grip | Grab a handhold |
| Trigger | Interact with buttons and levers; pick up items; use a held item |
| A | Jump |
| B | Quick-pocket right / Hold to drop item / Cancel in menu or terminal |
| Stick | Turn (left/right). Smooth or snap, set in the VR settings menu. |
| Stick click | Toggle crouch. Hold to open the pause menu (toggle crouch mode only). |
| Menu button | Maps to the gamepad Select button |
Left controller
| Control | Action |
|---|---|
| Grip | Grab a handhold |
| Trigger | Interact with buttons and levers; pick up items; use a held item |
| X | Open / close inventory. Hold to open the pause menu (toggle inventory mode only). |
| Y | Quick-pocket right / Hold to drop item |
| Stick | Walk and strafe. Also climbs, unless climbMode is set to Gesture Only. |
| Stick click | Sprint |
| Menu button | Pause / Open Menu |
Gestures
Gestures allow you to move and climb using physical movements, but you can achieve most of these movements with button presses as well. You can turn off or tweak each gesture's activation threshold in ModParameters.json.
Climbing
While gripping handholds, your hand effectively operates as your movement joystick. Your body moves opposite your arm:
- Pull your hand down to climb up
- Move your hand left to climb right
- Pull your hand towards your chest to swing forward
- Extend your hand to move away from the handhold
There is a dead zone around a neutral, where your VR movement will be none.
Set climbMode in the VR settings menu to choose:
- Either (default) — use arm gestures to climb, but arm gestures can be overridden by using the left joystick
- Gesture Only — use arm gestures to climb, joystick is inactive
- Joystick Only — vanilla stick climbing, arm gestures are inactive
Dyno / Wall Jump
While gripping the wall, you can flick your hand downwards and release the grip button to launch off of it. If you move your arm down in a diagonal, you will jump off the wall opposite to the direction of the diagonal. If you are holding the wall with two hands, you'll need to do this with both hands, or release one hand and dyno with the other. You can also jump off the wall by pressing A.
Jump (on the ground)
Flick both hands upwards to jump off the ground. You can also jump off the ground by pressing A.
Sprint
Make a mock-running motion with your hands to sprint. You can also sprint by clicking the left joystick.
Physical crouch
Crouch in real life to crouch in-game. Resetting your VR view resets your "standing height", which allows you to play in standing or seated mode.
Throw / drop an item
While holding grip, make a throwing motion, and then release the grip button, to throw or drop an item.
Hand swap
While holding an item, bring your hands together and press both grips at the same time to pass it between your hands.
Items
X opens and closes your inventory. Time slows down while it is open by default.
While holding an item, you will see a laser pointer showing where the item is pointing. Press trigger to activate the item, or hold it for charged attacks.
The VR settings menu
Pause in-game to access the VR Settings screen. More settings are available in 3 json files in BepInEx/config/.
VRToggle.json
This file allows you to turn on or off the mod, or deactivate motion controls (to use a keyboard + mouse or gamepad).
| Key | Default | Meaning |
|---|---|---|
activateVR |
true |
set to false to disable the VR mod |
useMotionControls |
true |
set to false to play in VR, using either keyboard + mouse or gamepad controls |
WhiteKnuckleVRSettings.json
These are the exact same settings available in the VR Settings menu.
ModParameters.json
Many tunable parameters are available in this file which affect the implementation of the motion & gesture controls. These aren't intended to be changed for normal play, but I'll explain the most useful parameters below.
| Key | Default | Meaning |
|---|---|---|
reachMultiplier |
6 |
A multiplier allowing you to reach past your physical hands. It is required for your VR reach to match your reach in the vanilla game. |
vrHandScale |
1 |
Size of hand sprites |
heldItemScale |
1 |
Size of held items relative to hand size |
gripScheme |
auto |
auto uses the trigger on Index and the grip everywhere else. grip or trigger can be used to force a specific climbing button. |
indexGripGrabsLedges |
true |
On the trigger scheme, the grip still grabs handholds |
menuHoldSeconds |
0.5 |
How long to hold left X to open the pause menu |
gestureJumpEnabled |
true |
Enable gesture-based jump |
gestureSprintEnabled |
true |
Enable gesture-based sprint |
handSwapGestureEnabled |
true |
Enable item swap gesture (note: there is no equivalent button to do this) |
physicalCrouchEnabled |
true |
Enable physical crouch |
dynoEnabled |
true |
Enable dyno / jump-from-wall gesture |
throwGestureEnabled |
true |
Enable throw gesture |
physicalCrouchDepth |
0.25 |
How far you must physically crouch to enter the crouched state |
Known limitations
- Physical item interactions are not yet implemented. I initially planned to do this, but there were a few major technical hurdles involved. So I decided to ship the mod without this to start with.
- Held items are 2D sprites. This is one of the limitations which caused me to hold off on physical items. While every item has a 3D model, those models are not animated the way the 2D sprites are.
- The VR mod renders in multi-pass rendering mode, because the game's custom shaders aren't compiled for single-pass rendering. This means that the mod can be performance intensive, which can be mitigated with the
renderScalesetting in the VR settings menu.
License
White Knuckle VR Mod is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License, version 3 or (at your option) any later version, as published by the Free Software Foundation. The full text is in WhiteKnuckleVR/LICENSE in the release.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Copyright (C) 2026 Kyanite-Rock
This archive also includes the OpenXR runtime files that White Knuckle doesn't ship, from The Khronos Group and Unity Technologies. They are not part of this mod and are not covered by its GPL licence — see WhiteKnuckleVR/THIRD-PARTY-NOTICES.md in the release archive.
White Knuckle is the property of its developers and publisher. This mod is an unofficial, unaffiliated fan project and redistributes none of the game's files.