Client Freezing/Crashing Fix
by Vet · 2009-12-11 · 4 replies · 7976 views · 83 downloads
From the first post
rn
rnThe plugin provides the option to kick and/or, ban or 'do nothing' to the offending player. The options are controlled via CVar. The default values do both, kick and ban the attacker.
rn
rnCVars:
rndod_chatcrash_kick <0|1> (default 1 - on)
rndod_chatcrash_ban <0|1> (default 1 - on)
rn
rnBe sure to insert the plugin near, or at, the top of your plugins.ini file. At least ensure its listed ahead of the adminchat.amxx plugin.
rn
rnServer ops are encouraged to install this, or D-O's dod_block_exploits plugin to protect their players from this exploit.
rn
rnTo prevent aiding the spread of the method used to create the glitch, this plugin is released in a 'closed source' compiled version only.
Files
| dod_chatcrash_block.amxx | Compiled Plugin | 3 KB | 83 dl | Download |
Decompiled source reconstructed
dod_chatcrash_block.amxx was published compiled only. This Pawn was recovered from the
bytecode with Lysis — 54 lines. Strings, cvars and the plugin registration
survive; local variable names do not. It is an approximation, not the author's file.
// Decompiled from dod_chatcrash_block.amxx by Lysis.n// This is RECONSTRUCTED source, not the author's original: withoutn// debug symbols the variable names are lost and control flow isn// rebuilt from bytecode. Treat it as a readable approximation.nnnew g_kick;nnew g_pban;npublic plugin_init()n{n register_plugin("DoD_ChatCrash_Block", "1.1", "Vet(3TT3V)");n register_clcmd("say", "handle_say", g_kick, "Check 'say' chat for exploit", -1);n register_clcmd("say_team", "handle_say", g_kick, "Check 'team say' chat for exploit", -1);n g_kick = register_cvar("dod_chatcrash_kick", 616, g_kick, g_kick);n g_pban = register_cvar("dod_chatcrash_ban", 696, g_kick, g_kick);n return 0;n}nnpublic handle_say(id)n{n static userid;n static authid[32];n static pname[32];n static pos;n static tmpstr[128];n read_args(tmpstr, 127);n pos = containi(tmpstr, "%s") + 1;n if (pos)n {n if (containi(tmpstr[pos], "%s") != -1)n {n get_user_name(id, pname, 31);n get_user_authid(id, authid, 31);n if (get_pcvar_num(g_pban))n {n server_cmd("banid %s %s", 1552, authid);n server_cmd("writeid");n log_amx("Banned %s <%s> %s", pname, authid, "for Client Crash attempt");n }n if (get_pcvar_num(g_kick))n {n userid = get_user_userid(id);n server_cmd("kick #%d %s", userid, "And Maybe Banned, For Attempting To Crash Clients");n log_amx("Kicked %s <%s> %s", pname, authid, "for Client Crash attempt");n if (get_cvar_num("amx_show_activity"))n {n client_print(g_kick, 3, "[AMXX]: Kicked %s %s", pname, "for Client Crash attempt");n }n }n return 1;n }n }n return 0;n}nn
The thread
All 5 posts from 3 people on Client Freezing/Crashing Fix, kept as they were written.
Threads: 24
Joined: Oct 2006
This plugin will block the glitch that causes all players to 'freeze up'. Forcing them to exit and restart their game. The glitch itself is actually an 'attack' by another player. The 'attack' causes no harm to the server. Just the current clients.rnrnThe plugin provides the option to kick and/or, ban or 'do nothing' to the offending player. The options are controlled via CVar. The default values do both, kick and ban the attacker.rnrnCVars:rndod_chatcrash_kick <0|1> (default 1 - on)rndod_chatcrash_ban <0|1> (default 1 - on)rnrnBe sure to insert the plugin near, or at, the top of your plugins.ini file. At least ensure its listed ahead of the adminchat.amxx plugin.rnrnServer ops are encouraged to install this, or D-O's dod_block_exploits plugin to protect their players from this exploit.rnrnTo prevent aiding the spread of the method used to create the glitch, this plugin is released in a 'closed source' compiled version only.
Threads: 28
Joined: Sep 2008
Excuse my ignorance on this. I'm just trying to understand this and try to determine if I should download and install it.rnrnFirst, you state that the "glitch itself is actually an 'attack' by another player". So, does this plugin automatically determine WHO is "attacking"?rnrnIf it doesn't, then how would I know when to utilize it and against whom?rnrnIf it does, then why doesn't it just automatically ban the offending attacker instead of waiting for someone (admin) to react/respond?rnrnWould you mind clarifying what this "chat crash" glitch is please? Is it done in standard chat on the screen, is it team chat, or by pm?
Threads: 19
Joined: Oct 2004
it's a bug that any player can type a phrase as normal chat and freeze everyone on the server.rnThe plugin blocks the phrase and then optionally you can set your cvars to kick, ban or do nothing to the offender.rnrnon the ban note, can this be tied into amxbans via a cvar ? so that if you ban for the glitch it shows as such.
Threads: 24
Joined: Oct 2006
Yes, the plugin knows 'who' did it. All actions are performed automatically according to the CVar settings. I did forget to mention that the plugin logs any kick/ban action to amxx log. So you can always check that if desired. And if the amxx notify CVar is on, it also reports the ban action in chat just like a normal ban. On kicked players, it also gives a reason for the kick. Should you install it? I would definitely install either this or D-O's Exploit Blocker.
Threads: 28
Joined: Sep 2008
Thanx guys for the response. I hope you didn't take offense to it. As I said, I was ignorant about what this was all about.rnrnI'll certainly d/l and install it. Thanx

