Earu / EasyChat

A modular Garry's Mod chat addon for both users and developers. (EOL 2025)
https://steamcommunity.com/sharedfiles/filedetails/?id=1182471500
GNU General Public License v3.0
90 stars 31 forks source link

Can't see other players' messages. #82

Closed KekkyShmekky closed 2 years ago

KekkyShmekky commented 2 years ago

As per your request, I have opened the issue here.

I have used Addon Conflict Hooks Finder and have found nothing that could interfere with EasyChat. If you know of any other ways to check for conflicts that don't involve deleting addons, I'm all ears.

Earu commented 2 years ago

Thank you. Could you describe the problem in details? Also it seemed as you were only having that problem with messages sent by the server at one point, is it every message or just the server messages?

KekkyShmekky commented 2 years ago

When I did "say testing" from the server console with the EasyChat's custom HUD disabled, I could see the console's text but not text from other players.

Earu commented 2 years ago

Do you have a list of addons you use on your server I can look into? Because so far I'm unable to reproduce this problem image

KekkyShmekky commented 2 years ago

https://steamcommunity.com/sharedfiles/filedetails/?id=1648401086

Screen Shot 2021-12-07 at 7 49 09 AM
Earu commented 2 years ago

Have you checked "actchatcommands" ? Also have you tried to switch your server to another gamemode to be sure it wasnt the gamemode?

KekkyShmekky commented 2 years ago

Trying that now

KekkyShmekky commented 2 years ago

Hey so I actually just got around to removing actchatcommands, switching to Sandbox, and nothing worked

KekkyShmekky commented 2 years ago

Event "OnPlayerChat", GAMEMODE, in "lua/easychat/easychat.lua" (lines 2924 to 2966), found in Workshop addon « EasyChat », returned: Arg #1 = true

Ran a clientside conflict finder and it keeps returning true, which unless I'm mistaken in this case, suppresses the message.

Earu commented 2 years ago

Your conflict finder is finding a GAMEMODE function which is not a hook. The default return of OnPlayerChat is true which is the case here as expected. "OnPlayerChat" is a client function anyway so this appears to be unrelated.

Earu commented 2 years ago

Since I can't reproduce this problem on my end here's something that you can do: Remove everything except your gamemode, check that it works. If it does, add back each addon until it doesn't work anymore.

See message below for things that might help you find the culprit, or the solution to your problem.

Earu commented 2 years ago

@KekkyShmekky I was just thinking of something, your server is a dedicated one right? Because the server console won't print player messages in there if it's not dedicated.

You may want to look for things like:

KekkyShmekky commented 2 years ago

Server is dedicated, messages were not local, PlayerCanSeePlayerChat returned this:

Event "PlayerCanSeePlayersChat", GAMEMODE,
 in "gamemodes/base/gamemode/player.lua" (lines 747 to 756),
 not found in Workshop addons, returned:
        Arg #1 = true

I printed MsgC() in console and it returned a blank line. Some other addons use MsgC, but I doubt that should mean they're to blame.

I've also noticed the console messages print into a chat that's visually "behind" EasyChat. Not sure if this is intended.

Earu commented 2 years ago

I've also noticed the console messages print into a chat that's visually "behind" EasyChat. Not sure if this is intended.

The chat you're talking about is probably the default source chat, you can't really remove it, and it's useful if you want to disable easychat on your client.

I printed MsgC() in console and it returned a blank line.

MsgC is a function that allows you to make colorful messages in the console, so if you pass no arguments it will print a blank line for sure.

Some other addons use MsgC, but I doubt that should mean they're to blame.

I agree with you, using MsgC won't do anything particularly unexpected, however it would be useful to check if that function has been detoured by any addon you may have installed or the gamemode you're playing on.


Event "PlayerCanSeePlayersChat", GAMEMODE,
in "gamemodes/base/gamemode/player.lua" (lines 747 to 756),
not found in Workshop addons, returned:
     Arg #1 = true```

Could you past here the hook content of this?

KekkyShmekky commented 2 years ago
function GM:PlayerCanSeePlayersChat( strText, bTeamOnly, pListener, pSpeaker )

    if ( bTeamOnly ) then
        if ( !IsValid( pSpeaker ) || !IsValid( pListener ) ) then return false end
        if ( pListener:Team() != pSpeaker:Team() ) then return false end
    end

    return true

end
Earu commented 2 years ago

Alright well this seems pretty normal. I don't have any other leads for now.

KekkyShmekky commented 2 years ago

Actually I noticed you made a function local. Gonna test this on the next player that joins, unless you'd like to test it with me. My Discord is >KEKSQUAD#7054. IP is in the bio.

Earu commented 2 years ago

@KekkyShmekky Do you still need me to test this bug out with you, did my change fix your issue?

(Sorry for the late answer, I got busy)

Earu commented 2 years ago

Seeing the lack of response I'm gonna assume it's fixed, if it isn't please open a new issue.