🎨 Config Redesign: - Unified style for all config files with beautiful headers - Consistent color scheme using gradients throughout - Improved readability with proper sections and comments - Fixed color formatting issues ✨ New Features: - SkinsRestorer integration for custom skins support - Head emoji system (:head_nickname: and @head nickname) - Clear chat message configuration command (/clearchatconfig) - Enhanced custom commands with more examples - Improved emoji system with 200+ emojis 📝 Documentation: - Completely rewritten README.md with modern styling - Added comprehensive feature descriptions - Detailed command and permission tables - Configuration examples and usage guides - Professional formatting and structure 🔧 Technical Improvements: - Fixed compilation errors - Improved code organization - Better error handling - Enhanced compatibility All configs now follow consistent MiniMessage gradient styling!
304 lines
No EOL
14 KiB
Markdown
304 lines
No EOL
14 KiB
Markdown
# LoChat
|
||
|
||
**Продвинутый чат-плагин для Minecraft Paper 1.20.1 с интегрированным модулем градиентных ников**
|
||
|
||
**Автор:** loki
|
||
**Версия:** 1.5.5-1.20.1
|
||
|
||
---
|
||
|
||
## 🚀 Установка
|
||
|
||
1. Скачайте `LoChat-1.5.5-1.20.1.jar` из папки `build/libs/`
|
||
2. Поместите файл в папку `plugins/` вашего сервера
|
||
3. Перезапустите сервер
|
||
4. Настройте конфигурацию в файлах `config.yml` и других
|
||
|
||
---
|
||
|
||
## ✨ Основной функционал
|
||
|
||
### 💬 Система чата
|
||
- **Глобальный чат** - `!сообщение` или `/g <сообщение>`
|
||
- **Локальный чат** - радиус 100 блоков (настраивается)
|
||
- **Личные сообщения** - `/msg`, `/reply` с поддержкой игнорирования
|
||
- **Автосообщения** - многострочные сообщения с настраиваемым порядком
|
||
- **Смайлики** - 200+ эмодзи для украшения сообщений
|
||
|
||
### 🛡️ Модерация
|
||
- **Система мутов** - `/lmute`, `/lunmute` с поддержкой времени и причин
|
||
- **Фильтр мата** - умная система с обходом символов (censor/block/warn)
|
||
- **Анти-спам** - защита от CAPS, повторов и похожих сообщений
|
||
- **Кулдауны** - настраиваемые задержки между сообщениями
|
||
- **Шпион режим** - `/chatspy` для мониторинга всех сообщений
|
||
- **Очистка чата** - `/clearchat` с настраиваемым сообщением
|
||
|
||
### 🌈 Градиентные ники (встроенный LoPreff)
|
||
- **Кастомные градиенты** - `/color <hex1> [hex2] ...` до 7 цветов
|
||
- **Кастомные префиксы** - `/prefix <текст>` с поддержкой цветов
|
||
- **Предустановки** - fire, ocean, forest, sunset, rainbow и другие
|
||
- **Интеграция с LuckPerms** - автоматическое обновление префиксов
|
||
- **Покупка за PlayerPoints** - опциональная система оплаты
|
||
- **GUI подтверждения** - красивый интерфейс для покупок
|
||
|
||
### 🎭 Дополнительные возможности
|
||
- **Головы игроков** - `:head_nickname:` и `@head nickname` в чате
|
||
- **Кастомные команды** - создание собственных команд через конфиг
|
||
- **Упоминания** - @nickname с звуковыми уведомлениями
|
||
- **Интеграция с SkinsRestorer** - поддержка кастомных скинов
|
||
|
||
---
|
||
|
||
## 📋 Команды
|
||
|
||
### Чат
|
||
| Команда | Описание | Право |
|
||
|---------|----------|-------|
|
||
| `!<сообщение>` | Глобальный чат | `chat.global.use` |
|
||
| `/g <сообщение>` | Глобальный чат | `chat.global.use` |
|
||
| `/globalchat toggle` | Переключить глобальный чат | `chat.global.toggle` |
|
||
| `/l <сообщение>` | Локальный чат | `chat.local.use` |
|
||
| `/msg <ник> <сообщение>` | Личное сообщение | `chat.pm.use` |
|
||
| `/reply <сообщение>` | Ответить на последнее PM | `chat.pm.use` |
|
||
| `/ignore <ник>` | Добавить в игнор | `chat.pm.ignore` |
|
||
| `/unignore <ник>` | Убрать из игнора | `chat.pm.ignore` |
|
||
| `/announce <сообщение>` | Объявление | `chat.announce.use` |
|
||
|
||
### Модерация
|
||
| Команда | Описание | Право |
|
||
|---------|----------|-------|
|
||
| `/chatspy` | Включить/выключить шпион режим | `chat.spy` |
|
||
| `/clearchat` | Очистить чат | `chat.clear` |
|
||
| `/clearchatconfig <действие>` | Настроить сообщение очистки | `lochat.clearchat.config` |
|
||
| `/lmute <ник> [время] [-s] [причина]` | Замутить игрока | `lochat.mute` |
|
||
| `/lunmute <ник> [-s]` | Размутить игрока | `lochat.unmute` |
|
||
| `/lmutelist` | Список замученных | `lochat.mutelist` |
|
||
| `/lmutehistory <ник>` | История мутов игрока | `lochat.mutehistory` |
|
||
| `/lmuteblame <модератор>` | Муты выданные модератором | `lochat.muteblame` |
|
||
|
||
### Градиентные ники
|
||
| Команда | Описание | Право |
|
||
|---------|----------|-------|
|
||
| `/color <hex1> [hex2] ...` | Установить градиент | `gradient.color` |
|
||
| `/color on/off/reset` | Управление градиентом | `gradient.color` |
|
||
| `/color copy <ник>` | Скопировать градиент | `gradient.color` |
|
||
| `/color preset <название>` | Использовать предустановку | `gradient.color` |
|
||
| `/prefix <текст>` | Установить префикс | `gradient.prefix` |
|
||
| `/prefix on/off/reset` | Управление префиксом | `gradient.prefix` |
|
||
|
||
### Админские команды
|
||
| Команда | Описание | Право |
|
||
|---------|----------|-------|
|
||
| `/lochat reload` | Перезагрузить конфиг | `lochat.admin` |
|
||
| `/aprefix <подкоманда>` | Админские команды градиентов | `gradient.admin` |
|
||
|
||
---
|
||
|
||
## 🔐 Права доступа
|
||
|
||
### Чат
|
||
| Право | По умолчанию | Описание |
|
||
|-------|--------------|----------|
|
||
| `chat.global.use` | `true` | Использование глобального чата |
|
||
| `chat.global.toggle` | `true` | Переключение глобального чата |
|
||
| `chat.local.use` | `true` | Использование локального чата |
|
||
| `chat.pm.use` | `true` | Личные сообщения |
|
||
| `chat.pm.ignore` | `true` | Игнорирование игроков |
|
||
| `chat.mention.use` | `true` | Упоминания @nickname |
|
||
|
||
### Модерация
|
||
| Право | По умолчанию | Описание |
|
||
|-------|--------------|----------|
|
||
| `chat.announce.use` | `op` | Объявления |
|
||
| `chat.spy` | `op` | Шпион режим |
|
||
| `chat.clear` | `op` | Очистка чата |
|
||
| `chat.bypass.cooldown` | `op` | Обход кулдаунов |
|
||
| `chat.bypass.filter` | `op` | Обход фильтра мата |
|
||
| `chat.bypass.antispam` | `op` | Обход анти-спама |
|
||
| `lochat.mute` | `op` | Выдача мутов |
|
||
| `lochat.unmute` | `op` | Снятие мутов |
|
||
| `lochat.clearchat.config` | `op` | Настройка очистки чата |
|
||
|
||
### Градиенты
|
||
| Право | По умолчанию | Описание |
|
||
|-------|--------------|----------|
|
||
| `gradient.color` | `true` | Градиентные ники |
|
||
| `gradient.prefix` | `true` | Кастомные префиксы |
|
||
| `gradient.admin` | `op` | Админские команды |
|
||
| `gradient.bypass.cooldown` | `op` | Обход кулдаунов |
|
||
| `gradient.bypass.cost` | `op` | Бесплатные градиенты |
|
||
|
||
### Дополнительные
|
||
| Право | По умолчанию | Описание |
|
||
|-------|--------------|----------|
|
||
| `lochat.heademoji.use` | `true` | Головы игроков в чате |
|
||
| `lochat.admin` | `op` | Админские команды |
|
||
|
||
---
|
||
|
||
## 🎨 PlaceholderAPI
|
||
|
||
### Основные плейсхолдеры
|
||
```
|
||
%lochat_muted% — замучен (true/false)
|
||
%lochat_mute_time% — оставшееся время мута
|
||
%lochat_mute_reason% — причина мута
|
||
%lochat_ignored_count% — количество игнорируемых
|
||
%lochat_global_enabled% — глобальный чат включен
|
||
%lochat_spy_enabled% — шпион режим включен
|
||
```
|
||
|
||
### Градиентные плейсхолдеры
|
||
```
|
||
%lochat_gradient_full% — полное имя (префикс + ник)
|
||
%lochat_gradient_name% — только градиентный ник
|
||
%lochat_gradient_prefix% — только префикс
|
||
%lochat_full% — алиас для gradient_full
|
||
%lochat_name% — алиас для gradient_name
|
||
%lochat_prefix% — алиас для gradient_prefix
|
||
```
|
||
|
||
---
|
||
|
||
## 📁 Конфигурационные файлы
|
||
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| `config.yml` | Основные настройки плагина |
|
||
| `messages.yml` | Сообщения плагина |
|
||
| `automessages.yml` | Настройки автосообщений |
|
||
| `emojis.yml` | Список смайликов |
|
||
| `custom-commands.yml` | Кастомные команды |
|
||
| `gradient-config.yml` | Настройки градиентов |
|
||
| `gradient-messages.yml` | Сообщения градиентного модуля |
|
||
| `ignores.yml` | Сохранённые игноры (создается автоматически) |
|
||
| `mutes.yml` | Активные муты (создается автоматически) |
|
||
| `gradient-data.yml` | Данные градиентов (создается автоматически) |
|
||
|
||
---
|
||
|
||
## 🎯 Кастомные команды
|
||
|
||
LoChat позволяет создавать собственные команды через `custom-commands.yml`. После изменения файла выполните `/lochat reload`.
|
||
|
||
### Структура команды
|
||
```yaml
|
||
command-name:
|
||
permission: "право.для.использования" # Опционально
|
||
message: "Текст сообщения" # Обязательно
|
||
aliases: ["alias1", "alias2"] # Опционально
|
||
type: "chat" # chat, broadcast, title, actionbar
|
||
target: "sender" # sender, all, permission:право
|
||
```
|
||
|
||
### Типы команд
|
||
- **chat** — отправляет сообщение в чат
|
||
- **broadcast** — отправляет сообщение всем игрокам
|
||
- **title** — показывает title (разделение строк через `\n`)
|
||
- **actionbar** — показывает сообщение в actionbar
|
||
|
||
### Целевая аудитория
|
||
- **sender** — только отправителю команды
|
||
- **all** — всем игрокам на сервере
|
||
- **permission:право** — только игрокам с указанным правом
|
||
|
||
### Плейсхолдеры в командах
|
||
- `{player}` — имя игрока
|
||
- `{x}`, `{y}`, `{z}` — координаты игрока
|
||
- `{world}` — название мира
|
||
- `{arg0}`, `{arg1}`, `{arg2}` — аргументы команды
|
||
- `{args}` — все аргументы через пробел
|
||
- Все плейсхолдеры PlaceholderAPI
|
||
|
||
---
|
||
|
||
## 🎭 Головы игроков
|
||
|
||
### Использование
|
||
- `:head_nickname:` — показать ASCII голову игрока
|
||
- `@head nickname` — показать интерактивную голову с информацией
|
||
|
||
### Требования
|
||
- Право `lochat.heademoji.use`
|
||
- Включенная настройка `head-emoji.enabled: true`
|
||
|
||
---
|
||
|
||
## 🎨 Форматирование цветов
|
||
|
||
### MiniMessage (рекомендуется)
|
||
```
|
||
<red>Красный текст</red>
|
||
<gradient:red:blue>Градиент от красного к синему</gradient>
|
||
<rainbow>Радужный текст</rainbow>
|
||
<bold>Жирный</bold>
|
||
<italic>Курсив</italic>
|
||
```
|
||
|
||
### HEX цвета
|
||
```
|
||
<#FF0000>Красный через HEX</color>
|
||
<gradient:#FF0000:#0000FF>HEX градиент</gradient>
|
||
```
|
||
|
||
### Legacy коды (поддерживаются)
|
||
```
|
||
&cКрасный
|
||
&aЗеленый
|
||
&lЖирный
|
||
&nПодчеркнутый
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 Требования
|
||
|
||
### Обязательные
|
||
- **Paper 1.20.1** или новее
|
||
- **Java 21**
|
||
|
||
### Опциональные
|
||
- **PlaceholderAPI** — для плейсхолдеров
|
||
- **PlayerPoints** — для покупки градиентов за поинты
|
||
- **LuckPerms** — для интеграции с префиксами
|
||
- **SkinsRestorer** — для поддержки кастомных скинов
|
||
- **LibertyBans** — для интеграции с банами
|
||
|
||
---
|
||
|
||
## 🏗️ Сборка
|
||
|
||
```bash
|
||
./gradlew clean build
|
||
```
|
||
|
||
Готовый jar файл: `build/libs/LoChat-1.5.5-1.20.1.jar`
|
||
|
||
---
|
||
|
||
## 📝 Changelog
|
||
|
||
### v1.5.5-1.20.1
|
||
- ✅ Адаптация для Minecraft 1.20.1 Paper
|
||
- ✅ Исправлен фильтр мата с поддержкой обходов
|
||
- ✅ Исправлена команда spy для мониторинга всех сообщений
|
||
- ✅ Добавлена поддержка голов игроков в чате
|
||
- ✅ Добавлена команда настройки сообщения очистки чата
|
||
- ✅ Интеграция с SkinsRestorer
|
||
- ✅ Улучшено качество кода (SOLID, DRY, KISS)
|
||
- ✅ Обновлены все конфиги в едином стиле
|
||
- ✅ Исправлены все предупреждения компилятора
|
||
|
||
---
|
||
|
||
## 🤝 Поддержка
|
||
|
||
Если у вас возникли проблемы или вопросы:
|
||
1. Проверьте конфигурационные файлы
|
||
2. Убедитесь в совместимости версий
|
||
3. Проверьте права доступа игроков
|
||
4. Создайте issue в репозитории
|
||
|
||
---
|
||
|
||
**© 2024 loki. Все права защищены.** |