SteamVR Input is a way for games to support diverse VR controller hardware in a consistent and future-proof way.
A game that implements SteamVR Input handles no controller data directly, instead it provides ‘actions’ to SteamVR which can be mapped as the user sees fit to any hardware. Default mappings are provided by the developer for known controller types, and custom mappings can be shared between users through the Steam Workshop.
Vivecraft supports SteamVR Input in the following versions:
- 1.12.2 v9+
- 1.13.2 v3+
- 1.14.3 v1+
Vivecraft includes default bindings for the following controller types
Oculus Touch controllers
Index (Knuckles) controllers
Editing Controller Bindings
- Start Steam
- Start Vivecraft
- Open the SteamVR Dashboard via the system button on your controller. Some controllers may have a different method for doing this. You can also edit the bindings from the desktop by opening this link in your web browser. Vivecraft still needs to be running to do this.
- Click ‘Settings’ at the bottom and then ‘Controller Buttons’. If this button does nothing, go into the SteamVR Settings to ‘Developer’ and turn on ‘enable debugging options in the input binding user interface’, then send an angry letter to Valve.
- Click ‘Vivecraft’, which should be the Current Application
- On the next screen you can see your current binding file. You can select a different binding file previously saved, or downloaded from the Steam Workshop. To edit the default for the first time, click Edit
- Vivecraft has 3 ‘Action Sets’ as shown at the top of this screen:
- In-Game Actions are for gameplay without a screen or menu open, like jump or attack.
- GUI Actions are for interacting with screen or menus, these are mouse analogs like ‘Left Click’.
- Global Actions can be used at any time, these are primarily used to open or close a specific screen with one button.
- Setting up individual actions is up to the user and the hardware. Most actions are ‘Boolean’ meaning they are just off or on. A few actions are ‘Vector1’ or ‘Vector2’ meaning they can receive an analog value when bound to an axis. The binding screen offers a number of different ways to bind actions. Scroll down for the full list of actions Vivecraft provides.
- Any changes you make are applied immediately in-game. When you are happy with your setup you should click Save Personal Binding and give it a name, but this step is not necessary.
Vivecraft loads actions during startup. All keybinds are available as actions, plus a number of new ones created by Vivecraft. This includes keybinds added by Forge mods.
This is a list of actions added by Vivecraft on a vanilla install. Boolean and vector1 actions can be bound to any buttons or analog triggers. Vector2 actions are meant to be bound to dual-axis input like joysticks.
The ‘Advanced Controls’ action sets are hidden by default. You can enable them via the option in the in-game controls setting screen, requires a game restart
This set is always active
- Boolean actions
- Game Menu
- Toggle Keyboard
- Toggle Chat Screen
- Toggle Inventory
- Change Desktop Mirror Mode
- Move Third Person Camera
This set is active when a world is loaded and no menu or screen is displayed.
- Boolean Actions (Buttons)
- Sneak (This is also Dismount)
- Sprint (Note that by default, fully pressing ‘forward’ will activate sprint, removing the need to explicitly bind this action. This can be configured in-game)
- Pick Block
- Drop Item
- Select Hotbar Item (1-9)
- Hotbar Item (Next / Previous)
- Swap Held Items
- Quick Place Torch
- Radial Menu
- Free Rotate (hold and turn)
- Walkabout Rotate (hold to freeze rotation while turning in roomscale)
- Load Toolbar
- Save Toolbar
- Show Playerlist
- Open Chat (Command /)
- Open Advancements
- Show Spectator Outlines
- Take Screenshot
- Vector1 Actions (Triggers)
Note: At the current time (July 2019) Vector1 actions DO NOT work correctly when mapped to DPAD-style trackpads. This is a SteamVR bug.
- Walk Forwards if Teleport Disabled (This should be bound to to same button as Teleport)
- Walk Forwards
- Walk Left
- Walk Right
- Walk Backwards
- Rotate Left
- Rotate Right
- Vector2 Actions (Joystick or Trackpad)
- Walk and Strafe
- Walk and Rotate
- Scroll hotbar (Set your component to ‘Use as Scroll’)
- Rotate Only
This set is active when any vanilla menu or screen is displayed. Does not apply to the Vivecraft keyboard or radial menu.
- Boolean actions
- Left Click
- Right Click
- Middle Click
- Scroll Up / Down
- Vector2 actions
- Scroll (Set your component to ‘Use as Scroll’)
These actions are active only in very specific situations and should be bound to the same button on each hand.
- Boolean actions
- VR Interact
- Activate Jump Boots (Should be bound to the same button as Jump)
- Activate Climb Claws (Handed) (Should be bound to the same button as VR Interact on each controller)
This set is active when the in-game keyboard or radial menu is displayed.
- Boolean actions
- Click (Used for clicking on the non-physical keyboard)
- Shift (Used for switching to caps on the keyboard or the secondary radial menu)
Mixed Reality Actions
This set is active when the Mixed Reality mirror mode is used.
- Camera Tracker (This is the pose used for a tracker camera)