Описание: В этой статье будет рассказано, о том как защитить свой сервер от зависаний, а именно о баге в colored translit, позволяющем ложить сервера, а также о способах борьбы с ним.
Баг: 1) Заходим на любой сервер, где установлен плагин colored translit. 2) Включаем Английский Чат командой в чат /eng 3) Открываем консоль и вставляем туда любой код из ниже перечисленных: say %S%S%S%S%S%S say %s%s%s%s%s%s say %Z%Z%Z%Z%Z%Z say %z%z%z%z%z%z Так же доступны для бага буквы: S, D, I, F, C, s, d, i, f, c. 4) У всех игроков зависает Counter-Strike 1.6.
5) Радуемся тому, какой мы мего хацкер :D
Исправление бага: 1) Открываем say.ini 2) Ищем там: 7) Заменяем на: remove_quotes(s_Msg)replace_all(s_Msg, charsmax(s_Msg), "%s", "")replace_all(s_Msg, charsmax(s_Msg), "%d", "" )replace_all(s_Msg, charsmax(s_Msg), "%i", "" )replace_all(s_Msg, charsmax(s_Msg), "%f", "" )replace_all(s_Msg, charsmax(s_Msg), "%c", "" )replace_all(s_Msg, charsmax(s_Msg), "%S", "")replace_all(s_Msg, charsmax(s_Msg), "%D", "" )replace_all(s_Msg, charsmax(s_Msg), "%I", "" )replace_all(s_Msg, charsmax(s_Msg), "%F", "" )replace_all(s_Msg, charsmax(s_Msg), "%C", "" ) 5) Открываем say_team.ini6) Ищем там: 7) Заменяем на:remove_quotes(s_Msg)replace_all(s_Msg, charsmax(s_Msg), "%s", "")replace_all(s_Msg, charsmax(s_Msg), "%d", "" )replace_all(s_Msg, charsmax(s_Msg), "%i", "" )replace_all(s_Msg, charsmax(s_Msg), "%f", "" )replace_all(s_Msg, charsmax(s_Msg), "%c", "" )replace_all(s_Msg, charsmax(s_Msg), "%S", "")replace_all(s_Msg, charsmax(s_Msg), "%D", "" )replace_all(s_Msg, charsmax(s_Msg), "%I", "" )replace_all(s_Msg, charsmax(s_Msg), "%F", "" )replace_all(s_Msg, charsmax(s_Msg), "%C", "" ) 8) Сохраняем. 9) Компилируем заново colored_translit.sma
файлы say.ini и say_team.ini находятся в /addons/amxmodx/scripting/colored_translit/
Фикс бага: 1) Akushi 2) The Asmodai-priv... 3) Aleksando 4) Fintok
|