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: [TUTORIAL] Sending Patches To The Client Through The WoW App  (Read 30490 times)

stoneharry

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 617
    • View Profile


With Schlumpf's guidance I was able to successfully implement a way to send custom patches to the client through WoW rather than a custom launcher.

The implications for this are quite clear. It allows one to:

  • Require the latest patch to login.
  • Send incremental patches.
  • Send any data.
I wrote up a guide to do this which Schlumpf has heavily edited to create a, hopefully, useful publication.

The link to this can be found here: https://www.dropbox.com/s/fovh9mtrj9tgqd4/Implementing%20in-client%20patching%20for%20World%20of%20Warcraft.pdf?dl=0

~Harry & Schlumpf

Edit: 21/06/2014:

You will have to edit the binary to allow unsigned patches: <!-- l -->viewtopic.php?f=59&t=1829<!-- l -->

This is my code changes for a more recent TrinityCore version in order to get patching to work: <!-- m -->https://dl.dropboxusercontent.com/u/110 ... nity.patch<!-- m -->
« Last Edit: August 01, 2019, 07:58:07 pm by stoneharry »

schlumpf

  • Administrator
  • Creator of Worlds
  • *****
  • Posts: 2967
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW App
« Reply #1 on: May 12, 2012, 12:44:20 am »
You may want to add links to code excerpts or even the whole zip for ease of copying.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Eluo

  • Moderators
  • Creator of Worlds
  • *****
  • Posts: 509
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW App
« Reply #2 on: May 12, 2012, 12:45:56 am »
Awsome guys!

You sure you just want to keep it at drop boxs?
You could also upload it to the forum if you want to.
Very nice.
Thanks to both of you!
PS:I corrected your links btw.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »
One is a genius, the other\'s insane!

stoneharry

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 617
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW App
« Reply #3 on: May 12, 2012, 12:49:40 am »
Thanks, yeah when I posted this before I was ready by mistake. Now every time I try to edit the post it disapproves the post. FML.

http://dl.dropbox.com/u/1102355/PatchThroughClient.zip

That is the full archive.

Also attached to this post.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

glararan

  • Registred Member
  • Wiki Incarnate
  • *****
  • Posts: 162
    • View Profile
    • http://glararan.eu
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #4 on: May 12, 2012, 12:45:30 pm »
Did you test it only on ArcEmu or Trinity?
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

stoneharry

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 617
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #5 on: May 12, 2012, 01:54:52 pm »
Quote from: "glararan"
Did you test it only on ArcEmu or Trinity?

I tested it on ArcEmu, and Schlumpf tested it on TrinityCore.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Mjollna

  • Contributors
  • Model Change Addict
  • *****
  • Posts: 254
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #6 on: May 12, 2012, 10:56:20 pm »
I add the change for Windows 335a binary.
Huge thanks to Schlumpf for all the help and explanations.

Code: [Select]
55 push ebp
8B EC mov ebp, esp

B9 05 00 00 00 mov ecx, 5
8B 45 0C mov eax, [ebp+authresult]
89 08 mov [eax], ecx

B8 01 00 00 00 mov eax, 1

5D pop ebp
C2 18 00 retn 18h
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

XxXGenesisXxX

  • Contributors
  • Model Change Addict
  • *****
  • Posts: 204
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #7 on: May 13, 2012, 12:31:55 pm »
This is epic work guys. It's been needed for quite some time. Personally really don't like launchers at all. Thanks for sharing.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

schlumpf

  • Administrator
  • Creator of Worlds
  • *****
  • Posts: 2967
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #8 on: May 13, 2012, 02:44:35 pm »
Quote from: "XxXGenesisXxX"
This is epic work guys. It's been needed for quite some time. Personally really don't like launchers at all. Thanks for sharing.
The sad part is that this technique is known and working since years but emulator people never correctly implemented it.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Jameyboor

  • Registred Member
  • GM Isle Explorer
  • *****
  • Posts: 20
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #9 on: December 07, 2012, 09:00:10 am »
getting a patch error on the trinity core diff patch .

line 769 : corrupt patch
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

stoneharry

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 617
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #10 on: December 07, 2012, 09:21:26 am »
Quote from: "Jameyboor"
getting a patch error on the trinity core diff patch .

line 769 : corrupt patch

You'll need to apply it manually.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

davidfaca

  • Registred Member
  • GM Isle Explorer
  • *****
  • Posts: 19
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #11 on: January 02, 2013, 03:40:24 pm »
I've compiled trinitycore with the patch, modified the wow.exe to allow the MPQ, made the patch and authserver loads it. But when I try to login I just get an unable to validate game version message and it does not go further.

I'm using 3.3.5a esES.

thanks.
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

akriso

  • Contributors
  • Loreweaver
  • *****
  • Posts: 107
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #12 on: January 13, 2013, 07:21:59 pm »
it really works well? :shock:
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

Namamazu

  • Registred Member
  • MWCS Enthusiast
  • *****
  • Posts: 1
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #13 on: October 30, 2013, 05:21:33 am »
For some reason that  i cant fathom, 'usleep(1000);' in the diff script for Trinity is unrecognized.

Error 3 error C3861: 'usleep': identifier not found D:Trinity335srcserverauthserverServerAuthSocket.cpp 458 1 authserver

any ideas?
« Last Edit: January 01, 1970, 01:00:00 am by Admin »

schlumpf

  • Administrator
  • Creator of Worlds
  • *****
  • Posts: 2967
    • View Profile
Re: [TUTORIAL] Sending Patches To The Client Through The WoW
« Reply #14 on: October 30, 2013, 10:13:39 am »
use Sleep(1);
« Last Edit: January 01, 1970, 01:00:00 am by Admin »