SunBeam wrote: ↑Wed Mar 28, 2018 6:46 pm
Hello, folks.
As promised, time for the method I've cropped up to
disable EAC in
Far Cry 5. A little story behind it first (those who are not interested, skip to the "Instructions").
Overview:
I started this quest as a simple challenge, to see if anything could be done using the available tools at my disposal:
- x64dbg - - with which I did most of the tracing and breakpointing
- Cheat Engine - - used mostly to see if detected or not
- CPY's EasyAntiCheat_x64.dll - - created for their Tom Clancy's Ghost Recon: Wildlands release (understanding of what's going on in there)
Few hours in I was able to understand how the emulation works and where exactly to intercept/debug each of its calls, while loaded in the target (Wildlands). I then set out to use the same DLL in Far Cry 5. I first checked if it's compatible (no bogus exports that would error) to learn there's only one:
CreateGameClient. What the DLL does is to re-route EAC's own function to this emulated one. I've then come up with the means to debug FarCry5.exe in such a way that it would load Dunia DLL (fc_m64.dll - - main game module) and allow me to trace through it. I used the infinite loop method placed at DLL's EP, attached, restored bytes, continued tracing. I then got to several locations, which make the subject of my patch, where EAC's CreateGameClient is avoided - - since we have it already in CPY's DLL - - and EAC initialization is forced to return success (the handling code for this is in virtualized).
Instructions:
1) Download the linked Google Drive archive:
[Link] (password:
FRF)
2) Backing-up/renaming:
- In your Far Cry 5/bin/ folder first rename EACLaunch.exe to EACLaunch.exe.BAK.
- In your Far Cry 5/bin/ folder rename FC_m64.dll to FC_m64.dll.BAK.
- In your Far Cry 5/bin/EasyAntiCheat/ folder, rename EasyAntiCheat_x64.dll to EasyAntiCheat_x64.dll.BAK.
3) Place
EasyAntiCheat_x64.dll file from the archive into your Far Cry 5/bin/EasyAntiCheat folder.
4) Place
FC_m64.dll file from the archive into your Far Cry 5/bin/ folder.
Done.
Start the game as usual (NO NEED FOR EXTRA PARAMETERS OR ANY OTHER CRAP!). Enjoy!
FULL CREDIT FOR THE EMULATOR FLIES OUT TO < CPY > AND THEIR WILDLANDS RELEASE; whoever you guys are, we appreciate it.
That being said, play nice and start filling this topic up with code snippets, scripts, etc. If you want, then consolidate everything in a community-driven table. I would highly appreciate it if this time around
we work together to achieve all (or almost all) the options you'd think doable in this game, using common sense still (no MP requests or questions about bans or silver bars, please).
BR,
Sun