Welcome to Open Carnage

A resource for Halo Custom Edition and MCC modding, with unique means of rewarding content creation and support. Have a wander to see why we're worth the time! - EST. 2012

MXWK

CD Key Check Is ON In My CE SAPP Server

When 2 people with the same CD key try to join my server, only the first one can join and the second one has to wait for the first one to leave in order for him to be able to join the server. This issue has persisted with me since I started hosting and I've been trying to find a solution for it. I've read that only Phasor has CD Key check and that it is disabled in SAPP.  Does anyone know how to fix this? Thanks!

Share this post


Link to post
Share on other sites

Tiddy-bits:

Posted (edited)

You have to allow hash duplicates, which is something that you may have to find a script to patch.  Phasor has a script that does this for it as well, as the base mod only disables cdkey checking but duplicate checking.  The fix is simple but I don't have the 1.10 address on hand otherwise its this added to any script in the OnScriptLoad section:

write_bit(hash_duplicate_patch_address, 0, 0)

`hash_duplicate_patch_address` has to be replace with the address, I am guessing someone else here may have the 1.10 address.

 

Edited by Devieth
MXWK likes this

Share this post


Link to post
Share on other sites

Hey guys, the issue still persists. Can someone please find the 1.10 address for me? Honestly, I don't even know where to look for it.

 

Thanks!

Share this post


Link to post
Share on other sites
1 hour ago, MXWK said:

Hey guys, the issue still persists. Can someone please find the 1.10 address for me? Honestly, I don't even know where to look for it.

 

Thanks!

The unrestricted version of Gandanur: http://www.gandanur.com/

It has a command for disabling the cd-key check, however installation of Gandanur requires replacement of haloded.exe and strings.dll.  It might be possible to use gandanur along with cheat engine and keep running the command:

sv_cdkeycheck 1
sv_cdkeycheck 0
sv_cdkeycheck 1
sv_cdkeycheck 0
etc...

Then use cheat engine to search for a bit value in haloded.exe of something being toggled between 0 and 1 based on what you changed it to using gandanur, however the fact that gandanur requires haloded.exe to be replaced with their own version makes me think that the memory address may or may not be correct if you tried to write to the same address in the copy of haloded.exe that sapp uses.

 

If this doesn't work then gandanur is a solution for disabling the cd key check if you don't want to use phasor or sapp.

 

Edit:

I didn't test to see whether this works, but there is a memory address specified here:

https://github.com/Chalwk77/HALO-SCRIPT-PROJECTS/blob/ca1bcdf2636debc4e3622fff48614626bb7b3043/Miscellaneous/offsets.lua

--PC
--hashcheck_patch = 0x59c280

--CE
hashcheck_patch = 0x530130

write_byte(hashcheck_patch, 0xEB) -- Disables Halo's hash check (0x74 to reenable)

 

Edited by mouseboyx
sapp using haloded.exe; write_byte instead of writebyte
MXWK likes this

Share this post


Link to post
Share on other sites

@mouseboyx Thanks bro! I have one more question though.

 

I want to make a new script that does this function (disables CD hash check) and load it into my server instead of putting the command in a random script because I just tried that and the script stopped functioning completely. So will the below code work? 

 

function OnScriptUnload()

end

function OnNewGame(map)
    Map = map
    --Patches
    writebyte(hashcheck_patch, 0xEB) -- Disables Halo's hash check (0x74 to reenable) COMPLETELY USELESS NOW THAT GAMESPY IS DOWN.
end

 

Share this post


Link to post
Share on other sites
Just now, MXWK said:

@mouseboyx Thanks bro! I have one more question though.

 

I want to make a new script that does this function (disables CD hash check) and load it into my server instead of putting the command in a random script because I just tried that and the script stopped functioning completely. So will the below code work? 

 


function OnScriptUnload()

end

function OnNewGame(map)
    Map = map
    --Patches
    writebyte(hashcheck_patch, 0xEB) -- Disables Halo's hash check (0x74 to reenable) COMPLETELY USELESS NOW THAT GAMESPY IS DOWN.
end

 

 

I honestly have never tested changing that memory address, I was thinking that with sapp 10.2.1 the cd key check is disabled out of the box.

 

I tried some code, this ended up crashing haloded with an exception error, but I'm using sapp 10.2.1.  With 10.2.1 I never had a problem with cd key checks, I also don't know if those memory addresses or correct, or when to write to them.  It could be a completely different address that is created by sapp that needs to be changed.  Those addresses in offsets.lua probably pre-date halo patch 1.10 and are geared towards phasor.

api_version = "1.12.0.0"
function OnScriptLoad()
     register_callback(cb["EVENT_GAME_START"], "OnGameStart")
end

function OnGameStart()
    --PC
    --hashcheck_patch = 0x59c280
    
    --CE
    hashcheck_patch = 0x530130
    write_byte(hashcheck_patch, 0xEB) -- Disables Halo's hash check (0x74 to reenable)
    
end

 

 

MXWK likes this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.