Hey pervs
There is already 15'000 owners of a Oculus Rift Dev Kit, so I thought I share this:
This is how you play the current version of XStoryPlayer with the oculus rift, using the free Vireio Driver:
WARNING: While this works really well for me, it might not for you. I might have made a mistake in these instructions or you might have made a mistake yourself. Just post your problem, and maybe I can work it out.
1) Download
http://www.vireio.com/files/Perception_1.1.0.zip2) Extract to any folder (I call this vireio folder from now on)
3) In your vireio folder you will find a subfolder "cfg", in there, open profiles.xml with editor.exe
Add the profile line to the top, so the file starts like this:
Code:
<?xml version="1.0"?>
<profiles>
<profile game_name="XStory" game_exe="XStoryPlayer.exe" shaderModRules="xstory.xml" rollEnabled="true" worldScaleFactor="2" game_type="11" separationAdjustment="0" swap_eyes="true" yaw_multiplier="15" pitch_multiplier="15" roll_multiplier="1" />
...
4) In that cfg folder, there is a "shader_rules" folder:
In there, create a file named "xstory.xml" and open it with editor.exe
Add this to the empty file and save
Code:
<?xml version="1.0"?>
<shaderConfig>
<rules>
<rule id="1" constantType="MatrixC" modToApply="3" startReg="0" transpose="true"/>
<rule id="99" constantType="MatrixC" modToApply="3" constantName ="projView" partialName="true" transpose="true" />
<rule id="100" constantType="MatrixC" modToApply="0" constantName ="projView" partialName="true" transpose="true" />
</rules>
<defaultRuleIDs>
<ruleID id="99" />
</defaultRuleIDs>
<shaderSpecificRuleIDs shaderHash="3590456051">
<ruleID id="100" />
</shaderSpecificRuleIDs>
</shaderConfig>
5) From your vireio/bin folder:
Copy d3d9.dll, hijackdll.dll and libfreespace.dll to your xstoryplayer directory
6) In your xstoryplayer directory, rename XStoryPlayer64.exe to XStoryplayer64.exe.old (This is to force the game to run in 32 bit mode, as 64bit wont work with vireio)
7) Run XStoryPlayer.exe in your xstory folder. Set the game to 1280*800 resolution, 80° FOV, VSync off and exit the game.
8) Finally, run perception.exe in your vireio/bin folder (you should disable head tracking for now as it's hard to hit menu buttons if you have it enabled) and run XStoryPlayer.exe in your xstory folder again.
You should see the game starting with the oculus style view now, start a story, put on your goggles and enjoy

From now on, if you want to play with the rift, just start perception.exe and then the game.
Note:
- It's not perfect, the start screen is wrong and the left eye's picture seems to be darker than the right eye's - you wont really notice this tho.
- I was however able to make shadows right and the whole game to look pretty good with the oculus.
- Immersion with the oculus is much better than on screen, even with shutter glasses - this game could really profit from rift support.
- Head tracking works, but offsets clickable areas for menu buttons and it's sometimes a bit of a pain to pick stuff up in control mode.
- Obviously, any text, thought bubbles and the lower right icon aren't visible when looking through the oculus - you have to take it off for that.
- Regarding the xstory.xml: I really have not much clue what I did there exactly. I got most of it working with just a bit of trial and error, then went from there to fix the shadows. So if you think there is a better method, let me know.
- I didn't change any stereo separation / offsets in vireio as the default was alrite for me. If the default setting isn't good for your eyes, try pressing F2/F3 until it's okay.
Have fun
EDIT: Some shadows are still wrong in some rooms like the swimming pool or the school.