chore: cleanup configs, docs, checkstyle, remove dead deps

This commit is contained in:
loki5512344 2026-07-05 11:38:04 +02:00
parent 984b364295
commit d3d87c34e0
23 changed files with 1703 additions and 2231 deletions

View file

@ -1,143 +1,114 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat Configuration ║
# ║ Единый конфиг плагина ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat main configuration
# All settings for chat, gradients, moderation, RP commands, sounds, and filters.
config-version: 5
prefix: "&#00D4FF[LoChat]"
config-version: 6
# ── General ────────────────────────────────────────────────────────────────────
prefix: "&8[&3LoChat&8]"
# ── Chat System ────────────────────────────────────────────────────────────────
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Режимы чата │
# └─────────────────────────────────────────────────────────────────────────────┘
chat:
# Глобальный чат (все видят, активируется через "!")
global:
enabled: true
cooldown: 3
# Локальный чат (только в радиусе)
local:
enabled: true
cooldown: 1
radius: 100
# Личные сообщения
pm:
enabled: true
cooldown: 2
# Лимиты сообщений
min_message_length: 1
max_message_length: 2000
clear_lines: 100
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Внешний вид чата (префиксы, форматы, цвета) │
# └─────────────────────────────────────────────────────────────────────────────┘
min-message-length: 1
max-message-length: 2000
clear-lines: 100
# ── Chat Appearance ────────────────────────────────────────────────────────────
appearance:
# Префиксы чата (GLOBAL / LOCAL)
prefixes:
global:
emoji: "✦"
emoji: "&b\u2726"
text: "GLOBAL"
colors: ["#B798A8", "#7858E9"]
separator:
text: " ▶ "
color: "#9878C9"
message-color: "#E8E0F0"
separator: " &8\u25B6 "
message-color: "&7"
local:
emoji: "◆"
emoji: "&d\u25C6"
text: "LOCAL"
colors: ["#9878C9", "#7858E9"]
separator:
text: " ▶ "
color: "#8B6BD6"
message-color: "#E8E0F0"
# Формат сообщений
# {emoji} {prefix} {separator} {player_prefix} {player} {player_suffix} {message}
separator: " &8\u25B6 "
message-color: "&7"
chat-format:
global: "{emoji} {prefix} {separator} {player_prefix}{player}{player_suffix}: {message}"
local: "{emoji} {prefix} {separator} {player_prefix}{player}{player_suffix}: {message}"
# Hover при наведении на ник
global: "{emoji} {prefix}{separator}{player_prefix}{player}{player_suffix}&f: {message}"
local: "{emoji} {prefix}{separator}{player_prefix}{player}{player_suffix}&f: {message}"
hover:
enabled: true
format:
- "&#7858E9▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬"
- "&#B798A8✦ &f{player}"
- "&8\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550"
- " &b\u2726 &f{player}"
- ""
- "&#9878C9⏱ &fПинг: &#7858E9{ping}ms"
- "&#9878C9❤ &fЗдоровье: &#7858E9{health}/20"
- "&#9878C9🍖 &fГолод: &#7858E9{food}/20"
- " &7Ping: &b{ping}ms"
- " &7Health: &a{health}&7/20"
- " &7Food: &6{food}&7/20"
- ""
- "&#7858E9▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬"
- "&#B798A8✦ &fНажми чтобы написать"
# Эмодзи (текстовые замены)
- "&8\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550"
- " &7Click to message"
emojis:
":heart:": "❤"
":star:": "★"
":diamond:": "♦"
":check:": "✓"
":cross:": "✗"
":arrow:": "→"
":heart:": "\u2764"
":star:": "\u2605"
":diamond:": "\u2666"
":check:": "\u2713"
":cross:": "\u2717"
":arrow:": "\u2192"
":smile:": ":)"
":sad:": ":("
":shrug:": "¯\\_(ツ)_/¯"
# Цвета системных сообщений
colors:
nobody_heard: "#9878C9"
error: "#CF6679"
success: "#9878C9"
warning: "#B798A8"
info: "#A485BC"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Градиентные ники и префиксы │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Gradient Nicknames & Prefixes ──────────────────────────────────────────────
gradient:
enabled: true
use-gradient-name: true
use-custom-prefix: true
# Настройки отображения
display:
update-display-name: true
update-tab-list: true
# Лимиты
min-colors: 1
max-colors: 7
max-prefix-length: 16
# Цены (PlayerPoints)
price-per-color: 50
prefix-price: 500
prefix-one-time-purchase: true
use-permission-instead-of-cost: false
# Кулдауны (секунды)
color-cooldown: 60
prefix-cooldown: 120
# Форматирование
prefix-format: "[{prefix}] "
gradient-on-prefix: true
gradient-on-luckperms-prefix: true
gradient-on-luckperms-suffix: true
continuous-gradient: true
use-legacy-rgb-format: true
# Хранилище (file / sqlite)
storage-type: "file"
sqlite-file: "gradient-data.db"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ RP команды (/me, /do, /try, /roll) │
# └─────────────────────────────────────────────────────────────────────────────┘
limits:
min-colors: 1
max-colors: 7
max-prefix-length: 16
pricing:
price-per-color: 50
prefix-price: 500
prefix-one-time-purchase: true
use-permission-instead-of-cost: false
cooldowns:
color: 60
prefix: 120
formatting:
prefix-format: "[{prefix}] "
gradient-on-prefix: true
gradient-on-luckperms-prefix: true
gradient-on-luckperms-suffix: true
continuous-gradient: true
storage:
type: file
sqlite-file: "gradient-data.db"
# ── RP Commands ────────────────────────────────────────────────────────────────
rp:
radius: 100
cooldowns:
@ -146,126 +117,92 @@ rp:
do: 3
roll: 2
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Фильтры чата │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Chat Filters ───────────────────────────────────────────────────────────────
filters:
# Мат-фильтр
swear:
enabled: true
replace: false
replacement: "***"
words:
- "хуй"
- "пизда"
- "ебать"
# URL фильтр
url:
enabled: true
replacement: "[ссылка скрыта]"
# IP фильтр
replacement: "&7[URL hidden]"
ip:
enabled: true
replacement: "[IP скрыт]"
# Скрытые URL (discord.gg и т.д.)
replacement: "&7[IP hidden]"
hidden-urls:
enabled: true
patterns:
- "discord\\.gg"
- "dsc\\.gg"
# Анти-спам
- "bit\\.ly"
- "tinyurl\\.com"
spam:
enabled: true
max-repeating-chars: 5
# Анти-флуд
flood:
enabled: true
max-same-messages: 3
# Капс
caps:
enabled: true
max-caps-percent: 70
min-length: 5
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Модерация (муты, баны, варны) │
# └─────────────────────────────────────────────────────────────────────────────┘
moderation:
# Дефолтные значения
default-mute-duration: "7d"
default-mute-reason: "Без причины"
default-ban-reason: "Без причины"
# Команда после мута (для голосового чата)
voice-mute-console-command: ""
# Сообщение при кике забаненного
ban-kick-message: "&#CF6679Вы забанены! &#B798A8Причина: &#7858E9{reason}"
# ── Moderation ─────────────────────────────────────────────────────────────────
moderation:
default-mute-duration: "7d"
default-mute-reason: "No reason specified"
default-ban-reason: "No reason specified"
voice-mute-console-command: ""
ban-kick-message: "&cYou have been banned!\n&7Reason: &f{reason}"
# ── Sounds ─────────────────────────────────────────────────────────────────────
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Звуки │
# └─────────────────────────────────────────────────────────────────────────────┘
sounds:
# Упоминание в чате
mention:
enabled: true
sound: "BLOCK_NOTE_BLOCK_PLING"
sound: BLOCK_NOTE_BLOCK_PLING
volume: 1.0
pitch: 1.5
# Личное сообщение
pm:
enabled: true
sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
sound: ENTITY_EXPERIENCE_ORB_PICKUP
volume: 0.8
pitch: 1.2
# Команды
command:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.5
pitch: 1.0
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Сообщения входа/выхода/смерти │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Join / Quit / Death Messages ──────────────────────────────────────────────
messages:
# Сообщение при входе
# {player} - ник игрока
join:
enabled: true
format: "&#9878C9✦ &#B798A8{player} &#7858E9зашел на сервер"
# Сообщение при выходе
format: "&7\u2726 &b{player} &7joined the server"
quit:
enabled: true
format: "&#9878C9✦ &#B798A8{player} &#7858E9вышел с сервера"
# Сообщение при смерти
# {player} - ник игрока
# {killer} - ник убийцы (если есть)
# {weapon} - название оружия (если есть)
# {death_message} - стандартное сообщение смерти
format: "&7\u2726 &b{player} &7left the server"
death:
enabled: true
# Убийство игроком
player_kill: "&#CF6679☠ &#B798A8{player} &#7858E9был убит игроком &#B798A8{killer} &#9878C9({weapon})"
# Смерть от моба
mob_kill: "&#CF6679☠ &#B798A8{player} &#7858E9был убит мобом &#B798A8{killer}"
# Обычная смерть
default: "&#CF6679☠ &#B798A8{player} &#7858E9{death_message}"
player-kill: "&c\u2620 &7{player} was killed by &f{killer} &7(&f{weapon}&7)"
mob-kill: "&c\u2620 &7{player} was slain by &f{killer}"
default: "&c\u2620 &7{player} {death_message}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Прочее │
# └─────────────────────────────────────────────────────────────────────────────┘
# Hub команда
hub_command:
# ── Hub Command ────────────────────────────────────────────────────────────────
hub-command:
enabled: true
server: "hub"

