Вопрос Можно ли скрыть координате в экране отладки для определённого игрока

DendriveVlad

Пользователь
Сообщения
5
Есть ли возможность скрыть координаты только для одного игрока, а не для всего сервера? Если да, то как?
 
Решение
Да, есть. Как раз и делаю плагины для своего сервера и возник такой вопрос, на который ответа нигде нет.
Объединено


А в чём проблема? У каждого свои мысли в голове и я никогда не могу быть уверен в том, что они не решат пользоваться своими полномочиями для личной выгоды. Лучше перестраховаться заранее.
И даже, если все будут честными, я хочу, чтобы о положении игроков оставалось минимум информации до тех, пор пока они сами не заходят её раскрыть.
Я рекомендую использовать ProtocolLib. Конечно, ты можешь сделать это с помощью нмс, но это такая невротрепка.. поверь.
Начинай здесь:
Придется потратить немного времени на изучение, но оно уж...
DendriveVlad, Повторять не буду, так как Saharo4ek тебе уже ответил по данной теме.

Придётся использовать пакеты. Слушаешь пакеты входа игрока, и игрокам которым надо скрыть координаты, меняешь reducedDebugInfo на true.
Объединено

Но заметь, это скроет координаты только с F3. Моды на координаты все так же будут работать.
 
Gepron1x, Как вариант, но зачем? Можно сделать просто авторизацию в лобби. В лобби авторизации даже скрывать координаты будет бессмысленно.
Он про авторизацию ничего не говорил
:(
 
Придётся использовать пакеты. Слушаешь пакеты входа игрока, и игрокам которым надо скрыть координаты, меняешь reducedDebugInfo на true.
Объединено

Но заметь, это скроет координаты только с F3. Моды на координаты все так же будут работать.
Со вторым как-нибудь решу проблему.
А вот тема с прослушиванием пакетов звучит, как то что нужно. Только я не особо в этом понимаю. Можешь подробнее рассказать, как это сделать?

Ну и кому интересно: Мне не нужно скрывать координаты в процессе входа на сервер, тк это и так происходит в другом пустом мире. Мне нужно сделать так, чтобы модератор или администратор не пользовался возможностями слежки за игроками в личных целях, например для поиска этих игроков или поиск каких-то ресурсов по координатам, поэтому при переходе модера/админа в ваниш мне надо сделать так, чтобы у него скрывались координаты.
 
Со вторым как-нибудь решу проблему.
А вот тема с прослушиванием пакетов звучит, как то что нужно. Только я не особо в этом понимаю. Можешь подробнее рассказать, как это сделать?

Ну и кому интересно: Мне не нужно скрывать координаты в процессе входа на сервер, тк это и так происходит в другом пустом мире. Мне нужно сделать так, чтобы модератор или администратор не пользовался возможностями слежки за игроками в личных целях, например для поиска этих игроков или поиск каких-то ресурсов по координатам, поэтому при переходе модера/админа в ваниш мне надо сделать так, чтобы у него скрывались координаты.
Ааа, все понятно. Вообще неясно, чего это к тебе пристали с авторизацией
=). У тебя есть опыт плагинописания?
 
Ааа, все понятно. Вообще неясно, чего это к тебе пристали с авторизацией
=). У тебя есть опыт плагинописания?
Да потому что такой тупостью ещё никто не занимался. Не доверять своим администраторам... это уже даже смешно
 
Ааа, все понятно. Вообще неясно, чего это к тебе пристали с авторизацией
=). У тебя есть опыт плагинописания?
Да, есть. Как раз и делаю плагины для своего сервера и возник такой вопрос, на который ответа нигде нет.
Объединено

Да потому что такой тупостью ещё никто не занимался. Не доверять своим администраторам... это уже даже смешно
А в чём проблема? У каждого свои мысли в голове и я никогда не могу быть уверен в том, что они не решат пользоваться своими полномочиями для личной выгоды. Лучше перестраховаться заранее.
И даже, если все будут честными, я хочу, чтобы о положении игроков оставалось минимум информации до тех, пор пока они сами не заходят её раскрыть.
 
Последнее редактирование:
Да, есть. Как раз и делаю плагины для своего сервера и возник такой вопрос, на который ответа нигде нет.
Объединено


А в чём проблема? У каждого свои мысли в голове и я никогда не могу быть уверен в том, что они не решат пользоваться своими полномочиями для личной выгоды. Лучше перестраховаться заранее.
И даже, если все будут честными, я хочу, чтобы о положении игроков оставалось минимум информации до тех, пор пока они сами не заходят её раскрыть.
Я рекомендую использовать ProtocolLib. Конечно, ты можешь сделать это с помощью нмс, но это такая невротрепка.. поверь.
Начинай здесь:
Придется потратить немного времени на изучение, но оно уж того стоит. Это лучше, чем бездумно копировать код.
Пардон, делается это немного по-другому. Нужно отправлять пакет Entity Status игроку, которому хочешь скрыть координаты:

Java:
public void setReducedDebugInfo(Player player, boolean reducedDebugInfo) {
        PacketContainer packet = protocolManager.createPacket(PacketType.Play.Server.ENTITY_STATUS); // создаем пакет entity status
        packet.getBytes().write(0, reducedDebugInfo ? (byte) 22 : 23); //Значение. Изменяем поле с нулевым индексом.
        // Как говорит нам wiki.vg - чтобы скрыть координаты нам нужно значение 22, для того чтобы отобразить - 23.
        // Заметь, придется переотправлять данный пакет если игрок выйдет и зайдет снова.
        try {
            protocolManager.sendServerPacket(player, packet); // Отправляем пакет игроку.
        } catch (InvocationTargetException e) {
            getLogger().info("failed to send a packet!");
            e.printStackTrace();
        }
    }
 
Я рекомендую использовать ProtocolLib. Конечно, ты можешь сделать это с помощью нмс, но это такая невротрепка.. поверь.
Начинай здесь:
Придется потратить немного времени на изучение, но оно уж того стоит. Это лучше, чем бездумно копировать код.
Пардон, делается это немного по-другому. Нужно отправлять пакет Entity Status игроку, которому хочешь скрыть координаты:

Java:
public void setReducedDebugInfo(Player player, boolean reducedDebugInfo) {
        PacketContainer packet = protocolManager.createPacket(PacketType.Play.Server.ENTITY_STATUS); // создаем пакет entity status
        packet.getBytes().write(0, reducedDebugInfo ? (byte) 22 : 23); //Значение. Изменяем поле с нулевым индексом.
        // Как говорит нам wiki.vg - чтобы скрыть координаты нам нужно значение 22, для того чтобы отобразить - 23.
        // Заметь, придется переотправлять данный пакет если игрок выйдет и зайдет снова.
        try {
            protocolManager.sendServerPacket(player, packet); // Отправляем пакет игроку.
        } catch (InvocationTargetException e) {
            getLogger().info("failed to send a packet!");
            e.printStackTrace();
        }
    }
Спасибо. Как раз хотел изучить ProtocolLib, а тут и цель для которой его стоит изучить.
 
Назад
Сверху Снизу