/l4d2vr

Left 4 Dead 2 VR mod

Primary LanguageC++

L4D2 VR Prototype

Use this mod at your own risk of getting VAC banned. Use the -insecure launch option to help protect yourself. (Also contains lots of flashing lights)

Things that work

  • Singleplayer and multiplayer (see below)
  • 6DoF VR view
  • Motion controls for guns and melee weapons
  • Workshop content

Things that need fixing

  • Interactions and throwables require you to aim with your face
  • Roomscale needs work
  • CPU is underutilized

How to use

  1. Download L4D2VR.zip and extract the files to your Left 4 Dead 2 directory (steamapps\common\Left 4 Dead 2)

  2. Launch SteamVR, then launch Left 4 Dead 2 with these launch options:

    -insecure -window -novid +mat_motion_blur_percent_of_screen_max 0 +crosshair 0 -w 1280 -h 720 +mat_queue_mode 0 +mat_vsync 0 +mat_antialias 0 +mat_grain_scale_override 0

  3. At the menu, feel free to change these video settings.

  4. Load into a campaign.

  5. To recenter the camera height, press down on the left stick. To see the HUD, aim the controller up or down.

How to play multiplayer

  • The host must have the mod installed and the server must be set to local. Other players can play in VR too (if they also installed the mod).
  • To host a local server, click Play Campaign -> Play With Friends -> Create new campaign lobby -> Server Type: Local Server
  • You can make your game public if you want.
  • Versus works but it's barely been tested.

Troubleshooting

If the game isn't loading in VR:

If the game is stuttering, try:

  • Steam Settings -> Shader Pre-Caching -> Allow background processing of Vulkan shaders

If the game is crashing, try:

  • Lowering video settings
  • Disabling all add-ons then verifying integrity of game files
  • Re-installing the game

Build instructions

  1. git clone --recurse-submodules https://github.com/sd805/l4d2vr.git
  2. Open l4d2vr.sln
  3. Set to x86 Debug or Release
  4. Build -> Build Solution

Note: After building, it will attempt to copy the new d3d9.dll to your L4D2 directory.

Utilizes code from