Some information when you are running a custom Scripts.dll for either Stock or Dragonade:
You will need to manually enter the address in ssgm.ini/da.ini for the ChatHookEventVectorAddress variable.
How do I get this address if I don't have any knowledge about reverse engineering:
- Stock
Add these lines anywhere in SSGMGameManager::Init
DWORD_PTR moduleBase = reinterpret_cast<DWORD_PTR>(GetModuleHandleW(NULL));
DWORD_PTR registeredEventsEventChatHookCountOffset = reinterpret_cast<DWORD_PTR>(&(RegisteredEvents[EVENT_CHAT_HOOK])) - moduleBase;
Console_Output("Chat Event Hook Address: %d\n", static_cast<int>(registeredEventsEventChatHookCountOffset));
- Dragonade
Add these lines anywhere in DAEventManager::Init
DWORD_PTR moduleBase = reinterpret_cast<DWORD_PTR>(GetModuleHandleW(NULL));
DWORD_PTR registeredEventsEventChatHookCountOffset = reinterpret_cast<DWORD_PTR>(&(Events[DAEvent::CHAT])) - moduleBase;
Console_Output("Chat Event Hook Address: %d\n", static_cast<int>(registeredEventsEventChatHookCountOffset));
Whatever it outputs put it in ssgm.ini/da.ini at ChatHookEventVectorAddress
Now last step: If you're running an older version than TT 4.3 (so not including 4.3) and you're NOT running Dragonade set VanillaHasPrivateChatCheck=1 in ssgm.ini
Redownload latest file, I fixed an issue with it not using the address specified in ssgm.ini/da.ini