Плагин ScLoad - грузим схематики, а сервер - нет ;) [BukkitDev]

  • Автор темы Автор темы fromgate
  • Дата начала Дата начала

fromgate

Старожил
Пользователь
Баллы
173
Имя в Minecraft
fromgate
ScLoad

ScLoad (или SchematicLoad) это достаточно простой плагин, который предоставляет альтернативный способ загрузки и установки строений из schematic-файлов. Основная особенность — это использование группирования блоков по чанкам и использование настраиваемой очереди для установки блоков.

Скачать ScLoad
BukkitDev

Возможности плагина

  • Загрузка строений из файла и установка их относительно позиции игрока
  • Загрузка строений из файла и установка их относительно локации заданной координатами
  • Возможность использования плагина из консоли — можно использовать для автоматизации (скрипты, квесты и т.п.)
Для чего это нужно?

Если Вам приходится загружать схематики и при этом Вы наблюдаете лаги на сервере, то Вам однозначно надо попробовать этот плагин.

Команды

  • /scload help — Ээээ....
  • /scload load <filename> [<world> <x> <y> <z>] — загрузить и разместить строения
  • /scload list — список доступных файлов
  • /scload cfg — отобразить настройки
  • /scload reload — перезагрузить настройки из файла
P.S. У команды/scload есть алиас — /scl.

Пермишены
  • schematic.config - команды /scload help, /scload cfg, /scload reload
  • schematic.load - команды /scload load и /scload list

ScLoad и WorldEdit

Для работы ScLoad требуется плагин WorldEdit. ScLoad использует API WorldEdit'а для загрузки schematic-файла и даже для установки блоков. Однако при этом используется оптимизированная очередь, за счет чего повышается эффективность процесса.
Да! Вы правильно поняли: ScLoad не работает без WorldEdit'а
 
Последнее редактирование:
Действительно хорошая штука. Когда то я так и не смог перенести одно строение размером в 3.6кк блоков 😁
С чанковой вставкой проблем не будет?
 
В смысле с чанковой?
Перед после загрузки схематика, блоки группируются по чанкам и формируется очередь. Всё это происходит не в основном потоке сервера, соответственно нет лагов на задержку.
Из-за разбивки на очереди в целом вставка может происходить медленнее (просто потому что, она происходит "кусками" по 5000 блоков за раз - это число нужно настраивать для своего сервера), но зато игроков не выкидывает, мобы ходят и т.п.
 
В смысле с чанковой?
Перед после загрузки схематика, блоки группируются по чанкам и формируется очередь. Всё это происходит не в основном потоке сервера, соответственно нет лагов на задержку.
Из-за разбивки на очереди в целом вставка может происходить медленнее (просто потому что, она происходит "кусками" по 5000 блоков за раз - это число нужно настраивать для своего сервера), но зато игроков не выкидывает, мобы ходят и т.п.

Просто если я и копирую, то копирую чанками. С таким видом копирования проблем не будет?
 
@Dereku, нет с чанками проблем быть не должно. Единственное, мне сейчас пришла в голову мысль: надо будет отсекать блоки, которые "не попадают" в мир (допустим выше 256-го блока) на этапе подготовки очереди. Так, насколько я помню "внутренности" WE они будут пропускаться при установке, но лучше бы, конечно сделать так чтобы они даже не обрабатывались.
Учту в следующей версии.

Вообще главная цель плагина - работ в скриптах, к примеру регулярное восстановление какой-то местности или объектов на ней.
 
Координаты (world x y z) - указывать середину переносимого обьекта, как я понимаю?
 
Нет точку за которую «цепляется» клипборд, когда происходило сохранение схеиатика.
 
Будет. Я бы порекомендовал последнюю версию WorldEdit'а - он поддерживает кучу старых версий. А значит и ScLoad тоже 🙂
Кхм. Ладно, спасибо.
Ну такая логика у клипбоарда. В нём файлы хранятся именно в таком формате: точки сохраняются относительно той в которой копировались. На мой взгляд это достаточно удобно.
Копируешь дом, скажем находясь у входа. Вставляешь - и знаешь что в этом месте будет вход. А не какой-то абстрактный центр.
 
Офигеть, этож сколько возможностей для скриптов! Супер!

Автору спасибо за плагин! 🙂
 
v0.1.1
  • Таблички (и прочие привязанные к стенам блоки) расположенные в районе где будет размещено строение из schematic-файла не будут дропаться при застройке области.
  • Сундуки расположенные в застраиваемой области перед удалением очищаются (содержимое — не дропается)
http://dev.bukkit.org/media/files/716/860/ScLoad.jar
 
/undo нет. Я эту функцию не планировал, но уж очень часто запрашивают. Но... даже пока не представляю по какому принципу лучше будет сделать...
Постройки - те которые подставите.
Координаты (world x y z) - указывать середину переносимого обьекта, как я понимаю?

Я кстати ошибся. Координатой берётся точка с минимальными значениями x,y,z - в API WorldEdit'а это как-то неявно сделано.
Просто у меня во время первых тестов точка с которой я копировал и "минимальная" совпадали 😉
 
/undo нет. Я эту функцию не планировал, но уж очень часто запрашивают. Но... даже пока не представляю по какому принципу лучше будет сделать...
Постройки - те которые подставите.


Я кстати ошибся. Координатой берётся точка с минимальными значениями x,y,z - в API WorldEdit'а это как-то неявно сделано.
Просто у меня во время первых тестов точка с которой я копировал и "минимальная" совпадали 😉

По обратному принципу🙂
Меняя блок, записываем старый вариант в хешку, к примеру.
undo восстановит из хешки все блоки.
 
По обратному принципу🙂
Меняя блок, записываем старый вариант в хешку, к примеру.
undo восстановит из хешки все блоки.

🙂 Ну с технической-то стороной вопроса точно нет.
Вопросы скорее идеологические:
1. Нужно ли оно вообще?
2. Нужно ли многуровневое undo?
3. Нужно ли undo в привязке к каждому игроку или же одно на всё.

Ну когда (и если) соберусь, то как-то определюсь с этим
 
Назад
Верх