Hello. Was wondering if anybody had a fix/knew a way to fix the long range of the chatsystem? I mean how far away you can see what others type in /s.
I'm hosting an RP server and it's really quite annoying that the range is that long.
Hello. Was wondering if anybody had a fix/knew a way to fix the long range of the chatsystem? I mean how far away you can see what others type in /s.
I'm hosting an RP server and it's really quite annoying that the range is that long.
its pre-compiling thing. you must edit chat.cpp in your compile folder
Yes , I sit right now in front of the monitor in a cap with ear-flaps with a balalaika, a nested doll, vodka and a comrad Lenin. And behind my window dancing bears with jingles in hands .
So it actually is possible?
---------- Post added at 08:55 AM ---------- Previous post was at 08:54 AM ----------
I just wonder.. why did people change it to start with?
So here I am about to compile my server.. but what do I have to change to make this work?
Help, please!
I have no idea and I don't think AlienCCL did either. Chat messages are obviously handled in the chat/chathandler but I don't know what it is causing it to not work properly.
I'll note that TrinityCore has options in it's configurations for this natively.
Code:ListenRange.Say = 40 ListenRange.TextEmote = 40 ListenRange.Yell = 300
The most beautiful thing we can experience is the mysterious. It is the source of all true art and all science. He to whom this emotion is a stranger, who can no longer pause to wonder and stand rapt in awe, is as good as dead: his eyes are closed.
Albert Einstein
ArcEmu sends the message to everyone in the nearby player set of the player; this set is bigger than the Blizzard range on the chat. You can add a calculation (from the player's who saying the message to the person who might be hearing the message) to the message in ChatHandler.cpp. I think about 40-50 yards is what it should be like.
Try applying this patch, I can't guarantee the functions used are 100% correct because I don't have Visual Studio 2010 to check the ArcEmu solution:
Code:Index: src/arcemu-world/ChatHandler.cpp =================================================================== --- src/arcemu-world/ChatHandler.cpp (revision 3607) +++ src/arcemu-world/ChatHandler.cpp (working copy) @@ -233,7 +233,7 @@ Player *p = static_cast< Player* >( (*itr) ); - if ( _player->GetPhase() & (*itr)->GetPhase() ) + if ( _player->GetPhase() & (*itr)->GetPhase() && _player->GetPosition().Distance((*itr)->GetPosition()) <= 50) p->GetSession()->SendChatPacket(data, 1, lang, this); } }
Ignorance is bliss.
Looks like it didn't work?Code:2> ChatHandler.cpp 2>..\..\src\arcemu-world\ChatHandler.cpp(236): error C2663: 'LocationVector::Distance' : 2 overloads have no legal conversion for 'this' pointer ========== Build: 1 succeeded, 1 failed, 13 up-to-date, 0 skipped ==========It doesn't mean anything that I changed it "manually" instead of "applying the patch", does it? I deleted the line with the "-" and added the "+" instead.
Try this line instead: (tweak the 50 if the distance isn't right, CalcDistance doesn't return yards)
Code:if ( _player->GetPhase() & (*itr)->GetPhase() && _player->CalcDistance((*itr)) <= 50)
Ignorance is bliss.
I'd like to bring this old thread up again. I'm getting back into server emulating and have now downloaded the sourcecodes for ArcEmu. I, however, am not able to find the right part in ChatHandler.cpp. Have ArcEmu changed their codes?
If they have, can someone tell me how to change the chat range now?