Pterohost docs

CoreProtect: логирование действий и откат гриферства

CoreProtect для Minecraft: установка, команды /co rollback и /co inspect, откат гриферства, настройка MySQL/SQLite - подробный гайд 2026.

Кратко: CoreProtect - плагин для логирования всех действий игроков на сервере Minecraft. Команда /co rollback u:НикГрифера t:1h r:50 откатит любые разрушения за минуты. Установка занимает 5 минут, SQLite работает из коробки, MySQL рекомендуется при 20+ одновременных игроках.

CoreProtect: логирование действий и откат гриферства

CoreProtect - стандарт де-факто для защиты серверов Minecraft от гриферства в 2026 году. Плагин записывает в базу данных каждое действие: установку и разрушение блоков, взаимодействие с сундуками, убийства животных, поджоги, взрывы TNT. При атаке гриферов администратор за 30 секунд находит виновного через /co inspect и откатывает весь нанесённый ущерб без потери предметов. CoreProtect работает на Paper, Spigot и Purpur начиная с Minecraft 1.16 и активно поддерживается в версиях 1.20-1.21.

Pterohost - игровой хостинг с NVMe-дисками, защитой от DDoS и поддержкой 24/7. Идеально для серверов с CoreProtect и тяжёлыми плагинами. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

Установка CoreProtect

CoreProtect распространяется через Hangar (официальная площадка PaperMC) и Modrinth. Jar-файл кладётся в папку plugins/ без дополнительных зависимостей.

Шаги установки:

  1. Скачайте актуальную версию с hangar.papermc.io/CoreProtect/CoreProtect.
  2. Поместите jar в /plugins/ директорию сервера.
  3. Перезапустите сервер (/restart или stop + запуск).
  4. Плагин создаст plugins/CoreProtect/config.yml и начнёт запись.

Никаких дополнительных библиотек не требуется - SQLite встроен. При первом запуске CoreProtect автоматически создаёт базу данных plugins/CoreProtect/database.db.

Проверка установки:

/co status

Вывод покажет версию плагина, количество записей в базе и текущую скорость логирования (entries/second).

Настройка config.yml

Основные параметры конфига находятся в plugins/CoreProtect/config.yml. Ниже приведён типичный конфиг с пояснениями:

# CoreProtect config.yml
prefix: co
check-updates: true
api-enabled: true
verbose: true
language: ru

# Что логировать
block-place: true
block-break: true
natural-break: false      # падение блоков гравитации - можно отключить
block-burn: true
block-ignite: true
explosions: true
entity-kills: true
item-drops: false         # дроп предметов - генерирует много записей
item-pickups: false
inventory: true           # взаимодействие с сундуками, шалкерами
container-transactions: true
sign-text: true
username-changes: true
session-logging: true
chat-logging: false       # логи чата - по желанию
command-logging: false

# База данных
use-mysql: false
mysql-host: localhost
mysql-port: 3306
mysql-database: coreprotect
mysql-username: cp_user
mysql-password: ВашПароль
mysql-prefix: co_

Важные параметры производительности:

  • natural-break: false - отключает запись падения гравитационных блоков (песок, гравий). На серверах с активной добычей это снижает объём базы в 2-3 раза.
  • item-drops: false и item-pickups: false - дроп предметов создаёт тысячи записей в час, обычно не нужен для расследований гриферства.

SQLite и MySQL: что выбрать

ПараметрSQLiteMySQL
НастройкаНе нужна, работает сразуТребует отдельный сервер/контейнер
ПроизводительностьДо 20 игроков без проблемОптимально для 20+ игроков
Резервное копированиеОдин файл database.dbЧерез mysqldump
Поиск по большим логамМедленнее при > 1 млн записейБыстрее благодаря индексам
РекомендацияМаленькие/средние серверыКрупные серверы, 24/7 работа

Настройка MySQL (если решили перейти):

  1. Создайте базу данных и пользователя:
