- Для версий
- 1.16.✘
- 1.17.✘
- 1.18.✘
- 1.19.✘
- 1.20.✘
- 1.21.✘
- 26.✘
- Java
- Зависимости
- WorldEdit, FastAsyncWorldEdit
mSoulBases
Личные базы-острова для BoxPvP: свой мир, прокачка из схематик, участники с правами и магазин блоков.
Paper · Purpur 1.16.5 – 26.3 | WorldEdit или FAWE | Java 8+
Зачем???
На BoxPvP игрокам негде строить. Общий мир быстро захламляется, гриферы ломают постройки за минуту, а выдавать каждому регион WorldGuard вручную долго. mSoulBases даёт каждому игроку свой остров в отдельном мире: игрок жмёт кнопку в меню, платит предметом-валютой и сразу оказывается на своей базе. Чужие туда не попадают, а сам игрок не может уйти за границу своего острова.
🏝 Создание базы
- /base открывает меню: если базы нет, меню создания, если есть, меню управления.
- Остров вставляется из схематики через WorldEdit или FAWE в отдельный пустой мир. Мир создаётся сам, без мобов, смены дня и погоды.
- Базы ставятся по сетке, плагин сам находит свободное место. Шаг сетки и лимит баз задаются в конфиге.
- Оплата любым предметом, который вы назначите валютой. Если вставка не удалась, монеты вернутся, а если игрок успел выйти, вернутся при следующем входе.
- На новой базе стоит бочка со случайным стартовым лутом. Лут раскладывается мышкой в меню /b a setloot.
⬆ Прокачка
- Уровней сколько угодно. У каждого своя схематика, размер границы, цена и права can_place / can_break.
- Например: на 1 уровне можно только ходить, на 2 уже строить, на 3 ещё и ломать.
- Схематика нового уровня вставляется поверх старой без воздуха, постройки игрока остаются на месте.
- В комплекте три острова: 51×51, 81×81 и 111×111. Свои схематики кладутся в папку schematics.
🧱 Граница
- Каждый игрок видит голубую границу мира ровно вокруг своей базы. Остальные игроки и другие миры её не видят.
- Выйти за границу нельзя: игрока возвращает в центр базы.
- Блоки за пределами баз в мире баз ставить и ломать нельзя.
👥 Участники и права
- /base addmember, remmember, leave, members. Лимит участников задаётся в конфиге.
- В меню прав владелец включает для участников установку блоков, поломку, открытие сундуков, открытие меню базы и PvP.
- Защищены блоки, вёдра, рамки и картины, сундуки (в том числе двойные), PvP в том числе стрелами.
🛒 Магазин
- Категории блоков с иконками-головами, страницы, меню покупки с кнопками от ±1 до ±64.
- У магазина своя валюта, отдельная от валюты баз.
- Купленные блоки помечаются и ставятся только в мире баз, вынести их на спавн не получится.
- Статистика продаж: бестселлер, сколько потрачено и сколько продано.
🛠 Админка
- Поиск базы по любому участнику, статистика, телепорт на базу, удаление, выдача валюты.
- givecoin, rembase, stat, search, members и info работают из консоли, поэтому валюту удобно выдавать из донат-магазина.
- Удаление базы чистит зону по одному чанку за тик, без фриза. Если сервер выключат посреди очистки, она продолжится после запуска.
⚡ Производительность
- Поиск базы по координатам идёт через индекс чанков, а не перебором всех баз.
- data.yml сохраняется асинхронно и через временный файл, поэтому при падении сервера данные не бьются.
- Схематики кешируются, счётчик блоков хранится в данных чанка. Утечек памяти нет.
🧩 Совместимость
- Ядро: Paper и его форки (Purpur и др.) от 1.16.5 до 26.3, один jar на все версии. Spigot и Folia не поддерживаются.
- WorldEdit: обычный WorldEdit или FastAsyncWorldEdit под версию вашего сервера.
- Java: любая, которую требует ваша версия Paper.
- Граница: на 1.18.2 и новее через API Paper, на 1.16.5–1.18.1 через пакеты.
- Плагин собран против API каждой версии Paper от 1.16.5 до 26.3, все используемые методы проверены на наличие. На серверах 1.16.5, 1.17.1, 1.18.2, 1.19.4 и 1.21.4 прогнан автотестом с ботом: создание базы, оплата, прокачка, права, магазин, удаление.
📥 Установка
- Положите mSoulBases.jar и WorldEdit (или FAWE) в plugins и запустите сервер.
- Схематики островов уже лежат в plugins/mSoulBases/schematics. Свои кладите туда же и пропишите в settings.levels.
- По умолчанию валюта баз — «Легендарный койн» (незерская звезда), валюта магазина — «Обычный койн» (соты). Чтобы поменять, возьмите предмет в руку и пропишите /b a seteco create или /b a seteco shop.
- /b a setloot — разложите лут для стартовой бочки.
- Готово, игроки пишут /base.
Игроки (/base или /b):
- /b — меню создания или меню базы
- /b create — создать базу
- /b menu — меню базы
- /b home, /b sethome — телепорт на базу и смена точки дома
- /b addmember <ник>, /b remmember <ник> — добавить или убрать участника
- /b members — список участников
- /b leave — покинуть чужую базу
- /b help — справка
- /b a seteco <create|shop> — назначить валюту предметом в руке
- /b a givecoin <create|shop> <ник> <кол-во> — выдать валюту (работает из консоли)
- /b a setloot — меню лута стартовой бочки
- /b a info — общая статистика баз и магазина
- /b a search <ник> — найти базу по владельцу или участнику
- /b a stat <ник> — статистика базы
- /b a members <ник> — участники базы
- /b a tobase <ник> — телепорт на базу
- /b a rembase <ник> — удалить базу и очистить зону
- msoulbases.admin — админ-команды
- msoulbases.bypass — игнорировать границу и защиту баз, ставить блоки из магазина в любом мире
YAML:
world: bases
settings:
enable_chest: true
chest:
material: BARREL
max_items: 27
min_items: 14
offset: { x: 3, y: 1, z: -1 }
create_price: 5
max_bases: 100
base_spacing: 200
base_grid_size: 50
max_members: 5
max_level: 3
minY: 100
maxY: 200
levels:
'1':
border: 61
price: 0
can_break: false
can_place: false
schematic: { file: ostrov_1, offset: { x: 9, y: 0, z: 9 } }
'2':
border: 81
price: 7
can_break: false
can_place: true
schematic: { file: ostrov_2, offset: { x: 5, y: 0, z: 5 } }
'3':
border: 101
price: 14
can_break: true
can_place: true
schematic: { file: ostrov_3, offset: { x: 2, y: 0, z: 2 } }
visual_border:
enabled: true
warning_distance: 5
warning_time: 15
debug: false❓ Вопросы
Нужен ли WorldGuard? Нет, защиту плагин делает сам.
Можно ли свои острова? Да, любые .schem или .schematic, хоть с постройками.
Что будет, если админ удалит базу? Зона очищается, игрок получает сообщение, место освобождается для новой базы.
Работает ли на Spigot? Нет, нужен Paper или его форк.
Нужно ли перезапускать сервер после настройки валюты и лута? Нет, команды применяются сразу.