This is a read only copy without any forum functionality of the old Modcraft forum.
If there is anything that you would like to have removed, message me on Discord via Kaev#5208.
Big thanks to Alastor for making this copy!

Menu

Author Topic: How to make custom client version to check for Trinity core?  (Read 2321 times)

Magnus

  • Moderators
  • Wiki Incarnate
  • *****
  • Posts: 147
    • View Profile
How to make custom client version to check for Trinity core?
« on: September 24, 2014, 12:30:08 pm »
I would to make a different client version (f.ex. 12341 instead of 12340) so that the Trinity core can check if users have the right client.

With a hex editor I changed all occurrences of 12340 in the wow.exe. The new version is now also shown in the login screen.

However it seems that's not what is sent to the server. In the TC realmlist table I have still 12340 and can connect. If I change it to 12341 I can't connect (empty realmlist).

Any ideas how to do that ?
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

phantomx

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 615
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #1 on: September 24, 2014, 01:28:27 pm »
Hey, so basically you just need to recompile your authserver, you could also hex edit it but this is less time consuming...


Authserver/Source Files/AuthCodes.cpp


Change 12340 to what ever value you are using so 12341.

Then in the Auth/realmlist db change the build to 12341.



That should be everything since you already edited the wow.exe.

P.S

This is a great way to protect against noob cheaters that just download an injector... that only works with it's wow.exe, they won't be able to connect to the server without your exe. :)
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
[wimg]http://i.imgur.com/6fxUQL1.gif[/wimg]

Ascathos

  • Moderators
  • Creator of Worlds
  • *****
  • Posts: 1129
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #2 on: September 24, 2014, 02:16:19 pm »
Don't edit, but add.

Code: [Select]
{12341, 3, 3, 5, 'a'},
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

phantomx

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 615
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #3 on: September 24, 2014, 02:17:33 pm »
Quote from: "Ascathos"
Don't edit, but add.

Code: [Select]
{12341, 3, 3, 5, 'a'},

Yeah that would be the more organized thing to do.

I haven't slept in 32 hours, sorry about that.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
[wimg]http://i.imgur.com/6fxUQL1.gif[/wimg]

Ascathos

  • Moderators
  • Creator of Worlds
  • *****
  • Posts: 1129
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #4 on: September 24, 2014, 02:18:12 pm »
Quote from: "phantomx"
Quote from: "Ascathos"
Don't edit, but add.

Code: [Select]
{12341, 3, 3, 5, 'a'},

Yeah that would be the more organized thing to do.

I haven't slept in 32 hours, sorry about that.
True it is, it depends on what type of server he plans to have. Not like a RP server for example would require cheats.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

phantomx

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 615
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #5 on: September 24, 2014, 02:20:08 pm »
Quote from: "Ascathos"
Quote from: "phantomx"
Quote from: "Ascathos"
Don't edit, but add.

Code: [Select]
{12341, 3, 3, 5, 'a'},

Yeah that would be the more organized thing to do.

I haven't slept in 32 hours, sorry about that.
True it is, it depends on what type of server he plans to have. Not like a RP server for example would require cheats.

Indeed, oh though some um lets say younger people might still try to cheat in some way.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
[wimg]http://i.imgur.com/6fxUQL1.gif[/wimg]

Magnus

  • Moderators
  • Wiki Incarnate
  • *****
  • Posts: 147
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #6 on: September 25, 2014, 05:53:55 pm »
Well, I checked the things a little bit and compiled a new auth server.

The problem lies that my wow.exe still sends a 12340 build no. I checked this build no. by printing it in the IsAcceptedClientBuild(int build) function in AuthCodes.cpp

I have opened wow.exe in hexmode with UltraEdit and replaced all occurrences of 12340 (6 times) with 12341.

Do I need to change something else? At least on the login screen I have 12341.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

schlumpf

  • Administrator
  • Creator of Worlds
  • *****
  • Posts: 2967
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #7 on: September 25, 2014, 07:13:42 pm »
Maybe you only have changed the string 12340, or only the int 12340?
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Magnus

  • Moderators
  • Wiki Incarnate
  • *****
  • Posts: 147
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #8 on: September 25, 2014, 08:27:40 pm »
It was a string search and replacement.

On which adress is the int hidding ?
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

schlumpf

  • Administrator
  • Creator of Worlds
  • *****
  • Posts: 2967
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #9 on: September 25, 2014, 09:05:51 pm »
multiple.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Magnus

  • Moderators
  • Wiki Incarnate
  • *****
  • Posts: 147
    • View Profile
Re: How to make custom client version to check for Trinity c
« Reply #10 on: September 28, 2014, 04:18:52 pm »
Build offsets are:

0x004C99F0 (sent to auth.exe)
0x00063CB3 (sent to world.exe)

 uint16 3430 (12340)
 f.ex change to 3530 (12341)
« Last Edit: January 01, 1970, 01:00:00 am by Admin »