Official How-To's and FAQ

Mass Effect 3 Private Server Emulator is a replacement for the Origin/Blaze backend that handles the online component of Mass Effect 3.

Moderator: PSE Developer

Locked
User avatar
Erik JS
Posts: 110
Joined: Sun Jan 10, 2016 8:03 pm
Location: Brazil

Official How-To's and FAQ

Post by Erik JS »

For reference, anywhere where I mention this: %PSE% - the folder where you put PSE.
Example: I have PSE installed at C:\Misc\PSE. So, for me, %PSE%\logs is C:\Misc\PSE\logs.

Disclaimer:
  • Read everything in this topic.
  • Things may change, get added or deleted, with or without prior notice, at any time, for any reason.
  • Always back your shit up. Back your shit up even when you're not told to!
How-To's
Last update - Dec 22 2017

#1 - Installing PSE
Well, you don't actually "install" anything. PSE won't mess up your registry, or add hidden files in system folders. PSE is 100% in a "portable" state.
Just extract PSE to a folder of your choice.
If you're on Windows 7, you need to install Microsoft .NET Framework 4.5 - Windows 8, 8.1 and 10 users don't need to install this.
IMPORTANT:
a) PSE requires administrator rights. If you have UAC enabled, you'll have to confirm the execution of ME3Server_WV.exe And Setup.exe. If you have UAC disabled, those files will run with whatever privileges your Windows account have, and PSE will fail to run if proper admin rights aren't available.
b) Even with admin rights, PSE is unable to bypass protections imposed by antiviruses and firewalls. You'll have to add an exception for %PSE% path in your antivirus and/or firewall.

#2 - Patching up your game I: binkw32.dll
In its original state, Mass Effect 3 will refuse connecting to PSE because of a server certificate check which is carried out under SSL connection. This is valid even if you use a cracked EXE - crackers decrypted the EXE and removed the Origin integration, but the certificate check is still in place. In order to bypass the certificate check, a fake binkw32.dll is used. When the fake dll is loaded, a special code is run which will patch the certificate check so the game will connect to anything. This fake dll is in %PSE%\patch, where the true binkw32.dll has been renamed to binkw23.dll. Functions in the fake dll which mirror the real ones in name are set up in a way where any call to them will be redirected to their respective counterparts in binkw23.dll.
Aside from the cert check patch, the fake dll also includes a DLC patch (authenticates all DLC's, including modded and user-made ones) and a console patch (an Unreal Engine 3 feature; open it with tilde/tab while ingame).
- Back up your original binkw32.dll in 'Mass Effect 3\Binaries\Win32'!
- Manual patching:
- - Copy all files in %PSE%\patch to 'Mass Effect 3\Binaries\Win32'. Say 'yes' to file replace confirmation.
- Tool-assisted patching:
- - with Setup.exe: click 'First Time Setup', then 'Patch Game'.
- - with ME3Server_WV.exe: menu 'Tools' -> 'Patch Game'.
In the 'Open' file window, just navigate 'Mass Effect 3\Binaries\Win32', where MassEffect3.exe is, and select that file.
IMPORTANT: unless stated otherwise, consider that only the binkw32.dll distributed with PSE contains the certificate patch!
As of r21, the included binkw32.dll pertains to this repository: https://github.com/Erik-JS/masseffect-binkw32

#3 - Patching up your game II: MassEffect3.exe
While it's possible to use PSE with original MassEffect3.exe running under Origin, currently you'll only be able to access local, custom-made profiles if you use a cracked MassEffect3.exe. The original EXE attempts to connect to the server using an authentication string from Origin, and PSE is unable to recognize "real" profiles with that, so in this case it provides a temporary account to you ("OriginPlayer"). Using temporary account, player data like credits and characters unlocked won't be saved.
- Back up your original MassEffect3.exe in 'Mass Effect 3\Binaries\Win32'!
IMPORTANT:
a) cracks won't be provided here;
b) EXE version must be 1.5.5427.124.

#4 - Player profiles
Profiles are nothing more than plain text files stored in %PSE%\player. Those files contain data which is used to authenticate clients connecting to PSE. Player's inventory, credits, promotions and challenges will all be stored there.
Before attempting to connect to PSE, a player must have his/her respective profile in %PSE%\player.
- with Setup.exe: First Time Setup -> Create Profile.
- with ME3Server_WV.exe: Tools -> Create Player Profile.
About Local_Profile.sav: before the txt file is created, you'll be asked if you want to create a Local_Profile.sav. That file is supposed to be put in 'Documents\BioWare\Mass Effect 3\Save'. It's recommended that you back up your existing copy of Local_Profile.sav before replacing it with the one created by PSE.
The LP file contains an authentication string which will be read by ME3, and subsequently be sent by the game to PSE. There's an alternate form of authentication where you can use an in-game login screen if you don't have a Local_Profile.sav in 'Documents\BioWare\Mass Effect 3\Save'. In this case, when the 'Welcome to EA' screen is shown, click 'Continue', then enter your profile name (email field) and password in the next screen.

