Плагин Продажа Механика RefontSearch - Плагин на Розыск / Самопис для RP [1.6.1]

Нет прав для покупки ( 6,65 $ (≈₽486,30) )
✦ RefontSearch 1.6.1 - Фикс /arrest, /arrestlist, аудит снятий и /unarrest ✦

Исправления /arrest
  • Исправлен краш /arrest с CommandException, когда сотрудник и цель находятся в разных мирах.
  • Проверка дистанции теперь безопасно учитывает мир игрока и больше не вызывает ошибку Cannot measure distance between worlds.
  • Аргумент force теперь корректно обходит требование активного розыска при наличии прав.
  • Исправлен разбор аргументов с кавычками: статья, тюрьма и дополнительные параметры больше не смешиваются между собой.

Кастомные причины и таб-комплит
  • /wanted теперь корректно принимает кастомные причины с пробелами и кавычками.
  • Добавлен полноценный TabCompleter для /wanted.
  • Исправлен бесконечный спам вариантов в таб-комплите, когда статья вроде "Административное нарушение" подставлялась повторно.
  • Добавлена настройка wanted.defaultArticle для режима wanted.requireArticle: false.

Команды освобождения
  • Добавлена команда /unarrest <ник> как дополнительный вариант освобождения после ареста.
  • /unarrest использует ту же логику, что и /unjail.
  • /unjail и /unarrest теперь могут снять тюремное наказание с оффлайн-игрока, если наказание сохранено в данных плагина.
  • Проверка прав для освобождения стала корректнее: учитываются refontsearch.unjail, refontsearch.unarrest, refontsearch.police и OP.
  • Исправлено право в plugin.yml для /unarrest: команда теперь использует refontsearch.unarrest, а не refontsearch.unjail.

Статус онлайн/оффлайн
  • Исправлен баг, при котором в GUI розыска игрок мог отображаться как "Не в сети", хотя он находится на сервере.
  • Проверка онлайна теперь ищет игрока не только по UUID, но и по сохранённому нику с учётом регистра.
  • /arrestinfo и /demorganinfo также используют более надёжную проверку статуса игрока.


GUI активных арестов
  • Добавлена команда /arrestlist [страница] для просмотра всех активных арестов в GUI.
  • В списке показываются ник, онлайн-статус, остаток срока, статья, причина, выдавший сотрудник и назначенная тюрьма.
  • Добавлены фильтры списка: все / онлайн / оффлайн, фильтр по тюрьме и фильтр по статье.
  • Добавлен поиск по нику прямо из GUI: нажмите кнопку поиска и введите запрос в чат.
  • По клику открывается карточка ареста с быстрыми кнопками: освободить, освободить с причиной, инфо, история, перевести.
  • Перед освобождением теперь открывается подтверждение, чтобы снизить случайные мисклики.
  • В карточку добавлены кнопки изменения срока: -15 мин, -5 мин, +5 мин, +15 мин.
  • Добавлен перевод заключённого в другую jail-зону прямо из карточки ареста.
  • Кнопка история открывает карточку нарушителя через существующую историю игрока.
  • Кнопки управления сроком, переводом и освобождением автоматически пишут действие в аудит и историю игрока.
  • Добавлено право refontsearch.arrestlist; также поддержан запасной узел refontsearch.arrest.list.

Аудит снятия наказаний
  • Добавлена фиксация снятий для /unarrest, /unjail и /unwanted.
  • /unarrest <ник> [причина...] и /unjail <ник> [причина...] теперь могут сохранять причину снятия наказания.
  • В аудит сохраняется, кто снял наказание, с кого сняли, когда это произошло, был ли игрок онлайн, какая команда использовалась и какие данные были до снятия.
  • /custodyaudit теперь показывает не только выдачу наказаний, но и снятия: освобождение из тюрьмы, снятие ареста и снятие розыска.
  • Добавлена команда /arrestaudit — внутриигровой GUI аудита с фильтрами по игроку, сотруднику и типу действия.
  • Снятия также попадают в историю игрока, чтобы в /history было видно, кто и когда закрыл наказание.
  • Освобождение через кнопку в /arrestlist логируется как UNARREST.
Спасибо за использование RefontSearch!
✦ RefontSearch 1.6.0 - Оффлайн-заключение, аудит наказаний и расширенные штрафы ✦

Оффлайн-арест и оффлайн-деморган
  • Добавлена поддержка оффлайн-игроков для /arrest.
  • Добавлена поддержка оффлайн-игроков для /demorgan.
  • Теперь игрока можно посадить в тюрьму или отправить в деморган, даже если он не находится на сервере.
  • Для оффлайн-заключения корректно сохраняются срок, причина и служебные данные.
  • Ограничения, телепорт и связанные эффекты применяются при следующем входе игрока.

