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

Совет Нужен совет: единый мир или множество измерений?

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

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

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

    Баллы:
    61
    Народ, нужен совет от опытных админов. Делаю RPG-сервер на 1.7.10 с нерушимой поверхностью и множеством NPC (с помощью мода Custom NPC), возник такой вопрос:
    Как будет лучше в плане производительности: создать под подземелья и крупные локации отдельные измерения (dimensions) или же просто разместить их под землёй? Если в измерении нет никого из игроков, отъедает ли оно память? Обрабатываются ли сущетва, стоящие глубоко под землёй, когда игрок идёт по поверхности?

    Ну и довольно дебильный вопрос: можно ли как-то запретить игроку ломать ВСЁ в мире, на уровне клиента? Есть множество баккит-плагинов для серверного контроля, однако они работают по принципу "в клиенте сломали - сервер вернул". А хотелось бы как в gamemode 2, но чтобы визуально не ломались даже блоки травы и земля с помощью инструментов.
     
  2. Mr_RoboMan

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

    Баллы:
    123
    NoBreakAnim поищи плагин.
     
  3. Barma

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

    Баллы:
    66
    В настройках сервера server.properties выставить gamemode=2 не поможет?
     
  4. Автор темы
    zxlostsoul

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

    Баллы:
    61
    Спасибо, не видел раньше такого) А опыт использования есть, не грузит сервер? Кое-где попадаются отзывы о плохой производительности, с последней версией всё хорошо?

    Gamemode 2 не всё останавливает, к сожалению. Трава там всякая рубится, да и блоки копаются (с помощью кирки/лопаты). А хотелось бы чтобы ни с чем анимации не было.

    Вообще было бы круто на уровне клиента что-то поправить, исходники форжа же есть. Где только там искать выборку, что ломается в gamemode 2, а что нет? В 1.8, кстати, вроде в gamemode 2 уже ничего не ломается, но на него ещё нескоро перейдём.
     
    Последнее редактирование: 28 окт 2014
  5. Barma

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

    Баллы:
    66
    А если кирки-лопаты запретить? Если я правильно понял, их использование у вас и не планируется. Трава... да, не подумал.
     
  6. Mr_RoboMan

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

    Баллы:
    123
    Ну мой отзыв что это дрм, у меня игроки на него жаловались... Что мол даже в своих приватах после этого ломать не могут, пвп в замедленном виде и т.д.... Но может я просто кривожоп!
     
  7. Автор темы
    zxlostsoul

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

    Баллы:
    61
    Если верить майнкрафт вики, ломается там не только трава, но и многое другое. А кирки-лопаты на сервере будут, только нужны будут лишь после того как игрок накопит игровых денег на собственность, где он сможет строить и, соответственно, ломать. На купленной земле у него будет включаться gamemode 0.

    Сейчас покопаю исходники, где-то же должна быть обработка, что ломать, а что нет.
     
  8. pilad

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

    Баллы:
    76
    Прочность можно обьекта выставить большую? Оно же за сколько - то конкретных ударов ломается. Выставить максимум. Чтоб устали ломать.
     
  9. Barma

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

    Баллы:
    66
    И как вы себе представляете, прочность земли, как коренная порода? А когда игрок получает в собственность свой приват, там эти блоки чудесным образом изменят свою прочность? :)
     
  10. pilad

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

    Баллы:
    76
    Дописать функцию ядра.
     
  11. Автор темы
    zxlostsoul

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

    Баллы:
    61
    Попробовал, получилось) Если кому интересно:
    В net.minecraft.entity.player/EntityPlayer.java метод isCurrentToolAdventureModeExempt отвечает за определение, может ли игрок ломать блок в адвенчуре. Собственно, если сделать вот так, то ничего ломаться не будет:
    Код:
        public boolean isCurrentToolAdventureModeExempt(int p_82246_1_, int p_82246_2_, int p_82246_3_)
        {
            if (this.capabilities.allowEdit)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    Работает отлично: теперь при gamemode 2 абсолютно ничего не ломается. Когда дерёшься с мобом в траве - трава не целяется, инстументами блоки копать не пытается, в общем как в рпг-шках)

    Теперь захотелось найти что отвечает за обводку блока при наведении и возможность размещать блоки) Но это уже мелочи) Больше интересует как это сделать по-человечески, не меняя классы форжа. Я тут нуб :(
     
    Последнее редактирование: 29 окт 2014
  12. General

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

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

    А про модифицирование ядра, так это можно серверным модом сделать, сложнее, но под каждую обнову не надо будет переписывать одно и тоже.
     
  13. MrShadow

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

    Баллы:
    103
    Skype:
    X-line02
    Советую сделать как отдельные миры, + можно будет реализовать несколько одних и тех же данжей. Т.е. собралась группа, пошла в данж, зачистили дело это все, а следующей группе ждать придется.
     
  14. Автор темы
    zxlostsoul

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

    Баллы:
    61
    А можно какой-нибудь гайд, как это сделать модом? Почитал в манах форжа, что надо как-то прокси-функции цеплять, нифига не понял(

    О, хорошая мысль, спасибо) А есть готовый плагин для клонирования миров "на ходу", так сказать?)
     
  15. MrShadow

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

    Баллы:
    103
    Skype:
    X-line02
    Насчет этого - не знаю, никогда не интересовался мултиворлдами
     
  16. General

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

    Баллы:
    123
    Прокси это разделение на клиент(ClientProxy)-сервер(CommonProxy), серверный мод не может добавлять предметы, но события обрабатывать, как это делают плагины(только по форджевский) может. Так же мод может патчить определённые классы, или юзай рефлексию, не знаешь, что это? То дорога тебе в исходники CraftGuide автор предоставляет их на своём гите. И активно юзает рефлексию. Поэтому, если разберёшься сможешь реализовать всё это модом. Только к серверному моду ещё в качестве библиотеки подключи Cauldron, или, что ты там используешь.
     

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