View file

@ -1,136 +1,98 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat — config/appearance.yml ║
# ║ In-game chat look: prefixes, format, hover, emoji shortcuts, Discord UI ║
# ║ Palette (Spacelegacy): #B798A8 (dusty rose) → #7858E9 (violet) ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat chat appearance
# Controls how messages look in-game: prefixes, format, hover, emojis.
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Chat prefixes (gradient label + separator + default message color) │
# └─────────────────────────────────────────────────────────────────────────────┘
#
# Gradient: use 2+ hex colors; letters are blended smoothly along the label.
# message-color: used when the player does NOT have lochat.chat.colors (see plugin.yml).
# ── Chat Prefixes ──────────────────────────────────────────────────────────────
prefixes:
global:
emoji: "✦"
emoji: "\u2726"
text: "GLOBAL"
colors:
- "#B798A8"
- "#7858E9"
separator:
text: " ▶ "
color: "#9878C9"
message-color: "#E8E0F0"
separator: " \u25B6 "
message-color: "&7"
local:
emoji: "◆"
emoji: "\u25C6"
text: "LOCAL"
colors:
- "#9878C9"
- "#7858E9"
separator:
text: " ▶ "
color: "#8B6BD6"
message-color: "#E8E0F0"
separator: " \u25B6 "
message-color: "&7"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Rendered chat line layout │
# └─────────────────────────────────────────────────────────────────────────────┘
#
# ── Chat Format ────────────────────────────────────────────────────────────────
# Placeholders:
# {emoji} — prefix emoji (✦ / ◆)
# {prefix} — gradient prefix text (GLOBAL / LOCAL)
# {separator} — separator (e.g. ▶)
# {player_prefix} — LuckPerms / gradient prefix from LoPreff
# {player} — display name + hover (click to /msg)
# {player_suffix} — LuckPerms / gradient suffix from LoPreff
# {message} — message body
#
# Examples:
# Default: {emoji} {prefix} {separator} {player} : {message}
# Minimal: {player_prefix} {player} ▶ {message}
# Custom: ✦ {player_prefix} {player} {player_suffix} ▶ {message}
# {emoji}, {prefix}, {separator}
# {player_prefix}, {player}, {player_suffix}
# {message}
chat-format:
global: "{emoji} {prefix} {separator} {player_prefix}{player}{player_suffix} : {message}"
local: "{emoji} {prefix} {separator} {player_prefix}{player}{player_suffix} : {message}"
global: "{emoji} {prefix}{separator}{player_prefix}{player}{player_suffix}&f: {message}"
local: "{emoji} {prefix}{separator}{player_prefix}{player}{player_suffix}&f: {message}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Hover shown when pointing at the player name in chat │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Hover on Player Name ───────────────────────────────────────────────────────
hover:
enabled: true
format:
- "&#7858E9▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬"
- "&#B798A8✦ &f{player}"
- "&8\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550"
- " \u2726 &f{player}"
- ""
- "&#9878C9⏱ &fПинг: &#7858E9{ping}ms"
- "&#9878C9❤ &fЗдоровье: &#7858E9{health}/20"
- "&#9878C9🍖 &fГолод: &#7858E9{food}/20"
- " &7Ping: &b{ping}ms"
- " &7Health: &a{health}&7/20"
- " &7Food: &6{food}&7/20"
- ""
- "&#7858E9▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬"
- "&#B798A8✦ &fНажми чтобы написать"
- "&8\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550"
- " &7Click to message"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Text shortcuts → unicode (applied to outgoing chat before URLs / mentions) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Emoji Shortcuts ────────────────────────────────────────────────────────────
# Text shortcuts replaced in outgoing messages before processing.
emojis:
":heart:": "❤"
":hearts:": "♥"
":star:": "★"
":stars:": "✦"
":diamond:": "♦"
":check:": "✓"
":cross:": "✗"
":arrow:": "→"
":up:": "↑"
":down:": "↓"
":left:": "←"
":right:": "→"
":music:": "♪"
":note:": "♫"
":heart:": "\u2764"
":hearts:": "\u2665"
":star:": "\u2605"
":stars:": "\u2726"
":diamond:": "\u2666"
":check:": "\u2713"
":cross:": "\u2717"
":arrow:": "\u2192"
":up:": "\u2191"
":down:": "\u2193"
":left:": "\u2190"
":right:": "\u2192"
":music:": "\u266A"
":note:": "\u266B"
":smile:": ":)"
":sad:": ":("
":wink:": ";)"
":shrug:": "¯\\_(ツ)_/¯"
":shrug:": "\u00AF\\_(\u30C4)_/\u00AF"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Radius, length limits, and misc chat UI colors (plugin internals) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Chat Settings ──────────────────────────────────────────────────────────────
chat:
local_radius: 100
clear_lines: 100
min_message_length: 1
max_message_length: 2000
local-radius: 100
clear-lines: 100
min-message-length: 1
max-message-length: 2000
colors:
nobody_heard: "#9878C9"
error: "#CF6679"
success: "#9878C9"
warning: "#B798A8"
info: "#A485BC"
nobody-heard: "&7"
error: "&c"
success: "&a"
warning: "&6"
info: "&7"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Discord webhook embeds (see also config/discord.yml for webhooks) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Discord Embeds ─────────────────────────────────────────────────────────────
discord:
emojis:
global_chat: "✦"
local_chat: "◆"
player_join: "♦"
player_quit: "◈"
player_death: "✗"
avatar_urls:
global-chat: "\u2726"
local-chat: "\u25C6"
player-join: "\u25C6"
player-quit: "\u25C7"
player-death: "\u2717"
avatar-urls:
default: "https://mc-heads.net/avatar/minecraft/64"
player: "https://mc-heads.net/avatar/{player}/64"
default_embed_color: "7858E9"
event_titles:
join: "♦ Игрок зашел на сервер"
quit: "◈ Игрок покинул сервер"
death: "✗ Смерть игрока"
global_chat: "✦ Глобальный чат"
local_chat: "◆ Локальный чат"
default-embed-color: "3498DB"
event-titles:
join: "Player joined"
quit: "Player left"
death: "Player died"
global-chat: "Global Chat"
local-chat: "Local Chat"

View file

@ -1,110 +1,73 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ Discord Integration ║
# ║ Интеграция с Discord ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat Discord integration
# Relays chat messages and server events to a Discord channel via webhook.
# ── General ────────────────────────────────────────────────────────────────────
# Включить интеграцию с Discord
enabled: true
# Настройки вебхука
# ── Webhook ────────────────────────────────────────────────────────────────────
webhook:
# URL вебхука Discord (получить в настройках канала)
url: "https://discord.com/api/webhooks/YOUR_WEBHOOK_ID/YOUR_WEBHOOK_TOKEN"
# Имя бота в Discord
username: "Minecraft Server"
# Аватар бота (URL изображения)
avatar_url: "https://mc-heads.net/avatar/minecraft/64"
username: "Minecraft"
avatar-url: "https://mc-heads.net/avatar/minecraft/64"
# ── Chat Relay ─────────────────────────────────────────────────────────────────
# Настройки чата
chat:
# Отправлять сообщения чата в Discord
enabled: true
# Отправлять только глобальный чат (true) или весь чат (false)
global_only: true
# Формат сообщения чата
global-only: true
format: "**{player}**: {message}"
# Цвет embed для сообщений чата (hex без #)
embed_color: "5865F2"
# Использовать embed или обычное сообщение
use_embed: true
embed-color: "5865F2"
use-embed: true
# ── Events ─────────────────────────────────────────────────────────────────────
# Настройки событий игроков
events:
# Отправлять события входа/выхода
enabled: true
# Настройки входа на сервер
# {player} - ник игрока
join:
enabled: true
title: "🟢 Игрок зашел на сервер"
description: "**{player}** присоединился к серверу"
title: "Player joined"
description: "**{player}** joined the server"
color: "00FF00"
thumbnail: "https://mc-heads.net/avatar/{player}/64"
# Настройки выхода с сервера
# {player} - ник игрока
quit:
enabled: true
title: "🔴 Игрок покинул сервер"
description: "**{player}** покинул сервер"
title: "Player left"
description: "**{player}** left the server"
color: "FF0000"
thumbnail: "https://mc-heads.net/avatar/{player}/64"
# Настройки смерти игрока
# {player} - ник игрока
# {killer} - ник убийцы (если есть)
# {weapon} - название оружия (если есть)
# {death_message} - стандартное сообщение смерти
death:
enabled: true
# Убийство игроком
player_kill:
title: "⚔️ PvP убийство"
description: "**{player}** был убит игроком **{killer}** с помощью **{weapon}**"
player-kill:
title: "PvP kill"
description: "**{player}** was killed by **{killer}** using **{weapon}**"
color: "FF0000"
# Смерть от моба
mob_kill:
title: "💀 Смерть от моба"
description: "**{player}** был убит мобом **{killer}**"
mob-kill:
title: "Mob kill"
description: "**{player}** was slain by **{killer}**"
color: "800080"
# Обычная смерть
default:
title: "💀 Смерть игрока"
title: "Player died"
description: "**{player}** {death_message}"
color: "800080"
thumbnail: "https://mc-heads.net/avatar/{player}/64"
# Настройки фильтрации
filter:
# Игнорировать сообщения от ботов
ignore_bots: true
# Минимальная длина сообщения для отправки
min_message_length: 1
# Максимальная длина сообщения (обрезать если больше)
max_message_length: 2000
# Заменять @everyone и @here на безопасные варианты
sanitize_mentions: true
# ── Filtering ──────────────────────────────────────────────────────────────────
filter:
ignore-bots: true
min-message-length: 1
max-message-length: 2000
sanitize-mentions: true
# ── Performance ────────────────────────────────────────────────────────────────
# Настройки производительности
performance:
# Асинхронная отправка (рекомендуется)
async: true
# Таймаут подключения (секунды)
timeout: 10
# Повторные попытки при ошибке
retry_attempts: 3
# Задержка между попытками (миллисекунды)
retry_delay: 1000
retry-attempts: 3
retry-delay: 1000

View file

@ -1,44 +1,34 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat — Фильтры чата ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat chat filters
# Control spam, swearing, URLs, and other unwanted content.
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Мат-фильтр │
# └─────────────────────────────────────────────────────────────────────────────┘
# Использует badwords.txt для списка слов
# Автоматически ловит замены букв: х->x, о->o, е->e и т.д.
# Обход: lochat.bypass.swear
# ── Swear Filter ───────────────────────────────────────────────────────────────
# Uses badwords.txt for the word list.
# Bypass permission: lochat.bypass.swear
swear:
enabled: true
replace: false # true = заменять на ***, false = блокировать сообщение
replace: false
replacement: "***"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ URL фильтр │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует ссылки в чате
# Обход: lochat.bypass.urlfilter
# ── URL Filter ─────────────────────────────────────────────────────────────────
# Blocks URLs in messages.
# Bypass permission: lochat.bypass.urlfilter
url:
enabled: true
replacement: "[ссылка скрыта]"
replacement: "&7[URL hidden]"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ IP фильтр │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует IP адреса в чате
# Обход: lochat.bypass.ipfilter
# ── IP Filter ──────────────────────────────────────────────────────────────────
# Blocks IP addresses in messages.
# Bypass permission: lochat.bypass.ipfilter
ip:
enabled: true
replacement: "[IP скрыт]"
replacement: "&7[IP hidden]"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Скрытые URL (discord.gg и т.д.) │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует популярные сокращенные ссылки
# Обход: lochat.bypass.hiddenurls
# ── Hidden URL Filter ──────────────────────────────────────────────────────────
# Blocks known link shorteners and invite links.
# Bypass permission: lochat.bypass.hiddenurls
hidden-urls:
enabled: true
@ -49,33 +39,27 @@ hidden-urls:
- "tinyurl\\.com"
- "goo\\.gl"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Анти-спам │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует повторяющиеся символы (ааааааа, хххххх)
# Обход: lochat.bypass.spam
# ── Spam Filter ────────────────────────────────────────────────────────────────
# Blocks messages with excessive repeated characters.
# Bypass permission: lochat.bypass.spam
spam:
enabled: true
max-repeating-chars: 5 # Максимум повторений одного символа
max-repeating-chars: 5
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Анти-флуд │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует одинаковые сообщения подряд
# Обход: lochat.bypass.flood
# ── Flood Filter ───────────────────────────────────────────────────────────────
# Blocks identical messages sent in quick succession.
# Bypass permission: lochat.bypass.flood
flood:
enabled: true
max-same-messages: 3 # Сколько раз можно отправить одно и то же
max-same-messages: 3
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Капс-фильтр │
# └─────────────────────────────────────────────────────────────────────────────┘
# Блокирует сообщения с большим количеством заглавных букв
# Обход: lochat.bypass.caps
# ── CAPS Filter ────────────────────────────────────────────────────────────────
# Blocks messages with too many capital letters.
# Bypass permission: lochat.bypass.caps
caps:
enabled: true
max-caps-percent: 70 # Максимум % заглавных букв
min-length: 5 # Минимальная длина для проверки
max-caps-percent: 70
min-length: 5

View file

@ -1,137 +1,123 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat Hardcoded Messages ║
# ║ Цветовая гамма: Spacelegacy ║
# ║ #B798A8 → #7858E9 ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat system messages
# Internal messages for commands, filters, moderation, and general feedback.
# ── Commands ───────────────────────────────────────────────────────────────────
commands:
mute:
usage: "&#B798A8Использование: &#7858E9/mute <ник> [время] [-s] [причина]"
time_help: "&#9878C9Время: &#7858E91d&#9878C9, &#7858E92h&#9878C9, &#7858E930m&#9878C9, &#7858E960s&#9878C9, &#7858E9perm"
silent_help: "&#B798A8-s &#9878C9— тихий мут (право &#7858E9lochat.mute.silent&#9878C9)"
no_silent_permission: "&#CF6679Нет права на тихий мут"
default_reason: "Без причины"
default_duration: "7d"
usage: "&cUsage: &f/mute <player> [time] [-s] [reason]"
time-help: "&7Time format: &f1d&7, &f2h&7, &f30m&7, &f60s&7, &fperm"
silent-help: "&7-s &7= silent mute (requires &flochat.mute.silent&7)"
no-silent-permission: "&cNo permission for silent mute"
default-reason: "No reason specified"
default-duration: "7d"
cooldown:
message: "&#B798A8Подождите &#7858E9{remaining} &#B798A8сек"
message: "&cPlease wait &f{remaining} &cseconds"
clear_chat:
lines_cleared: "&#9878C9Чат очищен &#7858E9({lines} строк&#9878C9)"
no_permission: "&#CF6679Нет прав для очистки чата"
clear-chat:
lines-cleared: "&aChat cleared &7({lines} lines)"
no-permission: "&cNo permission to clear chat"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЛОКАЛЬНЫЙ ЧАТ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Local Chat ─────────────────────────────────────────────────────────────────
local_chat:
nobody_heard: "&#9878C9Вас никто не услышал &#B798A8— рядом нет игроков"
no_players_nearby: "&#B798A8Рядом нет игроков"
local-chat:
nobody-heard: "&7Nobody heard you — no players nearby"
no-players-nearby: "&7No players nearby"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ФИЛЬТРЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Filters ────────────────────────────────────────────────────────────────────
filters:
caps:
min_length: 3
blocked_message: "&#CF6679Не кричите в чате"
auto_lowercase_notice: "&#B798A8Сообщение автоматически исправлено"
min-length: 3
blocked-message: "&cPlease don't shout"
auto-lowercase-notice: "&7Message auto-corrected"
spam:
blocked_message: "&#CF6679Не спамьте"
similar_message: "&#CF6679Вы уже отправляли похожее сообщение"
blocked-message: "&cDo not spam"
similar-message: "&cYou already sent a similar message"
swear:
blocked_message: "&#CF6679Запрещённые слова"
replaced_notice: "&#B798A8Некоторые слова заменены"
blocked-message: "&cInappropriate language"
replaced-notice: "&7Some words were replaced"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ МУТИРОВАНИЕ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Mute Messages ──────────────────────────────────────────────────────────────
mute:
muted_message: "&#CF6679Вы замучены! &#B798A8Причина: &#7858E9{reason}&#B798A8. Осталось: &#7858E9{time}"
muted_permanent: "&#CF6679Вы замучены навсегда! &#B798A8Причина: &#7858E9{reason}"
player_muted: "&#9878C9Игрок &#7858E9{player} &#9878C9замучен на &#7858E9{time}&#9878C9. Причина: &#B798A8{reason}"
player_muted_permanent: "&#9878C9Игрок &#7858E9{player} &#9878C9замучен навсегда. Причина: &#B798A8{reason}"
player_muted_silent: "&#B798A8[&#9878C9ТИХИЙ МУТ&#B798A8] &#7858E9{player} &#B798A8замучен на &#7858E9{time}"
player_unmuted: "&#9878C9Игрок &#7858E9{player} &#9878C9размучен"
not_muted: "&#B798A8Игрок &#7858E9{player} &#B798A8не замучен"
player_not_found: "&#CF6679Игрок не найден!"
invalid_time: "&#CF6679Неверный формат времени!"
already_muted: "&#CF6679Игрок уже замучен!"
no_silent_unmute_permission: "&#CF6679Нет права на тихий размут!"
player_not_muted_simple: "&#CF6679Игрок не замучен!"
muted-message: "&cYou are muted! &7Reason: &f{reason}&7. Remaining: &f{time}"
muted-permanent: "&cYou are permanently muted! &7Reason: &f{reason}"
player-muted: "&aPlayer &f{player} &amuted for &f{time}&a. Reason: &7{reason}"
player-muted-permanent: "&aPlayer &f{player} &amuted permanently. Reason: &7{reason}"
player-muted-silent: "&8[&7SILENT&8] &f{player} &7muted for &f{time}"
player-unmuted: "&aPlayer &f{player} &aunmuted"
not-muted: "&7Player &f{player} &7is not muted"
player-not-found: "&cPlayer not found!"
invalid-time: "&cInvalid time format!"
already-muted: "&cPlayer is already muted!"
no-silent-unmute-permission: "&cNo permission for silent unmute"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ИГРОВЫЕ РЕЖИМЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Gamemodes ──────────────────────────────────────────────────────────────────
gamemodes:
survival: "Выживание"
creative: "Творчество"
adventure: "Приключение"
spectator: "Наблюдатель"
survival: "Survival"
creative: "Creative"
adventure: "Adventure"
spectator: "Spectator"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЛИЧНЫЕ СООБЩЕНИЯ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Private Messages ───────────────────────────────────────────────────────────
private_messages:
no_reply_target: "&#CF6679Нет цели для ответа"
message_sent: "&#B798A8Сообщение отправлено &#7858E9{player}"
player_offline: "&#CF6679Игрок &#7858E9{player} &#CF6679не в сети"
cannot_message_self: "&#CF6679Нельзя писать самому себе"
private-messages:
no-reply-target: "&cNobody to reply to"
message-sent: "&aMessage sent to &f{player}"
player-offline: "&cPlayer &f{player} &cis not online"
cannot-message-self: "&cYou cannot message yourself"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ИГНОРИРОВАНИЕ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Ignore ─────────────────────────────────────────────────────────────────────
ignore:
player_ignored: "&#9878C9Игрок &#7858E9{player} &#9878C9добавлен в игнор"
player_unignored: "&#9878C9Игрок &#7858E9{player} &#9878C9убран из игнора"
already_ignored: "&#B798A8Игрок &#7858E9{player} &#B798A8уже в игноре"
not_ignored: "&#B798A8Игрок &#7858E9{player} &#B798A8не в игноре"
cannot_ignore_self: "&#CF6679Нельзя игнорировать самого себя"
ignore_list_empty: "&#B798A8Список игнора пуст"
ignore_list_header: "&#B798A8Игнорируемые игроки&#9878C9:"
player-ignored: "&aPlayer &f{player} &ais now ignored"
player-unignored: "&aPlayer &f{player} &ais no longer ignored"
already-ignored: "&7Player &f{player} &7is already ignored"
not-ignored: "&7Player &f{player} &7is not ignored"
cannot-ignore-self: "&cYou cannot ignore yourself"
ignore-list-empty: "&7Your ignore list is empty"
ignore-list-header: "&7Ignored players:"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ОБЩИЕ СООБЩЕНИЯ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── General ────────────────────────────────────────────────────────────────────
general:
no_permission: "&#CF6679Нет прав!"
player_only: "&#CF6679Только для игроков!"
invalid_arguments: "&#CF6679Неверные аргументы!"
command_disabled: "&#CF6679Команда отключена!"
feature_disabled: "&#CF6679Функция отключена!"
player_not_found: "&#CF6679Игрок не найден!"
time_formats:
seconds: "сек"
minutes: "мин"
hours: "ч"
days: "д"
permanent: "навсегда"
enabled: "&#7858E9Включено"
disabled: "&#B798A8Отключено"
online: "&#9878C9В сети"
offline: "&#B798A8Не в сети"
no-permission: "&cNo permission!"
player-only: "&cPlayers only!"
invalid-arguments: "&cInvalid arguments!"
command-disabled: "&cCommand disabled!"
feature-disabled: "&cFeature disabled!"
player-not-found: "&cPlayer not found!"
time-formats:
seconds: "s"
minutes: "m"
hours: "h"
days: "d"
permanent: "permanent"
enabled: "&aEnabled"
disabled: "&7Disabled"
online: "&aOnline"
offline: "&7Offline"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ВАРНЫ / БАНЫ (LoChat) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Moderation ─────────────────────────────────────────────────────────────────
moderation:
default_reason: "Без причины"
duration_permanent: "навсегда"
warn_received: "&#CF6679⚠ Вам выдано предупреждение! &#B798A8Причина: &#7858E9{reason}"
warn_staff_confirm: "&#9878C9Игроку &#7858E9{player} &#9878C9выдан варн. &#B798A8Причина: &#7858E9{reason}"
silent_warn_staff: "&#B798A8[&#9878C9ТИХИЙ ВАРН&#B798A8] &#7858E9{player}&#9878C9: &#B798A8{reason}"
ban_usage: "&#B798A8Использование: &#7858E9/lban <ник> [время|perm] [причина]"
ban_confirm: "&#9878C9Игрок &#7858E9{player} &#9878C9забанен. &#B798A8Срок: &#7858E9{duration}"
unban_confirm: "&#9878C9Бан снят с &#7858E9{player}"
not_banned: "&#CF6679Игрок не забанен!"
already_banned: "&#CF6679Игрок уже забанен!"
warn_usage: "&#B798A8Использование: &#7858E9/warn <ник> [причина]"
silent_warn_usage: "&#B798A8Использование: &#7858E9/silentwarn <ник> [причина]"
ban_kick_message: "<gradient:#FF5555:#8B0000><bold>═══════ ДОСТУП ЗАПРЕЩЁН ═══════</bold></gradient>\n<gray>Вы заблокированы на этом сервере.</gray>\n<white>Причина: <gradient:#7858E9:#B798A8>{reason}</gradient></white>\n<gray>Модератор: <white>{moderator}</white></gray>\n<gray>Срок: <#7858E9>{duration}</#7858E9></gray>\n<gradient:#FF5555:#8B0000><bold>════════════════════════</bold></gradient>"
default-reason: "No reason specified"
duration-permanent: "permanent"
warn-received: "&6\u26A0 &cYou received a warning! &7Reason: &f{reason}"
warn-staff-confirm: "&aPlayer &f{player} &awarned. &7Reason: &f{reason}"
silent-warn-staff: "&8[&7SILENT&8] &f{player}&7: &7{reason}"
ban-usage: "&cUsage: &f/lban <player> [time|perm] [reason]"
ban-confirm: "&aPlayer &f{player} &abanned. &7Duration: &f{duration}"
unban-confirm: "&aBan lifted for &f{player}"
not-banned: "&cPlayer is not banned!"
already-banned: "&cPlayer is already banned!"
warn-usage: "&cUsage: &f/warn <player> [reason]"
silent-warn-usage: "&cUsage: &f/silentwarn <player> [reason]"
ban-kick-message: |
<red><bold>You are banned from this server.</bold></red>
<gray>Reason: <white>{reason}</white></gray>
<gray>Moderator: <white>{moderator}</white></gray>
<gray>Duration: <white>{duration}</white></gray>

View file

