Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин OP-Password-Safe Защищаем сервер от взлома 100% ForceOp

RuBukkit, это когда пользователи пишут все за ТС в темах о плагинах.

То есть, как написать ахеренный плагин?

1. Идем на РБ.
2. Выкладываем херню.
3. За Вас пишут код
4. ???
5. PROFIT!
 
Я тестировал, экскепшины не вылетали.
А какой должен быть, и на какой строке?

Код:
                if(!isLegalOp(player))
                {
                    player.sendMessage(ChatColor.RED + "Illegal op detected!");
                    player.setOp(false);
                    legalOps.remove(player);
                }
По логике player нет в списке legalOps (это проверялось изначально). Тогда - legalOps.remove(player) должно вылезти в виде эксепшна.

Можно хоть каждый тик проверять, но, кажется, это будет сильно грузить сервер.
Зачем добавлять в разные обработчики, если я уже сделал проверку каждые n тиков?
Ну хорошо, для надёжности добавлю доп. проверку в onCommand.
С чего это должно грузить сервер? Вы проверяли? Опять боятся чего непонятно.
Почему надо делать проверку перед выполнением действия? Потому что если кто-то будет пользовать получение опства и сразу и выполнять команду - то она выполнится.
Ну а вообще, если такой (или подобные) плагины получат распространение, то я сразу вижу несколько вариантов злобных закладок, которым будет чихать на этот плагин ;)
 
Суть вообще в том что код не работает вообще-то. Ибо сам лист строк, а проверяется на LegalOP имя, но при этом удаляется игрок. А player.toString() != player.getName(). А ещё то что операция бессмысленна это вообще огонь, ибо если его нет в списке легальных опов, то вообще зачем его удалять оттуда?
 
Да?! Ну отлично тогда. Всё равно это "dead code" в том месте :)
Суть вообще в том что код не работает вообще-то. Ибо сам лист строк, а проверяется на LegalOP имя, но при этом удаляется игрок. А player.toString() != player.getName()
О! А на это я не обратил внимание ;)
 
Да?! Ну отлично тогда. Всё равно это "dead code" в том месте :)

О! А на это я не обратил внимание ;)
Вот и получается полностью бессмысленна это строчка. И раз в 3 секунды проверять мало, можно и за 1 тик дохера успеть.
 
Вот вы даёте. Такое впечатление, что вам заняться нечем. Откуда такой интерес к данному плагину?
А вообще, мне кажется, что если иметь голову, то подобные плагины никогда не понадобятся
 
Погуглив немного, я не думаю что они слишком сильны\умны. Пользыватся гайдами по взлому из паблика и называть себя хакИром каждый может...
Некий Kolja, может взломать абсолютно любой проект, и на Оп и на Чит ну что-б ты понимал!
 
Разве Force OP не фейки? Сколько не искал в интернете нигде не было рабочего, а где то и вовсе нельзя было скачать.
 

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

Назад
Верх