Конфигурации плагина:
config.yml:
# Подключение БД
database:
# Юзернейм
username: "root"
# Пароль
password: "password"
# Строка подключения
# Оформляется по правилам -> https://docs.oracle.com/cd/E17952_01/connector-j-8.0-en/connector-j-reference-jdbc-url-format.html
# Стандартные настройки:
# В формате файла -> jdbc:h2:./plugins/chatguard/database;MODE=MySQL
# MySQL -> jdbc:mysql://<Хост (К примеру localhost)>:<Порт (Стандартный порт 3306)>/<Название базы>?<Настройки>
jdbcUrl: "jdbc:h2:./plugins/chatguard/database;MODE=MySQL"
# Стоит включать если вас попросили в поддержке, будет очень много
# Информации в логах.
debug: false
# Все сообщения в данной конфигурации имеют следующее форматирование -> https://docs.adventure.kyori.net/minimessage/format.html
# Удобный билдер подобных сообщений -> https://webui.adventure.kyori.net
# Расположение модулей в конфиге напрямую влияет на их очередь в проверке (Сверху вниз)
# Дефолтное расположение: newbieDelay -> commandBlocker -> antiSpam -> commandDelay -> messageFiler -> similarityCheck
modules:
- "newbieDelay"
- "commandBlocker"
- "antiSpam"
- "commandDelay"
- "messageFilter"
- "similarityCheck"
antiSpam.yml:
# _______ _ _________ _________ _______ _______ _______ _______
#( ___ ) ( ( /| \__ __/ \__ __/ ( ____ \ ( ____ ) ( ___ ) ( )
#| ( ) | | \ ( | ) ( ) ( | ( \/ | ( )| | ( ) | | () () |
#| (___) | | \ | | | | | | _____ | (_____ | (____)| | (___) | | || || |
#| ___ | | (\ \) | | | | | (_____) (_____ ) | _____) | ___ | | |(_)| |
#| ( ) | | | \ | | | | | ) | | ( | ( ) | | | | |
#| ) ( | | ) \ | | | ___) (___ /\____) | | ) | ) ( | | ) ( |
#|/ \| |/ )_) )_( \_______/ \_______) |/ |/ \| |/ \|
#
# Этот модуль предназначен для ограничения по отправленным сообщениям и поможет
# избавиться от спама на вашем сервере
# McDev (c) 2023
# Включен ли модуль
enabled: true
# Сколько игрок должен подождать перед тем как написать сообщение
delay: "2 SECONDS"
# Распространяется ли эта проверка на команды
checkCommands: false
# Сообщения
messages:
delayedUntil: "<grey>Не спешите писать! Подождите <red><delay>"
commandBlocker.yml:
# _______ _______ _______ _______ _______ _ ______ ______ _ _______ _______ _ _______ _______
#( ____ \( ___ )( )( )( ___ )( ( /|( __ \ ( ___ \ ( \ ( ___ )( ____ \| \ /\( ____ \( ____ )
#| ( \/| ( ) || () () || () () || ( ) || \ ( || ( \ ) | ( ) )| ( | ( ) || ( \/| \ / /| ( \/| ( )|
#| | | | | || || || || || || || (___) || \ | || | ) | | (__/ / | | | | | || | | (_/ / | (__ | (____)|
#| | | | | || |(_)| || |(_)| || ___ || (\ \) || | | | | __ ( | | | | | || | | _ ( | __) | __)
#| | | | | || | | || | | || ( ) || | \ || | ) | | ( \ \ | | | | | || | | ( \ \ | ( | (\ (
#| (____/\| (___) || ) ( || ) ( || ) ( || ) \ || (__/ ) | )___) )| (____/\| (___) || (____/\| / \ \| (____/\| ) \ \__
#(_______/(_______)|/ \||/ \||/ \||/ )_)(______/ |/ \___/ (_______/(_______)(_______/|_/ \/(_______/|/ \__/
#
# Заблокируйте все ненужные команды, ограничив к ним полностью доступ!
# McDev (c) 2023
# Включен ли модуль
enabled: true
# Фильтры
filters:
# Доступные типы: regex, list
- type: regex
# Право на обхож
bypassPermission: "bypass.permission"
# Нужно ли проверять таб (Подсказки)
checkTab: false
# Опции
options:
# Паттерн
pattern: "pl(ugins)?"
- type: regex
bypassPermission: "bypass.permission"
checkTab: true
options:
pattern: "\\?.*"
- type: regex
bypassPermission: "bypass.permission"
checkTab: true
options:
pattern: "\\S*:.*"
- type: list
bypassPermission: "bypass.permission"
checkTab: true
options:
# Значения которые будут заблокированы
values:
- "about"
- "paper"
- "lp"
- "luckperms"
- "calc"
- "icanhasbukkit"
- 'worldedit version'
- 'wg version'
- '/expand west'
- '/expand south'
- '/expand north'
- '/expand east'
- '/icanhasbukkit'
- 'sudo'
- '/pos1'
- '/pos2'
- 'tpahere'
- 'setblock'
- 'setspawn'
- 'petadmin'
- 'mypetadmin'
- 'wgr'
- 'cases'
- '/set hand'
- '/set 425'
- '/set banner'
- 'heal **'
- 'heal *'
- 'delwarp shop'
- 'delwarp mob'
- 'delwarp pvp'
- 'delwarp mine'
- 'delwarp spawn'
- 'delwarp case'
- 'delwarp ad'
- 'delwarp craft'
- 'delwarp batut'
- 'delwarp les'
- 'delwarp parkour'
- "heart"
- 'minecraft:stop'
- 'sudo'
- 'minecraft:restart'
- 'minecraft:reload'
- 'permissionsex:pex'
- 'pex'
- 'permissionsex:promote'
- 'permissionsex:demote'
- 'lp'
- 'luckperms:lp'
- 'luckperms:luckperms'
- 'luckpermsbungee'
- 'lpb'
- 'aac'
- 'spartan'
- 'matrix'
- 'aac:aac'
- 'spartan:spartan'
- 'matrix:matrix'
- 'scroll'
- 'ho'
- 'handyorb'
- 'channel:ch'
- 'ctext'
- 'fawe tz'
- 'fawe cui'
- 'minecraft:w'
- 'minecraft:tell'
- 'minecraft:me'
- 'minecraft:msg'
- 'papi'
- 'phantomlib'
- 'tingerreport'
- 'tingerreports'
#- '/sel'
- '/toggleplace'
- 'pl'
- 'plugins'
- 'plugin'
- 'about'
- 'bukkit:about'
- 'bukkit:help'
- 'bukkit:?'
- 'bukkit:me'
- 'bukkit:pl'
- 'bukkit:plugins'
- 'bukkit:ver'
- 'bukkit:version'
- 'icanhasbukkit'
- '?'
- 'me'
- '/calc'
- '/eval'
- '//eval'
- '//calc'
- 'calc'
- 'eval'
- 'ver'
- 'version'
- 'citizens'
- 'holograms'
- 'hd'
- 'serversigns'
- 'svs'
- 'serversignsremote'
- 'svsr'
- 'pp'
- 'trc'
- 'tr'
- 'citizens2'
- 'npc2'
- 'template'
- 'tpl'
- 'waypoint'
- 'waypoints'
- 'wp'
- 'pex'
- 'promote'
- 'demote'
- 'stop'
- 'reload'
- 'restart'
- 'whitelist'
- 'stoplag'
- 'shout'
- 'smartsys'
- 'mcraft'
- 'fastcraft'
- '/generate'
- 'op'
- 'deop'
- 'powertooltoggle'
- 'powertool'
- 'eco'
- 'wb'
- 'wborder'
- 'woodcutter'
- 'wdc'
- 'rogueparkour'
- 'rparkour'
- 'roguep'
- 'rogueparkour'
- 'rp'
- 'autoshutdown'
- 'as'
- 'matrix'
- 'coc'
- 'chest'
- ';'
# Сообщения
messages:
commandBlacklisted: "<red>Эта команда заблокирована!"
commandDelay.yml:
# _______ _______ _______ _______ _______ _ ______ ______ _______ _ _______
#( ____ \ ( ___ ) ( ) ( ) ( ___ ) ( ( /| ( __ \ ( __ \ ( ____ \ ( \ ( ___ ) |\ /|
#| ( \/ | ( ) | | () () | | () () | | ( ) | | \ ( | | ( \ ) | ( \ ) | ( \/ | ( | ( ) | ( \ / )
#| | | | | | | || || | | || || | | (___) | | \ | | | | ) | | | ) | | (__ | | | (___) | \ (_) /
#| | | | | | | |(_)| | | |(_)| | | ___ | | (\ \) | | | | | | | | | | __) | | | ___ | \ /
#| | | | | | | | | | | | | | | ( ) | | | \ | | | ) | | | ) | | ( | | | ( ) | ) (
#| (____/\ | (___) | | ) ( | | ) ( | | ) ( | | ) \ | | (__/ ) | (__/ ) | (____/\ | (____/\ | ) ( | | |
#(_______/ (_______) |/ \| |/ \| |/ \| |/ )_) (______/ (______/ (_______/ (_______/ |/ \| \_/
#
# Этот модуль предназначен для ограничения по отправляемым командам
# и вы сможете установить разного рода задержки на команды а также
# задать правило обхода
# McDev (c) 2023
# Включен ли модуль
enabled: true
# <Команда> <Право на обход> <Время задержки>
commands:
- "heal chatguard.bypass.commandlimit.heal 30 SECONDS"
- "ban chatguard.bypass.commandlimit.ban 90 SECONDS"
- "kick chatguard.bypass.commandlimit.kick 90 SECONDS"
- "mute chatguard.bypass.commandlimit.mute 90 SECONDS"
- "unmute chatguard.bypass.commandlimit.unmute 60 SECONDS"
- "tempban chatguard.bypass.commandlimit.tempban 90 SECONDS"
- "lban chatguard.bypass.commandlimit.lban 90 SECONDS"
- "ltempban chatguard.bypass.commandlimit.ltempban 90 SECONDS"
- "unban chatguard.bypass.commandlimit.unban 60 SECONDS"
- "lunban chatguard.bypass.commandlimit.lunban 60 SECONDS"
- "guild chatguard.bypass.commandlimit.guild 5 SECONDS"
- "warp chatguard.bypass.commandlimit.warp 5 SECONDS"
- "lobby chatguard.bypass.commandlimit.lobby 5 SECONDS"
- "/set chatguard.bypass.commandlimit./set 15 SECONDS"
- "/sphere chatguard.bypass.commandlimit./sphere 20 SECONDS"
- "/pyramid chatguard.bypass.commandlimit./pyramid 20 SECONDS"
- "/hsphere chatguard.bypass.commandlimit./hsphere 15 SECONDS"
- "/hpyramid chatguard.bypass.commandlimit./hpyramid 15 SECONDS"
- "spawn chatguard.bypass.commandlimit.spawn 5 SECONDS"
- "tpa chatguard.bypass.commandlimit.tpa 10 SECONDS"
- "call chatguard.bypass.commandlimit.call 10 SECONDS"
- "f chatguard.bypass.commandlimit.f 5 SECONDS"
- "friend chatguard.bypass.commandlimit.friend 5 SECONDS"
- "tell chatguard.bypass.commandlimit.tell 5 SECONDS"
- "msg chatguard.bypass.commandlimit.msg 5 SECONDS"
- "c chatguard.bypass.commandlimit.c 5 SECONDS"
- "bc chatguard.bypass.commandlimit.bc 10 SECONDS"
- "w chatguard.bypass.commandlimit.w 5 SECONDS"
- "clan chatguard.bypass.commandlimit.clan 5 SECONDS"
- "marry chatguard.bypass.commandlimit.marry 5 SECONDS"
- "mail chatguard.bypass.commandlimit.mail 5 SECONDS"
- "staff chatguard.bypass.commandlimit.staff 5 SECONDS"
- "admins chatguard.bypass.commandlimit.admins 5 SECONDS"
- "moders chatguard.bypass.commandlimit.moders 5 SECONDS"
- "ignore chatguard.bypass.commandlimit.ignore 5 SECONDS"
- "gender chatguard.bypass.commandlimit.gender 5 SECONDS"
- "friends chatguard.bypass.commandlimit.friends 10 SECONDS"
- "clans chatguard.bypass.commandlimit.clans 10 SECONDS"
- "broadcast chatguard.bypass.commandlimit.broadcast 10 SECONDS"
- "email chatguard.bypass.commandlimit.email 10 SECONDS"
- "d chatguard.bypass.commandlimit.d 3 SECONDS"
- "alert chatguard.bypass.commandlimit.alert 1 SECONDS"
- "find chatguard.bypass.commandlimit.find 5 SECONDS"
- "hub chatguard.bypass.commandlimit.hub 5 SECONDS"
- "online chatguard.bypass.commandlimit.online 5 SECONDS"
- "ping chatguard.bypass.commandlimit.ping 5 SECONDS"
- "gplugins chatguard.bypass.commandlimit.gplugins 5 SECONDS"
- "send chatguard.bypass.commandlimit.send 1 SECONDS"
- "server chatguard.bypass.commandlimit.server 3 SECONDS"
- "top chatguard.bypass.commandlimit.top 3 SECONDS"
- "where chatguard.bypass.commandlimit.where 3 SECONDS"
- "link chatguard.bypass.commandlimit.link 3 SECONDS"
- "links chatguard.bypass.commandlimit.links 3 SECONDS"
- "site chatguard.bypass.commandlimit.site 3 SECONDS"
- "vk chatguard.bypass.commandlimit.vk 3 SECONDS"
- "web chatguard.bypass.commandlimit.web 3 SECONDS"
- "report chatguard.bypass.commandlimit.report 3 SECONDS"
- "repair chatguard.bypass.commandlimit.repair 30 SECONDS"
- "rules chatguard.bypass.commandlimit.rules 3 SECONDS"
- "rule chatguard.bypass.commandlimit.rule 3 SECONDS"
- "stream chatguard.bypass.commandlimit.stream 3 SECONDS"
- "yt chatguard.bypass.commandlimit.yt 3 SECONDS"
- "youtube chatguard.bypass.commandlimit.youtube 3 SECONDS"
- "youtubers chatguard.bypass.commandlimit.youtubers 10 SECONDS"
- "kill chatguard.bypass.commandlimit.kill 60 SECONDS"
# Сообщения
messages:
delayedUntil: "<grey>Вы сможете написать команду <red><command><grey> через <red><delay>"
messageFilter.yml:
# _______ _______ _______ _______ _______ _______ _______ _______ _________ _ _________ _______ _______
#( ) ( ____ \ ( ____ \ ( ____ \ ( ___ ) ( ____ \ ( ____ \ ( ____ \ \__ __/ ( \ \__ __/ ( ____ \ ( ____ )
#| () () | | ( \/ | ( \/ | ( \/ | ( ) | | ( \/ | ( \/ | ( \/ ) ( | ( ) ( | ( \/ | ( )|
#| || || | | (__ | (_____ | (_____ | (___) | | | | (__ | (__ | | | | | | | (__ | (____)|
#| |(_)| | | __) (_____ ) (_____ ) | ___ | | | ____ | __) | __) | | | | | | | __) | __)
#| | | | | ( ) | ) | | ( ) | | | \_ ) | ( | ( | | | | | | | ( | (\ (
#| ) ( | | (____/\ /\____) | /\____) | | ) ( | | (___) | | (____/\ | ) ___) (___ | (____/\ | | | (____/\ | ) \ \__
#|/ \| (_______/ \_______) \_______) |/ \| (_______) (_______/ |/ \_______/ (_______/ )_( (_______/ |/ \__/
#
# Весьма гибкий модуль который позволит вам полностью избавиться от разного рода любителей
# разрекламировать сторонний проект, либо ограничить игроков в использовании ненормативной лексик
# с возможностью подмены разных сообщений в нескольих режимах.
# Этот модуль имеет весьма гибкую конфигурацию, что позволит вам полностью настроить всё, вплоть
# до мельчайщих деталей.
# McDev (c) 2023
# Включен ли модуль
enabled: true
rules:
# Доступные типы:
# regex - Принимает регулярное выражение и проверят сообщение на сходство
# contains - Проверяет, содержиться ли одно из слов, в сообщении, если да, производится действие
- type: regex
# Доступные действия:
# check - Отправляет на проверку всем игрокам с правом (chatguard.notifystaff)
# block - Блокирует сообщение
# auto - Применяется, если есть что заменять (options.replacement будет заменён если какое-то слово не соответствует правилу)
# autoAll - Работает как действие выше, только полностью заменяет всё сообщение
action: check
# Право на обход этого правила
bypassPermission: "chatguard.bypass.messagefilter.something"
# Части чата, которые будут затронуты правилом,
# CHAT - Обычный чат
# TAB - Всё, что выводиться в таб игроку
# COMMAND - Команда которая вводиться игроком
affect: "CHAT TAB COMMAND"
# Настройки действий
options:
# Применяется только к типу 'regex'
pattern: '^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$'
- type: regex
action: auto
bypassPermission: "chatguard.bypass.messagefilter.something"
affect: "CHAT TAB COMMAND"
options:
pattern: 'https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)'
replacement:
- "mcdev.su"
- type: regex
action: auto
bypassPermission: "chatguard.bypass.messagefilter.something"
affect: "CHAT TAB COMMAND"
options:
pattern: '[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)'
replacement:
- "mcdev.su"
- type: regex
action: auto
bypassPermission: "chatguard.bypass.messagefilter.something"
affect: "CHAT TAB COMMAND"
options:
pattern: '^(?!mailto:)(?:(?:http|https|ftp)://)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[0-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))|localhost)(?::\\d{2,5})?(?:(/|\\?|#)[^\\s]*)?$'
replacement:
- "mcdev.su"
- type: contains
action: autoAll
bypassPermission: "chatguard.bypass.messagefilter.something"
affect: "CHAT COMMAND"
options:
# Нужно ли проверять регистр
ignoreCase: true
# Применяется к типу действий 'auto', 'autoAll'
# В случае с auto - Будет заменено слово из списка на одно из слов, из этого списка
# В случае с autoAll - Работает по тому же принципу что и 'auto', только заменяет всю строку
replacement:
- "Люблю вас всех!"
- "Вы моё золото!"
# Если указать 'loadFile:<Название файла>', то будет загружен файл со всем содержимым
# (Это поможет не перегружать конфигурацию и разделить большие пласты сообщений на файлы)
values:
- "Хуй"
- "site"
- "battle"
- "baccep"
- "saints"
- "saint"
- "fspe"
- "clubsilver"
- "angryworld"
- "playmine"
- "casew"
- "funtime"
- "luckyworld"
- "deniscraft"
- "banana"
- "litecloud"
- "hypixel"
- "neizv"
- "minedex"
- "bbpc"
- "minelegacy"
- "speedcraft"
- "game-srv"
- "lastcraft"
- "lolkincraft"
- "smotraplay"
- "lexusmine"
- "ccakk"
- "dvel"
- "trapcraft"
- "flipycraft"
- "meancraft"
- "gode"
- "pcbb"
- "magsp"
- "unixmine"
- "dunw"
- "mystone"
- "starcraft"
- "enot"
- "icefires"
- "al-maz"
- "ербаев"
- "erbae"
- "vimeworld"
- "VKAN"
- "emzy"
- "25560"
- "craftmc"
- "dvor"
- "mstnetwork"
- "bungee"
- "craft"
- "funpay"
- "FaweMc"
- "подсосов"
- "хуевый"
- "еблан"
- "полудур"
- "хуевый"
- "OnlyDead"
- "#8144"
- "!!"
- "хуйня"
- type: contains
action: auto
bypassPermission: "chatguard.bypass.messagefilter.something"
affect: "CHAT TAB COMMAND"
options:
replacement:
- "хороший, а я плохой"
- "мой любимый игрок"
values:
- "Хуесос"
# Сообщения
messages:
staffMessage: "<grey>Игрок <red><name><grey> написал сообщение которое содержит запрещённые символы <red><message><grey>! <dark_red><bold><click:run_command:'/ban <name> 1h Нарушение правил чата'><hover:show_text:'<dark_red>Забанить\n<grey>/ban <name> 1h Нарушение правил чата'>(Забанить)</hover></click> <red><bold><click:run_command:'/mute <name> 5h Нарушение правил чата'><hover:show_text:'<red>Замутить\n<grey>/mute <name> 5h Нарушение правил чата'>(Замутить)</hover></click> <gold><bold><click:run_command:'/kick <name> Нарушение правил чата'><hover:show_text:'<gold>Кикнуть\n<grey>/kick <name> Нарушение правил чата'>(Кикнуть)</hover></click> <green><bold><click:run_command:'/chat resend <name> <message>'><hover:show_text:'<green>Принять\n<grey>/chat resend <name> <message>'>(Принять)</hover></click>"
staffAccepted: "<green>Вы приняли сообщение!"
staffUsage: "<red>/chat resend <Ник> <Сообщение>"
staffUnknownPlayer: "<red>Неизвестный игрок: <name>"
staffUnknownMessage: "<red>Пользователь не отправлял такого сообщения: <message>"
staffPlayerNotSentAnyMessage: "<red>Игрок ещё не отправил ни одного сообщения!"
denied: "<red>Вы не можете писать такое!"
newbieDelay.yml:
# _ _______ ______ _________ _______ ______ _______ _ _______
#( ( /| ( ____ \ |\ /| ( ___ \ \__ __/ ( ____ \ ( __ \ ( ____ \ ( \ ( ___ ) |\ /|
#| \ ( | | ( \/ | ) ( | | ( ) ) ) ( | ( \/ | ( \ ) | ( \/ | ( | ( ) | ( \ / )
#| \ | | | (__ | | _ | | | (__/ / | | | (__ | | ) | | (__ | | | (___) | \ (_) /
#| (\ \) | | __) | |( )| | | __ ( | | | __) | | | | | __) | | | ___ | \ /
#| | \ | | ( | || || | | ( \ \ | | | ( | | ) | | ( | | | ( ) | ) (
#| ) \ | | (____/\ | () () | | )___) ) ___) (___ | (____/\ | (__/ ) | (____/\ | (____/\ | ) ( | | |
#|/ )_) (_______/ (_______) |/ \___/ \_______/ (_______/ (______/ (_______/ (_______/ |/ \| \_/
#
# Стандартный модуль, поможет вам ограничить новичков в использовании чата и команд,
# он хорошо позволяет избавиться от ботов и их спама.
# McDev (c) 2023
# Включен ли модуль
enabled: true
# Время задержки
delay: "1 HOURS"
# Нужно ли проверять команды
checkCommands: true
# Список команд, которые запрещены новичкам
disabledCommands:
- "msg"
- "r"
- "message"
- "reply"
- "pm"
- "m"
# Сообщения
messages:
delayedUntil: "<grey>Вы сможете начать писать через <red><delay>"
similarityCheck.yml:
# _______ _________ _______ _________ _ _______ _______ _________ _________ _______ _______ _______ _
#( ____ \ \__ __/ ( ) \__ __/ ( \ ( ___ ) ( ____ ) \__ __/ \__ __/ |\ /| ( ____ \ |\ /| ( ____ \ ( ____ \ | \ /\
#| ( \/ ) ( | () () | ) ( | ( | ( ) | | ( )| ) ( ) ( ( \ / ) | ( \/ | ) ( | | ( \/ | ( \/ | \ / /
#| (_____ | | | || || | | | | | | (___) | | (____)| | | | | \ (_) / | | | (___) | | (__ | | | (_/ /
#(_____ ) | | | |(_)| | | | | | | ___ | | __) | | | | \ / | | | ___ | | __) | | | _ (
# ) | | | | | | | | | | | | ( ) | | (\ ( | | | | ) ( | | | ( ) | | ( | | | ( \ \
#/\____) | ___) (___ | ) ( | ___) (___ | (____/\ | ) ( | | ) \ \__ ___) (___ | | | | | (____/\ | ) ( | | (____/\ | (____/\ | / \ \
#\_______) \_______/ |/ \| \_______/ (_______/ |/ \| |/ \__/ \_______/ )_( \_/ (_______/ |/ \| (_______/ (_______/ |_/ \/
#
# Этот модуль поможет вам ограничить множество дублирующихся сообщений, для проверки был задействован
# алгоритм под названием "Расстояние Левенштейна", поэтому вы можете в полной мере воспользоваться им
# чтобы сделать каждое сообщение на сервере уникальным.
# McDev (c) 2023
# Включен ли модуль
enabled: true
# Сколько хранить сообщения которые игрок отправлял до этого
cacheDuration: "10 SECONDS"
# Сколько нужно набрать поинтов сходства, чтобы сообщение было отменено
# Где 0 - Абсолютное сходство
minSimilarity: 5
# Позволяет делать более гибкую конфигурацию, настройки выше
similarityThreshold: 100
# Нужно ли проверять команды
checkCommands: false
# Сообщения
messages:
tooSimilar: "<red>Ваше сообщение слишком сильно похоже на одно из предыдущих!"