|
Hello,
First I would just like to say that this is the second time I write
this email, so I might miss a few things now because I am pretty
upset :/
My problem is this: I've made a mod for metamod which checks if the
steamid of a player is registered in a database, and if it isn't,
kicks the player out. It also forces the nick to whatever is in the
database. To do this I use mysql and pthreads. I only hook a few
functions: ClientConnect (to start authentication), ClientDisconnect
(to remove players), ClientUserInfoChanged (to see if it contains a
nick-change, and if it does, force it back to whatever was in the
database) and finally Startframe, to kick players out that are done
authenticating and arent registered.
For most of the time, this works out pretty well. The problem is that
from time to time a strange lagging behaviour occurs - text you type
(using say) can take up to a minute to display, the hud and scoreboard
is really lagged, the same goes for scopes (zooming in/out) and
players who should be dead arent (or someone or shouldn't suddenly
die).
After a minute or two, this goes away by itself and the server is
normal again.
Anyone experienced anything similar? I think it's pretty strange that
my modification should cause this, but on the other servers which
doesn't run this mod, we don't seem to have this problem. So
therefore I have to believe the problem is my mod instead of any of
the others that are run, because they are installed on the other
servers as well.
Sometimes, players are dropped as well (but not all as far as I
know), with an error in the console (see bottom for paste). I've
googled a bit around for similar incidents, but didn't really find
anything helpful. Some posts suggested it was a routerproblem or
similar things, it seems unlikely as it seems to only occur on the
servers which run this mod.
If I forgot anything, I am sorry, and will post further details on
request.
Here's a paste from a player who first experienced the strange lag,
then to be kicked:
Error: server failed to transmit file 'AY&SYz'
Last 32 messages parsed.
21678 0023 svc_deltapacketentities
21678 0008 svc_time
21678 0013 svc_clientdata
21678 0023 svc_deltapacketentities
21680 0018 svc_time
21680 0023 svc_clientdata
21680 0033 svc_deltapacketentities
21680 0000 svc_updateuserinfo
21680 0176 ScoreAttrib
21680 0179 ScoreAttrib
21680 0182 ScoreAttrib
21680 0185 ScoreAttrib
21680 0188 ScoreAttrib
21680 0191 ScoreAttrib
21680 0194 ScoreAttrib
21680 0197 ScoreAttrib
21680 0200 ScoreAttrib
21680 0203 ScoreAttrib
21680 0206 Money
21680 0212 svc_setview
Error: server failed to transmit file 'AY&SYz'
Last 32 messages parsed.
21678 0023 svc_deltapacketentities
21678 0008 svc_time
21678 0013 svc_clientdata
21678 0023 svc_deltapacketentities
21680 0018 svc_time
21680 0023 svc_clientdata
21680 0033 svc_deltapacketentities
21680 0000 svc_updateuserinfo
21680 0176 ScoreAttrib
21680 0179 ScoreAttrib
21680 0182 ScoreAttrib
21680 0185 ScoreAttrib
21680 0188 ScoreAttrib
21680 0191 ScoreAttrib
21680 0194 ScoreAttrib
21680 0197 ScoreAttrib
21680 0200 ScoreAttrib
21680 0203 ScoreAttrib
21680 0206 Money
21680 0212 svc_setview
It seems the server is trying to send an invalid file, or atleast
that the filename got messed up somewhere ('AY&SYz').
Some players have reported "svc_cmd: bad server command" as well.
The server is stable and only registered players are let in at any
time, so it works as it should except for this bug.
Any ideas?
(By the way, this is used for counterstrike only.)
Thanks
|