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

Плагин [FIX]ItemFixer 3.1-Избавь свой сервер от читерских предметов!|Фикс DLC,WURST,SKILL|Upd 18.02.2018

Тема в разделе "Неподтвержденные плагины", создана пользователем slavik123123123, 17 мар 2016.

Статус темы:
Закрыта.
  1. qVeshn

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

    Баллы:
    66
    ЗЫ. вообще можно быстро отловить кто перезапускает сервер.
    Но для этого надо ковырнуть spigot.jar (или что там у тебя)
    1. Взять IDEA
    2. создать пустой проект
    3. подцепить туда внешнюю библиотеку spigot
    4. диазассемблировать из spigot класс CommandStop и исходник положить в папку src как модуль CommandStop.java (с тем же путем который был в джарке)
    5. добавить в начало метода execute что то типа:
    try{ throw new Exception("ха- ха"); } catch(Exception e){ e.printStackTrace(); }
    6. откомпилить модуль с классом CommandStop и запихнуть обратно в джарку

    Теперь перед началом остановки сервера в консоль (+в лог) будет выводиться стэк вызовов, от куда будет видно кто дернул команду "stop"
    [​IMG]
     
    Последнее редактирование: 18 окт 2017
  2. artem0003

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

    Баллы:
    76
    А для не особо одарённых можно?
     
  3. qVeshn

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

    Баллы:
    66
    Можно. Пиши в личку :)
     
  4. DAndrey2000

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

    Баллы:
    76
    Вы забыли про специальный метод: Bukkit.shutdown();
     
  5. qVeshn

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

    Баллы:
    66
    НЕТ! Я НЕ ЗАБЫЛ!
    метод shutdown не пишет в консоль фразу "Stopping the server"
    Эту фразу пишет только CommandStop->execute, добраться до которой можно только через dispatchCommand

    CommandStop.execute делает следующее
    1. тут всякую фигню делает (вроде пермы проверяет у sender)
    2. Пишет "Stopping the server" (кстати эта фраза не в коде прошита а в файле lang.en_En)
    3. выполняет метод MinecraftServer.shutdownsafe (точно не помню название)

    Bukkit.shutdown делает только метод MinecraftServer.shutdownsafe

    ЗЫ. MinecraftServer.shutdownsafe не стопает сервер, а только выставляет флаг, что пора закончить главный цикл в методе MinecraftServer.run
    А после выхода из главного цикла выполняется метод MinecraftServer.stop, который пишет "Stopping server"

    Поэтому когда в чате/консоле пишут /stop или плагин делает dispatchCommand(sender,"stop"), то в консоле пишется сразу две фразы;
    Stopping the server
    Stopping server

    (я в этом посте мог напутать названия методов, т.к. сейчас на работе и нет под рукой исходников spigot)
     
    Последнее редактирование: 19 окт 2017
  6. artem0003

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

    Баллы:
    76
    Ответь в лс.
     
  7. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Spigot Timings для поиска утечек уже не используют? Или вы по старинке привыкли?
     
  8. artem0003

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

    Баллы:
    76
    в timings пусто вообще там всё норм. А перезагрузки просто так сервер может перезагрузить когда 10 человек,а сейчас 50! и он держится.
     
  9. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    TPS падает если что-то грузит сервер (или оперативки мало), но 3 гига достаточно даже для небольшого сервера с модами.
     
  10. artem0003

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

    Баллы:
    76
    Я повысил в связи с покукой крутой рекламы теперь 4,5Gb
     
  11. Автор темы
    slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Я сейчас почекал как спигот получает игроков в getPlayerExact. Он получает игрока из мапы в которой храниться - ник и EntityPlayer. После чего он получает этого EntityPlayer и вызывает метод getBukkitEntity и там кастует его в CraftPlayer
    public CraftPlayer getBukkitEntity() {
    return (CraftPlayer) super.getBukkitEntity();
    }
    Так что я могу быть уверен что игрок создан бакитом а не левым плагином.
     
  12. Автор темы
    slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Version 2.9.9:
    • Убран ограничитель пакетов, т.к он плохо работает.
    • Исправлен новый баг с помощью которого можно кикать игроков. (Шалкер бокс с кривым баннером внутри)
    • Исправлен баг что игроки с креативом могли создавать горшки с предметами.
     
  13. danyadanya

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

    Баллы:
    76
    Имя в Minecraft:
    Mazafaka
    сделай так чтоб при обновлении не приходилось заменять конфиг у меня мистикмоб стоит там дроп с эфектами и чарами больше стандартных
     
  14. Автор темы
    slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    его и так не надо заменять.
     
  15. danyadanya

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

    Баллы:
    76
    Имя в Minecraft:
    Mazafaka
    оно само заменяется если ты незнал
     
  16. BlazeMC

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

    Баллы:
    76
    Запрети книгу с пером и проверяй на наличие nbt.Просто так можно даже крашнуть сервер.
     
  17. danyadanya

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

    Баллы:
    76
    Имя в Minecraft:
    Mazafaka
    книгу можно любым плагином на блокировку предметов запретить. другой вопрос - как этой книгой крашится (где пруфы) чиркани в личку или тут
     
  18. BlazeMC

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

    Баллы:
    76
    nbt тэги и всё.
     
  19. danyadanya

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

    Баллы:
    76
    Имя в Minecraft:
    Mazafaka
    не аргумент. или разжуй для тупых. мне слово нбт ,как игрока простого, ничего не дает
     
  20. BlazeMC

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

    Баллы:
    76
    найди инфу про nbt
     
Статус темы:
Закрыта.

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