Backpack v1.0
Персональный рюкзак для каждого игрока. Spigot/Paper/Bukkit 1.21+, Java 17+ Автор: s0nd3r
Нашли баг\ошибку? Хочете обновления? Пишите в обсуждении
Описание
BackpackPlus добавляет каждому игроку персональный рюкзак — дополнительный инвентарь, который всегда доступен по команде. Размер рюкзака определяется правами игрока: чем выше группа — тем больше рюкзак. Содержимое сохраняется асинхронно и не теряется между сессиями.
Функции
- Персональный рюкзак для каждого игрока с сохранением между сессиями
- Размер рюкзака от 9 до 54 слотов — определяется правом игрока
- При наличии нескольких прав автоматически выбирается наибольший доступный размер
- При уменьшении прав предметы сверх лимита не теряются — хранятся в файле
- Три режима при смерти: выпасть на землю / сохранить / удалить
- Право backpack.keepondeath перекрывает настройку конфига для конкретного игрока
- Просмотр рюкзака другого игрока для администраторов — онлайн и оффлайн
- Уведомление владельца когда администратор открывает его рюкзак
- Кулдаун между открытиями (настраивается, обходится правом)
- Заблокированные миры — список в конфиге (обходится правом)
- Асинхронное сохранение — не нагружает main thread
- Автосохранение всех рюкзаков каждые N секунд
- Предзагрузка рюкзака при входе игрока — первое открытие мгновенное
- Три языка интерфейса: русский, английский, украинский
- Все тексты редактируются в lang/ru.yml (или en.yml / uk.yml)
- Перезагрузка конфига и языка без рестарта — работает из консоли и из игры
Команды
| Команда | Право | Кто | Описание |
|---|---|---|---|
| /bp или /backpack | backpack.use | игрок | Открыть свой рюкзак |
| /bp <ник> | backpack.open.others | игрок / консоль | Открыть рюкзак другого игрока |
| /bp reload | backpack.reload | игрок / консоль | Перезагрузить конфиг и язык |
| /bp help | — | все | Показать справку |
Алиасы: /bp, /рюкзак
Права
| Право | По умолч. | Описание |
|---|---|---|
| backpack.use | все | Открыть свой рюкзак |
| backpack.size.small | — | Рюкзак 1 ряд, 9 слотов |
| backpack.size.medium | все | Рюкзак 3 ряда, 27 слотов |
| backpack.size.large | — | Рюкзак 4 ряда, 36 слотов |
| backpack.size.xlarge | — | Рюкзак 5 рядов, 45 слотов |
| backpack.size.double | — | Рюкзак 6 рядов, 54 слота |
| backpack.open.others | ОП | Открыть рюкзак другого игрока |
| backpack.reload | ОП | Перезагрузка плагина |
| backpack.bypass.world | ОП | Использовать рюкзак в заблокированных мирах |
| backpack.bypass.cooldown | ОП | Игнорировать кулдаун |
| backpack.keepondeath | — | Сохранять рюкзак при смерти |
| backpack.* | ОП | Полный доступ |
При наличии нескольких backpack.size.* — выдаётся наибольший.
Конфиг
# Язык: ru / en / uklanguage: ru
# Поведение при смерти: drop / keep / clear
on-death:
action: drop
# Кулдаун между открытиями в секундах (0 = отключено)
cooldown: 0
# Миры где рюкзак недоступен
disabled-worlds:
- world_the_end
# Автосохранение в секундах (0 = отключено)
auto-save-interval: 300
# Название GUI (&-коды поддерживаются)
gui-title: "&8Рюкзак &7%player%"
# Заполнять пустые слоты серым стеклом
fill-empty-slots: false
Установка
- Положи .jar в папку plugins/
- Перезапусти сервер
- В plugins/BackpackPlus/ появятся config.yml и папка lang/ с тремя файлами
- Настрой размеры через права в LuckPerms или другом permission-плагине
- /bp reload для применения изменений без рестарта
Требования: Java 17+, Spigot 1.21+
Пример настройки через LuckPerms
# Обычный игрок — средний рюкзак/lp group default permission set backpack.use true
/lp group default permission set backpack.size.medium true
# VIP — большой рюкзак, сохраняется при смерти
/lp group vip permission set backpack.size.large true
/lp group vip permission set backpack.keepondeath true
# Администратор — полный доступ
/lp group admin permission set backpack.* true
Данные
Каждый рюкзак хранится в отдельном файле plugins/BackpackPlus/data/<uuid>.yml. Файлы создаются при первой смерти или первом открытии рюкзака. Удалять файл = сбросить рюкзак игрока.