@ -1,290 +1,212 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat Mute Configuration ║
# ║ Конфигурация мутов ║
# ║ Версия: 1.5.5-1.20.1 ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat mute system configuration
# Controls mute durations, automatic mutes, escalation, and notifications.
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ОСНОВНЫЕ НАСТРОЙКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── General Settings ───────────────────────────────────────────────────────────
settings:
# Причина мута по умолчанию
default-reason: "Нарушение правил чата"
# Длительность мута по умолчанию
default-reason: "Chat rule violation"
default-duration: "1h"
# Максимальная длина причины мута
max-reason-length: 100
# Показывать причину мута игроку
show-reason: true
# Показывать оставшееся время мута
show-remaining-time: true
# Автоматически размучивать при истечении времени
auto-unmute: true
# Сохранять историю мутов
save-history: true
# Максимальное количество записей в истории на игрока
max-history-entries: 50
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ДОСТУПНЫЕ ДЛИТЕЛЬНОСТИ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Available Durations ────────────────────────────────────────────────────────
# Each duration requires a permission. Empty permission = no restriction.
durations:
# Формат: "время": "право для использования"
"5m":
permission: "lochat.mute.dur.5m"
display: "5 минут"
display: "5 minutes"
"10m":
permission: "lochat.mute.dur.10m"
display: "10 минут"
display: "10 minutes"
"30m":
permission: "lochat.mute.dur.30m"
display: "30 минут"
display: "30 minutes"
"1h":
permission: "lochat.mute.dur.1h"
display: "1 час"
display: "1 hour"
"3h":
permission: "lochat.mute.dur.3h"
display: "3 часа"
display: "3 hours"
"6h":
permission: "lochat.mute.dur.6h"
display: "6 часов"
display: "6 hours"
"12h":
permission: "lochat.mute.dur.12h"
display: "12 часов"
display: "12 hours"
"1d":
permission: "lochat.mute.dur.1d"
display: "1 день"
display: "1 day"
"3d":
permission: "lochat.mute.dur.3d"
display: "3 дня"
display: "3 days"
"7d":
permission: "lochat.mute.dur.7d"
display: "7 дней"
display: "7 days"
"14d":
permission: "lochat.mute.dur.14d"
display: "14 дней"
display: "14 days"
"30d":
permission: "lochat.mute.dur.30d"
display: "30 дней"
display: "30 days"
"perm":
permission: "lochat.mute.dur.perm"
display: "Навсегда"
display: "Permanent"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ГОТОВЫЕ ПРИЧИНЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Preset Reasons ─────────────────────────────────────────────────────────────
reasons:
spam:
text: "Спам в чате"
text: "Spam"
duration: "30m"
permission: "lochat.mute.reason.spam"
caps:
text: "Злоупотребление заглавными буквами"
text: "Excessive caps"
duration: "15m"
permission: "lochat.mute.reason.caps"
swear:
text: "Использование нецензурной лексики"
text: "Inappropriate language"
duration: "1h"
permission: "lochat.mute.reason.swear"
flood:
text: "Флуд в чате"
text: "Flood"
duration: "20m"
permission: "lochat.mute.reason.flood"
advertising:
text: "Реклама"
text: "Advertising"
duration: "3h"
permission: "lochat.mute.reason.advertising"
insult:
text: "Оскорбления игроков"
text: "Insulting players"
duration: "2h"
permission: "lochat.mute.reason.insult"
toxicity:
text: "Токсичное поведение"
duration: "6h"
permission: "lochat.mute.reason.toxicity"
politics:
text: "Обсуждение политики"
duration: "1h"
permission: "lochat.mute.reason.politics"
religion:
text: "Религиозные споры"
duration: "1h"
permission: "lochat.mute.reason.religion"
begging:
text: "Попрошайничество"
duration: "30m"
permission: "lochat.mute.reason.begging"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ АВТОМАТИЧЕСКИЕ МУТЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Auto-Mute ──────────────────────────────────────────────────────────────────
auto-mute:
# Включить автоматические муты
enabled: true
# Мут за спам
spam:
enabled: true
threshold: 5 # Количество сообщений
time-window: 10 # За какое время (секунды)
threshold: 5
time-window: 10
duration: "10m"
reason: "Автомут: спам в чате"
# Мут за мат
reason: "Auto-mute: spam"
swear:
enabled: true
threshold: 3 # Количество нарушений
threshold: 3
duration: "30m"
reason: "Автомут: использование мата"
# Мут за заглавные буквы
reason: "Auto-mute: inappropriate language"
caps:
enabled: true
threshold: 5 # Количество нарушений
threshold: 5
duration: "5m"
reason: "Автомут: злоупотребление CAPS"
# Мут за рекламу
reason: "Auto-mute: excessive caps"
advertising:
enabled: true
threshold: 1 # Одно нарушение
threshold: 1
duration: "1h"
reason: "Автомут: реклама"
reason: "Auto-mute: advertising"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЭСКАЛАЦИЯ НАКАЗАНИЙ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Punishment Escalation ──────────────────────────────────────────────────────
escalation:
# Включить эскалацию наказаний
enabled: true
# Период для подсчета нарушений (дни)
period: 30
# Уровни наказаний
levels:
1:
duration: "30m"
reason: "Первое нарушение"
reason: "First offense"
2:
duration: "2h"
reason: "Повторное нарушение"
reason: "Second offense"
3:
duration: "12h"
reason: "Третье нарушение"
reason: "Third offense"
4:
duration: "3d"
reason: "Четвертое нарушение"
reason: "Fourth offense"
5:
duration: "7d"
reason: "Пятое нарушение"
reason: "Fifth offense"
6:
duration: "perm"
reason: "Систематические нарушения"
reason: "Systematic violations"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ УВЕДОМЛЕНИЯ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Notifications ──────────────────────────────────────────────────────────────
notifications:
# Уведомлять администраторов о мутах
notify-staff: true
# Право для получения уведомлений
staff-permission: "lochat.mute.notify"
# Публичные уведомления о мутах
public-mute: false
# Публичные уведомления о размутах
public-unmute: false
# Скрытые муты (с флагом -s)
silent-mute:
enabled: true
permission: "lochat.mute.silent"
notify-permission: "lochat.mute.see-silent"
# Формат уведомлений
formats:
mute: "&#FF6B6B{moderator} замутил {player} на {duration}. Причина: {reason}"
unmute: "&#6BCB77{moderator} размутил {player}"
silent-mute: "&#FFA726[ТИХО] {moderator} замутил {player} на {duration}. Причина: {reason}"
auto-mute: "&#FF6B6B[АВТО] {player} замучен на {duration}. Причина: {reason}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ИНТЕГРАЦИИ │
# └─────────────────────────────────────────────────────────────────────────────┘
formats:
mute: "&c{moderator} &7muted &f{player} &7for &f{duration}&7. Reason: &f{reason}"
unmute: "&a{moderator} &7unmuted &f{player}"
silent-mute: "&6[SILENT] &f{moderator} &7muted &f{player} &7for &f{duration}"
auto-mute: "&c[AUTO] &f{player} &7muted for &f{duration}&7. Reason: &f{reason}"
# ── Integrations ───────────────────────────────────────────────────────────────
integrations:
# LibertyBans
libertybans:
enabled: false
sync-mutes: true
# AdvancedBan
advancedban:
enabled: false
sync-mutes: true
# LiteBans
litebans:
enabled: false
sync-mutes: true
# Discord уведомления
discord:
enabled: false
webhook-url: ""
format: "**{moderator}** замутил **{player}** на **{duration}**\nПричина: {reason}"
format: "**{moderator}** muted **{player}** for **{duration}**\nReason: {reason}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ХРАНЕНИЕ ДАННЫХ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Storage ────────────────────────────────────────────────────────────────────
storage:
# Тип хранения: file, mysql, sqlite
type: "file"
# Настройки MySQL
type: file
mysql:
host: "localhost"
port: 3306
@ -292,45 +214,36 @@ storage:
username: "root"
password: "password"
table-prefix: "lochat_"
# Настройки SQLite
sqlite:
file: "plugins/LoChat/mutes.db"
# Автоматическая очистка старых записей
cleanup:
enabled: true
days: 90 # Удалять записи старше N дней
days: 90
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ДОПОЛНИТЕЛЬНЫЕ ФУНКЦИИ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Extra Features ─────────────────────────────────────────────────────────────
features:
# Временные муты (автоматически снимаются)
temporary-mutes: true
# IP муты (мутить по IP адресу)
ip-mutes:
enabled: false
permission: "lochat.mute.ip"
# Мут команд (блокировать определенные команды)
command-mute:
enabled: false
blocked-commands:
- "me"
- "say"
- "tell"
# Предупреждения перед мутом
warnings:
enabled: true
max-warnings: 3
reset-time: 3600 # Сброс предупреждений (секунды)
# Апелляции на муты
reset-time: 3600
appeals:
enabled: false
command: "/appeal"
permission: "lochat.appeal"
permission: "lochat.appeal"

View file

@ -1,313 +1,158 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat Sounds Configuration ║
# ║ Конфигурация звуков ║
# ║ Версия: 1.5.5-1.20.1 ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat sound configuration
# Controls sound effects for chat events, moderation, and system actions.
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ОСНОВНЫЕ НАСТРОЙКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── General ────────────────────────────────────────────────────────────────────
settings:
# Включить звуки
enabled: true
# Глобальная громкость (0.0 - 1.0)
global-volume: 0.5
# Глобальная высота тона (0.5 - 2.0)
global-pitch: 1.0
# Разрешить игрокам отключать звуки
allow-disable: true
# Команда для управления звуками
toggle-command: "/sounds"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ СООБЩЕНИЙ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Message Sounds ─────────────────────────────────────────────────────────────
messages:
# Личные сообщения
private-message:
enabled: true
sound: "BLOCK_NOTE_BLOCK_PLING"
sound: BLOCK_NOTE_BLOCK_PLING
volume: 0.8
pitch: 1.2
# Играть только получателю
receiver-only: true
# Упоминания в чате
mention:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BELL"
sound: BLOCK_NOTE_BLOCK_BELL
volume: 0.7
pitch: 1.5
# Дополнительный звук для @everyone
everyone-sound: "BLOCK_NOTE_BLOCK_CHIME"
# Глобальный чат
everyone-sound: BLOCK_NOTE_BLOCK_CHIME
global-chat:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.3
pitch: 1.0
# Локальный чат
local-chat:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.2
pitch: 0.8
# Объявления
announcement:
enabled: true
sound: "BLOCK_NOTE_BLOCK_CHIME"
sound: BLOCK_NOTE_BLOCK_CHIME
volume: 1.0
pitch: 1.0
# Дополнительные звуки для важных объявлений
important-sound: "ENTITY_ENDER_DRAGON_GROWL"
important-sound: ENTITY_ENDER_DRAGON_GROWL
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ СИСТЕМЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── System Sounds ──────────────────────────────────────────────────────────────
system:
# Подключение к серверу
join:
enabled: false
sound: "ENTITY_PLAYER_LEVELUP"
sound: ENTITY_PLAYER_LEVELUP
volume: 0.5
pitch: 1.0
# Играть только подключившемуся игроку
self-only: true
# Отключение от сервера
quit:
enabled: false
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.3
pitch: 0.8
# Мут игрока
mute:
enabled: true
sound: "BLOCK_ANVIL_LAND"
sound: BLOCK_ANVIL_LAND
volume: 0.6
pitch: 0.5
# Играть замученному игроку
target-sound: "ENTITY_VILLAGER_NO"
# Размут игрока
target-sound: ENTITY_VILLAGER_NO
unmute:
enabled: true
sound: "ENTITY_PLAYER_LEVELUP"
sound: ENTITY_PLAYER_LEVELUP
volume: 0.7
pitch: 1.2
# Играть размученному игроку
target-sound: "ENTITY_VILLAGER_YES"
# Очистка чата
target-sound: ENTITY_VILLAGER_YES
clear-chat:
enabled: true
sound: "ITEM_BUCKET_EMPTY"
sound: ITEM_BUCKET_EMPTY
volume: 0.5
pitch: 1.5
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ ГРАДИЕНТОВ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Gradient Sounds ────────────────────────────────────────────────────────────
gradient:
# Установка градиента
color-set:
enabled: true
sound: "BLOCK_NOTE_BLOCK_HARP"
sound: BLOCK_NOTE_BLOCK_HARP
volume: 0.6
pitch: 1.3
# Сброс градиента
color-reset:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.4
pitch: 0.7
# Установка префикса
prefix-set:
enabled: true
sound: "BLOCK_NOTE_BLOCK_CHIME"
sound: BLOCK_NOTE_BLOCK_CHIME
volume: 0.7
pitch: 1.4
# Ошибка (недостаточно средств, кулдаун и т.д.)
error:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.5
pitch: 0.8
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ КОМАНД │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Command Sounds ─────────────────────────────────────────────────────────────
commands:
# Успешное выполнение команды
success:
enabled: false
sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
sound: ENTITY_EXPERIENCE_ORB_PICKUP
volume: 0.4
pitch: 1.2
# Ошибка выполнения команды
error:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.5
pitch: 0.8
# Недостаточно прав
no-permission:
enabled: true
sound: "BLOCK_NOTE_BLOCK_BASS"
sound: BLOCK_NOTE_BLOCK_BASS
volume: 0.6
pitch: 0.5
# Игрок не найден
player-not-found:
enabled: true
sound: "ENTITY_ITEM_BREAK"
sound: ENTITY_ITEM_BREAK
volume: 0.4
pitch: 0.6
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКИ ФИЛЬТРОВ │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Filter Sounds ──────────────────────────────────────────────────────────────
filters:
# Сообщение заблокировано фильтром
blocked:
enabled: true
sound: "ENTITY_VILLAGER_NO"
sound: ENTITY_VILLAGER_NO
volume: 0.6
pitch: 0.7
# Предупреждение от фильтра
warning:
enabled: true
sound: "BLOCK_NOTE_BLOCK_PLING"
sound: BLOCK_NOTE_BLOCK_PLING
volume: 0.5
pitch: 0.9
# Автоматическое исправление (например, caps)
auto-fix:
enabled: false
sound: "UI_BUTTON_CLICK"
sound: UI_BUTTON_CLICK
volume: 0.3
pitch: 1.1
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ КАСТОМНЫЕ ЗВУКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
custom:
# Звуки для VIP игроков
vip:
enabled: false
join-sound: "ENTITY_PLAYER_LEVELUP"
message-sound: "BLOCK_NOTE_BLOCK_HARP"
volume: 0.8
pitch: 1.3
# Звуки для администраторов
admin:
enabled: false
join-sound: "ENTITY_ENDER_DRAGON_GROWL"
command-sound: "BLOCK_ANVIL_USE"
volume: 0.7
pitch: 1.0
# Праздничные звуки
holiday:
enabled: false
christmas:
sound: "BLOCK_NOTE_BLOCK_CHIME"
volume: 0.6
pitch: 1.5
new-year:
sound: "ENTITY_FIREWORK_ROCKET_BLAST"
volume: 0.8
pitch: 1.2
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ЗВУКОВЫЕ СХЕМЫ │
# └─────────────────────────────────────────────────────────────────────────────┘
schemes:
# Классическая схема
classic:
name: "Классическая"
description: "Стандартные звуки Minecraft"
sounds:
private-message: "BLOCK_NOTE_BLOCK_PLING"
mention: "BLOCK_NOTE_BLOCK_BELL"
announcement: "BLOCK_NOTE_BLOCK_CHIME"
# Минималистичная схема
minimal:
name: "Минимальная"
description: "Только важные звуки"
sounds:
private-message: "UI_BUTTON_CLICK"
mention: "BLOCK_NOTE_BLOCK_PLING"
announcement: "ENTITY_EXPERIENCE_ORB_PICKUP"
# Отключенная схема
silent:
name: "Тишина"
description: "Все звуки отключены"
sounds: {}
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ НАСТРОЙКИ ПО МИРАМ │
# └─────────────────────────────────────────────────────────────────────────────┘
worlds:
# Настройки для конкретных миров
world_nether:
volume-modifier: 0.7 # Уменьшить громкость на 30%
pitch-modifier: 0.8 # Понизить тон
world_the_end:
volume-modifier: 0.5
pitch-modifier: 1.2
# Отключить определенные звуки
disabled-sounds:
- "global-chat"
- "local-chat"
creative_world:
volume-modifier: 1.2
# Включить дополнительные звуки
extra-sounds:
build: "BLOCK_STONE_PLACE"
fly: "ENTITY_BAT_TAKEOFF"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ ПЕРСОНАЛЬНЫЕ НАСТРОЙКИ │
# └─────────────────────────────────────────────────────────────────────────────┘
personal:
# Разрешить игрокам настраивать громкость
allow-volume-control: true
# Разрешить игрокам выбирать звуковые схемы
allow-scheme-selection: true
# Сохранять настройки игроков
save-preferences: true
# Файл для сохранения настроек
preferences-file: "plugins/LoChat/sound-preferences.yml"

