HaloCEVR
VR conversion of the original PC version of Halo: Combat Evolved
Install / Use
/learn @LivingFray/HaloCEVRREADME
Halo: Combat Evolved VR
A full VR conversion mod for the original 2003 PC edition of Halo: Combat Evolved.
This mod is not compatible with The Master Chief Collection
Features
- 6DoF Synced Stereo view
- Tracked controllers
- 6DoF Weapon aiming
- 6DoF Grenade aiming
- Functional PiP scope for appropriate weapons
- Two handed aiming mode
- Rebindable controls (with left handed preset available)
- Motion controlled melee (uses head-aiming)
- Motion controlled flashlight (tap head)
- Motion controlled crouching
- Shoulder weapon holsters (for switching weapons)
- Swapping weapons between hands
- Detached floating UI layer
- Floating crosshair
- Joystick steered vehicles
- Desktop mirror (recommended to use SteamVR's desktop display instead)
Known issues
- Game sometimes isn't the focused window on launch, and inputs/sounds may break when the game is unfocused
- First stage of the tutorial ("look around") doesn't detect headset movement. Wiggle the mouse (physically or via SteamVR's desktop view) and you should get past it
- Camera briefly behaves weirdly when entering/exiting vehicles
- Reloading a checkpoint made while in a vehicle can mess with the camera position, get out and in again to fix it
- Melee and interact use head aiming rather than controller aiming
- Crosshair only lights up red when looking at an enemy, not when pointing a gun at one
- On screen button prompts display keyboard bindings rather than VR bindings
- If the game is installed to Program Files, the mod config file (and log file) won't generate unless the game is run as administrator
- Occasional stutters can cause motion smoothing to kick in, which is very jarring in vehicles
- Some people report a minor distortion or warping effect when tilting their head side to side.
Installation
Automatic installer
HALOCEVR-Installer by @EllieWasteland
Download and run this installer to automatically install the mod, alongside a handful of additional optional QoL mods/tweak.
Manual installation
- Install Halo: Combat Evolved for PC (not Custom Edition) using an original installation CD + product key. <br>IMPORTANT: Install in a directory OTHER THAN Program Files (example: C:\HaloVRMod\Halo). Installing in Program Files causes numerous permissions-related issues.
- Install the 1.0.10 patch for Halo PC (not the patch for Custom Edition)
- (Optional) Install chimera (fixes a few bugs/issues such as entities moving at 30fps). Grab the RELEASE files from releases. Copy chimera.ini, strings.dll, and the fonts folder from the chimera zip after unzipping and place into your halo game folder in the same location as halo.exe.
- If using chimera: Follow the instructions in the chimera section below.
- Download the latest version of this mod from the releases page
- Extract HaloCEVR.zip and place the files in the same directory as the halo executable (You should see a VR folder, openvr_api.dll and d3d9.dll if done correctly - if you do not see these files your antivirus may be interfering)
- Launch the game once to generate a config.txt file in the VR directory
- If setting LeftHanded=true in the config, consider selecting the left handed controller bindings in the game's SteamVR controller bindings page if you want the sticks to also be swapped
Uninstalling
- Go play the MCC version instead!
- Delete/rename the d3d9.dll you placed in the same directory as the Halo executable. This contains all of the mod code and is only pretending to be d3d9 to trick Halo into loading it. For example, you could rename it to d3d9-backup.dll.
Installing Graphical and Audio Enhancements
Chimera
Chimera increases animation framerate, corrects fog, enables anisotropic filtering, enables reverb for first person sounds (requires dsoal), and boosts polygon count, object limit, and draw distance. It is highly recommended for bug fixes and QoL changes alone. But before running the mod with chimera, some settings need to be changed.
Open chimera.ini, locate the "Font Override Settings" section, and change enabled=1 to enabled=0 (failing to do this will break many UI elements in VR).
Next, create a preferences file to run console commands at start. You can either:
- Navigate to (Your User Folder)\Documents\My Games\Halo\chimera\ and create a text file named preferences.txt
OR
- Create a new text file named chimera_preferences.txt in the Halo\ folder alongside chimera.ini
- Edit Halo\chimera.ini
- Find
exec=and remove any semi-colon on that line, such as;exec=. - Set the value to
exec=./chimera_preferences.txt
In the preferences.txt file you created, add these lines
chimera_lock_fp_model_fov false
chimera_model_detail 8
chimera_af true
chimera_lock_fp_model_fov false will fix weapons appearing broken in your face. The rest are optional but recommended, since they're not turned on by default. chimera_model_detail 8 will reduce pop-in and only render low detail models (LODs) further away from you. chimera_af true will turn on anisotropic filtering and make distant textures sharper.
dsoal
DSOAL allows you to turn on hardware acceleration and EAX in Halo without requisite hardware to use environmental sound effects like reverb and HRTF, providing realistic, directional 3D sound with high accuracy for virtual reality. Highly recommended, and you do not need high-fidelity headphones to enjoy this.
Note: Chimera is required for reverb on first person sounds (i.e. gunshots). First person sounds have no stereo/HRTF/location effects.
- Download and extract from https://github.com/ThreeDeeJay/dsoal/releases/download/0.9.6/DSOAL+HRTF.zip
- Open the DSOAL+HRTF\Win32\ folder.
- Copy & paste all files from Win32\ (alsoft.ini, dsoal-aldrv.dll, dsound.dll) into your Halo\ install folder where halo.exe is located.
- Edit alsoft.ini and copy & paste the settings shown below:
hrtf-mode = fullmay or may not be CPU intensive, remove if you experience new performance issues.- Launch Halo and go to Settings >> Audio Setup. Make sure Hardware Acceleration is set to Yes and Environmental Sound to EAX.
[general]
channels=stereo
frequency=48000
stereo-mode=headphones
cf_level=0
sources=512
sample-type=float32
hrtf=true
period_size=960
hrtf-mode = full
[reverb]
boost=-6
Halo Refined
A Community project that restores many graphical effects present in the original Xbox version by replacing Halo's map files. Fixes issues such as invisible bumpmapping, missing specular, broken transparency effects, etc. Also provides some high res asset replacements, most notably an HD HUD.
Halo Refined is poorly tested with HaloCEVR but seems to work, recommended for experimental use. Please keep backups of your original .map files before installing. If you are having any issues with HaloCEVR while using Refined's maps, restore the original files and retest before reporting your issue.
Recent versions require chimera. Refined is designed with dgVoodoo2 and CEnshine in mind to fix even more effects, but these are tools and modifications can't be used with HaloCEVR.
- Download and extract the latest distribution for Retail, not Custom Edition
- Backup all files in Halo\maps\ by copying them to a different location
- Replace files in Halo\maps\
- (Optional) Read Halo\maps\info.txt for project information
Download, updated as of the time of writing: https://www.proxeninc.net/Halo/Refined/
Mirror, outdated as of the time of writing: http://vaporeon.io/hosted/halo/refined/
FAQ
Why the gearbox port and not MCC?
Short answer: skill issue.
Long answer: This mod my first time attempting to reverse engineer and mod a close sourced game engine requiring learning how to decompile, analyse and patch x86 assembly. As you may guess, this is hard. By focusing on an older title I have a simpler project to work with as I do not have an additional 2 decades worth of updates and advances in technology to worry about.
(For example, no dual classic/aniversary graphics, no MCC launcher application separate to the halo1 game code, DirectX9 rather than DirectX11, x64, simpler code layout with few virtual functions to follow (which I struggled to analyse in Ghidra).
Where do I even get a CD copy in <current year>? Can I use a cracked version?
No.
This mod is intended to only be used with legitimate copies of Halo: Combat Evolved with the official 1.10 patch. Fortunately the product keys aren't single use, so if you can find a second hand copy (or a friend/person on the internet willing to lend the copy they happened to archive 20 years ago) you can use that without worrying about the key being invalid.
Does multiplayer work?
This mod was designed for singleplayer, it is untested in multiplayer and as such some features, such as weapon aiming, may not function or only work for the host.
Also it does not work in Co-op because this version of the game does not have that mode.
Does this work with Custom Edition?
Yes, although there is no guarantee that mods/custom content designed for custom edition will be compatible with VR.
Does this work with MCC Edition?
No.
Does this work with SPV3?
More or less.
Does this work with other mods?
Maybe, if they do not change the underlying structure of the game in a way that interferes with the VR mod. The focus of this mod is making sure the base game works in VR.
Help! The game launches in VR but I cannot interact with the main menu! My buttons do not work!
Make sure the game window on your desktop is in focus (switch back to desktop view and click on the window). If that does not work m