Тюрьма и изоляция
  • Оффлайн-арест корректно учитывает тюремную логику без требований к расстоянию до цели.
  • Игрок после входа попадает в назначенную тюрьму с уже активным сроком заключения.
  • Состояние заключения не теряется, если наказание было выдано в отсутствие игрока.

GUI всех штрафов на сервере
  • Добавлена команда /fines all для общего просмотра активных штрафов на сервере.
  • Открывается отдельный GUI со списком игроков, у которых есть штрафы.
  • Из общего списка можно перейти к просмотру штрафов конкретного игрока.
  • Добавлены поиск и постраничный просмотр в общем списке, чтобы GUI не ломался на больших серверах.
  • Поиск теперь работает через переключаемый режим:
    • по нику игрока;
    • по статье или причине штрафа.
  • Добавлена отдельная команда /fines unpaid для просмотра всех неоплаченных штрафов единым списком.
  • Добавлено отдельное право доступа: refontsearch.fine.viewall.

Управление штрафами из GUI
  • Из админского GUI штрафов теперь можно открыть карточку конкретного штрафа.
  • Добавлены быстрые действия: отметить штраф как оплаченный, снять штраф, открыть историю игрока.
  • Добавлен просмотр истории штрафов конкретного игрока прямо из GUI.

Информация по активным наказаниям
  • Добавлена команда /arrestinfo <ник> для быстрого просмотра текущего тюремного наказания игрока.
  • Добавлена команда /demorganinfo <ник> для быстрого просмотра текущего деморгана игрока.
  • Команды работают и по оффлайн-игрокам, если наказание уже активно.

Аудит выдачи наказаний
  • Добавлен аудит выдачи арестов и деморгана с фиксацией:
    • кто выдал наказание;
    • кому выдали наказание;
    • на какой срок;
    • по какой причине;
    • был ли игрок онлайн или оффлайн в момент выдачи.
  • Добавлена HTML-выгрузка аудита через /custodyaudit.
  • Данные аудита сохраняются отдельно и не теряются между перезапусками.

Технические правки
  • Добавлены дополнительные PlaceholderAPI-плейсхолдеры для количества активных штрафов:
    %refontsearch_fines_active%, %refontsearch_fines_count%, %refontsearch_fines_active_count%, %refontsearch_active_fines_count%.

Спасибо за использование RefontSearch!
✦ RefontSearch 1.5.0 — Локализация, стабильный /wanted, изоляция и авто‑розыск ✦

Обновление фокусируется на чистой локализации, стабильной логике розыска и защите режимов заключения

Исправления команды /wanted
  • Исправлен разбор аргументов: статья и причина больше не смешиваются (например при вводе 10.1 УК 434).
  • Добавлен более устойчивый парсер статьи:
    • сначала проверка в articles.predefined;
      YAML:
      # ===== СТАТЬИ УК =====# Предопределённые статьи для подсказок в таб-комплите
      articles:
        # Включить систему статей
        enabled: true
      
        # Список статей (показываются в подсказках)
        predefined:
          - '4.1 УК'
          - '4.2 УК'
          - '5.1 УК'
          - '6.1 УК'
          - '7.1 УК'
          - '8.1 УК'
          - '9.1 УК'
          - '10.1 УК'
          - 'Административное нарушение'
    • если не найдено, распознаются шаблоны вида 10.1 УК, УК 434, ... РФ.
  • Добавлена защита от пустой причины в интерфейсе розыска: отображается - вместо пустой строки.

Локализация и messages.yml
  • Блоки commands и messages вынесены из config.yml в отдельный messages.yml.
  • Сообщения штрафов и прочее также вынесены в messages.yml:
Изоляция в тюрьме/деморгане
  • Добавлен молчаливый запрет на действия с инвентарем для игроков в заключении:
    • нельзя выбрасывать предметы;
    • нельзя перемещать предметы в инвентаре.
  • Без лишних сообщений в чат: действия просто отменяются.
  • Новый параметр конфига:
    safety.custody_inventory_lock.enabled (по умолчанию true).

Перевод между тюрьмой и деморганом
  • При отправке в деморган игрок автоматически снимается с тюрьмы без промежуточного освобождения.
  • При отправке в тюрьму игрок автоматически снимается с деморгана без промежуточного освобождения.

Розыск: авто‑режимы
  • Добавлен опциональный авто‑розыск за убийство игрока:
    wanted.auto_kill.enabled.
  • Добавлены настройки авто‑розыска: звезды, статья, причина, игнор полиции/креатива, уведомления.
  • Срок давности (авто‑снижение звезд по таймеру) доступен в wanted.auto_decay.*.

Спасибо за использование RefontSearch!
  • Лайк 0
Реакции:1 пользователя
✦ RefontSearch 1.4.0 — Деморган WEB+Аудит, Сдача, Премии, Авто‑розыск ✦

Крупное обновление: новые команды, отчёты, защита от побегов и авто‑обновление конфигов

⚠️ ВАЖНО! Обязательно прочитайте:
  • Рекомендую полный рестарт сервера (не /plugman reload) :shy-an:
  • При первом запуске 1.4.0 создаётся бэкап: plugins/RefontSearch/config_backups
  • Конфиг авто‑дополняется по config_version; если много своих правок — проверьте новый файл
  • Если используете PlaceholderAPI — выполните /papi reload

🧾 Деморган WEB + Аудит (Идея от покупателя)
  • Единый HTML‑отчёт с вкладками «Деморган» и «Аудит»
  • Аудит показывает: кто посадил, кто выпустил, сколько сидел
  • Команды:
    • /demorganreport — общий отчёт
    • /demorganaudit — сразу вкладка «Аудит»
  • Опционально: встроенный WEB‑сервер
    • demorgan.report.web.enabled: true
    • host/port/path/public_host/public_port — в конфиге
505shots so
💸 Сокращение деморгана
  • Команда: /demorganreduce <ник> [минуты|процент] (Право: refontsearch.demorgan.reduce)
  • Без второго аргумента сокращает по фактору из конфига:
    • demorgan.reduce.factor: 10 → 1 сек деморгана = 10 реальным сек

🚔 Возможность «сдаться»
  • Команда: /surrender (Право: refontsearch.surrender)
  • Если игрок в розыске — получает уменьшенный срок
  • Можно требовать близость к тюрьме, задавать скидку и кулдаун
  • Настройки: wanted.surrender. и wanted.surrender.reduce.

💰 Премии за арест преступника N+ звёзд
  • Включается: arrest.rewards.enabled: true
  • Минимальные звёзды: arrest.rewards.min_stars
  • Режимы расчёта:
    • table — по таблице (звезда → сумма)
    • per_star — фикс за 1 звезду
  • Работает с Vault / PlayerPoints / command‑экономикой

⏳ Авто‑снижение розыска по времени
  • Настройки: wanted.auto_decay.enabled, interval_minutes
  • Опции: только онлайн, минимальные звёзды, удаление на 0 звёзд

🚧 Штрафы за побег
  • Авто‑увеличение срока за выход из зоны деморгана
  • Штраф за попытку побега из тюрьмы
  • Настройки: demorgan.anti_escape.penalty, jail.escape_penalty

⚙️ Конфиги и бэкапы
  • Авто‑добавление новых ключей и комментариев
  • Бэкапы автоматически в plugins/RefontSearch/config_backups

🔑 Новые права (permissions)
  • refontsearch.demorgan.report
  • refontsearch.demorgan.audit
  • refontsearch.demorgan.reduce
  • refontsearch.surrender

💡 Примеры использования:
Код:
# Сократить деморган по фактору (из конфига)
/demorganreduce Player

# Сократить деморган на 30 минут
/demorganreduce Player 30

# Сократить деморган на 50%
/demorganreduce Player 50%

# Сдаться полиции (уменьшенный срок)
/surrender

# Открыть отчёт деморгана (HTML)
/demorganreport

# Открыть аудит деморгана (HTML)
/demorganaudit

🚔 Спасибо за использование RefontSearch!
✦ RefontSearch 1.3.0 — Глобальный фикс плейсхолдеров и удостоверений ✦

Исправлено 20+ критических багов, переработана система ID-карт и добавлена полная документация

⚠️ ВАЖНО! Обязательно прочитайте:
  • Рекомендуем удалить старый config.yml — новый имеет много комментариев и новых параметров
  • Выполните /papi reload после установки плагина

🔧 Исправлены критические баги из 1.2.0:

Удостоверения:
  • Команды /id, /idcard, /badge не работали вообще (писали "недоступно сейчас")
    → Исправлено: Полностью переработана система — теперь 100% рабочая
  • Плейсхолдеры в книге не заменялись или заменялись на неправильные данные
    → Исправлено: Принудительная обработка на ручную замену
  • При передаче книги другому игроку данные в ней менялись на его
    → Исправлено: Данные "застывают" при создании и больше не меняются
  • Логика показа работала наоборот: /id PlayerName показывало удостоверение PlayerName
    → Исправлено: Теперь показываете СВОЁ удостоверение другому игроку

Плейсхолдеры (было сломано 13 из 30):
  • %refontsearch_duty_time% — показывал пустую строку или 0
    → Исправлено: Корректно отображает время в формате ЧЧ:ММ:СС
  • %refontsearch_duty_calls% — всегда показывал 0
    → Исправлено: Считает принятые вызовы
  • %refontsearch_duty_arrests% — всегда показывал 0
    → Исправлено: Считает аресты на дежурстве
  • %refontsearch_duty_searches% — показывал пустую строку
    → Исправлено: Считает обыски на дежурстве
  • %refontsearch_jail_reason% — пустая строка
    → Исправлено: Показывает причину ареста
  • %refontsearch_jail_article% — пустая строка
    → Исправлено: Показывает статью УК
  • %refontsearch_jail_admin% — пустая строка
    → Исправлено: Показывает имя арестовавшего
  • %refontsearch_demorgan_admin% — писал "неизвестно"
    → Исправлено: Показывает имя администратора
  • %refontsearch_bail_price% — пустая строка или не обновлялся
    → Исправлено: Корректно рассчитывает стоимость залога
  • %refontsearch_bail_available% — пустая строка
    → Исправлено: Показывает 1/0 (доступен/недоступен)
  • %refontsearch_bail_minutes% — пустая строка
    → Исправлено: Показывает оставшееся время для залога
  • %refontsearch_wanted_status% — показывал "Чистый" даже если в тюрьме/деморгане
    → Исправлено: Корректная логика: розыск → тюрьма → деморган → чистый
  • %refontsearch_wanted_stars_bar% — не отображал звёзды визуально
    → Исправлено: Теперь показывает ⭐⭐⭐ (от 0 до 7 звёзд)

Группы в тюрьме/деморгане:
  • Группа тюрьмы не выдавалась сразу — лаг до 2-3 секунд
    → Исправлено: Моментальная смена через LuckPerms API
  • При выходе из тюрьмы старая группа не возвращалась корректно
    → Исправлено: Надёжное сохранение и восстановление

Кастомные модели (Oraxen):
  • Наручники показывали поводок вместо кастомной модели (PAPER@42424242 → поводок)
    → Исправлено: Корректная обработка CustomModelData через ItemResolver
  • Не работала смена моделей через CMD (CustomModelData)
    → Исправлено: Поддержка формата "PAPER@12345" и "oraxen:item_id"

Штрафы:
  • При 10 неоплаченных штрафах выдавало некорректное сообщение
    → Исправлено: Понятное сообщение: "У игрока максимальное количество штрафов"

Таймеры:
  • Время тюрьмы/деморгана шло в оффлайне (даже с настройкой count_offline: false)
    → Исправлено: Корректная обработка настройки count_offline
  • %refontsearch_duty_time% отображался с задержкой 2-3 минуты
    → Исправлено: Моментальное обновление времени

✨ Новые возможности:

  • Новые плейсхолдеры (или изменённые):
    %refontsearch_player_name% (новый) — имя игрока (для удостоверений)
    %refontsearch_duty_time% - Общее накопленное время всех смен — растёт медленно, сохраняется между рестартами.
    %refontsearch_duty_current_time% (новый) - Время текущей смены (с момента /duty on). После /duty off сбрасывается в 00:00:00.
  • Новая логика удостоверений: /id <ник> показывает ВАШЕ удостоверение другому игроку

📋 Полный список плейсхолдеров (все работают в 1.3.0):

Удостоверение:
  • %refontsearch_player_name% — имя игрока (NEW)
  • %refontsearch_badge_number% — нагрудный номер
  • %refontsearch_badge_date% — дата выдачи

Розыск:
  • %refontsearch_wanted_stars% — звёзды (0-7)
  • %refontsearch_wanted_stars_bar% — визуальные звёзды ⭐⭐⭐
  • %refontsearch_wanted_status% — "В розыске"/"В заключении"/"В деморгане"/"Чистый"
  • %refontsearch_wanted_reason%, %refontsearch_wanted_article%, %refontsearch_wanted_officer%, %refontsearch_wanted_since%

Тюрьма:
  • %refontsearch_is_jailed% — true/false
  • %refontsearch_jail_remaining% — оставшееся время
  • %refontsearch_jail_seconds% — секунды
  • %refontsearch_jail_reason%, %refontsearch_jail_article%, %refontsearch_jail_admin%

Деморган:
  • %refontsearch_is_in_demorgan% — true/false
  • %refontsearch_demorgan_remaining% — оставшееся время
  • %refontsearch_demorgan_minutes% — минуты
  • %refontsearch_demorgan_reason%, %refontsearch_demorgan_admin%

Залог:
  • %refontsearch_bail_available% — 1/0 (доступен/недоступен)
  • %refontsearch_bail_price% — стоимость
  • %refontsearch_bail_minutes% — минуты для расчёта

Штрафы:
  • %refontsearch_fines_active% — количество неоплаченных
  • %refontsearch_fines_sum% — сумма с учётом пени
  • %refontsearch_fines_due_next% — ближайший дедлайн
  • %refontsearch_economy_provider% — провайдер экономики

Дежурство:
  • %refontsearch_duty_on% — true/false
  • %refontsearch_duty_time% — время на смене (ЧЧ:ММ:СС)
  • %refontsearch_duty_calls% — принятые вызовы
  • %refontsearch_duty_arrests% — аресты
  • %refontsearch_duty_searches% — обыски

Наручники:
  • %refontsearch_is_leashed% — true/false

📖 Инструкция по обновлению:

  1. Остановите сервер
  2. Замените jar-файл на новый (RefontSearch-1.3.0.jar)
  3. Удалите config.yml (сохраните копию для переноса настроек)
  4. Запустите сервер — создастся новый конфиг с комментариями
  5. Выполните /papi reload
  6. Удалите все старые удостоверения из инвентарей
  7. Выдайте новые через /takeid <ник>

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

Удостоверения:
  • Полицейский R1zonChik пишет /takeid → получает книгу "Сотрудник: R1zonChik, №67338"
  • R1zonChik подходит к Player и пишет /id Player
  • Player видит удостоверение R1zonChik (его имя, номер, дату)
  • Если R1zonChik передаст книгу Player — данные останутся "Сотрудник: R1zonChik"

Кастомные модели:
Код:
# Через CustomModelData
item: "PAPER@42424242"

# Через Oraxen
item: "oraxen:police_badge"

# Работает для: удостоверения, дубинки, наручников, штрафов

📦 Зависимости:

  • Обязательно: Vault
  • Рекомендуется: PlaceholderAPI (но работает и без него)
  • Для экономики: EssentialsX Economy или CMI Economy
  • Для групп: LuckPerms
  • Для моделей: Oraxen (опционально)

Требования: Spigot/Paper 1.16+ | Протестировано было на 1.21.8 и 1.16.5

🚔 Спасибо за использование RefontSearch! Все баги исправлены ✓
Читайте новости в телеграмм
✦ RefontSearch 1.2.0 — Штрафы 2.0, Удостоверение, Залог, Апелляция ✦
Красивое GUI для штрафов, обновлённое удостоверение, залог через экономику и возвращённая мини‑игра

Новое:
  • Штрафы 2.0: /fine <ник> открывает меню выдачи на русском. Выбирайте причину, регулируйте сумму кнопками, подтверждайте одним кликом. Оплата и список — /fines.
  • Лимиты и сроки: минимальная/максимальная сумма, КД на выдачу, срок оплаты (по умолчанию 7 дней) и пеня (множитель/надбавка).
  • Удостоверение (/badge, /id, /idcard): только чёрный текст, без звания/отдела/UUID. Дата выдачи фиксируется при первом показе. Ограничение дистанции по команде и двойной SHIFT рядом с целью (меняется в конфиге).
  • Залог (/bail): приглашение в чат при аресте, GUI‑оплата по таблице/пер‑минутно, освобождение и возврат группы (через Vault‑экономику).
  • Диагностика: /refontsearch diag показывает имя эко‑провайдера Vault.

Команды и права:
  • /fine — refontsearch.fine (меню выдачи) | /fines — refontsearch.fine.pay
  • /badge, /id, /idcard — refontsearch.badge
  • /bail — refontsearch.bail (для оплаты нужна экономика)
  • /refontsearch diag | reload — refontsearch.reload

Зависимости:
  • Обязательно: Vault
  • Для оплаты штрафов и залога: EssentialsX + EssentialsXEconomy или CMI + CMILib + CMIEconomy
  • Рекомендуем: LuckPerms (надёжная смена/возврат групп)

Удостоверение (коротко):
idcard:
  enabled: true
  require_police_permission: true
  command_max_distance: 7.0
  cooldown_seconds: 15
  open:
    via_command: true
    via_shift_taps:
      enabled: true
      required_taps: 2
      window_ticks: 12
      max_distance: 5.0
  book:
    title: "§0УДОСТОВЕРЕНИЕ"
    author: "Police Department"
    force_black: true
    hide_uuid: true
    static_issue_date: true
    pages:
      - |
        §0§lУДОСТОВЕРЕНИЕ
        §0Сотрудник: {officer}
        §0Нагрудный №: {badge}
        §0Дата выдачи: {date}

