Привет!
Столкнулся с проблемой, когда на 1 гб ОЗУ, мне нужно было разрешить некотороым группам использовать schematic, но так чтоб оно не вешало сервер. Сказано сделано поставил AsyncWorldEdit - разрешил. Работает, но при вставке больших схем, даже с правами Op у меня, не говоря про остальные группы, AsyncWorldEdit пишет что достигнуто максимальное количество блоков для изменения. В общем в итоге опытным путем выяснил что...
Для установки лимита на количество обрабатываемых блоков в AsyncWorldEdit, нужно установить параметр maxBlockChanged в желаемое количество блоков
./plugins/AsyncWorldEdit/config.yml
worldedit:
#Maximum number of undoos
historySize: 15
#Maximum number of changed blocks
maxBlockChanged: 1000000 # например миллион блоков
#List of dissallowed block ID
В противном случае, если параметр maxBlockChanged: -1 то лимитами обработки блоков будет (весьма криво) заниматься конфиг worldedit (выставленное количество блоков в лимите не будет точно совпадать с "max-blocks-changed:" в awe а лишь примерно позволять это количество)
То есть, если у вас в ./plugins/AsyncWorldEdit/config.yml параметр:
maxBlockChanged: -1
то вступает в действие этот конфиг, который регулируется тут: ./plugins/WorldEdit/config.yml
limits:
allow-extra-data-values: true
max-blocks-changed:
default: 20000
maximum: 50000
max-polygonal-points:
default: -1
maximum: 20
max-radius: 10
max-super-pickaxe-size: 5
max-brush-radius: 5
butcher-radius:
default: -1
maximum: 50
Этот максимальный радиус ( max-radius: 10 ) влияет на радиусы различных команд WorldEdit в том числе на команды:
superpickaxe area [радиус] - 1 Удар кирки будет удалять указанный радиус блоков (от 1 до 5) worldedit.superpickaxe.area /superpickaxe recur [радиус] - 1 Удар кирки будет удалять указанный радиус блоков одного ID worldedit.superpickaxe.recursive //fixlava [радиус] - Выровнять уровень лавы в радиусе worldedit.fixlava
//fixwater [радиус] - Выровнять уровень воды в радиусе worldedit.fixwater
//removeabove [радиус] - Удаляет все над вашей головой на высоту worldedit.removeabove
//removebelow [радиус] - Удаляет все под вашими ногами на глубину worldedit.removebelow
//removenear [ID][радиус] - Удалит указанные блоки в указанной в зоне вокруг вас worldedit.removenear
//replacenear [ID блока][ID на что заменить] - Заменит блоки в выделенном топором регионеworldedit.replacenear
//ex [радиус] - Потушить все пожары в радиусе. worldedit.extinguish
/butcher [моб] [radius] - Убьет всех мобов во круг worldedit.butcher
//green [радиус] - Озеленить (заменить грязь травой) в радиусе. worldedit.green
//drain [радиус] - Осушить воду/лаву в радиусе (вы должны находится в лаве или в воде)worldedit.drain
Простите за офтоп, просто хотел быть полезным )
PS: Мой сервер 1гб озу, схематику вставляет без проблем 1 130 000 блоков и при этом из 800 mb выделенных для java остается в районе 500 mb свободных. Заметил что при //undo лагов даже больше чем при //paste (загруженной в буфер схематики большого размера на 1 130 000 блоков )
сервер 1.12.2
AsyncWorldEdit
WGExtender
WorldGuard
WorldEdit