Fix to the chat range in ArcEmu? menu

Shout-Out

User Tag List

Results 1 to 13 of 13
  1. #1
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Fix to the chat range in ArcEmu?

    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.

    Fix to the chat range in ArcEmu?
  2. #2
    AlienCCL's Avatar Active Member
    Reputation
    28
    Join Date
    Aug 2008
    Posts
    444
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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 .

  3. #3
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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?

  4. #4
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    So here I am about to compile my server.. but what do I have to change to make this work?

    Help, please!

  5. #5
    stoneharry's Avatar Moderator Harry


    Reputation
    1618
    Join Date
    Sep 2007
    Posts
    4,564
    Thanks G/R
    151/150
    Trade Feedback
    0 (0%)
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    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.

  6. #6
    The-Eradicator's Avatar Contributor

    Reputation
    149
    Join Date
    May 2007
    Posts
    829
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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

  7. #7
    AlienCCL's Avatar Active Member
    Reputation
    28
    Join Date
    Aug 2008
    Posts
    444
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by stoneharry View Post
    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.
    but i realy saw this option in .cpp file and in kind tutorial i think
    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 .

  8. #8
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by The-Eradicator View Post
    I'll note that TrinityCore has options in it's configurations for this natively.

    Code:
    ListenRange.Say = 40
    ListenRange.TextEmote = 40
    ListenRange.Yell = 300
    Haven't been able to find anything like that in ArcEmu.. sadly! Would've been great!

    And AlienCCL.. I would worship you if you could find that tutorial!

    stoneharry@ It's like that on all ArcEmu servers today, right?

  9. #9
    Dynashock's Avatar Contributor

    Reputation
    176
    Join Date
    Nov 2007
    Posts
    203
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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.

  10. #10
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Dynashock View Post
    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);
     				}
     			}
    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 ==========
    Looks like it didn't work? 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.

  11. #11
    Dynashock's Avatar Contributor

    Reputation
    176
    Join Date
    Nov 2007
    Posts
    203
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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.

  12. #12
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Dynashock View Post
    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)
    Code:
    ========== Build: 11 succeeded, 0 failed, 4 up-to-date, 0 skipped ==========
    Cheers! Looking good so far Haven't tested it in game yet though.

  13. #13
    SpiXe's Avatar Corporal
    Reputation
    1
    Join Date
    Nov 2009
    Posts
    31
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    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?

Similar Threads

  1. [Project/Group] Fix up the Emulation World
    By Intu in forum World of Warcraft Emulator Servers
    Replies: 66
    Last Post: 05-10-2009, 04:16 PM
  2. Any fixes for the question mark display bug?
    By cancicei in forum WoW EMU Questions & Requests
    Replies: 5
    Last Post: 08-27-2008, 12:16 PM
  3. How do I execute updates & fixes into the sql
    By PRIMO12 in forum World of Warcraft Emulator Servers
    Replies: 6
    Last Post: 11-30-2007, 12:44 PM
  4. Fix for the NCDB 2.2 secondary skills
    By *TraPStaR* in forum World of Warcraft Emulator Servers
    Replies: 4
    Last Post: 11-03-2007, 10:47 PM
  5. The Chat Channels
    By bhall in forum World of Warcraft Emulator Servers
    Replies: 6
    Last Post: 10-26-2007, 01:35 PM
All times are GMT -5. The time now is 11:29 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search