Залог (GUI и цены):
bail:
  enabled: true
  show_prompt_on_jail: true
  gui:
    title: "§0Оплата залога"
    confirm_name: "§aОплатить залог"
    confirm_lore:
      - "§7Сумма: §e{price}{cur}"
      - "§7Оставшееся время: §f{minutes} мин."
    cancel_name: "§cОтмена"
  pricing:
    mode: "table"           # table | per_minute
    per_minute: 500
    table:
      "10": 5000
      "20": 10000
      "30": 15000
      "45": 22500
      "60": 30000
  messages:
    not_available: "§cСейчас залог недоступен."
    paid_success: "§aЗалог оплачен: {price}{cur}. Вы освобождены."

Штрафы 2.0 (меню выдачи на русском):
fines:
  enabled: true
  require_police_permission: true

  limits:
    max_active_per_player: 10
    issue_cooldown_seconds: 5
    min_amount: 100
    max_amount: 100000

  payment:
    due_days: 7
    overdue:
      mode: "multiplier"     # multiplier | add
      multiplier: 1.5
      cap_multiplier: 2.0
      add: 0

  gui:
    title_list: "§0Штрафы"
    title_issue: "§0Вынести штраф"

  issue_gui:
    title: "§0Вынести штраф"
    confirm_name: "§aПодтвердить"
    cancel_name: "§cОтмена"
    current_name: "§6Текущий штраф"
    amount_controls:
      minus_small: -100
      minus_medium: -500
      minus_big: -1000
      plus_small: 100
      plus_medium: 500
      plus_big: 1000
    reasons:
      - name: "Проезд на красный"
        article: "12.1 КоАП"
        default_amount: 2500
      - name: "Превышение скорости"
        article: "12.9 КоАП"
        default_amount: 3000
      - name: "Нецензурная брань"
        article: "20.1 КоАП"
        default_amount: 2500

Апелляция (классическая мини‑игра):
appeal:
  enabled: true
  affects: "both"
  cooldown_seconds: 600
  per_sentence_attempts: 1
  win:
    chance_percent: 33
    reduce_percent: 20.0
  lose:
    increase_percent: 10.0
  gui:
    steps: 35                # Кол-во шагов до авто‑остановки
    step_period_ticks: 3     # Пауза между шагами (20 тиков = 1 сек)

PlaceholderAPI — плейсхолдеры:
  • Новые в 1.2.0:
    • %refontsearch_economy_provider% — имя провайдера экономики Vault (например, “EssentialsX Economy”, “CMI Economy”, “none”)
    • %refontsearch_badge_number% — нагрудный номер сотрудника
    • %refontsearch_badge_date% — дата выдачи удостоверения (фиксируется при первом показе)
    • %refontsearch_fines_active% — количество неоплаченных штрафов у игрока
    • %refontsearch_fines_sum% — сумма к оплате с учётом просрочки (пеня)
    • %refontsearch_fines_due_next% — ближайший дедлайн оплаты (дата) или “-”
    • %refontsearch_bail_price% — текущая стоимость залога для игрока (0 если недоступно)
  • Розыск:
    • %refontsearch_wanted_stars% — звёзды розыска (0–7)
    • %refontsearch_wanted_status% — “В розыске”/“Чистый”
    • %refontsearch_wanted_reason%, %refontsearch_wanted_article%, %refontsearch_wanted_officer%, %refontsearch_wanted_since%
  • Тюрьма/Демогран:
    • %refontsearch_is_jailed%, %refontsearch_jail_remaining%, %refontsearch_jail_seconds%
    • %refontsearch_jail_reason%, %refontsearch_jail_article%, %refontsearch_jail_admin%
    • %refontsearch_is_in_demorgan%, %refontsearch_demorgan_remaining%, %refontsearch_demorgan_minutes%
    • %refontsearch_demorgan_reason%, %refontsearch_demorgan_admin%
  • Наручники:%refontsearch_is_leashed%
  • Дежурство:%refontsearch_duty_on%, %refontsearch_duty_time%, %refontsearch_duty_calls%, %refontsearch_duty_arrests%, %refontsearch_duty_searches%
  • Залог:%refontsearch_bail_available%, %refontsearch_bail_minutes%

Важно:
  • Если /refontsearch diag показывает Economy: нет — установите эко‑провайдера (см. «Зависимости»). Без него /bail и оплата штрафов работать не будут.
  • После обновления плейсхолдеров выполните /papi reload (или перезапуск сервера), при необходимости — /refontsearch reload.
✦ RefontSearch 1.1.1 — Апелляция, История, Дежурство ✦
Мини‑игра на сокращение срока, карточка нарушителя, on‑duty‑режим и список вызовов

Новое:
  • Апелляция: GUI‑спиннер; клик только останавливает стрелку, исход по позиции белой стрелки.
  • Скорость и длительность: шаги и период тиков настраиваются.
  • RP‑подсказка про /appeal при аресте и демогранте (вкл/выкл и тексты в сообщениях).
  • История: /history — GUI карточка нарушителя (розыск/аресты/обыски).
  • Дежурство: /duty on/off, режим уведомлений (on_duty_only/always), учёт активности.
  • Вызовы: /policecalls — список активных, авто‑очистка по TTL.

Исправления:
  • Не освобождает заключённых при рестарте: исправлен порядок инициализации и логика проверки тюрьмы.
  • Корректное удаление вызова при оффлайне игрока.

Часть конфига — Апелляция:
appeal:
  enabled: true
  affects: "both"
  cooldown_seconds: 600
  per_sentence_attempts: 1
  win:
    chance_percent: 33
    reduce_percent: 20.0
  lose:
    increase_percent: 10.0
  gui:
    title: "§0ИСПЫТАНИЕ: УДАЧА"
    good_material: "LIME_STAINED_GLASS_PANE"
    bad_material: "RED_STAINED_GLASS_PANE"
    steps: 35                # Количество шагов анимации до авто‑остановки
    step_period_ticks: 3     # Пауза между шагами (20 тиков = 1 сек)
  messages:
    win: "§aУдача! Срок сокращён."
    lose: "§cНе повезло. Срок увеличен."
  hint:
    on_jail_enabled: true
    on_demorgan_enabled: true

Часть конфига — Дежурство и Вызовы:
police:
  duty:
    enabled: true
    notify_mode: "on_duty_only"
    activity:
      enabled: true
      save_interval: 120
  calls:
    ttl_seconds: 10800            # Устаревание вызова (сек), по умолчанию 3 часа
    cleanup_interval_seconds: 300 # Период авто‑очистки (сек)
    view_requires_duty: false     # Требовать дежурство для /policecalls
    page_size: 10                 # Записей на страницу
✦ RefontSearch 1.1.0 — Защищённые предметы ✦
Обыск: запрет на изъятие отдельных предметов, метка в GUI и уведомления

Новое:
  • Защищённые предметы: их нельзя изъять при обыске.
  • Метка в интерфейсе: “ЗАПРЕЩЕНО ИЗЫМАТЬ”.
  • Уведомления: сообщение вам и офицеру при попытке изъятия такого предмета.
Часть в конфиге:
# Список предметов (Bukkit Material), которые НЕЛЬЗЯ изымать при обыске
# Примеры: NETHER_STAR, TOTEM_OF_UNDYING, ELYTRA, DIAMOND, DIAMOND_SWORD
protected_items:
  - NETHER_STAR
  - TOTEM_OF_UNDYING
  - ELYTRA
  - DIAMOND

Вложения

  • изображение_2025-08-28_211431209.png
    изображение_2025-08-28_211431209.png
    30,7 КБ · Просмотры: 20
✦ RefontSearch 1.0.9 ✦
Демогрант: жёсткий возврат, анти‑спам, ActionBar после входа, хранение точек; режимы таймера Demorgan/Jail

⚠️ ПЕРЕД ОБНОВЛЕНИЕМ
  • Добавлен файл plugins/RefontSearch/demorgan_points.yml для точек демогранта (spawn/release).
  • Проверьте ключи таймера: demorgan.timer.countdown_mode и jail.timer.countdown_mode (по умолчанию "always").

💠 Демогрант:
  • Гарантированный возврат в зону: при выходе за радиус игрок жёстко возвращается на точку демогранта. (раньше не телепортировало)
  • Анти‑спам: Title/сообщение при попытке побега показываются с кулдауном (demorgan.anti_escape.warn_cooldown_ms). Больше нет шквала одинаковых сообщений.
  • Отложенный возврат: по запросу — через +-2 сек после предупреждения выполняется повторный TP назад.
  • ActionBar/Title таймер после переподключения: при входе заключённого таймер перезапускается, остаток времени снова виден.
  • Точки демогранта сохраняются надёжно: /setdemorgan spawn|release пишут в demorgan_points.yml; если точка не задана — фолбэк на jailLocation. :eyes-an:

💠 Режимы отсчёта времени:
  • Demorgan: demorgan.timer.countdown_mode — "always" (дефолт, тикает оффлайн+онлайн) или "online_only" (только онлайн). Активные сроки конвертируются автоматически.
  • Jail: аналогично, jail.timer.countdown_mode — "always"/"online_only". По умолчанию — "always".