View file

@ -1,140 +1,83 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ Custom Commands Configuration ║
# ║ Конфигурация кастомных команд ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
# LoChat custom commands
# Define your own commands with custom messages and actions.
#
# Fields:
# enabled - whether the command is active
# permission - required permission (optional)
# message - message content (supports MiniMessage format)
# aliases - alternative command names
# type - chat | broadcast | title | actionbar | bungee
# target - sender | all | permission:<perm>
# server - (bungee only) target server name
# Информационные команды
help:
enabled: true
message: |
<gradient:#FFD700:#FFA500><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
<gradient:#87CEEB:#4169E1><bold>📚 Помощь по серверу</bold></gradient>
<#FFEB3B>🏠 Основные команды:</color>
<#9E9E9E>• <#FFFFFF>/spawn</color> - телепорт на спавн
<#9E9E9E>• <#FFFFFF>/home</color> - телепорт домой
<#9E9E9E>• <#FFFFFF>/sethome</color> - установить дом
<#FFEB3B>💬 Чат команды:</color>
<#9E9E9E>• <#FFFFFF>!сообщение</color> - глобальный чат
<#9E9E9E>• <#FFFFFF>/msg игрок</color> - личное сообщение
<#9E9E9E>• <#FFFFFF>/reply</color> - ответить на ЛС
<#FFEB3B>🎨 Кастомизация:</color>
<#9E9E9E>• <#FFFFFF>/color</color> - градиентный ник
<#9E9E9E>• <#FFFFFF>/prefix</color> - кастомный префикс
<gradient:#FFD700:#FFA500><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
aliases: ["помощь", "хелп"]
type: "chat"
target: "sender"
<gray>Available commands:</gray>
<gray>\u2022 <white>/spawn</white> - teleport to spawn
<gray>\u2022 <white>/msg <player></white> - private message
<gray>\u2022 <white>/color</white> - gradient nickname
<gray>\u2022 <white>/prefix</white> - custom prefix
aliases: []
type: chat
target: sender
rules:
enabled: true
message: |
<gradient:#FF6B6B:#FF4500><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
<gradient:#87CEEB:#4169E1><bold>📋 Правила сервера</bold></gradient>
<#F44336><bold>🚫 Запрещено:</bold></color>
<#9E9E9E>• Читерство и использование модов
<#9E9E9E>• Гриферство и воровство
<#9E9E9E>• Мат и оскорбления
<#9E9E9E>• Спам в чате
<#9E9E9E>• Реклама других серверов
<#4CAF50><bold>✅ Разрешено:</bold></color>
<#9E9E9E>• Строительство в любом стиле
<#9E9E9E>• Торговля между игроками
<#9E9E9E>• Создание команд и кланов
<#9E9E9E>• Использование /home и /spawn
<#FFA726><bold>⚠️ За нарушения:</bold></color>
<#9E9E9E>• Предупреждение → Мут → Бан
<gradient:#FF6B6B:#FF4500><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
aliases: ["правила", "rule"]
type: "chat"
target: "sender"
<red><bold>Server Rules</bold></red>
<gray>1. No cheating or hacking</gray>
<gray>2. No griefing or stealing</gray>
<gray>3. No swearing or insults</gray>
<gray>4. No spam</gray>
<gray>5. No advertising</gray>
aliases: []
type: chat
target: sender
discord:
enabled: true
message: |
<gradient:#5865F2:#7289DA><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
<gradient:#87CEEB:#4169E1><bold>💬 Discord сервер</bold></gradient>
<#5865F2><bold>Присоединяйся к нашему Discord!</bold></color>
<#FFEB3B>🔗 Ссылка:</color> <click:open_url:'https://discord.gg/yourserver'><u><#00BFFF>discord.gg/yourserver</u></click>
<#FFEB3B>📢 В Discord ты найдешь:</color>
<#9E9E9E>• Общение с игроками
<#9E9E9E>• Новости и обновления
<#9E9E9E>• Поддержку администрации
<#9E9E9E>• Конкурсы и ивенты
<gradient:#5865F2:#7289DA><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
aliases: ["дискорд", "ds"]
type: "chat"
target: "sender"
<color:#5865F2><bold>Join our Discord!</bold></color>
<click:open_url:'https://discord.gg/yourserver'><u><color:#00BFFF>discord.gg/yourserver</color></u></click>
aliases: ["ds"]
type: chat
target: sender
coords:
enabled: true
message: "<#FFEB3B>📍 <bold>Ваши координаты:</bold></color> <#9E9E9E>X: <#FFFFFF>{x}</color> Y: <#FFFFFF>{y}</color> Z: <#FFFFFF>{z}</color> <#9E9E9E>Мир: <#4CAF50>{world}</color>"
aliases: ["координаты", "pos", "position"]
type: "chat"
target: "sender"
message: "<gold>\u25B6 <white>X: {x} Y: {y} Z: {z} <dark_gray>World: <green>{world}</green>"
aliases: ["pos", "position"]
type: chat
target: sender
ping:
enabled: true
message: "<#FFEB3B>📶 <bold>Ваш пинг:</bold></color> <#4CAF50>{ping}ms</color>"
aliases: ["пинг"]
type: "chat"
target: "sender"
type: "chat"
target: "sender"
message: "<gold>\u25B6 <white>Your ping: <green>{ping}ms</green>"
aliases: []
type: chat
target: sender
hub:
enabled: true
message: "<#4CAF50>🏠 Подключение к хабу...</color>"
aliases: ["lobby", "хаб"]
type: "bungee"
target: "sender"
server: "hub"
message: "<green>Connecting to hub...</green>"
aliases: ["lobby"]
type: bungee
target: sender
server: hub
discord:
enabled: true
message: |
<gradient:#5865F2:#7289DA><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
<gradient:#87CEEB:#4169E1><bold>💬 Discord сервер</bold></gradient>
<#5865F2><bold>Присоединяйся к нашему Discord!</bold></color>
<#FFEB3B>🔗 Ссылка:</color> <click:open_url:'https://discord.gg/yourserver'><u><#00BFFF>discord.gg/yourserver</u></click>
<#FFEB3B>📢 В Discord ты найдешь:</color>
<#9E9E9E>• Общение с игроками
<#9E9E9E>• Новости и обновления
<#9E9E9E>• Поддержку администрации
<#9E9E9E>• Конкурсы и ивенты
<gradient:#5865F2:#7289DA><bold>▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬</bold></gradient>
aliases: ["дискорд", "ds"]
type: "chat"
target: "sender"
# Команды для администрации
broadcast:
enabled: true
permission: "lochat.broadcast"
message: "{message}"
aliases: ["bc", "объявить"]
type: "broadcast"
target: "all"
aliases: ["bc"]
type: broadcast
target: all
maintenance:
enabled: false
permission: "lochat.maintenance"
message: "<#FFA726><bold>🔧 Сервер переведен в режим технических работ</bold></color>"
aliases: ["тех-работы", "техработы"]
type: "title"
target: "all"
message: "<gold><bold>Server is now in maintenance mode</bold></gold>"
aliases: []
type: title
target: all