CREATE DATABASE coreprotect CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'cp_user'@'localhost' IDENTIFIED BY 'НадёжныйПароль';
GRANT ALL PRIVILEGES ON coreprotect.* TO 'cp_user'@'localhost';
FLUSH PRIVILEGES;
  1. В config.yml установите use-mysql: true и заполните параметры подключения.
  2. Перезапустите сервер - CoreProtect автоматически создаст таблицы.

При миграции со SQLite на MySQL старые данные не переносятся автоматически. Логирование начнётся заново с момента переключения.

Инспекция блоков: команда /co inspect

/co inspect (сокращение /co i) - главный инструмент расследования. После ввода команды курсор становится “инспектором”: каждый клик по блоку или контейнеру выводит историю действий с ним.

/co inspect

Пример вывода при клике по пустому месту:

----- CoreProtect -----
2026-06-05 14:23:11 - GrieferNick разрушил minecraft:diamond_ore
2026-06-05 14:22:55 - GrieferNick разрушил minecraft:stone
2026-06-05 14:22:40 - AdminPlayer разместил minecraft:stone

Клик по контейнеру (сундуку, шалкеру) показывает:

  • Кто открывал
  • Что добавлял и что забирал
  • Точное время каждого действия

Для выхода из режима инспекции повторно введите /co inspect или нажмите Esc.

Инспекция в конкретных координатах (через консоль или без присутствия рядом):

/co lookup u:GrieferNick t:1h a:break r:50

Команда /co lookup: поиск по логам

/co lookup (сокращение /co l) позволяет искать события по нескольким фильтрам одновременно.

Синтаксис:

/co lookup u:<игрок> t:<время> a:<действие> r:<радиус> b:<блок>

Параметры времени (t:):

t:1h        - последний час
t:30m       - последние 30 минут
t:2h30m     - 2 часа 30 минут
t:1d        - последние сутки
t:1w        - последняя неделя
t:2026-06-01  - с определённой даты
t:2026-06-01,2026-06-05  - диапазон дат

Параметры действий (a:):

a:break     - разрушение блоков
a:place     - установка блоков
a:container - взаимодействие с контейнерами
a:kill      - убийства мобов и животных
a:chat      - сообщения в чате
a:command   - использованные команды
a:+block    - только установка (знак + или -)
a:-block    - только разрушение

Примеры реальных запросов:

# Что GrieferNick делал за последние сутки
/co lookup u:GrieferNick t:1d

# Кто разрушал блоки в радиусе 10 блоков за 2 часа
/co lookup t:2h a:break r:10

# Кто открывал сундук (стоим рядом, клик по сундуку в режиме inspect)
# или через lookup с координатами

# Что делали с алмазными блоками за неделю
/co lookup t:1w b:diamond_block a:break

Результаты выводятся постранично, переключение: /co lookup #2, /co lookup #3.

Откат гриферства: /co rollback

/co rollback (сокращение /co rb) - самая важная команда. Она буквально отматывает время назад: возвращает сломанные блоки, убирает поставленные, восстанавливает содержимое контейнеров.

Синтаксис:

/co rollback u:<игрок> t:<время> r:<радиус> a:<действие> b:<блок>

Типичные сценарии:

# Откат гриферства конкретного игрока за последний час в радиусе 50 блоков
/co rollback u:GrieferNick t:1h r:50

# Откат только разрушений (не убирать блоки, которые гриффер поставил)
/co rollback u:GrieferNick t:2h r:100 a:break

# Откат взрыва TNT (без привязки к игроку)
/co rollback u:#tnt t:30m r:20

# Откат поджогов
/co rollback u:#fire t:1h r:50

# Откат на определённой высоте (y-ось)
/co rollback u:GrieferNick t:1d r:50 #y:64

# Глобальный откат без ограничения радиуса (осторожно!)
/co rollback u:GrieferNick t:3h r:#global

