Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

HolyModeration

Клиентский мод для Fabric, помогающий модераторам HolyWorld вести проверки игроков.

Это переработанная версия оригинального мода: та же функциональность, но перестроенная архитектура — вместо самодельных DI-контейнера, шины событий и парсера команд используются стандартные средства Fabric и Brigadier.

Рефакторинг выполнен с помощью Claude (Anthropic).

Возможности

Проверки. Заморозка игрока одной командой, автоматический сбор информации (/dupeip, /checkmute), отправка заготовленных текстов по таймеру, подсветка сообщений проверяемого в чате, автоматическое копирование AnyDesk ID из чата, запись проверки в журнал.

Слежка. Отслеживание местоположения и активности игрока с периодическим обновлением. Плашка на экране показывает текущий статус.

Наказания. Перехват /ban, /mute, /warn и других: мод проверяет ник и аргументы, дописывает ссылку на ВК и тихий флаг, а в сомнительных случаях просит подтверждение — например, если наказание выдаётся игроку, который сейчас на проверке.

Журнал. Загрузка профиля и статистики модератора, отправка результатов проверок.

Интерфейс. Уведомления и перетаскиваемые плашки поверх игры, отрисованные через собственный рендерер на MSDF-шрифтах.

Установка

  1. Установите Fabric Loader для Minecraft 1.21.11.
  2. Скачайте Fabric API и положите в папку mods.
  3. Положите туда же .jar мода.

Опционально: Mod Menu — добавляет кнопку настроек мода в список модов. Без него настройки открываются клавишей и командами.

Первый запуск

Настройки открываются клавишей правый Shift (перебиндить можно в управлении, категория HolyModeration) или командой /hm settings.

Что имеет смысл настроить сразу:

  • Ссылка на ВК — /hm setvk <ссылка>. Дописывается к выдаваемым наказаниям.
  • Токен журнала — /hm settings apitoken <токен>. Нужен для /hm profile, /hm stats и записи проверок в журнал. Без него мод работает, но журнал недоступен.
  • Тексты для проверок — /hm texts add <текст>. Отправляются проверяемому автоматически через 5 секунд после начала проверки.

Конфиг хранится в config/holymoderation.json.

Команды

Все команды начинаются с /hm.

Проверки

Команда Описание
frz <ник>, freezing <ник> начать проверку
unfrz, unfreezing завершить проверку
sendtexts отправить заготовленные тексты
sban <время> [причина] забанить проверяемого по пункту 2.4
startcheckout, endcheckout отметить проверку в журнале

Слежка

Команда Описание
spy <ник> начать слежку
spy остановить слежку
spyfrz заморозить игрока, за которым идёт слежка

Прочее

Команда Описание
profile профиль модератора из журнала
stats статистика наказаний
setvk <ссылка> ссылка на ВК для наказаний
settings список настроек
settings <ключ> [значение] изменить настройку
settings reset <ключ> сбросить настройку
texts add|edit|remove|list|clear заготовленные тексты для проверок

Настройки

Меняются через /hm settings <ключ> <значение> или в окне настроек (правый Shift).

Автоматические действия

Ключ По умолчанию Описание
autovanish вкл. ваниш при заходе на сервер и после проверки
autofly выкл. полёт при заходе на сервер
autogm3 выкл. режим наблюдателя при заходе, /gm 0 на время проверки
autogod выкл. god-режим при заходе
autoha выкл. оповещения HAC при заходе
autodupeip выкл. /dupeip при сборе информации о проверяемом
autotp выкл. телепорт на /warp logo в начале проверки
autospytp выкл. телепорт к игроку при слежке
autocopy выкл. копирование AnyDesk ID из чата в буфер обмена

Чат

Ключ По умолчанию Описание
copy выкл. кнопка копирования у сообщений
copytext — текст кнопки копирования
marker — метка рядом с сообщениями проверяемого

Интерфейс

Ключ По умолчанию Описание
checkouthud вкл. плашка проверки на экране
checkouthudscale 100 масштаб плашки, 60–180
spydelay — задержка обновления слежки в секундах, 0–60

Положение плашек меняется перетаскиванием в окне настроек.

Интеграции

Ключ По умолчанию Описание
apitoken — токен журнала

Сборка

./gradlew build

Готовый .jar окажется в build/libs. Целевые версии указаны в gradle.properties: Minecraft 1.21.11, Fabric Loader 0.19.0, Fabric API 0.141.6.

Устройство проекта

core/
  module/      модули: подписки на события и команды
  service/     логика: проверки, слежка, наказания, чат, журнал
  command/     команды на Brigadier
  fabric/      события: чат, отправка команд, подключение к серверу
  settings/    описания настроек, общие для команд и GUI
  states/      состояние игрока и модератора
  obs/         клиент obs-websocket v5
  util/        форматы сообщений HolyWorld
config/        загрузка и сохранение настроек
gui/           плашки, уведомления, виджеты
render/        рендерер на MSDF-шрифтах
mixin/         перехват чата и отправки команд

Каждый модуль подписывается на нужные события и отдаёт свои команды. Сервисы содержат логику и о существовании модулей не знают. Форматы сообщений сервера собраны в HolyWorldPatterns — если HolyWorld поменяет текст сообщения, править нужно только там. Не стал выносить в онлайн-формат.

Лицензия

All Rights Reserved.


About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages