Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Идея Чанковая регенерация по таймеру (сложная)

Discussion in 'Запросы на разработку плагинов' started by skynetxxx, Dec 12, 2014.

Thread Status:
Not open for further replies.
  1. Автор темы
    skynetxxx

    skynetxxx Старожил Пользователь

    Trophy Points:
    123
    Имя в Minecraft:
    skynetxxx
    Всем привет. Практически на всех виденных мною популярных серверах Minecraft с высоким онлайном карта выглядит ужасно.
    На некоторых серверах эту проблему решают модераторы, которые летают и регенят разрушенный мир, но это малоэффективно.
    Интересную вещь придумали разработчики Everquest Landmark - у них мир за пределами привата генерируется примерно каждые 20 минут после последнего события разрушения/установки блока.
    Эту механику можно перенести и в Minecraft, разбив генерацию на чанки. Я встречал всего один плагин, похожий на эту идею, но был недостаточно проработан.
    К примеру было-бы неплохо, чтобы можно было задавать области с разным временем регенерации чанков (WorldGuard не подойдёт по той причине, что без дополнительных костылей он не совсем нормально работает с вложенными территориями, поэтому лучше уж отдельный "велосипед").

    То есть плагин выглядит следующим образом:
    При старте из конфига считываются следующие значения:
    1. время регенерации за пределами областей
    2. время таймера проверки списка чанков
    3. число регенируемых чанков за секунду
    4. задержка в миллисекундах для 3 пункта
    5. список областей вида: имя области, приоритет области (int), позиция чанка по x, позиция чанка y, радиус (квадратный), время до регенерации

    При разрушении блока проверяется:
    1. Есть ли на нём приват от Factions, если да то выход.
    2. Проверяется на вхождение в одну из областей из конфигурации, после из которых выбирается с наибольшим приоритетом.
    3. Время до регенерации вместе с координатами чанка заносятся в список на регенерацию (или обновляется, если он уже был в списке).

    По таймеру (из конфига, для примера - 1 минута) выполняется:
    1. Уменьшается время для всего списка чанков на регенерацию.
    2. Запускается поток, который генерирует определённое количество чанков за секунду (настраивается в конфиге, во избежание проседания сервера), после чего продолжает спустя определённый промежуток времени (мс, тоже настраивается в конфиге).

    Вот собственно говоря и вся идея плагина.
    Реализация очень нужна, заплачу нормальную сумму (ОТ двух тысяч рублей).
    Качество тоже очень важно, поэтому желателен опыт работы со сложными плагинами.
    Спасибо за внимание.
     
    Last edited: Dec 12, 2014
  2. Хостинг MineCraft
    <
  3. ptnk

    ptnk Старожил Пользователь

    Trophy Points:
    173
    У меня есть некоторое похожее решение.
     
  4. Автор темы
    skynetxxx

    skynetxxx Старожил Пользователь

    Trophy Points:
    123
    Имя в Minecraft:
    skynetxxx
    Где, не подскажите? Плюс доработка до этого "ТЗ" всё равно нужна.
     
  5. ptnk

    ptnk Старожил Пользователь

    Trophy Points:
    173
    Никаких названий серверов и публичных ссылок на скачивание.
     
  6. Автор темы
    skynetxxx

    skynetxxx Старожил Пользователь

    Trophy Points:
    123
    Имя в Minecraft:
    skynetxxx
    Ответьте пожалуйста в ЛС.
     
Thread Status:
Not open for further replies.

Share This Page