Помогите разобраться с пакетами и тем, что для них нужно

Статус
Закрыто для дальнейших ответов.

_TheZit445_

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
_TheZit445_
Сразу попрошу особо не серчать. Я с пакетами ещё не работал, но вот пришла такая надобность, нужно подменить моба. И тут я, само собой, как и полагается, начал пользоваться поиском. И в принципе даже что-то находил. Находил какой пакет использовать, как его отправлять. Но я не смог это никак проверить. Дело в том, что в пакете, допустим, PacketPlayOutSpawnEntityLiving требуется EntityLiving, и, мне стыдно, потому что это наверное лежит на поверхности, я не знаю как мне его получить.
И я искал, что-то экспериментировал, но никак не мог добиться результата. Поэтому, собственно, и прошу помощи.
Я наивно полагал что EntityLiving можно взять из LivingEntity, но нет, ошибки на этом месте...
Расскажите, пожалуйста, как работать с пакетами, какой-нибудь простой пример, подмена мобов например (Да, такое было уже на сайте, но как раз там было как-то жидко). И как получать эти Entity, EntityLiving и прочие. Посоветуйте, может есть что почитать о пакетах сервера и клиента.
Мне больше не к кому обратиться, поэтому прошу вас, пожалуйста подсобите, буду весьма признателен.
 
Используй ProtocolLib и не парся с рефлекцией и пакетами. Но если ты всё-же не хочешь зависимостей от плагинов...
Про EntityLiving: это тот класс который использует ванильный сервер. Путь к нему: net.minecraft.server.VERSION.EntityLiving. Получают его так: (на примере зомби)
Код:
((CraftZombie) zombie).getHandle();
но обычно для этого используют reflection. Далее надо целый туториал писать, оставлю пару ссылок.
Хороший туториал по созданию частиц пакетами: https://bukkit.org/threads/basic-reflection-tutorial.329127/
Видео-туториал по пакетам (первая часть):
 
@Cool_boy Господи, чел, тебе надо премию дать. Действительно стыдно, на поверхности лежит, господи. Ну про ваниль я сразу догнал. В общем спасибо тебе огромное, просто выручаешь, сейчас буду туториалы изучать.

Тему пока не закрываю, на случай вопросов. Да и может кто ещё материальчика кинет.
 
Используй ProtocolLib и не парся с рефлекцией и пакетами. Но если ты всё-же не хочешь зависимостей от плагинов...
Про EntityLiving: это тот класс который использует ванильный сервер. Путь к нему: net.minecraft.server.VERSION.EntityLiving. Получают его так: (на примере зомби)
Код:
((CraftZombie) zombie).getHandle();
но обычно для этого используют reflection. Далее надо целый туториал писать, оставлю пару ссылок.
Хороший туториал по созданию частиц пакетами: https://bukkit.org/threads/basic-reflection-tutorial.329127/
Видео-туториал по пакетам (первая часть):
а Packet Wrapper для кого придумали?
 
@Cool_boy к отредактированному: Я думал про PL... Даже не знаю как описать, но сейчас ничего внятного ответить не смогу. Возможно придётся его использовать
 
@xDark эм, чел. Он дал то, что нужно мне и то, что сейчас актуально. Я не знаю про пакеты ничего, поэтому сам обновить не смогу. А ему это ни к чему... Наезд не по делу
Скажи именно, что тебе сделать - то надо.
 
Тебе нжен PacketPlayOutSpawnEntityLiving. Зачем? Может это и без него можно сделать, и даже без всяких нмс.
Не думаю... Грубо говоря, мне нужен крипер с поведением эндермана. Поэтому я решил заспавнить эндермана, но кидать пакеты клиенту, будто это крипер
 
Не думаю... Грубо говоря, мне нужен крипер с поведением эндермана. Поэтому я решил заспавнить эндермана, но кидать пакеты клиенту, будто это крипер
Тебе нужен кастомный моб
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх