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

Фикс Ивенты для модов [Механизмы работают от имени владельца]

Тема в разделе "Управление сервером Bukkit", создана пользователем gamerforEA, 30 дек 2014.

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

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Спасибо. Фикс готов. Опубликую вместе с остальными обновлениями 1 марта.
     
  2. Linkinkov

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

    Баллы:
    173
    Skype:
    linkinkov1
    Имя в Minecraft:
    linkinkov
    Схожую проблему нашел и в Forestry, вчера поправил. Скоро тоже скину описание, но там обычный взрыв цеплялся к wg и циклично выполнялся, нагрузка на сервере была 92% только от этой функции.
     
  3. synthetic

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

    Баллы:
    76
    Заметил, что трубы BuildCraft (особенно жидкостные) сильно нагружают сеть. Если их на карте много, то аж выкидывает с сервера. Хочу отключить анимацию трубам.

    Какую бы строчку кода мне закомментировать, чтобы сервер не слал клиентам информацию об изменении внешнего вида трубы? Чтобы трубы работали как положено, но жидкостей и предметов, которые по трубам текут видно не было. Может быть знающие люди подскажут...

    Сижу, перебираю на GitHub-е код BuildCraft, но пока не нашел...
     
  4. L4c05t

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

    Баллы:
    78
    Имя в Minecraft:
    Lacost
    Можно подробней?
    Я просто нашел что какой то иверт уходит в цикл а какой не могу найти ... Понял это по pex toggle debug.
     
  5. Artmoneyse

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

    Баллы:
    78
    Имя в Minecraft:
    Artmoneyse
    используйте профайлер чтобы найти тот участок кода который создаёт нагрузку.
    P.S. buildcraft.transport.render.PipeItemRenderer
    У меня была похожая проблема, снес Essentials antibuild и проблем нет больше года.
     
  6. L4c05t

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

    Баллы:
    78
    Имя в Minecraft:
    Lacost
    нету подобного плагина
     
  7. Linkinkov

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

    Баллы:
    173
    Skype:
    linkinkov1
    Имя в Minecraft:
    linkinkov
    BlockForestryFluid.java
    Код:
            // explode if very flammable and near fire
            int flammability = getFlammability(world, x, y, z, ForgeDirection.UNKNOWN);
            if (flammability > 0) {
                // Explosion size is determined by flammability, up to size 4.
                float explosionSize = 4F * flammability / 300F;
                if (explosionSize > 1.0 && isNearFire(world, x, y, z)) {
                    //world.setBlock(x, y, z, Blocks.fire);
                    //world.newExplosion(null, x, y, z, explosionSize, true, true);
                }
            }
        }
    
    Собственно закоментировал две строки. Возможно у вас такого не случится, потому что лишь на одном сервере была такая проблема, но вот world.newExplosion цепляется к WG через ForgeEvents (Причина тому, немного "доработанные" таковые в Thermos)
     
  8. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    EventHelper обновлён до версии 1.7. Добавлена поддержка реальных игроков в FakePlayerContainer (например, снаряды, ивенты которых будут переделаны под новую версию, будут использовать не фейкового, а настоящего игрока, что позволит выводить сообщения о невозможности наносить урон в чужом привате). Эта версия будет использоваться в мартовском обновлении.
    https://github.com/gamerforEA/EventHelper/releases/tag/1.7
    ThaumCraft обновлён: https://yadi.sk/d/JUmcf3-t3ErcAd
    1. Исправлен дюп с големами и воронками;
    2. Пьедестал не дропает содержимое, если над ним стоит блок;
    3. EventHelper обновлён до версии 1.7.
    Остальное залью завтра.
    ThaumicTinkerer обновлён: https://github.com/gamerforEA/ThaumicTinkerer-FakePlayers/releases/tag/2.5-1.7.10-538_02.03.2017
    1. Различные мелкие фиксы;
    2. Новые опции в конфиге;
    3. Выключено распространение элементального огня;
    4. Зачарование Вампиризм;
    5. Дюп эссенции с Проклятым лезвием духа и Пьедесталом некроманта.
     
    Последнее редактирование: 1 мар 2017
  9. kirill20131

    kirill20131 Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    asdfrw
    Когда еще будут обновления?
     
  10. DrLeonardo

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

    Баллы:
    88
    Имя в Minecraft:
    DrLeonardo
    КТТС
     
  11. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
  12. Flubox

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

    Баллы:
    78
    Под 1.10.Х будут моды?
    IC2 уже завезли, хотя бы его
     
  13. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Пока не вижу в этом необходимости. Серверов с модами на 1.10.2 слишком мало.
     
  14. alexandrage

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

    Баллы:
    173
    Плюсую. Никому не нужен этот спонж.
     
  15. synthetic

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

    Баллы:
    76
    BuildCraft. Багрепорт для gamerforEA.

    Суть:
    Можно поставить карьер таким образом, что он будет посылать EventHelper-у тысячи ивентов в секунду сильно нагружая его. Сервер при этом виснет намертво.

    Инструкция по воспроизведению бага:
    Нужно поставить карьер и с метками таким образом, чтобы метки обозначали территорию, в которой карьер не может построить свою рамку для работы. Например если заставить карьер выкапывать середину горы. Перед тем, как построить рамку для работы карьер будет выбрасывать из себя красные частицы, которые будут разрушать блоки до тех пор, пока не появится пространство для постройки рамки. Именно в этот момент карьер лагает. Дельше уже построится рамка и будет работать "хобот" карьера.

    Во время лагов на сервер вообще невозможно зайти. Приходится править EventHelper.cfg отключая EventHelper и перезагружать сервер.

    UPD:
    лаги начинаются, когда игрок, установивший карьер выходит из игры.
    игрок, установивший карьер не должен быть оператором.

    2017-03-05_19.23.17.png

    Почему так происходит:
    Скорее всего виновата функция createColumnVisitList() в TileQuarry.java, в ней операция проверки блока находится внутри тройного цикла. Это ужасно. Есть подозрение, что createColumnVisitList() вызывается очень часто в то время, когда карьер расчищает место для своего хобота.

    Как фиксить?
    Я даже не знаю. Есть идея: запускать этот тройной цикл только один раз при установке карьера. Вряд ли найдутся глупцы, которые будут создавать приват внутри рамки чужого карьера. Поэтому нет острой необходимости постоянно проверять блоки, которые находятся внутри рамки.
     
    Последнее редактирование: 7 мар 2017
  16. alexandrage

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

    Баллы:
    173
    По таким причинам у шевчика были кастомные ивенты, а не бакитовские. А так каждый плагин что слушает ивент реагирует, не только wg но и такие как есс антибуилд ncp модифеворлд и тп.
     
  17. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    EventHelper позволяет отсылать ивенты не всем плагинам, а только необходимым (по-умолчанию он работает только с WG).
     
  18. oleg57zls

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

    Баллы:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Фиксится кешированием в WorldGuard
     
  19. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    BuildCraft обновлён до 7.1.20: https://github.com/gamerforEA/BuildCraft-FakePlayers/releases/tag/7.1.20
    1. EventHelper обновлён до 1.7.
    2. Чёрный список NBT тэгов для Строителя;
    3. Фикс дюпа с Автоверстаком;
    4. Труба Stripes.

    @synthetic во время лагов введите команду "/wg profile - p 1" и скиньте ссылку, которая появится спустя минуту после ввода команды. А вообще, Олег прав, если это то, о чём я думаю, то кэширование для WG решит данную проблему (и вообще сильно повысит производительность ивентов).
     
  20. synthetic

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

    Баллы:
    76
    Я использую WG 5.9 там нет такой команды.
     

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