Параметры специальных источников (u:#):

ПараметрЧто откатывает
u:#tntУрон от взрывов TNT
u:#creeperУрон от крипера
u:#fireУрон от огня
u:#lavaУрон от лавы
u:#waterИзменения водой
u:#explosionВсе взрывы

Важно: перед глобальным откатом (r:#global) всегда уточните временной диапазон и сделайте резервную копию сервера. Ошибочный откат с широкими параметрами может затронуть работу других игроков.

После выполнения CoreProtect показывает количество изменённых блоков и затраченное время. Откат 10 000 блоков обычно занимает 2-5 секунд на быстром диске.

Отмена отката: /co restore

/co restore (сокращение /co rs) - обратная операция к rollback. Если откат был выполнен ошибочно или нужно “откатить откат”, используйте restore с теми же параметрами.

# Отменить только что выполненный откат
/co restore u:GrieferNick t:1h r:50

# Восстановить блоки, снесённые гриффером (если нужно вернуть обратно)
/co restore u:GrieferNick t:2h r:100 a:break

CoreProtect хранит информацию о состоянии до и после каждого действия, поэтому restore корректно работает даже после нескольких последовательных rollback-операций.

Сценарий использования restore:

  1. Гриффер сломал постройку.
  2. Вы сделали /co rollback u:GrieferNick t:1h r:50 - постройка восстановлена.
  3. Оказалось, что гриффер тоже что-то построил рядом с пострадавшим участком.
  4. Его постройка исчезла при откате.
  5. Вы делаете /co restore u:GrieferNick t:1h r:10 a:place - его постройка вернулась.

Очистка логов: /co purge

Без регулярной очистки база CoreProtect растёт неограниченно. На активном сервере с 50 игроками база может достигать нескольких гигабайт за месяц.

# Удалить логи старше 30 дней
/co purge t:30d

# Удалить логи старше 60 дней
/co purge t:60d

# Удалить логи старше 1 года
/co purge t:365d

Автоматическая очистка через конфиг (CoreProtect 22+):

# В config.yml
days: 30    # хранить логи максимум 30 дней (0 = бессрочно)

После очистки рекомендуется выполнить оптимизацию базы:

# Для SQLite - оптимизация файла базы
/co purge t:60d optimize

Рекомендации по срокам хранения:

Тип сервераРекомендуемый срок
Публичный сервер, 50+ игроков14-30 дней
Средний сервер, 10-50 игроков30-60 дней
Приватный сервер, до 10 игроков60-90 дней
Сервер с большим дискомДо 180 дней

Расследование сложных случаев

Кража из сундуков

# 1. Встать рядом с сундуком и войти в режим инспекции
/co inspect
# Кликнуть по сундуку правой кнопкой

# 2. Поиск всех взаимодействий с контейнерами в зоне базы
/co lookup t:1d a:container r:30

# 3. Откат кражи (только контейнерные операции)
/co rollback u:ThiefNick t:12h r:20 a:container

Массовое уничтожение фермы мобов

# Посмотреть убийства за последние 6 часов в радиусе 100 блоков
/co lookup t:6h a:kill r:100

# Откатить убийства (восстановит мобов и их дропы в инвентаре - только блоки, не мобов)
# Примечание: CoreProtect восстанавливает блоки, но не возрождает мобов
/co rollback u:GrieferNick t:6h r:100 a:break

Поджог лесом (огонь распространился)

# Найти первоначальный источник поджога
/co lookup t:3h a:place b:fire r:200

# Откатить все блоки, сгоревшие или сломанные в результате
/co rollback u:#fire t:3h r:100
/co rollback u:GrieferNick t:3h r:100 a:+block b:fire

Права доступа (permissions)

CoreProtect поддерживает гранулярные права через LuckPerms или любой другой permissions-менеджер.

Основные узлы прав:

# Полный доступ администратора
coreprotect.inspect      # /co inspect
coreprotect.rollback     # /co rollback
coreprotect.restore      # /co restore
coreprotect.lookup       # /co lookup
coreprotect.purge        # /co purge
coreprotect.reload       # /co reload
coreprotect.status       # /co status
coreprotect.consumer     # API-доступ для других плагинов

# Мета-узел для полного доступа
coreprotect.admin        # включает все права выше

Рекомендуемая настройка через LuckPerms:

# Выдать права модератора (только инспекция и lookup)
/lp group moderator permission set coreprotect.inspect true
/lp group moderator permission set coreprotect.lookup true

# Выдать права старшего модератора (+ rollback)
/lp group senior-mod permission set coreprotect.rollback true
/lp group senior-mod permission set coreprotect.restore true

# Выдать права администратора (всё)
/lp group admin permission set coreprotect.admin true

Производительность и оптимизация

CoreProtect оптимизирован для минимального влияния на TPS (тиков в секунду), но при большой нагрузке следует учитывать несколько моментов.

Признаки проблем с производительностью:

  • TPS падает при массовом разрушении блоков (взрывы, массовая добыча)
  • Длинные задержки при выполнении /co rollback с большим числом блоков
  • Размер database.db превысил 2-3 ГБ

Решения:

  1. Перейти на MySQL - это самый эффективный способ снизить нагрузку на диск.
  2. Отключить избыточное логирование - item-drops, item-pickups, natural-break.
  3. Регулярная очистка - /co purge t:30d раз в неделю.
  4. Использовать NVMe-диск - скорость записи критична для SQLite. На медленных HDD CoreProtect может создавать очереди на запись.

Мониторинг через /co status:

/co status

Команда показывает:

  • Версию плагина
  • Тип базы данных (SQLite/MySQL)
  • Количество записей в очереди на запись (queue size)
  • Среднюю скорость логирования

Если queue size постоянно растёт и не уменьшается - сервер не успевает записывать логи. Это сигнал к переходу на MySQL или снижению объёма логирования.

Интеграция с другими плагинами

CoreProtect предоставляет API, которым пользуются многие плагины:

  • WorldGuard - при совместном использовании CoreProtect логирует действия даже внутри защищённых регионов, что помогает отслеживать нарушения прав.
  • LuckPerms - через него настраиваются права доступа к командам CoreProtect.
  • DiscordSRV - можно настроить уведомления в Discord при выполнении rollback-операций.
  • Plan - статистика плагина показывает активность игроков, CoreProtect дополняет её детальными логами.

Пример совместного использования с WorldGuard:

Если игрок получил права на регион WorldGuard и начал разрушать чужое имущество, CoreProtect покажет его действия даже внутри разрешённого региона. Можно откатить конкретного игрока в радиусе региона, не затрагивая остальных участников.

Связанные материалы

Для полноценной защиты сервера CoreProtect лучше работает в связке с другими инструментами. Читайте про WorldGuard и защиту регионов - он предотвращает гриферство заранее, тогда как CoreProtect фиксирует и откатывает уже случившееся. В статье лучшие плагины для сервера Minecraft рассказывается о полном стеке защиты и управления. Также важно регулярно делать резервные копии сервера - откат CoreProtect не заменяет полный бэкап при серьёзных инцидентах.

Заключение

CoreProtect - незаменимый инструмент для любого публичного сервера Minecraft. Установка занимает 5 минут, а первый же откат гриферства окупает всё время настройки. Начните с SQLite, настройте права для модераторов через LuckPerms, отключите избыточное логирование дропов и настройте автоочистку через параметр days: 30 в конфиге. При росте сервера до 20+ одновременных игроков переходите на MySQL - это вложение в стабильность. Регулярно проверяйте /co status и очищайте базу командой /co purge t:30d, чтобы диск не заканчивался в самый неподходящий момент.

Pterohost - Minecraft-хостинг на NVMe-дисках с автоматическими бэкапами и защитой от DDoS-атак. Идеально подходит для серверов с CoreProtect и плагинами защиты. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг