Arbiter
Серверный очиститель предметов на земле для Fabric с обратным отсчётом в боссбаре, аварийной очисткой с учётом TPS и правилами защиты по измерениям.
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 201
- Подписчиков на Modrinth
- 0
- версия
- 1
- Обновлён
- 4 апреля 20264 апр.
- Опубликован
- в 2026
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
/kill @e[type=item] умной логикой очистки предметов: очистка по расписанию, аварийные зачистки с учётом TPS, правила автоочистки для каждого измерения и система защиты, гарантирующая, что при исчезновении предметов не пропадёт ничего важного. ## Совместимость | Сторона | Статус | Примечания | |---|---|---| | Сервер | Обязательно | Все функции работают только на стороне сервера | | Клиент | Не нужен | Игрокам не нужно устанавливать Arbiter, чтобы зайти | | Java | Требуется 21+ | Также требуются Fabric Loader + Fabric API | ## Возможности - Умная защита предметов — Именованные (переименованные на наковальне) и зачарованные предметы никогда не удаляются; защита по редкости по умолчанию распространяется на RARE и выше (protect_rarity_minimum: "RARE"). - Аварийная очистка с учётом TPS — Отслеживает TPS сервера и запускает ускоренную зачистку, когда TPS падает ниже emergency_tps_threshold (по умолчанию: 15.0), с emergency_clear_cooldown_seconds (по умолчанию: 60) для предотвращения слишком частых очисток. - Отсчёт на боссбаре — Боссбар с плавной сменой цвета (зелёный → жёлтый → красный) показывает предупреждение за warning_start_seconds (по умолчанию: 30) до каждой запланированной очистки всем игрокам, включая тех, кто зашёл позже. - Настройка для каждого измерения — Каждое измерение имеет независимые clear_interval_seconds, item_count_threshold и переопределения защиты; незаданные поля наследуются из глобального конфига. - Цепочка приоритетов защиты из 10 правил — Судьба предмета определяется детерминированной цепочкой: item_overrides BLACKLIST побеждает PROTECT, который побеждает список protected_items, который побеждает protected_namespaces, который побеждает редкость, которая побеждает близость. Ни один предмет не будет удалён неожиданно. - Защита пространств имён модов — Добавьте registry ID любого мода в protected_namespaces, чтобы защитить все его предметы одной строкой; назначайте уровни приоритета (LOW / NORMAL / HIGH) через namespace_tiers. - Горячая перезагрузка конфига JSON5 — Изменения файла применяются примерно за 1 секунду через отслеживание файла; /arbiter reload принудительно перезагружает немедленно. Некорректные значения при загрузке приводятся к безопасным диапазонам. ## Режимы быстрого старта Arbiter поставляется с тремя встроенными пресетами. Примените любой пресет одной командой — конфиг перезаписывается и автоматически перезагружается на лету. | Режим | Интервал | Порог предметов | Уровень защиты | Команда | |---|---|---|---|---| | aggressive | 60 с | 0 (очищать всегда) | Только редкость EPIC; именованные/зачарованные/пространства имён отключены | /arbiter mode aggressive | | warden | 180 с | 50 предметов | Именованные, зачарованные, RARE+, список пространств имён | /arbiter mode warden | | calm | 600 с | 200 предметов | Именованные, зачарованные, UNCOMMON+, список пространств имён, расширенный список защищённых предметов | /arbiter mode calm | | custom | из конфига | из конфига | Настроено вручную; все значения из файла конфига | /arbiter mode custom | ## Команды | Команда | Действие | Право доступа | Уровень OP по умолчанию | |---|---|---|---| | /arbiter force [dimension] | Принудительно очистить все миры или конкретное измерение | arbiter.force | 4 | | /arbiter status | Показать TPS, время до следующей очистки, количество предметов по мирам | arbiter.status | 2 | | /arbiter reload | Перезагрузить конфиг с диска без перезапуска | arbiter.reload | 4 | | /arbiter stats | Просмотреть статистику сессии (запущенные очистки, удалённые предметы) | arbiter.stats | 2 | | /arbiter dryrun [dimension] | Предпросмотр того, что было бы очищено, без удаления чего-либо | arbiter.dryrun | 2 | | /arbiter testbar [seconds] | Запустить тест отсчёта на боссбаре | arbiter.testbar | 4 | | `/arbiter mode | Применить пресет: aggressive / warden / calm / custom |arbiter.mode| 4 |
Интеграция с LuckPerms работает автоматически — если LuckPerms не установлен, используется уровень OP.
Пример выводаdryrun: Would CLEAR: 47 items — Would protect: 12
## Конфигурация
Arbiter работает из коробки. config/arbiter.json5создаётся при первом запуске и полностью аннотирован — каждая настройка задокументирована прямо в файле.
| Настройка | По умолчанию | Описание |
|---|---|---|
|clear_interval_seconds|300| Время между запланированными очистками |
|warning_start_seconds|30| Отсчёт на боссбаре начинается за столько секунд до очистки |
|item_count_threshold|100| Пропустить очистку, если предметов меньше этого количества |
|emergency_tps_threshold|15.0| Запускать аварийную очистку, когда TPS падает ниже этого значения;0отключает |
|emergency_clear_cooldown_seconds|60| Минимальное количество секунд между аварийными очистками |
|protect_named_items|true| Защищать предметы, переименованные на наковальне |
|protect_enchanted_items|true| Защищать зачарованные предметы |
|protect_rarity_minimum|"RARE"| Минимальная ванильная редкость для авто-защиты (EPIC / RARE / UNCOMMON / COMMON) |
|player_proximity_radius|10| Защищать предметы в радиусе N блоков от любого игрока |
|protected_namespaces|["mod_namespace"]| Защищать все предметы из указанных пространств имён модов |
|protected_items|["minecraft:nether_star", ...]| Точные ID предметов, которые всегда защищены |
|item_overrides|{"minecraft:dirt": "BLACKLIST"}| PROTECT или BLACKLIST для конкретного предмета — переопределяет все остальные правила |
|bossbar_enabled|true| Показывать отсчёт на боссбаре |
|actionbar_warnings_enabled|false| Показывать отсчёт в actionbar вместе с боссбаром |
|broadcast_clear_results|true` | Объявлять результаты очистки всем игрокам |Примечание:protect_rarity_minimum: "EPIC"почти ничего не защищает в ванилле — зачарованное золотое яблоко это единственный предмет с редкостью EPIC. Используй"RARE"или"UNCOMMON"для осмысленной защиты.Полный пример конфига (нажми, чтобы развернуть)
// Конфигурация Arbiter — изменения подхватываются на лету автоматически { // ── Тайминги ──────────────────────────────────────────────── "clear_interval_seconds": 300, "warning_start_seconds": 30,
// ── Пороги ────────────────────────────────────────────────── "item_count_threshold": 100, "emergency_tps_threshold": 15.0, "emergency_clear_cooldown_seconds": 60,
// ── Защита предметов ──────────────────────────────────────── "protect_named_items": true, "protect_enchanted_items": true, "protect_rarity_minimum": "RARE", "player_proximity_radius": 10,
// ── Списки модов и предметов ──────────────────────────────── "protected_namespaces": [ "your_mod" ], "protected_items": [ "minecraft:nether_star", "minecraft:elytra", "minecraft:dragon_egg", "minecraft:totem_of_undying" ], "namespace_tiers": { "minecraft": "NORMAL", "create": "NORMAL" },
// Переопределения для отдельных предметов — PROTECT или BLACKLIST // Они перекрывают ВСЕ остальные правила "item_overrides": { "minecraft:dirt": "BLACKLIST", "minecraft:cobblestone": "BLACKLIST", "minecraft:netherite_ingot": "PROTECT" },
// ── Отображение ───────────────────────────────────────────── "bossbar_enabled": true, "bossbar_style": "NOTCHED_10", "bossbar_yellow_threshold_seconds": 15, "bossbar_red_threshold_seconds": 5, "actionbar_warnings_enabled": false,
// ── Переопределения по измерениям ─────────────────────────── "dimensions": { "minecraft:the_nether": { "clear_interval_seconds": 180, "item_count_threshold": 50 }, "minecraft:the_end": { "clear_interval_seconds": 120 } },
// ── Логирование ───────────────────────────────────────────── "log_clears_to_console": true, "broadcast_clear_results": true }
</details>
## Сравнение
| Возможность | Arbiter | ICL | ClearLagg |
|---|---|---|---|
| Отсчёт в боссбаре | ✅ С градацией цвета | ❌ Только чат | ❌ Только чат |
| Защита именованных предметов | ✅ | ❌ | ⚠️ Частично |
| Защита зачарованных предметов | ✅ | ❌ | ⚠️ Частично |
| Защита по редкости | ✅ | ❌ | ❌ |
| Защита неймспейсов модов | ✅ | ❌ | ❌ |
| PROTECT/BLACKLIST для отдельных предметов | ✅ | ❌ | ⚠️ Только вайтлист |
| Экстренная очистка по TPS | ✅ С кулдауном | ❌ | ⚠️ Без кулдауна |
| Порог по количеству предметов | ✅ | ❌ | ❌ |
| Конфиг по измерениям | ✅ | ❌ | ❌ |
| Горячая перезагрузка конфига | ✅ Слежение за файлом + команда | ❌ | ❌ |
| Защита рядом с игроком | ✅ | ❌ | ❌ |
| Без лагов от `System.gc()` | ✅ | ✅ | ❌ |
| Тихая очистка (без звуков) | ✅ | ❌ Писк нотного блока | ✅ |
| Только серверная сторона | ✅ | ✅ | ✅ (Bukkit) |
## Требования
- Minecraft 1.21.1
- Fabric Loader (последний)
- Fabric API
- Java 21+
- LuckPerms (опционально — иначе используются уровни OP)
## FAQ
**Arbiter работает только на серверной стороне?**
Да. Игроки подключаются к серверу с Arbiter, ничего не устанавливая на клиент.
**Будет ли Arbiter портирован на старые версии Minecraft?**
Порт на старые версии пока не планируется. Следи за репозиторием на GitHub, чтобы не пропустить анонсы будущих версий.
**Конфликтует ли Arbiter с ClearLagg, ICL или другими модами на очистку предметов?**
Запускать два мода на очистку предметов одновременно избыточно и не рекомендуется. В остальном Arbiter совместим со всеми модами на Fabric.
**Можно ли защитить предметы из модовых измерений или кастомных реестров?**
Да — добавь неймспейс реестра любого мода в `protected_namespaces`. Переопределения через `item_overrides` работают для любого ID предмета независимо от мода.
---
[GitHub Issues](https://github.com/KonigTX/Arbiter/issues) | [MIT License](LICENSE)Частые вопросы
Как установить Arbiter?
Установите Fabric под свою версию Minecraft, скачайте Arbiter под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Arbiter?
У Arbiter есть сборки для Minecraft 1.21.1–1.21.11.
Нужен ли Arbiter на сервере?
Ставится только на сервер; игрокам ставить не нужно