[Гайд][Легко][1.6+] Модификация чужого кода при запуске (трансфомеры)

У меня не работают хуки на основном клиенте, а в среде работают. Methods.bin сгенерировал и положил куда надо. Ради эксперимента добавил вывод сгенерированного кода и в нем помимо того, что нет моих хуков, еще и отсутствуют классы с загрузчиком хуков и с контейнером хуков, хотя в jar файле они есть. Так же в другом, старом моем моде хуки работают, а в новом почему-то нет.
,
При этом в логах есть такие строки:
Parsing hooks container ru.kreatifchk.example.Hooks
Injecting hooks into class net.minecraft.server.MinecraftServer

Почему такое может быть? Может ли это быть какая-то несовместимость с другими модами, например?
 
Последнее редактирование:
7,099
324
1,509
Попробуй добавить опции VM -Dlegacy.debugClassLoading=true -Dlegacy.debugClassLoadingSave=true
В папке запуска появится папка с дампами фактически загружаемых классов, на которые применены все трансформеры.
Найди там целевой класс и посмотри, че там
 
Всё-таки оказалось, что влияет один из сторонних модов. И хук не работает только в определенные методы. Почему такое может быть и есть ли какая-то возможность загрузить хук позднее чем это сделает другой мод (если дело в этом).
 
Подскажите пожалуйста что я делаю не так.
в VM arguments прописал вот это -Dfml.coreMods.load=gloomyfolken.hooklib.example.ExampleHookLoader
Но вообще ничего из либы не вызывается, я ее всю дебагерами завесил, ничего.
Как-то надо создать core mod у себя в папке? Зачем тогда он же но в либе.
1693371346657.png
 
808
3
124
Проверь в диспетчере задач что параметр запуска правда прописался в строку запуска клиента (мб не в той конфигурации запуска указал или что-то такое), поищи по слову hooklib в логе запуска
 
Скиньте кто нибудь готовый проект с хуками пожалуйста, не могу кое в чем разобраться(1.7.10)
 
Сверху