Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Именно так и сделал уже. "Догрузил" через *LOAD`ы ссылку на объект метода + параметры из метода в стек и заменить инвок метода на инвок своего статика, где "исправил" логику, добавив проверки. Тут проблема бывает лишь 1, когда нужно будет внешне обратиться к приватному/защищённому методу...
Про поп вариант интересный, посмотрю.
Я же почтим таким способом и пользуюсь. -Dlegacy.debugClassLoading=true -Dlegacy.debugClassLoadingSave=true в аргументах запуска заставляет Forge сохранять class`ы с байткодом после всех трансформеров из сборки, в которой был загружен сервер.
Это я знаю...
Добрый день всем. Вообщем, нужна помощь с ASM`ом. Мне иногда нужно полностью удалить вызов X метода (INVOKE_...) из метода, который я "исправляю". Чтобы это сделать, мне нужно узнать с какой инструкции началась загрузка данных в стек до вызова этого метода, дабы эти инструкции также стереть...
Всем привет, есть вопрос, над которым уже бьюсь не 1 день, а решить самому не выходит, по этому прошу помощи у знатоков. Вообщем, есть метод World#canBlockSeeSky(), который проверяет есть ли "непрозрачные" блоки над указанными координатами до самого неба. Мне надо понять, за счёт каких методов в...
Всем привет. Мне нужно слушать некоторые ивенты на клиенте, но у меня не выходит. Возможно ли это вообще? На текущий момент требуются следующие события: PlayerEvent.StopTracking, ChunkWatchEvent.UnWatch, LivingDeathEvent, BlockEvent.BreakEvent...
Ну в принципе "добился" своей цели - получать таргет зрения игрока. Но работает очень даже криво, особенно с обнаружением блоков (не верные координаты блока смотрит скорее всего, видимо нужно как-то по другому округлять дабл координаты в int`овские при поиске блока)
public static...
UPD: Вообщем остановился пока на вот таком коде, костылил сам, уверен что код плохой, но +- рабочий. Единственно вопрос, что делать с размерами моба? Не все же мобы в 2 блока размером, есть значительно выше (а иногда и толще) ентити. Как их "уловить"? Если говорить о ваниле - то возмём к примеру...
Короче попытался что-то сделать на примерах что ты кинул. По идеи правильно (и то не уверен) но мне нужно на каждую итерацию цикла while сдвигать AABB на 1 блок по взгляду игрока (то есть прибавлять x, y или z на 1 или -1). Как мне узнать какую переменную надо менять и как именно (инкремент или...
Всем привет. Да, знаю, похожая тема была, но про блок, на который смотрит игрок. Мне же нужно точно тоже самое на серверсайде, но искать нужно и ентити и блок. Вот кусок кода, который я нашёл где-то на этом форуме:
public static MovingObjectPosition getTarget(EntityPlayer player) {
int...
Нету, но по сурсам игры нашёл другое решение. Главный класс, где мы регистрируем ASM трансформеры (и путь к которому пишем в манифесте мода) имеет метод injectData и передаёт Map. В этой мапе по опред. ключу есть булева deobfuscatedEnvironment. Ключ можно в сурсах посмотреть. Правда пока на ту...
Это совершенно не поможет. Такое только в рантайме годится ибо под капотом идёт просто подбор "правильного" названия филды (если ты про геттеры полей) + ещё будет ранняя попытка обратиться к классу (из этого хелпера), который ещё на этапе ASM модификации и не загрузился в JVM - краш.
Такого...
Всем привет. Есть такой вопрос, который я всё время решал раньше костылём и, в принципе, было прекрасно. Но вот что-то сегодня этот костыль не прокатил. Вообщем вот есть кусок кода, комментарием помечен мой костыль:
public class MyASMHook implements IClassTransformer {
@Override
public...
Мне надо делать то, что не поддерживает хуклиба от глуми, по этому и прошу помощи с поиском "конца" вызова супер/зис конструктора, дабы не получился краш с Bad type operand из-за выполнения кода до вызова конструктора
Всем привет. Нужна помощь по ASM. Вообщем проблема заключается в том, что нельзя вставить код до вызова this() / super() конструктора в конструкторе, а значит нужно найти "конец" вызова этого конструктора. (Основная моя цель - вставить код в начало конструктора, тобишь после вызова this() /...