Система контроля игрового чата: блокировка рекламы и мата, цвет чата и т.п.

  1. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Плагин: Chat Control | Автор: a114games | Версия: 3.6 | Игра: cs 1.6

    Плагин является отличным инструментом для контроля сообщений игроков в чате. Весь функционал системы реализован на регулярных выражениях с использованием базы данных mysql, что позволяет более тщательно проводить проверку игрового чата при задействовании наименьших ресурсов.

    [IMG]

    Описание возможностей:
    • блокировка рекламы и читерских сообщений в игре;
    • фильтрация мата на сервере;
    • изменение цвета админских сообщений;
    • отображение всего чата для админа;
    • контроль флуда;
    • настройка действий (warning/kick/ban) для тех или иных фраз;
    • для kick'а возможность настроить причину;
    • для ban'а возможность настроить причину и продолжительность;
    • логирование сообщений;
    • все сообщения в чате, совпадающие с запрещенными, не отображаются, но логируются;
    • возможность настроить исключения, которые не будут заноситься в логи;
    • включение/выключение общего чата на сервере;
    • удобная web-панель для редактирования словарей, поиска и просмотра логов чата.
    • Онлайн чат на сайте (new)
    • Транслит - переключение между русским/английским текстом в чате (new)
    Требования:
    + MySQL и PHP 5
    + AMXX 1.8.1 или выше

    Установка:
    • Установка плагина:
      1. папку amxmodx из архива поместите в директорию addons вашего сервера hlds;
      2. произведите настройки в sql.cfg и chatcontrol.cfg;
      3. пропишите плагин в plugins.ini и отключите стандартный плагин контроля флуда antiflood.amxx
    • Установка web-панели админа:
      1. скачайте и установите acpanel;
      2. содержимое папки upload разместите в установленную ранее ACPanel, сохраняя структуру папок;
      3. добавьте chatControl.xml в настройках продукта ACPanel;
      4. импортируйте default.sql в вашу базу данных, чтобы добавить некоторые уже готовые шаблоны в словари.
    CVAR'ы:
    • acp_cc_floodtime - время в секундах для антифлуд контроля чата.
      (По умолчанию: 0.75)
    • acp_cc_bancommand - Синтаксис команды для бана (%userid% - id игрока, %steamid% - steamid игрока, %name% - ник игрока, %ip% - ip игрока, %reason% - причина бана, %time% - время бана).
      (По умолчанию: "amx_ban %userid% %time% %reason%")
    • acp_cc_bantype - тип бана игроку: 0 - auto default, 1 - auto for acpanel/amxbans, 2 - custom on acp_cc_bancommand.
      (По умолчанию: 0)
    • acp_cc_bantime - время бана в минутах, которое будет использоваться, если не указано значение в базе данных.
      (По умолчанию: 1440)
    • acp_cc_warn_count - количество предупреждений, после которых игрок будет кикнут.
    • acp_cc_warn_action - какое наказание применять после acp_cc_warn_count предупреждений игроку: 0 - kick, 1 - ban.
      (По умолчанию: 0)
    • acp_cc_immunity - админские флаги иммунитета от контроля их сообщений.
      (По умолчанию: "a")
    • acp_cc_vipaccess - флаги доступа, обладатели которых смогут писать в чате зеленым цветом.
      (По умолчанию: "")
    • acp_cc_adminlisten - флаги доступа ко всему игровому чату.
      (По умолчанию: "a")
    • acp_cc_adminlisten_type - режим просмотра всего чата для админа: 0 - только в режиме DEAD, 1 - во всех режимах чат доступен.
      (По умолчанию: 0)
    • acp_cc_savelogs - логирование чата: 0 - выключено, 1 - включено.
      (По умолчанию: 1)
    • acp_cc_adminview - флаги доступа у админа, для которого будут отображаться сообщения блокируемые системой.
      (По умолчанию: "i")
    • acp_cc_allchat - включить на сервере общий чат: 0 - выключен, 1 - чат отображает мертвым, что пишут живые, 2 - общий чат для всех.
      (По умолчанию: "0")
    • acp_cc_serverip - ip адрес сервера в формате: 127.0.0.1:27015. Если оставить поле пустым, то адрес будет присваиваться автоматически.
      (По умолчанию: "")
    • acp_cc_translit - включить поддержку транслита в чате?
      (По умолчанию: "1")
    • acp_cc_translit_field - название поля setinfo, в котором будет сохраняться значение транслита.
      (По умолчанию: "translit")
    • acp_cc_translit_default - включить транслит, по-умолчанию?
      (По умолчанию: "0")
    • acp_cc_translit_access - флаги доступа, обладатели которых смогут использовать команду acp_cc_translit_trigger в чате для включения/выключения транслита. Оставьте поле пустым, чтобы команда была доступна всем пользователям.
      (По умолчанию: "")
    • acp_cc_translit_trigger - команда в чате, при вводе которой производится включение/выключение транслита.
      (По умолчанию: "/lang")
    • acp_cc_clean_config - включить меню очистки конфига при достижении лимита acp_cc_warn_count?
      (По умолчанию: "1")
    История изменений:

    Вложения:

    Hafner, 15 авг 2010
    #1
    morifet, MishanyaZHK и PROPOVEDNIK нравится это.
  2. Оффлайн
    side ACP мембер
    На проекте с:
    25 сен 2010
    Сообщения:
    176
    Симпатии:
    21
    Баллы:
    18
    А где же вложение для скачки?:)
    side, 1 окт 2010
    #2
  3. Оффлайн
    a.aqua Banned
    На проекте с:
    13 сен 2010
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    0
    loool :D
    a.aqua, 2 окт 2010
    #3
  4. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Бывает в спешке...
    Вложение добавил.
    Hafner, 2 окт 2010
    #4
  5. Оффлайн
    rasslabin Ламер
    На проекте с:
    14 сен 2010
    Сообщения:
    0
    Симпатии:
    0
    Баллы:
    0
    Haf — сейчас:
    А хотелось бы:
    rasslabin, 7 окт 2010
    #5
  6. Оффлайн
    a.aqua Banned
    На проекте с:
    13 сен 2010
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    0
    В аттаче смашка с твоей просьбой.
    a.aqua, 8 окт 2010
    #6
  7. Оффлайн
    rasslabin Ламер
    На проекте с:
    14 сен 2010
    Сообщения:
    0
    Симпатии:
    0
    Баллы:
    0
    NYAAAAAAAAAAAAAAAAAAAAAAAA ;3
    rasslabin, 8 окт 2010
    #7
  8. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Update Chat Control version 1.6
    Аттачи обновлены.
    Hafner, 23 окт 2010
    #8
  9. Оффлайн
    side ACP мембер
    На проекте с:
    25 сен 2010
    Сообщения:
    176
    Симпатии:
    21
    Баллы:
    18
    Hafner, что по поводу плагина контроля ников?Стоит ожидать?
    side, 27 окт 2010
    #9
  10. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Сам плагин вчера закончил, протестить осталось только + вэб часть нужно немного переделать с контроля чата и включить возможность объединения обоих вэб оболочек в одну. Сегодня/завтра, думаю, будет релиз.
    Hafner, 27 окт 2010
    #10
  11. Оффлайн
    rasslabin Ламер
    На проекте с:
    14 сен 2010
    Сообщения:
    0
    Симпатии:
    0
    Баллы:
    0
    Забыли написать, что если используете amxbans, нужно в /admin/_cfg.php изменить
    $config['servers_table'] = "<ваш префикс баз данных в amxbans>_serverinfo";
    на
    $config['servers_table'] = "amx_serverinfo";
    банально, но всё же.
    rasslabin, 31 окт 2010
    #11
  12. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Скоро сделаю отвязку от amxbans для более продуктивной и независящей от сторонних систем работы.
    Hafner, 1 ноя 2010
    #12
  13. Оффлайн
    rasslabin Ламер
    На проекте с:
    14 сен 2010
    Сообщения:
    0
    Симпатии:
    0
    Баллы:
    0
    Как добавить правило через веб/mysql, чтобы:
    Сообщения состоящие только из «rtd» не показывались, но выполнялись.
    Как сказано выше, только не «rtd» а «rtv».
    Как выглядят правила заполнения вайтлиста? Просто не совсем понимаю как разрешить писать в чат cs.******.ru:270***, если можно — приведите примеры пожалуйста.
    rasslabin, 7 ноя 2010
    #13
  14. Оффлайн
    Oni a114team
    На проекте с:
    6 сен 2010
    Сообщения:
    833
    Симпатии:
    155
    Баллы:
    43
    Ответил на этот вопрос Вам в ЛС.
    Oni, 7 ноя 2010
    #14
  15. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    С этим пока никак. Кстати, наверное правильнее будет добавить ещё один словарь на такие случаи. В следующей версии реализую.

    Правила для вайтлиста аналогичны всем остальным словарям. Для указанного случая регулярка выглядит так:
    Код:
    cs\.[0-9a-z]+\.ru\:270\d{2}
    Hafner, 8 ноя 2010
    #15
  16. Оффлайн
    droper Фраг
    На проекте с:
    30 окт 2010
    Сообщения:
    11
    Симпатии:
    3
    Баллы:
    3
    кстати, замечена маленькая ошибочка, на веб в /includes/chat_editword.php на 53 строке таблица называется lb_chat_control, а не lw_chat_control, из-за этого не удается отредактировать фразу, и разумнее было бы вставить туда ".$config['logs_control']."
    droper, 10 ноя 2010
    #16
  17. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Знаю-знаю, скоро будет новая версия, там сама вэб-оболочка изменится, добавится пользовательский интерфейс с некоторыми инструментами.
    Hafner, 12 ноя 2010
    #17
  18. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    Версия плагина, надеюсь, установлена последняя? По идее регулярка верная, надо смотреть какие там ещё есть регулярки, которые могут перекрывать текущую.

    Можно так попробовать:
    Код:
    (\s|^)(b|6)(l|/\|)(a|ya|9)(\s|$)
    Hafner, 15 ноя 2010
    #18
  19. Оффлайн
    vnv Ламер
    На проекте с:
    15 ноя 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    0
    Спасибо, получилось.

    А объясните пожалуйста,
    Код:
    (\s|^)(\s|$)
    - это какие то ограничиваеющие символы ? Может, где можно прочитать, как правильно писать эти регулярные выражения?
    vnv, 15 ноя 2010
    #19
  20. Оффлайн
    Hafner a114team
    На проекте с:
    13 авг 2010
    Сообщения:
    2.058
    Симпатии:
    710
    Баллы:
    113
    \s - пробел или перенос строки.
    ^ - начало строки.
    $ - конец строки.

    В интернете полно мануалов по регуляркам, в следующей версии добавлю мини-фак по регулярным выражениям и ещё один полезный инструмент.
    Hafner, 15 ноя 2010
    #20