Prey
Methanhydrat Aug 11, 2017 @ 9:55am
[PreyXInputFix] Now compatible with v1.08
IMPORTANT

Since game version v1.09 this fix is no longer needed, because the game received an official option to enable XInput support.

If you are interested in using PS4 button prompts, you can find a corresponding option in the most recent version of the PRIC mod.


---

TL;DR

This fix resolves controller issues in Prey that were introduced with patch v1.05, by forcing the game to use XInput instead of the Steam Controller API by Valve.

Quick start guide:
  1. Open the archive and choose the button prompts you want to use by opening the corresponding folder
  2. Extract the file dinput8.dll to the release sub-folder of Prey. For example: "C:\Program Files (x86)\Steam\steamapps\common\Prey\Binaries\Danielle\x64\Release\"
  3. Start the game like you would normally, for example directly through Steam or Big Picture mode
  4. Important: If the fix does not work, make sure that you have turned off the usage of the Steam Controller API (see below)
Features

While Prey originally offered good controller support, patch v1.05 introduced various issues. Instead of choosing either XInput or the Steam Controller API based on the user settings, the game always uses the latter. This results in problems with the movement as well as certain controller settings or the controller not working at all if the user has disabled the usage of the Steam Controller API in game's properties in Steam.

This fix re-enables XInput support and forces the game to use it, regardless of the settings.

Instructions

Supported Versions

This fix is designed for the latest, fully patched version of Prey and the Mooncrash DLC and might not work when used with older or otherwise modified executables.
  • Steam v1.08
Note that the fix currently does not work with the demo version of the game.

Install

The fix does not make any permanent changes to the game or to Windows and can easily be removed.

Important: When using a non-XInput controller such as the DS4, you will need a XInput emulator like DS4Windows for this fix to work
  1. Open the archive and choose the button prompts you want to use by opening the corresponding folder
  2. Extract the file dinput8.dll to the release sub-folder of Prey. For example: "C:\Program Files (x86)\Steam\steamapps\common\Prey\Binaries\Danielle\x64\Release\"
  3. Start the game like you would normally, for example directly through Steam or Big Picture mode
  4. Important: If the fix does not work, make sure that you have turned off the usage of the Steam Controller API (see below)
Although the fix forces the game to use XInput, it is necessary to disable the usage of the Steam Controller API in the game's settings.

The safest way to do this is the following:

  1. In the Steam client go to the menu Steam -> Settings -> Controller -> General Controller Settings
  2. Make sure PS4/XBox Configuration Support is checked
  3. Go to Big Picture mode and find Prey in you library
  4. Click Mange Game -> Controller Options and uncheck Use Steam Configuration for Non-Steam Controllers
  5. Uncheck the setting from step 1 again, depending on whether it was checked in the first place
Uninstall
  1. Remove or rename the dinput8.dll from the folder of the game.
Known Issues

There are currently no known issues with using the fix.

Additional Information

Antivirus Software

Since this fix consists of an executable DLL file that uses "hacking techniques" such as injection and hooking, it could be classified as malicious by antivirus software. In that case, it might be necessary to add an exception rule to the scanner.

If you lack the trust in random people on the internet -- and I would not blame you -- feel free to use a meta online virus scanner like VirusTotal to verify the file.

Loading Other Fixes/Mods/Injectors

To increase the compatibility with other mods or injectors that are using a wrapper DLL, this fix offers two methods for remote loading of additional files. Note that there might still be compatibility issues between the different fixes, mods or injectors that have nothing to do with the loading process.

File method:

The fix will load another dinput8.dll automatically if it has the name dinput8_Remote.dll. Just rename the DLL you want to load accordingly. Using this method will lead to an error if the renamed DLL is not itself a dinput8.dll.

Folder method:

The fix will also automatically load all DLLs regardless of their names in a dinput8_Remote sub-directory. Just create a corresponding folder in the install directory of the fix. This is the only way to load multiple (conflicting) files.

Contact And Support

If you like this fix and want to support the development or show your appreciation with a donation, you can find more information on my website[methanhydrat.wordpress.com]. There you can also find out more about other mods that I have done and means to contact me if you have a question, want to provide feedback, bug reports and suggestions.

Version History

v1.1:
  • Fixed launch issues for users that do not own the Mooncrash DLC
v1.0:
  • Upgraded the fix to game version v1.08
v0.6:
  • Added support for Mooncrash DLC
v0.5:
  • Upgraded the fix to game version v1.06
v0.4:
  • Controller movement no longer gets stuck on interactive items when using PS4 prompts
v0.3:
  • Added a separate version that shows button prompts of the PS4 instead of the XBox controller
  • Added more detailed instructions to the readme file
v0.2:
  • Added support for demo version of Prey
  • Added measures to make the fix more robust to updates of the game
v0.1:
  • Initial release
Last edited by Methanhydrat; Aug 12, 2018 @ 3:08pm
< >
Showing 1-15 of 293 comments
Szimanoch Aug 11, 2017 @ 11:44am 
I need help. I have problem with finding this Manage Game tab in BPM. Where it is exactly?
Methanhydrat Aug 11, 2017 @ 11:48am 
Enter BPM and select the game in you library. The Manage Game button should be in the left menu.
Szimanoch Aug 11, 2017 @ 11:50am 
Can you send me a screenshot of your games tab? I'm blind or something :|
Methanhydrat Aug 11, 2017 @ 11:57am 
You can find one here[imgur.com].

Btw.: You only need to deactivate the Steam Controller mode if you activated it before. One way to verify if it is active, is to right-click on the game in your regular Steam library and click Edit Steam Controller Configuration. If you get an error message, noting that the support is disabled, you are already good to go and should not have to disable anything else.
Szimanoch Aug 11, 2017 @ 12:10pm 
Okay it's working I think pretty well. I already see some issues. When showing items wheel there are flickering controls at the right side. Also when clicking left analog for sprint it activate virtual keyboard.
Methanhydrat Aug 11, 2017 @ 12:22pm 
That is odd. I just tested it again to make sure and cannot confirm either of your problems.

From what you are describing it seems as if the game constantly receives some form of keyboard input and switches the prompts accordingly.
jb1234 Aug 11, 2017 @ 1:14pm 
Doesn't work for me, unfortunately (using the DS4). The game just flat out refuses to acknowledge the controller inputs.
Methanhydrat Aug 11, 2017 @ 1:27pm 
Originally posted by jb1234:
Doesn't work for me, unfortunately (using the DS4). The game just flat out refuses to acknowledge the controller inputs.

I do not own a DS4 controller, but it does not have native XInput support. So unfortunately it cannot be used with the fix. Apparently there are some wrappers available, which map DS4 input to XInput. So you could try one of those in combination with the fix. Other than that, you are out of luck I am afraid.

The core issue is that for some reason all controllers are producing mouse input when being used in Steam Controller Mode. I am not really sure why, because even if you create a custom profile and remove all mouse joystick settings from the configuration, the problem is still there.
jb1234 Aug 11, 2017 @ 1:29pm 
Yeah, I use InputMapper with it. Still nothing. But that's okay. I appreciate your hard work, man. I hope they patch this sucker.
tailore Aug 11, 2017 @ 2:37pm 
It doesn't make any difference for me.
I use DS4 and DS4Windows to emulate xbox controller.
All other games work with xinput without any problems.

So no way around a "real" bugfix.
Last edited by tailore; Aug 11, 2017 @ 2:38pm
Methanhydrat Aug 11, 2017 @ 3:07pm 
Originally posted by tailore:
It doesn't make any difference for me.
I use DS4 and DS4Windows to emulate xbox controller.
All other games work with xinput without any problems.

So no way around a "real" bugfix.

As I mentioned before, the fix relies on XInput support by the controller. This means that it should work fine with most devices, most notably the XBox360 and XBoxOne controllers, but unfortunately not the DS4.

However, I am currently looking into the source of the DS4Windows XInput emulator and from what I gathered so far there should be no reason why it should not work with the fix. So there might be a possibility to get it to work somehow. But like I said before, I do not own a DS4 myself, which makes investigating this a lot more difficult.
Caesar Edouard Aug 11, 2017 @ 3:15pm 
This works perfectly for me, and deserves to be pinned.
StarlightRac Aug 11, 2017 @ 3:41pm 
question is the fix from game devs or a fellow gamer? if not from dev, i hope they will still fix this. think i rather wait and see but do appreciate you taking the time to try to fix this.
Orion1189 Aug 11, 2017 @ 3:52pm 
Doesn't seem to do anything for me. No controller input unless I turn on Xbox configs in BPM, and right stick is still emulating a mouse, even in the main menu. Also, I have no "Use Steam Configuration for Non-Steam Controllers" checkbox in my BPM -> Prey -> Manage Game -> Controller Options menu.
Methanhydrat Aug 11, 2017 @ 4:07pm 
Originally posted by Orion1189:
Doesn't seem to do anything for me. No controller input unless I turn on Xbox configs in BPM, and right stick is still emulating a mouse, even in the main menu. Also, I have no "Use Steam Configuration for Non-Steam Controllers" checkbox in my BPM -> Prey -> Manage Game -> Controller Options menu.

That is odd. What happens when you open the Steam-Overlay while in the game? Do you get the standard Steam overlay or the "BPM-like" overlay? If the controller is still working as a mouse, the Steam Controller mode has to be active. Otherwise there is no way the game could receive the input in mouse-form.
< >
Showing 1-15 of 293 comments
Per page: 1530 50

Date Posted: Aug 11, 2017 @ 9:55am
Posts: 293