💠 Прочие улучшения:
  • Теперь на версиях 1.20 и выше вы не сможете положить вещи в наручниках в вазу и т.д.
  • Лог‑предупреждение, если точка демогранта не задана — проще диагностика конфигурации.

🧩 Ключи конфигурации (вырезка):
YAML:
demorgan:
  timer:
    countdown_mode: "always"      # "always" — идёт всегда; "online_only" — только онлайн
  anti_escape:
    warn_cooldown_ms: 1500        # анти‑спам предупреждений/эффектов
    message_enabled: true         # сообщение в чате
    effects_enabled: true         # Title/звук при возврате

jail:
  timer:
    countdown_mode: "always"      # режим тика таймера тюрьмы

🔧 Совместимость: Minecraft 1.16.5 — 1.21+
💬 Нашёл баг или идея? Пиши — поправлю оперативно. :try_man:
✦ RefontSearch 1.0.8 ✦
Тотем‑защита, автохил, блокировка контейнеров в наручниках, фиксы звуков и привязки

⚠️ ПЕРЕД ОБНОВЛЕНИЕМ
  • Сделайте бэкап текущего config.yml. Добавлены новые ключи. Рекомендуется удалить старый config.yml и перезапустить сервер для генерации нового с комментариями, затем перенести свои значения.
  • Данные розыска/тюрьмы/демогрант не трогаются (файлы data.yml, jail_data.json, demorgan_data.json сохраняются).
  • Рекомендуем полный /stop и запуск вместо hot‑reload.

💠 Новая система «Тотема» и автохил (настраиваемые):
  • Защита контролируемых игроков (наручники/тюрьма/демогрант): урон от окружения/мобов не опускает HP ниже порога.
  • Триггер «тотема»: частицы, звук, Title/Subtitle, регенерация и опциональный автохил до фулл HP.
  • Полная конфигурация в config.yml: порог HP, кулдаун, частицы/звук/тексты/цвета, реген, шаг и период автохила, либо полное отключение.
  • Совместимость 1.16.5–1.21+: используем строковые ключи эффектов и звуков, с фолбэками.

💠 Наручники: блокировка контейнеров и станков:
  • В наручниках запрещено открывать любые GUI‑блоки: сундуки, бочки, эндер‑сундук, шалкеры, печи/коптильни/плавильни, раздатчики/выбрасыватели, хопперы, варочные стойки, стол зачарования, наковальни/точило, картографический/ткацкий/резчик камня, кузница, верстак, маяк, лекторий, компостер и др.
  • Блокируем и клик по блоку, и любые открытые инвентари (InventoryOpenEvent), включая вагонетки‑контейнеры.
  • Пермишен для обхода: refontsearch.leash.bypass.containers.

💠 Привязка к забору и защита:
  • Корректное определение «своего» столба (якорь проверяется по базовому блоку).
  • Авто‑отвязка и снятие наручников при ломании/взрыве/горении забора и движении поршней.

💠 Звуки и совместимость:
  • Переход на строковые ключи звуков (например, entity.leash_knot.place) вместо enum — фикс NoSuchFieldError на разных ядрах/версиях.

🧩 Новые ключи config.yml (вырезка):
YAML:
# Эффект «тотема» и защита от окружения для контролируемых игроков
safety:
  controlled_damage:
    enabled: true          # Вкл/выкл всей логики
    min_hp: 1.0            # Минимум HP после урона (1.0 = полсердца). Для 1.5 сердец поставьте 3.0

    totem:
      enabled: true
      cooldown_ms: 4000
      particle: "TOTEM"        # Любой Particle; есть фолбэк на TOTEM_OF_UNDYING/SPELL_INSTANT
      particle_count: 100
      offset_x: 0.6
      offset_y: 1.0
      offset_z: 0.6
      speed: 0.1
      sound: "item.totem.use"  # Любой звуковой ключ
      volume: 1.0
      pitch: 1.0
      title:
        enabled: true
        text: "&a&lСПАСЕНИЕ"
        subtitle: "&7Выживите, восстановите силы"
        fade_in: 5
        stay: 20
        fade_out: 10
      regeneration:
        enabled: true
        duration_ticks: 200
        amplifier: 2
      auto_heal:
        enabled: true
        step: 1.0
        period_ticks: 5

# Обход запрета контейнеров/станков в наручниках
# Пермишен: refontsearch.leash.bypass.containers

🔧 Совместимость: Minecraft 1.16.5 — 1.21+
💬 Нашёл баг или есть идея? Пиши в обсуждения или в ТГ.
ВерхНиз