MassEffectMouseFix

Origin Update For Mass Effect and Dead Space Mouse Fixes

I recently started to have a little bit more free time at my disposal again and used it to tackle an annoying problem that plagued the mouse fixes for both Dead Space and Mass Effect. The change logs for both games are as follows:

Beta 0.5:

  • The fix should now correctly work with Origin versions from any region

This might not look very impressive, but fixing this issue involved tackling a more severe underlying problem with Origin. Although the fixes were advertised to work with Origin, they would show an unsupported version pop-up for some users, while working fine for others.

Games are often available on a variety of distribution platforms, which usually all come with their own executable file of the game. This means that even if the versions are practically the same, the executables of say the Steam version most likely will have a different layout compared to the Origin or GOG version. A game can also have multiple versions on the same platform. This is most often the case for games that are distributed with certain languages that are only available in some regions.

While other game fixes work on a more abstract level, fixes like the ones for Dead Space of Mass Effect hook into the game and need to know the specific locations (i.e. memory addresses) of functions or data to hook into. If the addresses are wrong, the game usually just crashes. For this reason, every version has to be supported separately by a fix. This is often not trivial, because a fix might rely on several addresses which all have to be determined individually for every version. This also presupposes that I have access to every version in the first place, which is often not the case. Additionally, this process usually has to be repeated every time a game is patched.

Fortunately, the number of different official versions is often rather small and the chances that an older game gets patched are often pretty slim. By restricting a fix to only support the latest, fully patched version it is usually feasible to cover most — if not all — official distribution sources.

However, as it turned out, Origin does not like to play ball with this approach. While Steam usually only provides multiple versions if they actually differ from a content point of view (e.g. languages or censoring), Origin seems to always distribute technically different version for every region, even if they are practically identical. It is hard to tell how many regions Origin uses, but I saw different versions for Western Europe, Eastern Europe, Northern Europe, North America, Russia and more.

Because it is not feasible to support all of them, the updated versions of the mouse fixes now use a pattern matcher to handle Origin versions. Because they are usually very similar, it is possible to search for certain memory patterns in the executable, instead of specifying the addresses directly.

This should hopefully be sufficient to properly handle Origin versions for all fixes in the future.

Advertisements

Mass Effect Mouse Fix

What is this?

This fix makes Mass Effect use raw mouse input and removes the game’s mouse acceleration. It is easy to install and use and does not require any external configuration.

Overview

Description

While the mouse controls are pretty responsive, the first Mass Effect suffers from mouse acceleration, which can’t be turned off via the ingame settings or with the usual approaches for other Unreal Engine 3 games.

This fix removes the acceleration by acquiring raw mouse input and injecting it directly into the game’s input function.

Important: This is an experimental fix. Although I tested all supported versions for some time, I played none of them all the way through. There might be crashes or other issues that I’m not aware of that may require further updates.

Features

  • Raw mouse input
  • No additional smoothing or positive/negative mouse acceleration
  • Configuration via the ingame settings as usual
  • Simple installation and usage without any external configuration

Instructions

Supported Versions

Important: This fix relies on the latest, fully patched executables of the supported versions. Older versions or ones that otherwise have been tempered with won’t work. This also means that if a game were to be patched — which is very unlikely at this point — it would break the fix and require it to be updated.

  • Steam
  • Origin
  • Retail, v1.02

Note: All available versions of the game can be enabled on Origin one way or another. See this link for details.

Install

Note: The fix does not make any permanent changes to the game or the system and can easily be removed (see below).

  1. Extract the file dinput8.dll to your main game folder. For example: "C:\Program Files (x86)\Steam\steamapps\common\Mass Effect\Binaries\"
  2. (Optional) If you want to use the fix with other fixes/mods that also use a dinput8.dll, rename the file to xinput1_3.dll
  3. Start the game like you would normally, for example directly through Steam or Origin

Uninstall

  1. Remove or rename the dinput8.dll from the folder of the game.

How To Use

After the installation the fix does not require any additional treatment. Just launch and configure the game as usual.

Upon start the fix will detect which version you are using and immediately alert you via a dialog box and terminate the process if something goes wrong. This is to ensure that users don’t assume the fix is loaded when they are actually using an unsupported version.

Additional Information

What You Should Know

This fix is essentially a hack and relies on the layout of the specific executable. There may be crashes or unexpected issues. Feel free to provide feedback so that the problems can get fixed.

Since the fix consists of an executable DLL-File, I could have put any harmful shenanigans in there. You just have to trust me that the file is clean.

If you don’t — and why should you — feel free to use a meta online virus scanner like VirusTotal to verify the file. Be aware however, that because the fix uses “hacking techniques” such as injection and hooking, it could trigger anti-virus software without being harmful.

Known Issues

There are currently no known issues with using the fix.

Contact And Support

If you like this mod and want to support the development or show your appreciation, you can find more information on my website. There you can also find out more about other fixes that I have done and means to contact me if you have a question, want to provide feedback, bug reports or suggestions.

Version History

Beta 0.6:

  • The camera will no longer move when the player is in a menu
  • The fix will now respect the inversion setting of the y-axis

Beta 0.5.1 – Hotfix:

  • Fixed bug that caused the Steam and retail version to crash on start

Beta 0.5:

  • The fix should now correctly work with Origin versions from any region

Beta 0.4:

  • The DLL can now also be renamed and used as xinput1_3.dll. This is to make the fix compatible with other fixes/mods that also use a dinput8.dll for loading

Beta 0.3:

  • Patching a supported version to be large address aware no longer prevents it from being detected correctly. This is to ensure that the fix works with certain mods

Beta 0.2:

  • Added support for retail version of the game

Beta 0.1:

  • Initial release