View file

@ -1,225 +1,166 @@
# ╔══════════════════════════════════════════════════════════════════════════════╗
# ║ LoChat — messages.yml ║
# ║ Default palette (Spacelegacy): #7858E9 (dusty rose) → #7858E9 (violet) ║
# ╚══════════════════════════════════════════════════════════════════════════════╝
#
# Color roles (reference when editing strings below):
# &#7858E9 — primary labels / body (dusty rose)
# &#9878C9 — accents / separators (mid violet)
# &#7858E9 — emphasis / values (deep violet)
# &f / #E8E0F0 — message body white
# &#CF6679 — errors (muted red, fits the palette)
# LoChat player messages
# All messages sent to players. Supports & color codes and placeholders.
prefix: "&#7858E9[&#9878C9L&#8B6BD6o&#7858E9C&#8565DCh&#8B6BD6a&#9878C9t&#7858E9]"
prefix: "&8[&3LoChat&8]"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Global chat (toggle messages, server-disabled notice) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Global Chat ────────────────────────────────────────────────────────────────
global:
toggled-on: "&#9878C9Глобальный чат &#7858E9включён"
toggled-off: "&#9878C9Глобальный чат &#7858E9отключён"
disabled: "&#CF6679Глобальный чат отключён на этом сервере"
toggled-on: "&aGlobal chat enabled"
toggled-off: "&cGlobal chat disabled"
disabled: "&cGlobal chat is disabled on this server"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Local chat (no recipients nearby) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Local Chat ─────────────────────────────────────────────────────────────────
local:
no-players: "&#7858E9Рядом нет игроков"
nobody-heard: "&#9878C9Вас никто не услышал &#7858E9— рядом нет игроков"
no-players: "&cNo players nearby"
nobody-heard: "&7Nobody heard you — no players nearby"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Private messages (/msg, /reply) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Private Messages ───────────────────────────────────────────────────────────
pm:
format-sent: "&#7858E9[&#9878C9→&#7858E9] &#9878C9Вы &#7858E9→ {receiver_display}&#7858E9: &f{message}"
format-received: "&#7858E9[&#9878C9←&#7858E9] {sender_display} &#7858E9→ &#9878C9Вы&#7858E9: &f{message}"
use-gradient-names: true
sent: "&#7858E9[&#9878C9→&#7858E9] &#9878C9Вы &#7858E9→ &f{player}&#7858E9: &f{message}"
received: "&#7858E9[&#9878C9←&#7858E9] &f{player} &#7858E9→ &#9878C9Вы&#7858E9: &f{message}"
no-reply: "&#CF6679Некому ответить"
ignored: "&#CF6679Этот игрок вас игнорирует"
player-offline: "&#CF6679Игрок не в сети"
self: "&#CF6679Нельзя писать самому себе"
format-sent: "&8[&a\u2192&8] &7You &a\u2192 &f{receiver_display}&8: &f{message}"
format-received: "&8[&e\u2190&8] &f{sender_display} &e\u2192 &7You&8: &f{message}"
no-reply: "&cNobody to reply to"
ignored: "&cThis player is ignoring you"
player-offline: "&cPlayer is not online"
self: "&cYou cannot message yourself"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Ignore list │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Ignore List ────────────────────────────────────────────────────────────────
ignore:
added: "&#9878C9Игрок &#7858E9{player} &#9878C9добавлен в игнор"
removed: "&#9878C9Игрок &#7858E9{player} &#9878C9убран из игнора"
already-ignored: "&#7858E9Игрок &#7858E9{player} &#7858E9уже в игноре"
not-ignored: "&#7858E9Игрок &#7858E9{player} &#7858E9не в игноре"
self: "&#CF6679Нельзя игнорировать самого себя"
list-empty: "&#7858E9Ваш список игнора пуст"
list-header: "&#7858E9▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬"
list-footer: "&#7858E9Всего: &#7858E9{count} &#7858E9игроков"
added: "&aPlayer &f{player} &ais now ignored"
removed: "&aPlayer &f{player} &ais no longer ignored"
already-ignored: "&7Player &f{player} &7is already ignored"
not-ignored: "&7Player &f{player} &7is not ignored"
self: "&cYou cannot ignore yourself"
list-empty: "&7Your ignore list is empty"
list-header: "&8\u2500\u2500\u2500\u2500\u2500 Ignored Players \u2500\u2500\u2500\u2500\u2500"
list-footer: "&7Total: &f{count} &7players"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Announcements │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Announcements ──────────────────────────────────────────────────────────────
announce:
reloaded: "&#9878C9Конфигурация &#7858E9перезагружена"
reloaded: "&aConfiguration reloaded"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Chat spy (moderation) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Chat Spy ───────────────────────────────────────────────────────────────────
spy:
enabled: "&#9878C9Режим шпиона &#7858E9включён"
disabled: "&#9878C9Режим шпиона &#7858E9отключён"
format: "&#7858E9[&#9878C9SPY&#7858E9] &#7858E9{sender} &#7858E9→ &#9878C9{receiver}&#7858E9: &f{message}"
chat-format: "&#7858E9[&#9878C9SPY&#7858E9] &#7858E9{type} &#7858E9{sender}&#7858E9: &f{message}"
enabled: "&aSpy mode enabled"
disabled: "&cSpy mode disabled"
format: "&8[&4SPY&8] &f{sender} &8\u2192 &7{receiver}&8: &f{message}"
chat-format: "&8[&4SPY&8] &f{sender}&8: &f{message}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Message filters │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Filters ────────────────────────────────────────────────────────────────────
filter:
blocked: "&#CF6679Сообщение заблокировано"
warning: "&#7858E9Предупреждение"
blocked: "&cMessage blocked"
warning: "&6Warning"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Cooldowns │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Cooldowns ──────────────────────────────────────────────────────────────────
cooldown:
wait: "&#7858E9Подождите &#7858E9{time} &#7858E9сек"
wait: "&cPlease wait &f{time} &cseconds"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Anti-spam (caps, repeat, similar messages) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Anti-Spam ──────────────────────────────────────────────────────────────────
antispam:
caps: "&#CF6679Не кричите в чате"
repeat: "&#CF6679Не повторяйте символы"
similar: "&#CF6679Не отправляйте одинаковые сообщения"
caps: "&cPlease don't shout"
repeat: "&cPlease don't repeat characters"
similar: "&cPlease don't send the same message"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Clear chat │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Clear Chat ─────────────────────────────────────────────────────────────────
clearchat:
cleared: "&#9878C9Чат очищен &#7858E9администратором &#7858E9{player}"
cleared: "&aChat cleared by &f{player}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Command / usage errors │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Errors ─────────────────────────────────────────────────────────────────────
errors:
no-permission: "&#CF6679Нет прав"
player-not-found: "&#CF6679Игрок не найден"
invalid-usage: "&#7858E9Использование: &#7858E9{usage}"
no-permission: "&cNo permission"
player-not-found: "&cPlayer not found"
invalid-usage: "&cUsage: &f{usage}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ General (permissions, reload, hub, etc.) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── General ────────────────────────────────────────────────────────────────────
general:
no-permission: "&#CF6679У вас нет прав!"
players-only: "&#CF6679Только для игроков!"
config-reloaded: "&#9878C9Конфиг &#7858E9перезагружен!"
invalid-player: "&#CF6679Игрок &#7858E9{player} &#CF6679не найден!"
cooldown-active: "&#7858E9Подождите &#7858E9{time}с"
command-disabled: "&#CF6679Команда отключена!"
no-permission: "&cYou don't have permission!"
players-only: "&cThis command is for players only!"
config-reloaded: "&aConfiguration reloaded!"
invalid-player: "&cPlayer &f{player} &cnot found!"
cooldown-active: "&cPlease wait &f{time}&cs"
command-disabled: "&cCommand disabled!"
# ── Hub ────────────────────────────────────────────────────────────────────────
hub:
connecting: "&#9878C9Подключение к &#7858E9{server}&#9878C9..."
connecting: "&aConnecting to &f{server}&a..."
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Mutes │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Mute ───────────────────────────────────────────────────────────────────────
mute:
muted: "&#9878C9Игрок &#7858E9{player} &#9878C9замучен на &#7858E9{time}"
unmuted: "&#9878C9Игрок &#7858E9{player} &#9878C9размучен"
already-muted: "&#7858E9Игрок &#7858E9{player} &#7858E9уже замучен"
not-muted: "&#7858E9Игрок &#7858E9{player} &#7858E9не замучен"
you-muted: "&#CF6679Вы замучены! &#7858E9Осталось: &#7858E9{time}"
permanent: "&#CF6679Вы замучены навсегда!"
muted: "&aPlayer &f{player} &amuted for &f{time}"
unmuted: "&aPlayer &f{player} &aunmuted"
already-muted: "&7Player &f{player} &7is already muted"
not-muted: "&7Player &f{player} &7is not muted"
you-muted: "&cYou are muted! &7Remaining: &f{time}"
permanent: "&cYou are permanently muted!"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Gradient nick module (LoPreff) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Gradients ──────────────────────────────────────────────────────────────────
gradient:
color-set: "&#9878C9Градиент &#7858E9установлен!"
color-enabled: "&#9878C9Градиентный ник &#7858E9включён"
color-disabled: "&#7858E9Градиентный ник &#9878C9отключён"
color-reset: "&#7858E9Градиент сброшен"
prefix-set: "&#9878C9Префикс &#7858E9установлен!"
prefix-reset: "&#7858E9Префикс сброшен"
prefix-reset-success: "&#9878C9Префикс успешно &#7858E9сброшен!"
prefix-enabled: "&#9878C9Префикс &#7858E9включён"
prefix-disabled: "&#7858E9Префикс &#9878C9отключён"
invalid-hex: "&#CF6679Неверный HEX цвет: &#7858E9{color}"
invalid-color: "&#CF6679Неверный цвет: &#7858E9{color}"
too-many-colors: "&#CF6679Слишком много цветов! Максимум: &#7858E9{max}"
too-few-colors: "&#CF6679Слишком мало цветов! Минимум: &#7858E9{min}"
not-enough-colors: "&#CF6679Слишком мало цветов! Минимум: &#7858E9{min}"
cooldown: "&#7858E9Подождите &#7858E9{time} &#7858E9сек"
not-enough-points: "&#CF6679Недостаточно поинтов! Нужно: &#7858E9{price}"
not-enough-points-color: "&#CF6679Недостаточно поинтов! Нужно: &#7858E9{price}"
not-enough-points-prefix: "&#CF6679Недостаточно поинтов! Нужно: &#7858E9{price}"
player-not-found: "&#CF6679Игрок не найден"
color-help: "&#7858E9Использование: &#7858E9/color <HEX1> <HEX2>"
color-success: "&#9878C9Градиент успешно &#7858E9установлен!"
color-no-colors: "&#7858E9У вас нет установленных цветов"
color-copy-usage: "&#7858E9Использование: &#7858E9/color copy <игрок>"
color-copy-no-colors: "&#7858E9У игрока &#7858E9{player} &#7858E9нет цветов"
prefix-help: "&#7858E9Использование: &#7858E9/prefix <текст> &#7858E9или &#7858E9/prefix reset"
prefix-success: "&#9878C9Префикс установлен! &#7858E9Стоимость: &#7858E9{price} &#7858E9поинтов"
prefix-success-free: "&#9878C9Префикс &#7858E9установлен!"
prefix-no-prefix: "&#7858E9У вас нет префикса"
prefix-too-long: "&#CF6679Префикс слишком длинный! Максимум: &#7858E9{max}"
prefix-no-colors: "&#CF6679Префикс не может содержать цветовые коды!"
prefix-invalid-chars: "&#CF6679Недопустимые символы в префиксе!"
prefix-blacklisted: "&#CF6679Этот префикс запрещён!"
only-player: "&#CF6679Только для игроков!"
no-permission: "&#CF6679Нет прав!"
reload-success: "&#9878C9Конфигурация &#7858E9перезагружена!"
info-header: "&#7858E9▬▬▬▬▬▬▬▬ &#7858E9{player} &#7858E9▬▬▬▬▬▬▬▬"
info-prefix: "&#7858E9Префикс: &f{prefix}"
info-prefix-enabled: "&#7858E9Префикс активен: &f{enabled}"
info-colors: "&#7858E9Цвета: &f{colors}"
info-color-enabled: "&#7858E9Цвет активен: &f{enabled}"
info-prefix-purchased: "&#7858E9Куплен: &f{purchased}"
color-set: "&aGradient set!"
color-enabled: "&aGradient nickname enabled"
color-disabled: "&7Gradient nickname disabled"
color-reset: "&7Gradient reset"
prefix-set: "&aPrefix set!"
prefix-reset: "&7Prefix reset"
prefix-enabled: "&aPrefix enabled"
prefix-disabled: "&7Prefix disabled"
invalid-hex: "&cInvalid hex color: &f{color}"
invalid-color: "&cInvalid color: &f{color}"
too-many-colors: "&cToo many colors! Maximum: &f{max}"
too-few-colors: "&cToo few colors! Minimum: &f{min}"
cooldown: "&cPlease wait &f{time} &cseconds"
not-enough-points: "&cNot enough points! Need: &f{price}"
player-not-found: "&cPlayer not found"
color-help: "&cUsage: &f/color <hex1> <hex2> ..."
color-success: "&aGradient applied!"
color-no-colors: "&7You have no colors set"
prefix-help: "&cUsage: &f/prefix <text>"
prefix-success: "&aPrefix set!"
prefix-success-free: "&aPrefix set!"
prefix-no-prefix: "&7You have no prefix"
prefix-too-long: "&cPrefix too long! Max: &f{max}"
prefix-no-colors: "&cPrefix cannot contain color codes"
only-player: "&cPlayers only!"
no-permission: "&cNo permission!"
reload-success: "&aConfiguration reloaded!"
info-header: "&8\u2500\u2500\u2500\u2500\u2500 &f{player} &8\u2500\u2500\u2500\u2500\u2500"
info-prefix: "&7Prefix: &f{prefix}"
info-colors: "&7Colors: &f{colors}"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Custom nicknames (/nick) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── Custom Nicknames ───────────────────────────────────────────────────────────
nick:
current: "&#7858E9Ваш ник: &#7858E9{nick}"
usage: "&#7858E9Использование: &#7858E9/nick <ник> &#7858E9или &#7858E9/nick reset"
reset-usage: "&#7858E9Используйте &#7858E9/nick reset &#7858E9для сброса"
set-usage: "&#7858E9Используйте &#7858E9/nick <ник> &#7858E9для установки"
no-nick: "&#7858E9У вас нет кастомного ника"
reset-success: "&#9878C9Ник &#7858E9сброшен!"
set-success: "&#9878C9Ник изменён на: &f{nick}"
invalid: "&#CF6679Невалидный ник!"
requirements-header: "&#7858E9Требования:"
requirements-length: "&#9878C9◆ &fДлина: 3-16 символов"
requirements-chars: "&#9878C9◆ &fБуквы, цифры, _, русские буквы"
requirements-colors: "&#9878C9◆ &fЦвета: &#7858E9&#RRGGBB&#7858E9текст"
taken: "&#CF6679Этот ник уже занят!"
error: "&#CF6679Не удалось установить ник!"
current: "&7Your nickname: &f{nick}"
usage: "&cUsage: &f/nick <name> &7or &f/nick reset"
no-nick: "&7You have no custom nickname"
reset-success: "&aNickname reset!"
set-success: "&aNickname changed to: &f{nick}"
invalid: "&cInvalid nickname!"
taken: "&cThis nickname is already taken!"
error: "&cFailed to set nickname!"
# ┌─────────────────────────────────────────────────────────────────────────────┐
# │ Roleplay commands (/me, /try, /do, /roll) │
# └─────────────────────────────────────────────────────────────────────────────┘
# ── RP Commands ────────────────────────────────────────────────────────────────
rp:
me: "<color:#7858E9>* {player} {action}</color>"
try-format: "<color:#7858E9>* {player} пытается {action}...</color> {result}"
try-success: "<color:#9878C9><bold>[Успех!]</bold></color>"
try-fail: "<color:#CF6679><bold>[Провал!]</bold></color>"
do-format: "<color:#7858E9>[<color:#7858E9>Сцена</color>]</color> <white>{description}</white> <color:#9878C9>({player})</color>"
roll-format: "<color:#7858E9>* {player} бросает кубик и получает </color><color:#7858E9><bold>{result}</bold></color><color:#7858E9> из </color><color:#9878C9>{max}</color>"
roll-min-error: "<color:#CF6679>Минимальное значение кубика: 2</color>"
roll-max-error: "<color:#CF6679>Максимальное значение: 1000000</color>"
roll-invalid-number: "<color:#CF6679>Укажите число: /roll [максимум]</color>"
me: "&7* {player} {action}"
try-format: "&7* {player} tries {action}... &f{result}"
try-success: "&a[Success!]"
try-fail: "&c[Fail!]"
do-format: "&8[Scene] &f{description} &7({player})"
roll-format: "&7* {player} rolls &f{result} &7out of &f{max}"
roll-min-error: "&cMinimum dice value: 2"
roll-max-error: "&cMaximum dice value: 1000000"
roll-invalid-number: "&cPlease specify a number: /roll [max]"