# HoneySelectVR
This is an experimental mod for the trial edition of Honey Select that introduces VR capabilities for both the Vive and the Oculus Rift using OpenVR. It provides both a seated and a standing mode to be usable in any environment.
Caution: SteamVR needs to be installed, set up, and running! Rift users might otherwise experience a weird "monitor" effect.
HoneySelectVR comes in two modes:
Mode | Description |
---|---|
Seated | Default mode. This mode lets you play the game with a mouse, keyboard, or gamepad. The controls are essentially the same as in the main game. The screen is presented on a big monitor in front of you. |
Standing | As soon as tracked controllers are registered by the game, it switches into standing mode, also called room scale mode. In this mode, you can freely move around and use your Vive or Touch controllers to stuff. |
As stated earlier, the controls are basically the same as in the main game with the exception of a few VR-related shortcuts. You are presented with a screen in front of your that replaces your monitor and can be configured via the settings or via shortcuts (see below).
Keys | Effect |
---|---|
Ctrl+C, Ctrl+C | Change to standing mode. |
Ctrl+C, Ctrl+V | Enable (very experimental) third person camera. Was used for this video. |
Alt+S | Save settings (IPD, screen position, etc.). |
Alt+L | Load settings (last saved state). |
Ctrl+Alt+L | Reset settings to the initial state. |
F4 | Switch GUI projection mode (flat, curved, spherical). |
F5 | Toggle camera lock (enabled by default). This prevents the camera to tilt because such movements are known to cause cyber sickness. |
Ctrl+F5 | Apply shaders (only for the brave) |
F12 | Recenter |
NumPad + NumPad – |
Move GUI up / down. |
Ctrl+Shift+NumPad + Ctrl+Shift+NumPad – |
Move GUI left / right |
Ctrl+NumPad + Ctrl+NumPad – |
Increase / decrease GUI size. |
Alt+NumPad + Alt+NumPad – |
Increase / decrease player scale |
Shift+NumPad + Shift+NumPad – |
Increase / decrease GUI distance |
The standing mode is where things start to get interesting. This mode is pretty much disconnected from the usual game in that it comes with its very own controls -- although you can still use your mouse and your keyboard.
Keys | Effect |
---|---|
Ctrl+C, Ctrl+C | Change to s mode. |
Ctrl+C, Ctrl+V | Enable (very experimental) third person camera. Was used for this video. |
Alt+S | Save settings (IPD, screen position, etc.). |
Alt+L | Load settings (last saved state). |
Ctrl+Alt+L | Reset settings to the initial state. |
Ctrl+F5 | Apply shaders (only for the brave) |
Alt+NumPad + Alt+NumPad – |
Increase / decrease player scale |
These tools are mainly meant to be used in standing mode but some of them are also available in seated mode. By default, your left hand will start with the menu tool and your right hand will start with the warp tool. In order to change them on either hand, press the menu button on your Vive controller. See here an overview of buttons.
You can get in-game help any time by holding the menu button!
With the menu tool you can interact with the user interface of the game. There are, in fact, two ways you can control the mouse: a two-handed way that makes use of a laser pointer, and a one-handed way that lets you use your trackpad like a ... touchpad!
To use the laser pointer, simply point the other controller at the menu screen. A laser pointer will appear and you can easily interact with the UI. To make a click, press the trigger button.
To use the trackpad, slide with your thumb over the trackpad and the mouse cursor will move accordingly. To make a click, press the trackpad.
It's possible to detach and resize the menu you're holding at any point in the game.
Simply press the grip button to "let go" of the menu screen -- the screen will then stay put where you left it. You can even use other tools and still interact with the screen using the laser pointer mechanism.
Furthermore, it's possible to resize the screen. In order to do that, point both your controllers at a screen, press the trigger button, and move the controllers apart. It's also possible to move the screen around like this.
Lastly, to take control of the screen again, press the grip button once more.
The warp tool is only available in room scale mode and allows you to jump around in the scene.
In order to warp, touch the trackpad, choose your position and press. While touching the trackpad you are able to see:
You can also rotate your play area while touching the trackpad by drawing circles with your thumb.
It's also possible to change scale and height with this tool, although it's a bit cumbersome at the moment. To do this, hold the trackpad pressed before warping. You can now change your future height by moving the Vive controller up and down and your scale by moving back and forth. Note that you can only change one of those two each time.
By pressing the grip button you can reset the scale and height.
Settings can be changed in the file vr_settings.xml, which is generated the first time you start the game. Use RenderScale
to tweak the resolution, not the internal resolution dialog, as that one will currently only change the resolution of the GUI.
Tag | Default | Effect | Mode |
---|---|---|---|
<Distance> |
0.3 | Sets the distance between the camera and the GUI at [0,0,0] . |
Seated |
<Angle> |
170 | Sets the width of the arc the GUI takes up. | Seated |
<IPDScale> |
1 | Sets the scale of the camera. The higher, the more gigantic the player is. | Seated / Standing |
<OffsetY> |
0 | Sets the vertical offset of the GUI in meters. | Seated |
<Rotation> |
0 | Sets by how many degrees the GUI is rotated (around the y / up axis) | Seated |
<Rumble> |
True | Sets whether or not rumble is activated. | Seated / Standing |
<RenderScale> |
1 | Sets the render scale of the renderer. Increase for better quality but less performance, decrease for more performance but poor quality. | Seated / Standing |
<MirrorScreen> |
False | Sets whether or not the view should be mirrored in the game window. | Seated / Standing |
<ApplyShaders> |
False | Sets whether or not post-processing shaders should automatically be applied to the camera. | Seated / Standing |
HoneySelectVR depends on the VRGIN library which is included as a submodule. It is therefore important that when you clone the project, you clone it recursively.
git clone --recursive https://github.com/Eusth/HoneySelectVR.git
cd HoneySelectVR
After cloning the repo and setting up the submodule, you should be able to compile the project by simply opening the *.sln file and building.
Note that there is a build configuration called "Install" that will extract your Honey Select Trial install directory from the registry and copy the files where they belong.