Hi,
I would like to ask, if anyone here know what is the offset for Classic client to hook the UNetworkHandler. For old Interlude client p746 it is `0x81F538`. I'm planning on releasing something super useful and set of nice guides of how to modify Classic client, such as adding custom network packets, how to trigger events from/to client to custom .dll and so on, but for that I need that offset to build a hook. For now I'm just seeking someone who maybe have this offset, so it will save me some time in finding it myself.
Here's piece of code for the hook, and where the UNetworkHandlerOffset is used, in old interlude case it is `0x81F538`:
Here are some of my own works for old interlude client p746. To make it work it required either custom packets (Costumes Manager) or Ability to interact with UnrealScript outside of the Interface.u (Account Manager):


I would like to ask, if anyone here know what is the offset for Classic client to hook the UNetworkHandler. For old Interlude client p746 it is `0x81F538`. I'm planning on releasing something super useful and set of nice guides of how to modify Classic client, such as adding custom network packets, how to trigger events from/to client to custom .dll and so on, but for that I need that offset to build a hook. For now I'm just seeking someone who maybe have this offset, so it will save me some time in finding it myself.
Here's piece of code for the hook, and where the UNetworkHandlerOffset is used, in old interlude case it is `0x81F538`:
C++:
if (hEngine)
{
ptrUNetworkHandler = reinterpret_cast<UNetworkHandler**>(reinterpret_cast<uintptr_t>(hEngine) + UNetworkHandlerOffset);
ptrRequestAuthLogin = (RequestAuthLogin)GetProcAddress(hEngine, "?RequestAuthLogin@UNetworkHandler@@UAEHPAG0H@Z");
void* target = GetProcAddress(hEngine, "?AddNetworkQueue@UNetworkHandler@@UAEHPAUNetworkPacket@@@Z");
if (target) {
if (MH_CreateHook(target, &new_AddNetworkQueue, reinterpret_cast<void**>(&true_AddNetworkQueue)) == MH_OK) {
MH_EnableHook(target);
}
}
}
Here are some of my own works for old interlude client p746. To make it work it required either custom packets (Costumes Manager) or Ability to interact with UnrealScript outside of the Interface.u (Account Manager):