#5 - Hosts file redirection
This is a required step for all machines where an instance of ME3 will be run on.
The purpose of editing the hosts file is so any requests made by the game to the official EA servers will instead be redirected to PSE.
In case you don't know how hosts work: https://en.wikipedia.org/wiki/Hosts_%28file%29
All URL's listed in %PSE%\conf\redirect.txt must be assigned to the IP of the machine where PSE will be running.
For the machine where PSE will be running (SERVER):
- Setup.exe -> Setup For Hoster -> Select appropriate LAN interface on the combo box -> Set IP and Start Server.
For the machine where PSE won't be running (CLIENT):
- Setup.exe -> Setup For Client -> Enter the IP of the SERVER machine -> Set IP and Close.
IMPORTANT:
a) Back up your original 'hosts' file!
b) Antiviruses may prevent PSE from changing 'hosts'. It's up to you to add an exception for PSE.
c) By default, when closing or opening PSE, the program will detect URL's already present on the hosts files, and will ask if the user wants to wipe them out. Leaving redirection entries there may affect other EA games like Battlefield 4 or Dragon Age: Inquisition, preventing you from accessing their online portion;
d) You can activate/deactivate redirection from PSE through Tools -> Hosts: Activate Redirection (F5), Deactivate Redirection (F6), Show Content (F7);
e) On CLIENT machines, deactivation can be easily achieved with Setup.exe: just click the 'Deactivate Redirection' button.

#1 to #5 is "required stuff", so make sure you understood them. Secondary will get added here soon...
User avatar
Erik JS
Posts: 110
Joined: Sun Jan 10, 2016 8:03 pm
Location: Brazil

PSE: Questions & Answers

Post by Erik JS »

Official FAQ
Originally started by Milakai. Last update: Jul 09 2018




ERRORS
-I get an error in the log: "AuthenticationException: A call to SSPI failed, see inner exception." (Windows 10)
As of v1709 (Fall Creators Update; 10.0.16299.*), Windows 10 no longer, by default, allows the use of two cipher suites (a set of algorithms used in secure connections) which are essential for PSE and ME3 to successfully communicate. Specifically: TLS_RSA_WITH_RC4_128_SHA and TLS_RSA_WITH_RC4_128_MD5.
Either one or both cipher suites need to be put back by the user into the "allowed" list in order to fix this issue.
Fortunately, I managed to create an easy way of doing that:
https://www.dropbox.com/s/0oy8kn31o132x ... g.zip?dl=0
After "adding" the cipher suites, restart your PC.
Related topic: PSE for Windows 10?
Added in Feb 10 2018: PowerShell code for those who want to do it manually (don't know why I didn't disclose this before, whatever).

See currently enabled cipher suites:

Code: Select all

Get-TlsCipherSuite | Format-Table -Property Name
Enable required cipher suites:

Code: Select all

Enable-TlsCipherSuite -Name 'TLS_RSA_WITH_RC4_128_SHA'
Enable-TlsCipherSuite -Name 'TLS_RSA_WITH_RC4_128_MD5'
Edit: Jul 09 2018
#1- Noted by GitHub user "micheljung": these PowerShell commands may require admin rights.
#2- Just a heads up: after the 1803 update (10.0.17134.*), Windows 10 has disabled those cipher suites again, and I had to manually re-insert them back through PowerShell. It's likely that this will keep happening whenever a new big update is released.

-When I click on Multiplayer/any menu-like screen the game crashes
Let each menu "settle" (wait a few seconds before clicking anything).
This is a problem with the game itself, and there's no definitive fix for it yet.

-When I try connect to the server it writes this:
08-07-14-22-13-03 [Redirector] Crashed:
Authentication failed because the remote party has closed the stream transmission.

Make sure you patch the game with the dll's provided. See How-To #2.

-When I open Mass Effect 3 I get the 'could not connect to EA servers' message.
First of all, PSE must be running before ME3 is started.
Make sure redirection is active on the machine where ME3 is running (check hosts file to see if the correct IP has been written there, when in doubt just use the deactivate function and start all procedures again). See How-To #5.

-I'm using XP and got an error from the Binkw32.dll, 'GetTickCount64 could not be located in the dynamic link library KERNEL32.dll'
On r18, a new binkw32.dll properly compiled for Windows XP 32-bit was included.

As of r21, Windows XP is no longer supported.

-I get an error about missing MSVCP110.dll / MSVCR110.dll
You need to install the VC 2012 runtime. http://www.microsoft.com/en-us/download ... x?id=30679

As of r21, a separate VC runtime redistributable is not needed for binkw32.dll.

-When I enter the game the emulator doesn't do its job (can't login): "connecting to server", then "server is not available".
See How-To #4. This is caused by the game sending an unknown authentication string to PSE due to Local_Profile.sav being from an old/deleted profile, or from your Origin account.

