Как редактировать jar-файлы minecraft

Обновлено: 05.07.2024

Прежде чем вы решите модифицировать (изменить) свою копию Minecraft, очень важно понять, что вы делаете, иначе вы можете испортить свою копию. (Если ваша копия Minecraft скомпрометирована, вы всегда можете сделать резервную копию своих миров и повторно загрузить Minecraft) Позвольте мне повторить это для вас: если вы модифицируете Minecraft, вы можете сломать свою копию игры, а также любые миры. в которую вы играете. Поскольку вы делаете что-то, что полностью не поддерживается Mojang, они не смогут вам помочь.

Из-за особенностей работы моддинга обновление клиента Minecraft приведет к поломке ваших модов. То есть при каждом обновлении клиента Minecraft вам придется получать обновленные моды и переустанавливать их. Однако созданные вами миры не будут уничтожены (хотя никаких модов в вашем мире не будет).

Кроме того, авторы мода не дают никаких гарантий относительно того, работает код или нет, не говоря уже о каких-либо гарантиях поддержки.

Почти все пакеты модов имеют автоустановщики, которые упрощают добавление модов в Minecraft для начинающего моддера. Вы можете искать пакеты модов на странице модов.

Предварительные требования для установки модов [ ]

  • Умение архивировать/разархивировать файлы и работать с хорошей утилитой архивации (например, WinRAR, 7zip и т. д.).
  • Знать, как правильно отправлять отчеты об ошибках.
  • Знание того, как на самом деле установить мод и его предварительные условия.
  • Умение правильно читать инструкции и следовать им.
  • Знать, какие моды конфликтуют друг с другом, а какие нет.
  • Убедитесь, что вы перечитали инструкции.

Возможно, вы сможете обойтись без некоторых из этих вещей, но если ваша копия Minecraft сломается, вам следует обратиться за помощью к кому-нибудь из сообщества моддеров (предпочтительно к автор мода). Если вы рассматриваете это как прекрасную возможность узнать что-то новое, то вы на правильном пути!

Примечание: вы можете использовать MCPatcher, чтобы сделать часть или всю эту работу за вас!

Как работают моды [ ]

Файл "minecraft.jar" на вашем компьютере содержит все необходимое для запуска Minecraft. Например: генерация мира, отображение блоков, управление мобами, предметами и рецептами. Когда вы добавляете моды в Minecraft, вы берете файл Minecraft.jar и перезаписываете его необходимыми изменениями. Все эти файлы внутри minecraft.jar, которые заставляют его работать, проходят через процесс, называемый «запутыванием». По сути, это означает, что он заменяет такие слова, как «рецепт», на такие слова, как «bf» (для технических специалистов все имена классов, имена переменных и идентификаторы превращаются в бессмысленные имена из одной-трех букв).

Кроме того, каждый объект в игре (моб, предмет, блок и т. д.) имеет идентификатор, чтобы их можно было описать на карте. По мере добавления нового контента в Minecraft используются новые идентификаторы.

Это имеет несколько очень важных последствий:

  • Это коренным образом меняет способ игры в Minecraft. Таким образом, Mojang никак не сможет вам помочь и не несет ответственности за сбои, потерю данных и т. д.
  • Некоторые моды могут претендовать на то, чтобы добавить в ваш мир милого щенка, но на самом деле они могли быть созданы со злым умыслом, например, с целью кражи вашего имени пользователя/пароля Minecraft или установки кейлоггера. . Это беспокоит только в том случае, если…
    • Загружаемый мод содержит исполняемый файл, который вы запускаете.
    • Загружаемый мод информирует вас о том, что вам следует изменить программу запуска Minecraft

    (Minecraft.jar, как правило, находится в основном каталоге приложения, а не «minecraft.dmg», описанный ниже. Если мод, который вы хотите установить, не требует ни одного из этих действий, вы должны чувствовать себя в полной безопасности. Если нет, это хорошая мера. Безопасность заключается в установке только очень популярных модов. Risugami создала загрузчик модов и другие замечательные, безопасные и популярные моды, а новая версия сделала моддинг намного более безопасным. Читайте комментарии к сообщениям о модах перед загрузкой и установкой)

    • При обновлении Minecraft все моды должны быть повторно обновлены их авторами, а иногда их необходимо повторно загрузить и поместить в папку. Вам также может потребоваться загрузить последнюю версию загрузчика модов, поскольку Mojang запутывает источник мода при обновлении майнкрафта. Если мод использует идентификационный номер, который Mojang решит использовать в обновлении, это вызовет дополнительные проблемы, и ваш мир будет выглядеть странно или потенциально будет полностью сломан и непригоден для использования. Авторы модов делают это по собственной воле, и обновление может занять недели. Однако это не означает, что вы должны беспокоить автора по этому поводу.
    • Если два мода делают похожие вещи, они, скорее всего, будут несовместимы, потому что оба будут пытаться изменить файл "bf" (или "рецепт"). (Это можно исправить, в настоящее время моды также поставляются с файлом свойств для изменения идентификаторов блоков и элементов для устранения конфликтов.)
    • Возможно, вы добавляете новые объекты в свои миры, поэтому, если вам когда-нибудь придется удалить моды (скажем, из-за обновления Minecraft), этот мир больше не будет совместим.

    Загрузка модов [ ]

    Лучшее место для списка -minecraft-mods/ в разделе модов на форуме Minecraft]. Обратите внимание, что в этом разделе более 600 страниц, поэтому поиск нужного мода или хороших модов может быть утомительным.

    Если вы получаете моды, которые являются копиями больших модов, таких как копия TooManyItems, в них может быть вредоносное ПО, поэтому лучше всего получить нужный мод из оригинальной темы. Если какой-либо из загруженных вами файлов не является классом, png или аудиофайлами или папками с этими элементами и не является установщиком, НЕ ОТКРЫВАЙТЕ ИХ. Обязательно запустите zip-файл или папку через антивирусную программу вашего компьютера, прежде чем помещать мод в банку. Если какие-либо моды были загружены с некачественных сайтов, сканирование их антивирусными программами, скорее всего, предотвратит любые проблемы с вашим компьютером.

    Создание резервных копий [ ]

    Если вы хотите протестировать мод без какого-либо риска, просто создайте полную резервную копию .minecraft. При его восстановлении все вернется в исходное состояние (включая ваши миры).

    Если вы собираетесь модифицировать более настойчиво и сложно, вам следует помнить о следующих рекомендациях:

    • Создавайте резервные копии своих миров в .minecraft/saves
    • Если у вас были установлены предыдущие моды, создайте резервную копию файла minecraft.jar, чтобы случайно не удалить моды.
    • Если вы хотите сохранить свою статистику и достижения в безопасности, сделайте резервную копию каталога .minecraft/stats
    • Не помещайте в сундуки пользовательские предметы только из модов, если вы хотите снова получить доступ к этому миру из немодифицированной версии Minecraft. Вполне возможно, что если вы сделаете это, когда вы удалите мод, а затем попытаетесь открыть или разбить сундук, Майнкрафт может вылететь. Если вы сделаете это случайно, вы можете встать на сундук и ввести /setblock ~ ~-1 ~ air. Это удалит сундук и предметы внутри него.

    Резервное копирование ваших миров следует выполнять каждый раз, когда вы устанавливаете новый мод.

    ModLoader, Spawnlist и друзья [ ]

    • Есть много модов, для работы которых абсолютно необходимы другие моды, потому что они используют некоторые из команд, которые дают эти другие моды. Они также известны как служебные моды. Эти моды включают ModLoader (для добавления модов в целом) и Minecraft Forge, который является более продвинутой версией modloader. Эти моды, которые требуются для некоторых модов, должны быть установлены вместе с модом перед запуском Minecraft. Без них мод не будет работать и даже может привести к вылету Minecraft.

    Авторы модов могут предоставить файл конфигурации для изменения идентификаторов элементов. Найдите конфликтующий идентификатор и измените его. Просто помните, что когда выходит обновление для майнкрафта или мода, вы должны использовать те же идентификаторы предметов, иначе возникнут сбои. Вот видеоурок, показывающий, как установить Forge Mod Loader для Minecraft:

    Как справиться с первым сбоем [ ]

    • Запуск Minecraft в режиме командной строки для получения трассировки стека.
    • Публикация этой трассировки стека в виде отчета об ошибке на веб-сайте/форуме/в теме авторов модов.
    • Если вы не можете устранить сбой, обратитесь к следующему разделу, чтобы восстановить ваш Minecraft и миры.
    • Просто перезапустите Minecraft, и он исчезнет.

    Удаление модов, исправление сбоев и восстановление Minecraft [ ]

    Есть 3 способа удалить мод.

    1. (только если мод установлен таким образом) Заходим в папку mods в папке .minecraft и удаляем мод из папки. (Только более поздние версии Modloader)
    2. Восстановите свою версию Minecraft, сохранив при этом свои миры.
    3. Принудительное обновление. Это можно сделать, нажав кнопку над надписью «Войти».

    Чтобы восстановить Minecraft, перейдите в папку AppData. Зайти в Роуминг. Переместите папку .minecraft на рабочий стол. (или где угодно) Откройте программу запуска Minecraft, убедившись, что ваше имя пользователя и пароль верны, и войдите в систему. После этого программа запуска Minecraft загрузит новую, свежую папку .minecraft в папку Roaming. Как только это будет сделано, откройте модифицированную папку .minecraft. Зайдите в папку «Сохранения». Сделайте то же самое для свежей папки .minecraft без модов. Возьмите свои миры из модифицированной папки .minecraft и поместите их в папку saves в новой папке .minecraft. С вашими мирами все должно быть в порядке, но все модификаторы в вашем мире исчезнут.

    Чтобы устранить сбой, обратитесь к следующему списку решений проблем:

    – Вы удалили папку META-INF в minecraft.jar?

    - Имеются ли у ваших модов конфликтующие идентификаторы элементов или блоков? Если это так, у большинства модов есть файл свойств для изменения идентификаторов блоков и предметов.

    - Посмотрите в modloader.txt, какие идентификаторы блоков конфликтуют.

    - Мод создан для вашей текущей версии Minecraft?

    - Вы установили какие-либо/все зависимости для мода? Например, TurboModelThingy требуется для работы мода самолетов, а ModLoaderMP требуется с Modloader для SDK Guns Mod.

    - У вас есть правильная версия Modloader?

    - У вас правильная версия мода?

    - Вы УВЕРЕНЫ, что правильно установили мод? (проконсультируйтесь с любым файлом README в моде)

    Как эффективно получить помощь [ ]

    • УДАЛИТЕ папку META-INF.
    • Проверьте, чтобы не было конфликтующих модов.
    • При использовании мода Modloader убедитесь, что установлена ​​правильная версия Modloader.
    • Проверьте версию вашего мода.
    • Поищите в руководстве на YouTube мод, который вы пытаетесь установить (убедитесь, что вы смотрите видео с правильной ОС и версией мода).

    Как устанавливать моды [ ]

    Установка старого лаунчера [ ]

    • Windows 95/98[SE]/2000/ME/XP:
    1. Нажмите "Пуск".
    2. Нажмите «Выполнить». .
    3. Введите %appdata%
    4. Откройте файл minecraft.jar (он может отображаться только как minecraft).
    5. Откройте папку с помощью архиватора (наиболее популярны 7zip и WinRAR). Для этого щелкните правой кнопкой мыши файл minecraft.jar и выберите меню «Открыть с помощью».
    6. Удалите папку META-INF.
    7. Скопируйте файлы класса в эту папку. Выйдите из папки после того, как вы скопировали файлы курса.
    8. Некоторые моды потребуют от вас копирования файлов в другие каталоги. Примеры включают:

    – Папка ресурсов (находится в основном каталоге .minecraft)
    – Папка Config (находится в основном каталоге .minecraft)
    – Папка .minecraft
    Следуйте инструкциям по загрузке для уточнение, куда копировать файлы.

    1. Нажмите значок "Пуск".
    2. Перейдите в папку C:/Users/(имя пользователя)/Appdata/roaming/.minecraft
    3. Откройте корзину, и вы увидите файл minecraft.jar (он может отображаться только как minecraft).
    4. Откройте папку с помощью архиватора (наиболее популярны 7zip и WinRAR). Для этого щелкните правой кнопкой мыши файл minecraft.jar и выберите меню «Открыть с помощью».
    5. Скопируйте файлы класса в эту папку. Выйдите из папки после того, как вы скопировали файлы курса.
    6. Некоторые моды потребуют от вас копирования файлов в другие каталоги. Примеры включают:

    – Папка ресурсов (находится в основном каталоге .minecraft)
    – Папка Config (находится в основном каталоге .minecraft)
    – Папка .minecraft
    Следуйте инструкциям по загрузке для уточнение, куда копировать файлы.

    Вы найдете файл minecraft.jar в папке ~/.minecraft/bin/. В Nautilus (или в большинстве других файловых браузеров) нажмите Ctrl+H, чтобы увидеть скрытые папки и перейти к .minecraft. Если в консоли введите ls -a ~/ и вы найдете каталог .minecraft. Перейдите в папку bin. Откройте банку майнкрафта с помощью менеджера архивов или аналогичного. Извлеките моды, которые вы хотите поместить в банку, из их zip или rar. Закройте окно менеджера архивов. Начни играть!

    Это способ установки модов через терминал

    <р>1. Перейдите в Приложения > Утилиты и откройте терминал. 2. Введите следующее, построчно:

    cd ~
    mkdir mctmp
    cd mctmp
    jar xf ~/Library/Application\ Support/minecraft/bin/minecraft.jar

    <р>3. За пределами терминала скопируйте все файлы и папки в каталог mctmp. 4. Вернувшись в терминал, введите следующее:

    rm META-INF/MOJANG_C.*
    jar uf ~/Library/Application\ Support/minecraft/bin/minecraft.jar ./ ​​
    cd ..
    rm -rf mctmp< /p>

    В большинстве операционных систем вы можете нажать кнопку пакетов текстур в главном меню Minecraft, которая откроет папку Minecraft. Нажмите «вверх», и вы окажетесь в каталоге .minecraft.

    Установка для лаунчера 1.6 [ ]

    1. Откройте программу запуска 1.6+ и убедитесь, что версия Minecraft, которая требуется для мода, уже установлена.
    2. Нажмите «Редактировать профиль» в панели запуска, затем откройте папку с игрой.
    3. Перейдите в подпапку "Версии".
    4. Переименуйте папку нужной версии в другое. В этом примере переименуйте «1.8.3» в «1.8.3_Modded».
    5. Откройте папку 1.8.3_Modded.
    6. Переименуйте "1.8.3.jar" в "1.8.3_Modded.jar".
    7. Переименуйте "1.8.3.json" в "1.8.3_Modded.json".
    8. Откройте "1.8.3_Modded.json" в текстовом редакторе и замените "id":"1.8.3" на "id":"1.8.3_Modded", сохраните файл и закройте его.
    9. Откройте JAR-файл, чтобы увидеть все содержащиеся в нем файлы. Вы можете сделать это, изменив .jar на .zip и разархивировав его. Вам нужна только новая папка jar и json, поэтому удалите все остальное в этом каталоге. Нет необходимости в WinRAR или 7-Zip. Скопируйте и вставьте файлы мода в новую папку jar «1.8.3_Modded».
      1. Расширения файлов могут быть скрыты по умолчанию, поэтому вам может потребоваться разрешить проводнику файлов не скрывать их. В Windows 10 просто нажмите «Просмотр» вверху, найдите и установите флажок «Расширения имен файлов». В более старых версиях Windows вам нужно будет перейти в «Упорядочить», чтобы найти ящик.

      Установка модов 1.6.1 [ ]

      Чтобы установить мод для Minecraft 1.6.1+, вы можете сделать это двумя способами: с помощью Minecraft Forge или вручную. Оба подробно описаны здесь.

      (Эти шаги могут работать с любой версией, начиная с 1.6.1+.)

      Установка модов с помощью Minecraft Forge [ ]

      Сначала найдите понравившийся мод и загрузите его. Это должен быть файл .jar. (В крайнем случае это может быть .zip.) Вот хороший сайт для скачивания модов. (Примечание: этот веб-сайт также является хорошим способом поиска модов для конкретной версии Minecraft, которую вы модифицируете.) После загрузки мода перейдите на домашнюю страницу Minecraft Forge. Теперь выберите свою версию из списка. В этом руководстве в качестве примера используется версия 1.8.8. Загрузите файл .jar версии, которую вы хотите модифицировать, и запустите ее. Просто нажмите ОК, больше ничего делать не нужно. После этого установите его и запустите Minecraft. (Примечание: вы должны запустить Minecraft хотя бы один раз!) Теперь найдите папку .minecraft. Должна появиться новая папка с именем «mods».

      Теперь перетащите загруженный файл мода в эту папку и откройте программу запуска Minecraft. Прежде чем нажать «Воспроизвести», нажмите «Редактировать профиль» слева. В раскрывающемся меню «Выбрать версию» перейдите вниз, и вы найдете версию «1.8.8Forge» (или любую другую версию, которую вы модифицируете). Нажмите это, затем OK, а затем нажмите Play. Загрузка займет больше времени, чем обычно, особенно если вы используете несколько модов. Запустите мир, и если все, что делает ваш мод, там, вы успешно установили мод с помощью Minecraft Forge.

      Установка модов вручную [ ]

      Этот метод немного сложнее. Во-первых, перейдите в папку .minecraft, перейдите в «версии» и сделайте копию папки «1.9.4» или любой другой версии, которую вы модифицируете. Переименуйте новую копию, например, в «1.9.4mod». Затем в новой папке «1.9.4mod» переименуйте файл «1.9.4.jar» в «1.9.4mod.jar» и переименуйте файл «1.9.4.json» в «1.9.4mod.json». Они должны иметь то же имя, что и содержащая папка. Затем откройте файл «1.9.4mod.json» в «Блокноте» и замените ВЕСЬ текст 1.9.4 на 1.9.4mod. Сохраните и закройте его. Затем с помощью WinRAR или 7Zip откройте файл «1.9.4mod.jar». Удалите папку «META-INF». Опять же, используя WinRAR или 7Zip, откройте файл .jar вашего мода в отдельном окне. Скопируйте все из jar-файла мода в jar-файл версии 1.9.4mod.

      Теперь откройте программу запуска Minecraft и перейдите в раскрывающееся меню версии. Вы должны увидеть свою версию «1.9.4mod». Используйте это и откройте Minecraft. Если мод делает то, что у него получается лучше всего, он сработал.

      Установка второго мода, тестирование на совместимость. [ ]

      • Откройте папку «minecraft.jar» (см. выше) с помощью архиватора, такого как WinRAR или 7-Zip, и перетащите файлы мода из загруженной папки в папку minecraft.jar. Большинство модов требуют, чтобы папка «META-INF» внутри minecraft.jar была удалена, прежде чем мод сможет работать.

      Устранение сбоев [ ]

      • Возможно, ваш мод конфликтует с идентификаторами блоков или предметов. Проверьте место, где вы получили мод, чтобы узнать, есть ли у кого-то еще такие же ошибки, и посмотрите, есть ли решение.
      • Возможно, вы забыли удалить папку «META-INF». Большинство модов требуют, чтобы эта папка была удалена перед загрузкой мода.
      • Risugami's Modloader и другие моды, такие как Audio Mod, действительно помогут, если моды продолжают падать (или если Minecraft отключается без вашей воли)

      Автоматические установщики [ ]

      Разработано несколько программ, автоматически устанавливающих моды, что избавляет от необходимости вручную копировать файлы в minecraft.jar. Некоторые из этих программ, такие как MCManager и MCPatcher, можно найти в видеоуроках [ ]

      Нажмите здесь, чтобы получить общее руководство по установке модов Minecraft в Windows и Mac OS X.

      [Редактирование конфигурации Forge] Нужна помощь в редактировании файлов Forge .jar!

      • Из воды
      • Местоположение: Toast Land
      • Дата регистрации: 04.11.2016
      • Сообщения: 4
      • Сведения об участнике

      Здравствуйте! Я задавался вопросом и некоторое время искал, как отредактировать конфигурацию мода .jar forge, чтобы сломать его. Я пробовал несколько способов, но ни один из них не работает. Итак, сегодня я обратился за помощью к сообществу форумов Minecraft. Примером того, что я хочу отредактировать, является простой текст в моде. Например, с [Переключение спринта] на [Переключение бега]. Я просто хочу немного изменить его, чтобы он больше подходил мне. Я надеюсь, что кто-то может помочь. Примечание. У меня есть операционные системы Mac и Windows.

      Скриншот 04.11.2016, 19.47.18

      Твой дружеский тост!

      View UpcraftLP< бр />

      • Космическая одиссея
      • Местоположение: this.getLocalization()
      • Дата регистрации: 08.10.2015
      • Сообщения: 2069
      • Местоположение: me.locate((Location)null);
      • Minecraft: UpcraftLP
      • Xbox: :P
      • PSN: купите мне!
      • Сведения об участнике

      Есть способы сделать это:

      <р>1. извлеките файл jar и просмотрите папку с ресурсами и найдите языковые файлы. Измените требуемый ключ там, и это должно быть сделано (выполнимо только в том случае, если моддер использовал языковые ключи и не запрограммировал сообщение жестко).

      <р>2. декомпилируйте мод (есть онлайн-сайты, которые могут сделать это за вас) и извлеките декомпилированные ресурсы в рабочее пространство для моддинга. затем просмотрите код той части, которую вы хотите изменить, и, наконец, перекомпилируйте его, используя скрипт gradle forge.





      • Из воды
      • Местоположение: Toast Land
      • Дата регистрации: 04.11.2016
      • Сообщения: 4
      • Сведения об участнике

      Не могли бы вы дать мне несколько сайтов, которые я могу использовать для редактирования файлов .jar, я новичок в Java и хочу убедиться, что использую правильные ресурсы.

      Твой дружеский тост!

      View UpcraftLP< бр />

      • Космическая одиссея
      • Местоположение: this.getLocalization()
      • Дата регистрации: 08.10.2015
      • Сообщения: 2069
      • Местоположение: me.locate((Location)null);
      • Minecraft: UpcraftLP
      • Xbox: :P
      • PSN: купите мне!
      • Сведения об участнике

      декомпилируйте мод и загрузите извлеченный zip-файл.

      загрузите последнюю версию Forge MDK и извлеките ее в пустой каталог. это будет ваше рабочее место. откройте там командную строку и введите

      затем замените все в /src/main/java содержимым zip-файла, который вы скачали из компилятора, откройте jar-файл оригинального мода и скопируйте папку с ресурсами в /src/main/resources.

      Теперь запустите eclipse и укажите папку eclipse в вашей рабочей области.

      Редактируйте все, что вам нужно, и когда вы закончите, откройте другую командную строку и введите

      Я пытаюсь отредактировать одну строку в моде Pam's Harvestcraft. Причина в том, что в игре слишком часто появляются эти "сады" внутри мода. Для этого мода есть файл конфигурации, однако минимально возможное значение редкости = 1 все еще слишком велико. Эта редкость является целым числом, и я хочу изменить его на число с плавающей запятой внутри файла .class этого мода jar, чтобы я мог использовать 0,5 или что-то меньше 1, чтобы уменьшить вероятность появления этих садов.

      Я копирую и вставляю файл .class в intelliJ, но он доступен только для чтения. Написание моего собственного текстового файла и изменение расширения на .class явно приводит к повреждению файла.

      Последний час я пытался найти ответ в Google. Люди говорят, что вам может понадобиться настроить среду для моддинга, декомпилировать код, а затем перекомпилировать его после изменений. Это кажется очень многословным для простого редактирования строки кода.

      1, мне также нужно изменить метод getInt() на getFloat(), что я не могу сделать.

      2. Когда я сохраняю только что отредактированный файл класса, а затем пытаюсь снова открыть его с помощью этого редактора JOE, ЭТО ВЫДАЕТ МНЕ ОШИБКУ ФАЙЛА. Это показало мне, что если я отредактирую файл класса, он все равно испортится.

      Если это скомпилированный файл .class, для этого есть причина. Я бы не стал этого делать или искал API для файла, а затем что-то из этого разрабатывал.

      Изменение типа переменной, каким бы простым оно ни казалось (может оказаться не таким простым в зависимости от того, как значение обрабатывается внутри кода), действительно потребует перекомпиляции кода на строго типизированном языке, таком как Java. Если вы заинтересованы в этом, вам нужно изучить настройку среды разработки для мода, декомпиляцию и повторную компиляцию кода. Обратите внимание, что это может вызвать побочные эффекты и неожиданные ошибки, поскольку декомпилированный исходный код не всегда будет дословным. Если вы попросите разработчика мода внести изменения, а также запросите исходники и/или помощь в настройке окружения, это может упростить задачу.

      Кроме того, ручное редактирование файла класса, безусловно, не лучший вариант, .class — это нечитаемый/нередактируемый формат по замыслу — по крайней мере, для людей. Отредактируйте исходный код (декомпилируйте, если он недоступен) и снова скомпилируйте его.

      Вместо того, чтобы пытаться изменить файл класса, возможно, вы можете расширить его или создать свой собственный класс, который периодически обновляет значение редкости с 1 до 0 или с 0 до 1.

      Спасибо за комментарий, Оцелот, и спасибо за объяснение, Хави. Я собираюсь заняться редактированием модов. Андрей, тоже интересная идея. Могу проверить это тоже, если я не могу редактировать сам мод. Я не хочу ничего менять в отношении тикрейта или каких-либо базовых файлов Minecraft, но ваша идея может сработать, поменяв редкость между 0 и 1. Эта генерация сада происходит при генерации мира, так что, вероятно, это просто мгновенно. Я не уверен.

      2 ответа 2

      Технически это можно сделать, но это будет проблематично. Если бы это было просто изменение переменной, это было бы просто, но теперь вы также говорите об изменении типа поля.

      Есть несколько способов сделать это, и я не вижу ни одного из них в списке, поэтому упомяну об этом.

      Во-первых, вы можете декомпилировать/перекомпилировать. Я пытался сделать это однажды, и это действительно не работает. В результате перекомпиляции возникло множество ошибок, потому что декомпиляция не будет полностью точной.

      Второй вариант, который был бы самым простым, если бы не необходимость менять тип поля, — это редактирование машинного кода. Java компилируется в ассемблерный код, специально используемый JVM. Нашел бы инструкцию, поменял значение, и было бы тебе золото. (Я говорю проще всего, но если вы никогда раньше не видели сборку, вам все это покажется греческим.)

      Возвращаясь к проблеме: вы говорите об изменении типа данных. Этого будет недостаточно. Вам нужно будет не только изменить тип данных, но и каждое место, где используется этот тип данных, и вызывается его метод get. Каждое место, где вызывается геттер, ожидает возвращаемое значение int. Если это число с плавающей запятой, переходящее в int , оно будет автоматически преобразовано в int .

      Вот как бы вы это сделали, но на самом деле это не стоит вашего времени. Просто попросите разработчика сделать обновление для вас. На самом деле, если это мод, о котором вы говорите, то он уже с открытым исходным кодом, и вы можете вносить изменения самостоятельно.


      Я видел много замечательных модов, которые люди предлагают (например, улучшенную траву и улучшенные вагонетки) для Minecraft, но я не могу заставить их работать. Эти моды требуют замены определенных классов в minecraft.jar, и я пробовал несколько разных способов сделать это.

      Во-первых, я попытался скопировать файл на виртуальный ПК и отредактировать .jar с помощью 7-zip, а затем скопировать файл обратно на Mac - результат: черный экран

      Во-вторых, я попытался использовать терминал для редактирования - результат: черный экран

      В-третьих, я попытался использовать программу Jar Inspector для редактирования файла .jar. результат: черный экран

      И, наконец, я попытался изменить расширение на .zip, разархивировать файл, внести изменения, повторно архивировать и снова изменить расширение на .jar. результат: черный экран

      Во всех случаях я удалял необходимые файлы из папки META. Когда я запускаю Minecraft после удаления этих файлов, все идет нормально. Только когда я заменяю классы в minecraft .jar, у меня возникают проблемы.

      Один странный случай с Jar Inspector: он не заменяет классы, он показывает как новые, так и старые. Когда я запускаю Minecraft с .jar в этом состоянии, он воспроизводится без изменений. Если я вернусь в .jar и удалю старые классы, Minecraft сломается.

      TL;DR. Я пробовал несколько разных способов редактирования классов в minecraft.jar, но безрезультатно. Я каждый раз удалял нужные файлы из папки META, и это все равно ломало Minecraft.

      У кого-нибудь есть предложения? У меня одного на Mac такие проблемы?

      Пожалуйста, только серьезные ответы. (т. е. не говорите мне купить компьютер)

      EDIT: я попробовал метод, указанный на сайте Autocart, на своем домашнем компьютере, и он отлично сработал как для Autocart, так и для Better Grass. Я сделал несколько вещей по-другому. Как только я извлек файл .jar через терминал, я заменил и удалил необходимые файлы через Finder, а затем повторно сжал их с помощью терминала. Спасибо за предложения, всем! Проблема должна быть связана с OSX 10.5.8.

      Читайте также: