1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Глобальное потемпление в майнкрафт

Тема в разделе "Запросы на разработку плагинов", создана пользователем Ynovka, 30 ноя 2022.

  1. Автор темы
    Ynovka

    Ynovka Активный участник

    Баллы:
    61
    Имя в Minecraft:
    Ynovka
    Категория плагина: Механики игры, события

    Предлагаемое название: Global warming

    Версия сервера: 1.19.2

    Что я хочу: что бы были сделаны следующие игровые события с настраиваемым кд срабатывания :
    1) раз в N времени начиная с самой верхней точки мира по самую нижнею происходил /replace воды и льдов на воздух

    2) раз в N времени рандомные органические блоки (трава, земля, дёрн, цветы(на сухие кустики), листва деревьев, брёвна, азалии и т.д.) заменялись на рандомные пустынные блоки(песок, песчанник, мёртвые кусты, немного терракоты).

    3) функция которую можно включить в конфиге, которая будет наносить урон в пол сердца раз в N времени в зависимости от брони (нету брони - нету урона, кожаная броня раз в 10*N времени, незеритовая броня - раз N)



    Идеи для команд:
    Этому плагину команды не нужны

    Идеи пермишенов: Этому плагине пермишен не нужен

    Когда мне это нужно? Чем раньше - тем лучше, буду рад любому сроку вплоть до конца декабря.

    Бюджет - отсутствует.
     
  2. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    минус тпс гарантирован
     
  3. ReloGGrc

    ReloGGrc Активный участник Пользователь

    Баллы:
    46
    Имя в Minecraft:
    ALis
    Ну, если брать определенную небольшую локация неподалеку от онлайн игроков и если сервер имеет нормальные характеристики, то нет

    Хотя и игроков может быть много, но вроде это как-то в асинхроне можно провернуть
     
  4. Автор темы
    Ynovka

    Ynovka Активный участник

    Баллы:
    61
    Имя в Minecraft:
    Ynovka
    ТПС не будет падать (или будет, но когда нету онлайна и все спят), потому что железо хорошее, средний онлайн 10 человек (сервер приватный), стоит барьер на 2к кордах и есть классный плагин по типу world edit, но более оптимизированный. (и плюсом потепление процесс не быстрый думаю кд на иссушение воды будет 2 часа-12 часов, а блоки по ночам будут меняться, т.е. раз в 24 часа, но смачно)
    Хочется сделать что-то классное для игроков, но я не шарю в плагина/датапаках, поэтому пришёл искать энтузиастов, которым понравиться эта простая идея и которые её смогут реализовать.
     
  5. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Если изменять сразу всю карту то нужно ее сразу всю прогружать в 1 момент времени, ты попробуй чтото реплейснуть на карте 3к нк 3к блоков, у тебя прогрузятся все чанки и полезут в ОЗУ, хипа не хватит и сервак ляжет.

    Ну таким способом ты из падения сервера сделаешь просто пролаги

    И кстати неважно асинхронно ли там чтото выполняется или нет, для того чтобы заменить блок нужно прогрузить весь чанк в котором он находится, а если прогрузить сразу все чанки Оперативки не хватит
     
  6. ReloGGrc

    ReloGGrc Активный участник Пользователь

    Баллы:
    46
    Имя в Minecraft:
    ALis
    Ну, он же писал что мир 3000х3000, значит наверное прогружен, Я думаю. И блоки можно менять поочередно каждые n например секунд и только недалеко от игроков, он сказал что оборудование хорошее, поэтому не думаю что будут прямо сильные пролаги
     
  7. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Я под прогрузить имел в виду не прогрузить его на жесткий диск(Генерация мира) а засунуть полный мир 3к на 3к в оперативную память.
    Игроков 50 и опять будут пролаги, если увеличивать колво времени тогда изменения будут овер долгие
    И что что оборудование хорошее? Постоянно так жестко нагружать сервер не кайф, хотя дело каждого, хоть по 1 серваку на 1 тачку ставь
     
  8. Bomb

    Bomb Активный участник Пользователь

    Баллы:
    76
    Не обязательно же прогружать всё сразу. Можно в загруженных чанках постепенно заменять источники воды и лёд на воздух. А в не загруженных вносить эти изменения при загрузке. Чем дольше чанк будет выгружен тем больше источников воды и льда убрать при загрузке.
    Но при использовании такого способа могут возникнут проблемы с бесконечными источниками воды.

    UPD:
    И вообще это не Global Warming а Solar Apocalypse получается.
    Это было бы глобальным потеплением если бы воды становилось больше.
     
    Последнее редактирование: 1 дек 2022
  9. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Возможно именно этот вариант не даст лагов, но не исключено
     
  10. NuaN

    NuaN Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    NuaN
    А перед вайпом можно устроить глобальный пожар, чтобы всё сгорело)
     
  11. SlenderMix

    SlenderMix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    HIDDEN
    Например пукан владельца сервера.
     
  12. LilClick

    LilClick Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    Lil_Click
    А как ты отследишь воду которую ты сделал и которая есть в мире?

    Ответ на убирать с определенной высоты: Вода может стакаться в разных местах.

    Сервер умрет от такого притока + если чел будет летать на элитрах, то серву пда
     
  13. 0xLairon1

    0xLairon1 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Та такая реализация вообще гиблое дело, есть одна мысля:
    Не подменять блоки пока с ними никто не взаимодействует, а окружение подменять на пакетном уровне. Тоесть, когда игроку отсылается пакет с блоком воды, менять его на пакет с льдом, и если только игрок чтото пытается сделать с блоком то заменять его.
    Плюс в том что сервак не так сильно страдает но и минусов тоже довольно много, допустим такой лед нельзя будет растопить, ведь он вода
     
  14. Bomb

    Bomb Активный участник Пользователь

    Баллы:
    76
    Зачем отслеживать? Просто рандомно убирать несколько источников воды.
    Можно убирать только источники воды и не трогать воду которая течёт.
    Только придётся отключить бесконечные источники.
     
  15. LilClick

    LilClick Активный участник Пользователь

    Баллы:
    61
    Имя в Minecraft:
    Lil_Click
    Согласен.
     
  16. JavaSher

    JavaSher Активный участник Пользователь

    Баллы:
    66
    Да просто нужно заменять все блоки (в прогруженных чанках, или в тех у которых есть игроки поблизости) не в один определенный тик, а в распределенное количество тиков, и всё: https://www.spigotmc.org/threads/gu...-how-to-handle-heavy-splittable-tasks.409003/

    И таким образом ты решаешь проблему связанную с ТПС ибо проверка/замена всех блоков происходит не в один тик, а разные тики, благодаря чему ты просто "ограничиваешь" процесс изменения всей воды.
     
  17. SlenderMix

    SlenderMix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    HIDDEN
     
  18. SlenderMix

    SlenderMix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    HIDDEN
    Бесполезно, зачем делать фейковые блоки.
     
  19. cactus888

    cactus888 Активный участник Пользователь

    Баллы:
    76
    есть такой плагин под названием fastasyncworldedit. он работает таким образом что не важно насколько большая будет выделена территория для замены, сервер не будет лагать. просто замена будет производиться постепенно по чанкам
     
  20. Egorov

    Egorov Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    sqlex
    Те самые огромные пирамиды, откуда сверху налили воды(лавакасты) - hello there :)
     

Поделиться этой страницей