Actually quite the opposite - it takes the message string, calculates hash (just a number), which is then used as id to find "translation" in LanguageWords.dbc - WoWDev
TranslateMessage just prepares the string to be hashed (strips hyperlinks and some other things), then calls the SStrHash to get the hash
v80 = SStrHash(v90, 0, 0);
then gets pointer to the language hashtable
v63 = TSHashTable<WORDLIST_HASHKEY_LANGUAGE>::Ptr(&s_wordList, i, v76);
v64 = v63;
then gets the hash (id) in modulo
v79 = v80 % v65;
then uses it to get the translation from hashtable
v66 = *(DWORD *)(*(DWORD *)(*(DWORD *)(v64 + 40) + 4 * v79) + 8 );
Hey Guys, Sorry for hijacking this thread but:
a) Is there any hookable Func which is called after the player receives a message? (Don't want to hook MainFrame::Add)
b) How safe is it hooking that func as hooking a ClientCommand seems to be a badly watched thing?
What I think about is a) hooking that func to filter nearby messages (others just do memory reading)
and b) directly pass that message to the TranslateMessage, Printing the real message to MainFrame/Bot
Useful when hostile players talk about you.
"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." - Martin Golding
"I cried a little earlier when I had to poop" - Sku
So, no ideas about tracking that variable?