-In Blinkw32.log is written: Autopatcher by Warranty Voider/Got adresses/Trying again (this repeats 10 times)/Patch position 2: 0xd5a351/Patch position 2: Patched/Patched Cert Check! (game fails to start)
Create a new PCConsoleTOC.bin with the ME3 Explorer (with the Auto TOC Tool)
Also make sure you create a proper profile and try using multiple versions of different cracks.
If you tried the methods above to no avail then reinstall the game and repeat.

-The joiner never finds the match the hoster is on, it keeps on searching forever (if you want to connect through hamachi or tunngle).
This issue has been corrected in r18. If you’re still having this trouble, please make a post stating so.

-''The application was unable to start correctly (0x000007b). Click OK to close the application.''
This error message may occur on 64 bit operating systems trying to cope with 32-bit dll's, apps and all of that sort or vice-versa.
Try uninstalling all the microsoft visuals, .net framework and make sure you have at least directX 9.0c (and the first 2) installed for both architectures of windows(32 and 64 bit). After that, run disk cleanup to make sure everything is gone and then restart your computer. Download and install every software from here: http://www.computerbase.de/downloads/sy ... -runtimes/
If it still doesn't work you can try manually placing dll's in system32 and sysWOW64 by googling the error, but consider this as a last resort option.
If you manually replaced or moved some dll's in system32 or sysWOW64 (and this error pops up) without a backup alternative then you need to reinstall your OS.

-I get this windows error access to path c:\windows\system32\drivers\etc\host is denied.
Check your firewall / antivirus or any other kind of security measure currently active in your PC.

-I get an error message in the log: ”An attempt was made to access a socket in a way forbidden by assigned access privileges to it”
As with the previous question, this may be due to “rules” imposed by firewall / antivirus. Please add an exception for PSE in your firewall/antivirus.

-I get an error message in the log: ”The requested address is not valid in its context”
This happens when IP in conf.txt doesn’t match any of the IP’s assigned to network adapters (physical or virtual) in your machine. This can be fixed by using Setup.exe: Setup for Hoster -> select a valid interface/IP from the list -> Set IP and Start Server.

-I get an error message in the log: ”The parameter is incorrect”
- Check AV / firewall;
- reset Winsock;
- reinstall/repair .NET Framework.
Reference: http://hopper.minecraft.net/help/kb/soc ... -error-04/
More about resetting Winsock: http://forum.thewindowsclub.com/windows ... 8-7-a.html

-I'm unable to play as a profile I've created. The main menu message says I'm logged as "OriginPlayer".
See How-To #3.
Short story: custom profiles are only available through 'login' and 'silentLogin' packets. Original EXE logs in through 'originLogin'.
Long story: currently, you must use a cracked EXE in order to play as custom profiles. The original EXE will attempt to log into the server with an 'originLogin' packet, which uses an auth string from Origin, and there's no way to manipulate that unless Origin itself is hacked. The cracked EXE obviously has all links cut from the Origin client, so it's sort of unable to retrieve an auth string from the Origin client, and instead uses whatever string is stored inside Local_Profile.sav ('silentLogin'), or may show a screen asking for email/password of the user's Origin account ('login').

-When using MITM, I get this error: ”Exception: Unknown Tdf Type”
Change "RWTimeout" in conf/conf.txt to a number higher than 100. Ping the TargetIP (92.52.77.245) and see what average response time you get (e.g. if you get 213ms then you should use 250 or 300 as your RWTimeout).

OTHER QUESTIONS
-If the game crashes will it save?
Nope.
-There 5 free DLC (Rebellion, Earth, Reckoning, Retaliation, Resurgence). Do they work with PSE?
Yes, they do. You can check the '/Mass Effect 3/BIOgame/DLC' folder for them (DLC_CON_MP1, 2, 3, 4 and 5)
-Where can I get them?
Anyone who owns the game can get them from Origin: right-click ME3, View Game Details, scroll down to Add-ons & Bonuses.
And anyone who doesn't own the game will have to get them elsewhere, not here.
-Any way to make this work without patches?
You would need to MITM in the old version without the patches, but the online servers don't allow that anymore, so there's no way to regain that. Check your MassEffect3.exe for file version: 1.5.5427.124 and/or product version: 05427.124. If it’s anything other than these, then it won’t work with PSE, or it may work with limited functionality, you’re on your own in this case. (this also applies to ME3 Demo)
-What features are already available?
- User authentication;
- Create match;
- Join match;
- Save/load player data;
- Galactic readiness and promotions in SP campaign;
- Leaderboards.
-What features are not available yet?
- Quick match filters: after client request, PSE returns lobbies according to these rules: 1- creation time, 2- is active, 3- has free slot. Any other rules are currently ignored (number of required/unused DLC's, private/public lobby, random or specific map/difficulty/enemy);
- Host migration: currently under research.
-When will feature X be implemented? / When is the next release of PSE?
When it's done.
Locked