Drop Stacker
Fabric-мод для Minecraft, который автоматически объединяет выпавшие предметы на земле в стопки — снижая лаги от предметов на серверах и в одиночных мирах. Настраиваемый размер стопки, радиус сканирования и интервал сканирования.
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 3,9 тыс.
- Подписчиков на Modrinth
- 11
- версий
- 5
- Обновлён
- 19 сентября 202619 сент.
- Опубликован
- в 2026
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
Drop Stacker
Fabric-мод для Minecraft, который автоматически объединяет выпавшие предметы на земле в одну сущность, снижая нагрузку от сущностей и поддерживая порядок в мире.
Возможности
- Мгновенное объединение: Новые дропы поглощаются ближайшей кучей в момент появления — в том же тике, а не после интервала сканирования. Дропы моба схлопываются ещё до того, как вы увидите, как они упали.
- Схлопывание всей кучи: Каждый проход объединения забирает всех совместимых соседей сразу, так что куча из 100 предметов становится одной сущностью за один проход, а не по одному предмету за проход.
- Безлимитные кучи: Стаки сверх ванильного лимита в 64 предмета — вплоть до настроенного
maxStackSize, с переопределениями для отдельных предметов. - Визуальная индикация: Цветная метка с количеством отображается над предметами (настраиваемые пороги).
- Таймер исчезновения: Опциональный отсчёт на метке с цветовой кодировкой по срочности (поддерживает бесконечные предметы с
∞). - Адаптивное сканирование: Простаивающие кучи постепенно снижают частоту сканирования (вплоть до
maxScanInterval), так что мир, полный осевших предметов, почти ничего не стоит. Это безопасно, потому что новые дропы вливаются в кучи при появлении, а не ждут опроса. - Правила для предметов: Чёрный список, белый список и переопределения размера стака для отдельных предметов — всё принимает теги предметов (
#minecraft:logs), а также точные id. - Управление во время игры:
/dropstackerперезагружает конфиг, показывает статистику и меняет настройки без перезапуска. - Уважает именованные предметы: Сущность предмета с собственным именем никогда не переименовывается и не поглощается молча в другую кучу.
- Соответствие ванили: Объединение учитывает ванильные защиты от бесконечного времени жизни, близкого исчезновения и бесконечной задержки подбора, а также сохраняет самую долгую задержку подбора, чтобы объединение не могло её сократить.
- Только на сервере: Вся логика работает на сервере. Ванильные клиенты видят счётчики и таймеры без установленного мода.
Требования
- Minecraft 26.2
- Fabric Loader 0.19.3+
- Fabric API
- Fabric Language Kotlin
- Java 25+
Команды
/dropstacker требует уровень разрешений 2 (gamemasters).
| Команда | Описание |
|---|---|
/dropstacker reload | Перезагрузить файл конфига с диска |
/dropstacker stats | Проходы объединения, схлопнутые сущности и текущие настройки |
/dropstacker resetstats | Сбросить счётчики |
/dropstacker toggle | Включить/выключить стакинг во время игры |
| `/dropstacker set maxStackSize ` | Изменить лимит стака |
| `/dropstacker set scanInterval ` | Изменить интервал сканирования |
| `/dropstacker set radius ` | Изменить горизонтальный радиус сканирования |
| `/dropstacker set verticalRadius ` | Изменить вертикальный радиус сканирования |
Конфигурация
Файл конфига создаётся автоматически в .minecraft/config/drop-stacker.json (или config/drop-stacker.json на сервере). Поля обновляются автоматически при перезапуске, если вы обновляете мод.
{
"enabled": true,
"mergeOnSpawn": true,
"maxStackSize": 1000,
"radius": 5.0,
"verticalRadius": 2.0,
"scanInterval": 5,
"maxScanInterval": 100,
"maxMergePerPass": 64,
"ageInheritance": "YOUNGEST",
"labelMode": "ALWAYS",
"showDespawnTimer": true,
"countLowThreshold": 64,
"countHighThreshold": 500,
"hideSingleItemLabel": false,
"despawnTicks": 6000,
"blacklist": [],
"whitelist": [],
"overrides": {}
}| Поле | Описание | По умолчанию |
|---|---|---|
enabled | Главный переключатель всего стакинга | true |
mergeOnSpawn | Объединять новые дропы мгновенно при появлении | true |
maxStackSize | Максимум предметов на одну стакнутую сущность | 1000 |
radius | Горизонтальный радиус сканирования (блоки) | 5.0 |
verticalRadius | Вертикальный радиус сканирования (блоки) | 2.0 |
scanInterval | Тиков между сканированиями объединения для активной кучи | 5 |
maxScanInterval | Самая медленная частота сканирования, до которой снижается простаивающая куча | 100 |
maxMergePerPass | Максимум соседей, поглощаемых за один проход | 64 |
ageInheritance | Таймер исчезновения при объединении: YOUNGEST, KEEP_RECEIVER или OLDEST | YOUNGEST |
labelMode | Когда показывать метку: ALWAYS, STACKED_ONLY или NEVER | ALWAYS |
showDespawnTimer | Показывать отсчёт исчезновения на метке | true |
countLowThreshold | Количество, при котором метка становится жёлтой | 64 |
countHighThreshold | Количество, при котором метка становится красной | 500 |
hideSingleItemLabel | Скрывать метку, если в стаке только 1 предмет | false |
despawnTicks | Скорость исчезновения в мире (синхронизирует таймер с настройками сервера) | 6000 |
blacklist | Предметы, которые никогда не стакаются | [] |
whitelist | Если не пусто, стакаются только эти предметы | [] |
overrides | Лимиты стака для отдельных предметов | {} |
Правила для предметов
blacklist, whitelist и overrides принимают точные id предметов и теги предметов (с префиксом #):
{
"blacklist": ["minecraft:elytra", "#minecraft:shulker_boxes"],
"overrides": {
"minecraft:cobblestone": 5000,
"#minecraft:logs": 512
}
}Замечание про ageInheritance
Значение по умолчанию YOUNGEST означает, что куча при поглощении дропа наследует самое долгое оставшееся время жизни — так что куча рядом с фермой постоянно сбрасывает свой таймер исчезновения и фактически никогда не исчезает. Это удобно, но на загруженном сервере кучи предметов могут накапливаться бесконечно. Поставь KEEP_RECEIVER для ванильного поведения исчезновения.
Сборка
./gradlew buildГотовый JAR лежит в build/libs/. Gradle сам подтягивает нужный тулчейн Java 25.
Лицензия
MIT — см. LICENSE.
[!CAUTION] Я не особо силён в Kotlin, и этот проект делался с помощью ИИ. Тут может быть плохой код, неправильные паттерны или вещи, которые можно было бы сделать куда лучше. Если что-то заметишь — пожалуйста, открой issue или pull request. Я правда это ценю и буду на этом учиться. Спасибо.
Частые вопросы
Как установить Drop Stacker?
Установите Fabric под свою версию Minecraft, скачайте Drop Stacker под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Drop Stacker?
У Drop Stacker есть сборки для Minecraft 1.21.1–1.21.11, 26.1.2–26.3.
Нужен ли Drop Stacker на сервере?
Ставится только на сервер; игрокам ставить не нужно