Найдите файл класса, содержащий URL-адрес, который вы хотите изменить, затем выберите опцию, как его изменить.
Вариант 1: редактирование jar
Извлеките файл класса и запустите на нем дизассемблер Java, например Krakatau (примечание: не javap
, поскольку вы не можете собрать его выходные данные). Измените URL в разборке, затем соберите его (Кракатау тоже может это сделать). В файле jar замените файл класса, который вы разобрали, на файл, который вы снова собрали. (Помните, что jar-файлы - это просто переименованные zip-файлы.) Проверьте папку META-INF, чтобы убедиться в отсутствии подписи / контрольной суммы, которую вы аннулировали.
Вариант 2: отражение
Четный если поле является приватным, вы можете получить к нему доступ с помощью отражения. Создайте собственный мод, который использует отражение, чтобы получить URL и изменить его. Обратите внимание, что этот метод не будет работать, если URL-адрес жестко закодирован в функцию или если он static final
.
Опция 3: coremod
Coremods - это функция, поддерживаемая Minecraft Forge, чтобы позволить вам используйте ObjectWeb ASM для управления классами по мере их загрузки. Создайте coremod самостоятельно. Он должен иметь загрузочный плагин и преобразователь класса. Плагин загрузки должен установить преобразователь класса в пути всех загруженных классов. Преобразователь класса должен использовать ClassReader для чтения класса, затем внести необходимые изменения, а затем ClassWriter, чтобы записать его обратно.