@KozGit KozGit released this Mar 12, 2017 · 170 commits to master since this release

Assets 4

Version 0.021 Alpha

Edit: Many many thanks to Carl Kenner for all his hard work on the .020 release, and for handling bugfixes and compiling this release while I was on vacation!


QuakeCon style teleport. ( jkchng )

Fixes from v 0.020

Fix issue #107: use other hand for movement.
Fix issue #97: Fix talking waking monsters.
Fix issues 100 & 106: Change language detection to use sound files. Issue #100 and Issue #106
Fix issues #113 and #27: Fix timing issues.
Improve issue #27:Disable ASW and make it a menu.
Improve issue #103: Fix loading old savegames with different scripts.
Fix crash loading 020 save games, and allow old versions.
Loading RBDoom savegames works now.
"Fix" loading script objects of different sizes.
Fix save and load menus.
Adjust installer, Readme, and other docs for v 0.21 Alpha.
Work Around Movement Popping.

Known issue: After saving a game it might appear greyed out in the load game list and be unable to find it. To fix this issue, either use this console command before opening the load game menu, or exit the program and restart it:
This issue is fixed in the next version.

@KozGit KozGit released this Mar 3, 2017 · 200 commits to master since this release

Assets 4

Important!! 3-3-2017

A setting was inadvertantly left on in this build that affects monster spawns.
You will most likely want to disable this.
From the console ( press ~ to open console ) type:
vr_talkWakeMonsters 0

Then press enter. This will prevent voice commands from waking monsters.

New Release 3-2-2017

Doom 3 BFG VR: Fully Possessed V0.020 Alpha

This is sizeable update with many new features and improvements.

New features include:

Teleportation is now supported, including a parabolic aiming beam.

Voice commands are supported - say a weapon name to select it!

Flicksync mode based on Ready Player One.

Many aids to prevent motion sickness, including a new Third Person movement mode.

Many other improvements have been made, please see the readme.txt for a full feature list and documentation.

Default Configuration
No single controller configuration or comfort setting is going to accommodate all users equally,
so Doom 3 BFGVR: Fully Possessed defaults to a comfort oriented mode. In the default mode, comfort ( or snap ) turning is enabled by default, and artificial movement uses the Third Person mode. These settings should provide a comfortable experience for almost all users. These settings may be easily changed or disabed in game if they do not suit your needs. From the System Menu ( say 'System', or press ≡ (menu) on the left Touch or Right Vive ), then select 'VR Options' then 'Comfort + Safety Protocols'. From this menu, use the 'Turning' options to change the turning mode (' smooth 'is standard analog turning - caution - smooth turning causes motion sickness in most people ). Use the 'Motion Sickness Aid' options to change the comfort settings. 'None' disables all motion aids, but this will induce motion sickness in the vast majority of people.

Default Controller Layout
The default controller layout can also easily be changed in game. Any controller button or Stick/Pad axis can be mapped to any in game action, to easily create a controller layout tailored to your liking. From the System Menu ( say 'System', or press ≡ (menu) on the left Touch or Right Vive ), Select 'Controls' then 'Key Bindings', Scroll through the list and highlight the action you would like to change the control for. Press the trigger to enter 'bind' mode, then simply press the controller button or stick/pad axis you would like to assign to that action. If the button or stick is already assigned to a different control, you will be asked if you are sure you want to re map, otherwise you are done! A button or joystick/pad axis can be unbound from an action the exact same way.

Installing Doom 3 BFG: Fully Possessed.

There are two options for installing the mod: A self-extracting installer, or a .zip file.
Due to the inclusion of new player AAS files needed to support teleportation, the size of the mod has
increased a fair amount. You will need about 1GB of free hard drive space to install the mod.

Installing with the self-extracting installer
Download the file 'Doom3BFGVR_Fully_Possessed_Alpha020_Installer.exe' and execute.
By default, the installer will look to install the mod in the default app directory in your Steam library on drive C. If your Steam library is in a different location, or you have installed doom 3 someplace else, browse to the location of your Doom 3 BFG installation. IMPORTANT If you browse to select a directory to install the mod, the installer will append 'Doom 3 BFG edition' to the install path. REMOVE THIS from the install path, so that only the full name of your Doom 3 BFG directory is displayed. Failure to do this will result in the mod files being installed in the wrong directory. Once installed, you should see a folder named 'Fully Possessed' inside your main Doom 3 directory along with some support files and the Doom3BFGVR.exe. Launch this .exe to play.

Installing with the .zip file
Download the 'Doom3BFGVR_Fully_Possessed_Alpha020.zip' file below, and extract into your main Doom 3 BFG directory. You should see a folder named 'Fully Possessed' inside your main Doom 3 directory along with some support files and the Doom3BFGVR.exe. Launch this .exe to play.

Compatibility with existing Mods or Native Doom 3 BFG
Doom 3 BFG: Fully Possessed stores all changed assets and save games in their own directories. Installing the mod will not interfere with existing mods or the native game.

Compatibility with the Hi-Def texture pack
Doom 3 BFG:Fully Possessed is compatible with the hi-def texture pack. Please be aware that the 'generated' folder included in the hi-def texture pack is corrupt, and will crash the game if not deleted. This is not an issue with this mod, but with the texture pack itself. After installing the texture pack, delete the 'generated' folder inside the 'Base' directory.

  1. The texture pack also installs German language files. If you do not want the game menus to be in German, delete the 'german.lang' file in the 'Base/Strings' directory.
  2. It does not matter if you install the mod first or the texture pack first, but be aware that games saved without the texture pack installed will not work once the pack is installed, and vice versa.

Reporting Bugs
Many bugs have been addressed in this relase, but if you do find one, please open an issue on our tracker. We can't fix it if we don't know its broken!


@KozGit KozGit released this Dec 29, 2016 · 595 commits to master since this release

Assets 4

Update 12-28


Made repository public - sorry for the delay in making code available. All code and assets ( models/scripts/materials/guis etc) used by the mod are available in the repository.

Game pause handling reworked to avoid issues where game freezes after saving/loading ( Issue where PDA stuck open with blue screen )

Fixed issue where MSAA frambuffers still being created with 0 samples even when MSAA disabled.

Changed full motion crouch mode to only update player bounding box when near crouch height instead of every frame.

If updating from Oculus Native .014, only the .exe will need to be replaced. For all other versions please start with a clean install.

Updated OpenVR version to .015. This has not been tested, other to verify basic rendering and control input, so expect issues and please report them - I'm working to address any outstanding issues before adding any new features. To update to this version, please delete ( or backup ) any previous version of this mod and perform a clean install. Save games from previous versions of the OpenVR version are not compatible with this version, and will most likely cause the game to crash. Please delete ( or backup/rename ) the save game directory before installing this version. Apologies, and this should be the last time save games are broken.

Update 12-20

Additional changes to pause handling. If mod already installed, only need to replace .exe

Update 12-20

Bugfix in Oculus Native version for bad pixelDensity menu handling. Just need to replace .exe with one from new archive.

Update 12-19 - Oculus Native update

( SteamVR update should be released tomorrow )

Important Install Info: Read all instructions.

This update will break compatibility with previous save games. Trying to use an existing save game will most likely result in a crash - it is recommended to delete your existing save games. This should be the last time save games will be broken. ( If you want to preserve you existing game/controller config settings, do not delete the vr.cfg file in the save game directory and your settings will remain. Save games are normally stored in user/%user%/Saved Games/id Software/DOOM 3 BFG VR/BASE/savegame)

Assets changed in this update. If you installed a previous version of the mod, you will need to
DELETE the following directories from within 'BASE' before re-installing the mod.


Once those directories are deleted:

If you are NOT using the texture pack, extract the mod files at this time and run the exe to play. See readme_install.txt inside the archive for additional info.

If you ARE using the texture pack:
Re-install the texture pack at this point, then extract the mod archive as before.
DELETE the 'SCRIPTS' directory. The combined scipts directory is now included in the install zip as 'all_in_one_script'. Rename the directory 'all_in_one_script' to 'script' and launch the mod.

Bug Fixes & New Features:

Fixed issue with flashlight and weaponsight save state and persistance
Fixed issue with Fixed PDA location
Fixed issue where audio was forced to Rift headset
Fixed game pause issues
Fixed issue where left strafe didn't work without moving forward.
Removed hands from weapon models, all body/hands are now part of the player model.
Cleaned up script and skin files to reflect removing hands from weapon models.
Potential fix for memory issue with texture packs.
Fixed missing bone errors when loading expansion pack

New Features:
Added full motion crouch mode
Added haptic feedback to weapon controller
Added body IK to crouch ( player character knees bend if you duck )
Added VR configuration options to in game menus, can now configure most options without cvars.
Added option to force audio to rift or use default audio device ( vr_forceOculusAudio)

Update 12-10

Fixed bug related to saving that would lock game in pause after saving.
Files updated in archives for both versions. (You only need to extract the .exe if you are experiencing this issue)

Additional Update 12-9

There were some requests to see if this mod would work with some of the all in one texture packs out there. I took a look, and some of the scripts in the texture pack created a conflict with some of the new weapon scripts for this mod, and prevent it from working. I created a merged script directory, and attached it below in the archive script.zip with a working combination of scripts. To install the all in one texture pack:

  1. Make clean copy of your Doom 3 BFG directory without any mods installed.
  2. Download the Texture/Ultimate HD pack compiled by WildSide_VR here https://mega.nz/#!68BUCDZS!PVv4gQSrrP0i6U0Huetqfn-WBXZvpMkDKB81F7_9b7o use download to browser option so you don't deal with the mega software alternative download http://uploaded.net/file/as02ygj0
    (Thanks to AerowynX for the link to the texture pack)
  3. Unzip the archive into the newly created Doom 3 BFG directory.
  4. Download the mod below and extract into the newly created Doom 3 BFG directory.
  5. Download the script.zip file below. In the Base directory in your new installation, delete the directory called script, then replace it with the one contained in the script.zip archive.
  6. Launch the mod executable.

I haven't had a chance to play through the entire campaign to make sure all the updated graphics work correctly, but I did verify the player character and weapons are working.

Additional Update 12-9

Versions available now for either OpenVR or native Oculus SDK/Touch support.

For the OpenVR implementation download D3BFGVR_OpenVRAlpha.zip
For the native Oculus implementation, download D3BFGVR_OculusNativeAlpha.zip

If using a previous version of the mod, you will need to delete you previous savegame directory.

If using the OpenVR version with a rift, the weapon and flashlight pitch may be initially off. You can correct with vr_motionWeaponPitchAdj and vr_motionFlashPitchAdj in the console. (Try using a value of 40 ) You will only need to do this once. You can use vr_vcx and vr_vcz to adjust the weapon position in game relative to the controller in the real world if it seems off.

See below for additional changes.

Update 12-9

There is now a test version with native support for the Oculus Rift and Touch controllers.

To install, make a clean copy of your Doom 3 BFG directory. Download D3BFGVR_OculusNativeAlpha.zip and extract into the new directory.

There are three files included in the archive you may want to read:

Readme is general info, readme_install describes how the game directories should look after the mod is installed, and cvars.pdf lists commonly used config variables you can use to adjust the VR settings.

If you were playing the earlier alpha version of this mod with OpenVR support, you will need to delete (or backup /rename) your save game directory ( Users/Saved Games/id Software/Doom 3 BFG Vr). An updated version of the OpenVR version should be available tomorrow.

A note about controls:

A basic control scheme has been mapped, see the readme.txt file included in the download.

You can tailor the controls to your liking - all joystick axes and buttons can be remapped to any in game action, or can be unbound. For example, if you don't like strafe movement, unbind the axes on the left controller and those axes can be use for any other game function. Controls can be bound via Settings->Controls->Keybindings in the system menu.

The movepoint movement mode is active by default. In this mode, point the off hand controller the direction you wish to move, and then press the joystick in the direction you want to move in the game world. Movement is relative to the direction the controller is being pointed, not the direction the player body is facing. Note you can still use the other joystick for rotation, either smooth or comfort snap turns, while movepoint is active. If you prefer to use standard movement, you can disable movepoint mode by entering the console (press ~ in game) and typing vr_movePoint 0.

By default, there is a blue heading indicator that projects forward from the body to aid in maintaining your orientation. This can be disabled by setting vr_headingBeamMode to 0 in the console, or it can be bound to a toggle on/of button.

Common things you may want to change:

vr_playerBodyMode : Set to 0 to show the player body, 1 for hands and weapons and 2 for weapons only

vr_walkSpeedAdjust : Adjust the game standard walking speed. Negative values slow down movement. Default -20

vr_flashlightMode : 3 = motion control in hand, 2 = flashlight mounted on gun, 1 = flashlight on head, 0 = flashligt mounted on body.

vr_headingBeamMode : 0 = disabled, 1 = solid, 2 = arrows, 3 = scrolling arrows.

New in this test:

Native support for Oculus Rift and Touch
Fixed issue that was blocking some controls from being re-bound.
Added motion crouch. (Crouch in real life to crouch in game)
Added a bindable control for pause/System menus.
Fixed the movePoint method to work in all directions.
Added bindable control to toggle thru flashlight modes.
Added a new mechanic to allow additional head movement when player body is blocked from moving.
Added some optional 'click move' movement options.
Added health and armor info to the statwatch. Vertical bar on left denotes health, bar on right indicates armor.
Fixed issue with no longer being activate guis when using touch screen mode.
(various smaller improvements)

An update to the OpenVR version with the same feature changes will be posted tomorrow.

Previous Update:

This is an alpha test of a Doom3BFG VR mod, based on RBDoom3 and OpenVR.

It has had limited testing so bugs are expected.

IMPORTANT!!!!! If you are NOT using motion controls, you MUST set the cvar vr_controllerStandard to '1' before you play

ALSO IMPORTANT: Do not use the 'VR' system menu options - very old broken code! only use cvars to change VR config! This will be fixed soon but the menu code is a pain.'

New features:

Full motion control support for weapons, with support for right or left handed control.
Reload mechanics and motion controlled melee attacks are not finished yet, but in progress.
For now press the attack button to punch and reload to well, reload. Grenades are now
thrown via motion controls.

Flashlight modes
The flashlight can be held in the off hand, mounted to the weapon, mounted to the player helmet, or
mounted to the player body. If 'mount to weapon' mode is enabled, and a weapon without a barrel is
selected (e.g. grenade, fists, chainsaw) the flashlight is temporarily moved to the head.

Player body view modes:
You can chose to view the entire player body with ( very very basic ) IK for the arms, view the weapon and
hands, or view the weapons only.

Weapon sight modes:
Chose from a laser sight, laser dot, circle dot, or crosshair.

Optional heading indicator.
With independent head/body movement it's easy to forget which way the body ( and forward
movement) is pointing. The heading beam points in the direction the body is moving. Beam can be
solid, have arrows, or scrolling arrow. Temporary artwork.

Movement options:
The player body is locked to user position, so moving in the real world moves the player body.
Optional comfort turning, with user defined delta and repeat delay.
Walk speed adjustment from game default consistent over level changes
Option for forward movement to be in direction off hand controller is pointed
Keadkick and knockback are disabled by default but can be toggled.
For non motion controls, you can lock the view and aim together, or use independent aiming with user
defined deadzones

Hud options:
Hud is translucent and projected into world.
Hud can be locked to the view or the body.
Hud position and size are configurable.
Hud can be toggled on or off, or faded in when user looks down past defined angle
If hidden, can be configured to reveal when health below defined level
Individual Hud elements can be turned on or off if desired

Stat Watch ( for the love of god someone come up with a better name )
Ammo stats are provided on a wrist worn armament inventory device if player has weapon equipped.
Soon to provide health stats as well.

Gui interaction modes.
Player can choose one of three ways to interact with in game guis
1) Look direction controls gui cursor
2) Weapon aim controls guis, in the event weapon has no barrel (grenade, fists, etc) default to look
3) If motion controls are enabled, guis can be touch activated. When close enough to touch, look at gui
to activate then touch gui to control.

PDA is rendered as model in game.
PDA can be held in hand, or fixed in a position in front of the player body. If gui touch mode is enabled, the
PDA works as a touch screen device. Pressing escape during the game brings up the system menus in
game on the PDA.
PDA fixed position can be adjusted.

Cinematics are now from a fixed camera position. This is still being worked on, but is much better than the
free camera IMO. Some camera files still need to be tweaked for some of the cinematics. Pressing the PDA
button will exit the current cinematic

Pixel density can be adjusted.

ALL controller buttons and axes can be re-mapped to any control or action.

Weapon models have been fully fleshed out.

Default gameplay options
: Player body is visible, motion controls enabled, flashlight in left hand, touch screen mode enabled,
heading beam enabled.

Starting the game

When launching the game, you will be asked to move to your play area, face forward and press a button. Forward does not mean you have to look at the graphic, just as long as your body and view are aligned.
This resets you orientation and calibrates your height to reflect being 6'4 marine. If you move from seated to standing or vice versa, just press the re-orient button in game.

Default SteamVR controller config:

System menu actions are hard coded - pads navigate , fire selects, grip exits

Gameplay controls: I've only defined a rudimentary control scheme, you will want to re-map.

Right Controller: Pad Up - Forward, Pad Down - Backwards, Pad Left- turn left, Pad Right - turn right. ( I know this is odd, you can re-map it. )
Trigger - Fire Weapon/interact with characters
Pad press - Jump

Left Controller: Pad Down - crouch, Pad Left - previous weapon, Pad Right - next weapon
App button - PDA
Grip - reset orientation

Minor changes:
During a cinematic, pressing the PDA button will exit.
Basic rumble enabled on steam controllers. (Can be toggled)
Tweaked in game guis to have a slight 3d/holographic effect.
Weapon and flashlight pitch offsets can be adjusted.
Screen shake effect can be attenuated or disabled.
Offsets are configurable if user wants to mount motion controller to another device (eg topshot)
Amazing graphical upgrade - the soda can is now round! I know it's astonishing, right?

Known issues:

The transitions from system menus/loading/saving/level transitions are glitchy. Will be addressed soon.
I changed the way the player body animations and weapon animations interact, there are some glitches with some weapons where the hand doesn't play the fire animation, this will be fixed soon.

The code for this will be cleaned up and placed on github soon - it currently can't be compiled from the sources here sorry but I am working to clean it up and publish it.