Page 2 of 2

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Mon Mar 16, 2020 12:27 am
by IFireflyl
SunBeam wrote:
Fri Mar 13, 2020 6:27 pm
What to do with them:

1) Head into SteamLibrary\steamapps\common\Halo The Master Chief Collection\easyanticheat folder.

2) Rename easyanticheat_x86.dll to easyanticheat_x86.dll.BAK, then easyanticheat_x64.dll to easyanticheat_x64.dll.BAK, so you have a backup of these files (I know you could always verify integrity of game files if you accidentally overwrite them, but why waste time waiting for validation of 32GB?..)

3) Extract the 2 DLLs from the archive below into this folder.

4) Run the game from either the Desktop shortcut or Steam, choosing the first option "Play Halo: The Master Chief Collection". No need to select the 2nd one with EAC disabled ;)

Profit.
I knew you could do it! Great job, SunBeam.

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Tue Mar 17, 2020 12:03 pm
by SunBeam
Alright.. so continuing from previous page, I learned that there is a global timer used for almost any related actions in this game. You can get to it through this path:

Code: Select all

haloreach.dll+64EB27 - 4C 8B 44 D0 10        - mov r8,[rax+rdx*8+10]
haloreach.dll+64EB2C - E8 3F84A1FF           - call haloreach.dll+66F70 // set a bp here, then fire gun; enter
..
..
haloreach.dll+66F70 - 8B 0D 22DEC500        - mov ecx,[haloreach.dll+CC4D98]
haloreach.dll+66F76 - 65 48 8B 04 25 58000000  - mov rax,gs:[00000058]
haloreach.dll+66F7F - BA B0000000           - mov edx,000000B0
haloreach.dll+66F84 - 48 8B 04 C8           - mov rax,[rax+rcx*8]
haloreach.dll+66F88 - 48 8B 0C 02           - mov rcx,[rdx+rax]
haloreach.dll+66F8C - 80 39 00              - cmp byte ptr [rcx],00
haloreach.dll+66F8F - 75 03                 - jne haloreach.dll+66F94
haloreach.dll+66F91 - 33 C0                 - xor eax,eax
haloreach.dll+66F93 - C3                    - ret 
haloreach.dll+66F94 - 0FBF 41 06            - movsx eax,word ptr [rcx+06] // grab rcx from here; timer is at [rcx+0x6]
The reason you need to do the above is there are several timers processed at "haloreach.dll+66F94". If you try "Find out what addresses this instruction accesses" you will find 3 or more (3 will pop when you're in a calm environment, like the start of Mission 1; you will also notice 2 of the timers are influenced by the global one; as soon as you change 60 to 58, the other 2 will change as well; you'll know who they are, as they reset to the global's value).

The timer's value is 60. If I change this to 58, for example, I see that the entire Halo: Reach game is accelerated, I can fire my gun fast enough and moving/jumping around is done at a faster pace. So I set off to check out ALL of the functions where this timer value is used ;) What I meant with that: add rcx+0x6 to you CE list and find out what accesses it. Then let the list fill up and even though the game will lag like fuck, try to also shoot out and jump around. Do as many actions you think possible to catch as many access as possible. You may want to repeat this in maps where other actions are available (e.g.: fast grenade spam, anyone?). I will list out the locations I tested in Mission 1 (right at the start of it) and the effect, just in case someone wants to create some option. You pick which ones you find useful.
  • haloreach.dll+F9F02 - 44 0F BF 41 06 - movsx r8d,word ptr [rcx+06]
    Setting r8d to 1 in a hook here will allow trigger instant zoom-in/zoom-out for the Pistol. You'll have to manually keep right-click pressed if you want that zoom maintained. My theory is the timer is reduced in hook spot from 60 to 1, so the flag that says "zoomed in" never gets set up.
  • haloreach.dll+4E749B - 44 0F BF 41 06 - movsx r8d,word ptr [rcx+06]
    Setting r8d to a small value will create slo-mo effect. Slows down the environment.
  • haloreach.dll+6685E - 0F BF 41 06 - movsx eax,word ptr [rcx+06]
    Slows-down or speeds-up AIs. Environment is not affected. This is where rapid fire could further be investigated.
BR,
Sun

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Tue Mar 17, 2020 1:06 pm
by SunBeam
And here's my table for Reach, with several options.

Image

MCC-Win64-Shipping.CT
(12.25 KiB) Downloaded 436 times

BR,
Sun

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Sat Mar 21, 2020 4:50 am
by IFireflyl
Here's a question that you may (or may not) know the answer to:

Do you know why the game would crash if you try to enable cheats during co-op campaign? And by crash I mean it ends the mission saying there is an error, although you can resume the mission if you want.

I have two computers and tested this just for giggles to see what would happen. I wanted to see if the cheat table would apply to only the Host, or to everybody, or fail entirely. I didn't expect it to kick both players out of the mission. As far as I am aware co-op campaign doesn't go through 343 servers, and I assumed that would be the only thing that would cause the game to abort the mission.

Although, now I am wanting to test it again, but with both games running the same cheat table. Maybe the second player's game is what ended up crashing because it expected information to be handled differently?

I know this is a largely irrelevant question as most people probably wouldn't use a cheat table in co-op campaign. I just like to test theories. :D

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Sat Mar 21, 2020 8:52 am
by PureReality
IFireflyl wrote:
Sat Mar 21, 2020 4:50 am
Here's a question that you may (or may not) know the answer to:

Do you know why the game would crash if you try to enable cheats during co-op campaign? And by crash I mean it ends the mission saying there is an error, although you can resume the mission if you want.

I have two computers and tested this just for giggles to see what would happen. I wanted to see if the cheat table would apply to only the Host, or to everybody, or fail entirely. I didn't expect it to kick both players out of the mission. As far as I am aware co-op campaign doesn't go through 343 servers, and I assumed that would be the only thing that would cause the game to abort the mission.

Although, now I am wanting to test it again, but with both games running the same cheat table. Maybe the second player's game is what ended up crashing because it expected information to be handled differently?

I know this is a largely irrelevant question as most people probably wouldn't use a cheat table in co-op campaign. I just like to test theories. :D
I tested running some cheats in co-op as well recently, funny thing is it never did what you mentioned. The cheats seemed to work as well but the weird thing I ran into after a bit every time was that eventually my screen would freeze, it wouldn't end the mission but everything (myself/partner and all enemies) would just be stuck in place on my screen frozen in time on whatever animation they was performing, along with any text information from pickups and the radar showing dots for whatever it was last showing, literally everything was just frozen. Only thing I'd be able to do at all is just move my camera around.

On my partners side they was obviously able to continue on playing as normal (until they hit a point they couldn't pass due to some script not going off due my character not being in the correct place), and my guy would just randomly teleport from what they told me whenever they hit one of the checkpoint/loading points where it would pull me to them, but I'd still be at the same location where I was stuck on my end still frozen in time. We tried to restart the level/go back to previous checkpoint but no matter how many times he was to restart/go back I was still stuck on the same screen, the only way to fix it was to end the mission fully so it would go back to the lobby and then start it all back up again.

Now the only thing is that it seems you was trying to do it as host, while I was trying to do it as the secondary player so maybe that is why the experiences was different, but I don't have multiple computers and such to really go about testing different things to see if it would be possible to cheat through the entire campaign in co-op without any issues.

Edit: forgot to mention that as the secondary player, the cheats did not affect the host at all.

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Sat Mar 21, 2020 3:40 pm
by IFireflyl
PureReality wrote:
Sat Mar 21, 2020 8:52 am
I tested running some cheats in co-op as well recently, funny thing is it never did what you mentioned. The cheats seemed to work as well but the weird thing I ran into after a bit every time was that eventually my screen would freeze, it wouldn't end the mission but everything (myself/partner and all enemies) would just be stuck in place on my screen frozen in time on whatever animation they was performing, along with any text information from pickups and the radar showing dots for whatever it was last showing, literally everything was just frozen. Only thing I'd be able to do at all is just move my camera around.

On my partners side they was obviously able to continue on playing as normal (until they hit a point they couldn't pass due to some script not going off due my character not being in the correct place), and my guy would just randomly teleport from what they told me whenever they hit one of the checkpoint/loading points where it would pull me to them, but I'd still be at the same location where I was stuck on my end still frozen in time. We tried to restart the level/go back to previous checkpoint but no matter how many times he was to restart/go back I was still stuck on the same screen, the only way to fix it was to end the mission fully so it would go back to the lobby and then start it all back up again.

Now the only thing is that it seems you was trying to do it as host, while I was trying to do it as the secondary player so maybe that is why the experiences was different, but I don't have multiple computers and such to really go about testing different things to see if it would be possible to cheat through the entire campaign in co-op without any issues.

Edit: forgot to mention that as the secondary player, the cheats did not affect the host at all.
Well, you've got me wanting to resume testing this, but as the secondary player instead of the Host. Let the testing resume!

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Sun Mar 22, 2020 1:10 pm
by PureReality
IFireflyl wrote:
Sat Mar 21, 2020 3:40 pm
Well, you've got me wanting to resume testing this, but as the secondary player instead of the Host. Let the testing resume!
Good luck! hopefully you can find a way around the whole freezing in time issue if you run into it as the secondary player, and also hopefully get further in testing than I could.

Re: Halo: Master Chief Collection - Enable Achievements with EAC Disabled :)

Posted: Sat Mar 28, 2020 1:47 am
by SunBeam
About time I close this, as I see the interest has moved towards MP (playing co-op is a form of it). Peace.