Minecraft Coder Pack

Minecraft Coder Pack
Logoug.png
Автор Searge, ProfMobius, bspkrs, r4wk, IngisKahn
Написано на Python
Дата выпуска 17 октября 2010
Последняя версия 9.40
Совместимо с 1.12
Ссылки

Minecraft Coder Pack (сокращенно MCP) — коллекция скриптов и инструментов в помощь разработчику для создания модификаций клиента и сервера Minecraft. Данный пакет инструментов позволяет выполнять декомпиляцию и деобфускацию кода сервера и клиента игры, а также обратные им действия. Таблица обфускации может быть отдельно найдена здесь.

Для версий игры с 1.13 и выше доступен форк MCP Reborn, но Forge использует свой форк, включённый в Forge MDK, поэтому для совместимости рекомендуется использовать именно последний. Альтернативно можно использовать Fabric (их инструмент для деобфускации yarn доступен здесь).

Установка и использование

  1. Для скачивания MCP перейдите на официальный сайт и скачайте последнюю доступную версию. Старые версии можно найти здесь (MC 0.2.1 — MC 1.6.1) и здесь (MC 1.5 — MC 1.8).
  2. После скачивания архива распакуйте его в отдельную папку.
  3. Подготовьте файлы:
    • Скопируйте файл minecraft_server.jar в папку jars.

1.0.0 — 1.5.x:

1.6.x — 1.7.2:

  1. Для декомпиляции запустите decompile.bat.
  2. Измените необходимый исходный код, который расположен в папке src.
  3. Для компиляции запустите файл recompile.bat.
  4. Для обфускации запустите reobfuscate.bat. После окончания работы скрипта в папке reobf в соответствующей папке вы найдете .class файлы, которые вам необходимо будет переместить с заменой в jar файл.
  5. Перед переносом файлов в версия.jar убедитесь, что из jar файла удалена папка META-INF.

1.7.10 и выше:

  1. Для декомпиляции запустите decompile.bat.
  2. Измените необходимый исходный код, который расположен в папке src.
  3. Для компиляции запустите файл recompile.bat.
  4. Для обфускации запустите reobfuscate.bat. После окончания работы скрипта в папке reobf в соответствующей папке вы найдете .class файлы, которые вам необходимо будет переместить с заменой в jar файл.
  5. Перед переносом файлов в основной .jar убедитесь, что из jar файла удалена папка META-INF.

Использование под Linux

Работа из Eclipse

  1. Декомпилируйте игру.
  2. Откройте Eclipse и в качестве Workspace выберите папку eclipse из директории mcp.
  3. Создавайте модификацию. Для тестирования вы можете пользоваться функциями Run и Debug — они уже корректно настроены.
  4. По окончании разработки выполните compile.bat и reobfucate.bat.
  5. Файлы из директории reobf перенесите в соответствующий jar-файл сервера или клиента. Обратите внимание, что при переносе файлов в клиентский jar-файл требуется удалить из него папку META-INF.

История

Версия Файл Клиент Сервер Информация о релизе
v9.40 Скачать 1.12 1.12 Добавлена поддержка Minecraft 1.12 и Minecraft Server 1.12.
v9.37 Скачать 1.11.2 1.11.2 Добавлена поддержка Minecraft 1.11.2 и Minecraft Server 1.11.2.
v9.31 Скачать 1.10 1.10 Добавлена поддержка Minecraft 1.10 и Minecraft Server 1.10.
v9.28 Скачать 1.9.4 1.9.4 Добавлена поддержка Minecraft 1.9.4 и Minecraft Server 1.9.4.
v9.18 Скачать 1.8.8 1.8.8 Добавлена поддержка Minecraft 1.8.8 и Minecraft Server 1.8.8.
v9.08 Скачать 1.7.10 1.7.10 Добавлена поддержка Minecraft 1.7.10 и Minecraft Server 1.7.10.
v9.03 Скачать 1.7.2 1.7.2 Добавлена поддержка Minecraft 1.7.2 и Minecraft Server 1.7.2.
v8.05 Скачать 1.6.2 1.6.2 Обновлены MD5 суммы клиента
Исправлена ошибка с не найденными библиотеками
?Удалены некоторые не обнаруженные пасхалки?
v8.04 Скачать 1.6.2 1.6.2 Добавлена поддержка Minecraft 1.6.2 и Minecraft Server 1.6.2.
v8.03 Скачать 1.6.1 1.6.1 Исправлены важные ошибки приводившие к неправильной декомпляции клиента.
v8.02 Скачать 1.6.1 1.6.1 Добавлена поддержка Minecraft 1.6.1 и Minecraft Server 1.6.1.
v7.51 Скачать 1.5.2 1.5.2 Добавлена поддержка Minecraft 1.5.2 и Minecraft Server 1.5.2.
v7.44 Скачать 1.5.1 1.5.1 Добавлена поддержка Minecraft 1.5.1 и Minecraft Server 1.5.1.
v7.42 Скачать 1.5 1.5 Добавлена поддержка Minecraft 1.5 и Minecraft Server 1.5.
v7.39 Скачать 13w09c 13w09c Добавлена поддержка Minecraft 13w09c и Minecraft Server 13w09c.
v7.34 Скачать 13w05b 13w05b Добавлена поддержка Minecraft 13w05b и Minecraft Server 13w05b.
v7.30c Скачать 13w02b 13w02b Добавлена поддержка Minecraft 13w02b и Minecraft Server 13w02b.
v7.26a Скачать 1.4.7 1.4.7 Добавлена поддержка Minecraft 1.4.7 и Minecraft Server 1.4.7.
v7.25 Скачать 1.4.6 1.4.6 Добавлена поддержка Minecraft 1.4.6 и Minecraft Server 1.4.6.
v7.23 Скачать 1.4.5 1.4.5 Добавлена поддержка Minecraft 1.4.5 и Minecraft Server 1.4.5.
v7.21 Скачать 1.4.4 1.4.4 Добавлена поддержка Minecraft 1.4.4 и Minecraft Server 1.4.4.
v7.19 Скачать 1.4.2 1.4.2 Добавлена поддержка Minecraft 1.4.2 и Minecraft Server 1.4.2.
v7.2 Скачать 1.3.2 1.3.2 Добавлена поддержка Minecraft 1.3.2 и Minecraft Server 1.3.2.
v7.0a Скачать 1.3.1 1.3.1 Добавлен декомпилятор Fernflower вследствие новых разрешений на его распространение.
v7.0 Скачать 1.3.1 1.3.1 Добавлена поддержка Minecraft 1.3.1 и Minecraft Server 1.3.1.
Расширенные патчи для удаления кода Хиробрина из декомпилированных классов.
v6.15 Скачать 12w26a 12w26a Добавлена поддержка Minecraft 12w26a и Minecraft Server 12w26a.
v6.5 Скачать 12w17a 12w17a Добавлена поддержка Minecraft 12w17a и Minecraft Server 12w17a.
v6.2 Скачать 1.2.5 1.2.5 Добавлена поддержка Minecraft 1.2.5 и Minecraft Server 1.2.5.
Обновление патчей для работы над падением при генерации мира в ванильном клиенте и сервере.
Обновление патчей для работы над падением клиента при клике по истории чата.
v6.1 Скачать 1.2.4 1.2.4 Добавлена поддержка Minecraft 1.2.4 и Minecraft Server 1.2.4.
Отключено округление двойных и констант с плавающей точкой из-за проблем с застреванием на респауне.
Обновление патчей для работы над недостатками OpenGL с главным окном на OS X и Linux.
v6.0 Скачать 1.2.3 1.2.3 Добавлена поддержка Minecraft 1.2.3 и Minecraft Server 1.2.3.
Добавлены Javadoc-комментарии для декомпилированного исходного кода.
v5.6 Скачать 1.1.0 1.1.0 Добавлена поддержка Minecraft 1.1.0 и Minecraft Server 1.1.0.
Запуск «художественного стиля» для улучшения декомпилированного исходного кода.
v5.0 Скачать 1.0.0 1.0.1 Добавлена поддержка Minecraft 1.0.0 и Minecraft Server 1.0.1.
v4.5 Скачать 1.9-pre5 1.9-pre5 Добавлена поддержка Minecraft Beta 1.9-pre5 и Minecraft Beta Server 1.9-pre5.
Улучшены инструменты «Retroguard» и «Exceptor».
v4.4 Скачать 1.8.1 1.8.1 Добавлена поддержка Minecraft Beta 1.8.1 и Minecraft Beta Server 1.8.1.
Улучшены инструменты «Retroguard» и «Exceptor».
Исправления отображения методов в EntityLiving.
Исправление падения при воспроизведении звуков из-за ошибки в Block.java.
v4.3 Скачать 1.7.3 1.7.3 Добавлена поддержка Minecraft Beta 1.7.3 и Minecraft Beta Server 1.7.3.
v4.2 Скачать 1.7.2 1.7.2 Добавлена поддержка Minecraft Beta 1.7.2 и Minecraft Beta Server 1.7.2.
v4.1 Скачать 1.6.6 1.6.6 Добавлена рабочая область Eclipse.
Включено исправление обфускации.
v4.0 Скачать 1.6.6 1.6.6 Добавлен новый инструмент «Exceptor».
Добавлена альтернативная поддержка декомпилятора Fernflower.
v3.4 Скачать 1.6.6 1.6.6 Добавлена поддержка Minecraft Beta 1.6.6 и Minecraft Beta Server 1.6.6.
v3.3 Скачать 1.6.5 1.6.5 Добавлена поддержка Minecraft Beta 1.6.5 и Minecraft Beta Server 1.6.5.
v3.2 Скачать 1.6.4 1.6.4 Добавлена поддержка Minecraft Beta 1.6.4 и Minecraft Beta Server 1.6.4.
Добавлена поддержка внешних jar-файлов в перекомпиляции и переобфускации.
Обновлены файлы ReadMe.
Малые исправления для использования MCP оффлайн.
v3.1 Скачать 1.5_01 1.5_02 Еще несколько исправлений в скриптах Python.
v3.0 Скачать 1.4_01 1.4_01 Добавлена поддержка Minecraft Beta 1.4_01 and и Minecraft Beta Server 1.4_01.
Полностью переписанный сценарий Python.
RetroGuard используется для реобфускации и переобфускации.
Автоматическое обнаружение измененных классов во время реобфускации.
Защита на cleanup.bat/sh.
Расширенная система протоколирования (logs/mcp.log, logs/mcperr.log).
Убран repackager.exe и моно-зависимость на Linux.
Более четкая структура каталогов.
Конец коробочной декомпиляции совместимости с модифицированными jar.
Пошаговое обновление модели поверх обычного распространения полных пакетов.
Собственные файлы в директории bin сохраняются при перекомпиляции.
Пользовательские файлы автоматически копируются в каталог reobf в течение реобфускации.
v2.12 Скачать 1.5_01 1.5_02 Добавлена поддержка Minecraft Beta 1.5_01 и Minecraft Beta Server 1.5_02.
v2.11 Скачать 1.4_01 1.4_01 Добавлена поддержка Minecraft Beta 1.4_01 и Minecraft Beta Server 1.4_01.
v2.10 Скачать 1.4 1.4 Добавлена поддержка Minecraft Beta 1.4 и Minecraft Beta Server 1.4.
v2.9a Скачать 1.3_01 1.3 Добавлена поддержка Mod loader 1.3_01v3.
Добавленная система MCP Mod System SDK обновлена для 1.3_01.
Обновлено отображения названия.
v2.9 Скачать 1.3_01 1.3 Добавлена поддержка Minecraft Beta 1.3_01 и Minecraft Beta Server 1.3.
v2.8 Скачать 1.2_02 1.2_01 Добавлена альфа-версия поддержки OS X.
Добавлена альфа-версия системы моддинга MCP.
Обновленное отображение c намного большим количеством имен методов и полей.
v2.7 Скачать 1.2_02 1.2_01 Добавлена поддержка Minecraft Beta 1.2_02 и Minecraft Beta Server 1.2_01.
v2.6 Скачать 1.1_02 1.1_02 Добавлена поддержка Minecraft Beta 1.1_02 и Minecraft Beta Server 1.1_02.
v2.5 Скачать 1.2.6 0.2.8 Добавлена поддержка Minecraft Alpha 1.2.6 и Minecraft Alpha Server 0.2.8, reobf-fix рекомендуется.
v2.4 Скачать 1.2.5 0.2.7 Добавлена поддержка Minecraft Alpha 1.2.5 и Minecraft Alpha Server 0.2.7.
v2.3 Скачать 1.2.3_04 0.2.5_02 Добавлена поддержка Minecraft Alpha 1.2.3_04 и Minecraft Server Alpha 0.2.5_02.
Поддержка Linux версии.
Теперь «Renamer» включает OpenGL аннотатор констант из MissLil.
«Renamer» выводит соответствующую реобфускационую таблицу для Obfuscathon_v2.
Совпадение имен было выключено, удаляя все хвосты _00 от многих переменных.
Теперь обфускация осознает контекст. Это должно устранить многие проблемы с реобфускацией.
Различные обновления скриптов.
Расположение CSV было перемещено в сервер MCP. Связанные инструменты были обновлены.
Множество модификаций в таблицах.
Начали портировать весь CSV прочь для более чистой базы данных.
v2.2a Скачать 1.2.2 0.2.4 Исправление ошибок в инструментах переобфускации.
v2.2 Скачать 1.2.2 0.2.4 Бета тестирование реобфускации начинает делать моды совместимыми с оригинальными jar-файлами.
v2.1 Скачать 1.2.2 0.2.4 Добавлена поддержка Minecraft Alpha 1.2.2.
v2.0a Скачать 1.2.1_01 0.2.3 Незначительные исправления ошибок. Некоторые сценарии не работают должным образом.
v2.0 Скачать 1.2.1_01 0.2.3 Первый релиз для пост-Хэллоуинской версии Minecraft.
v1.6 Скачать 1.1.2_01 0.2.1 Все классы сейчас имеют осмысленные имена; отображение имени класса и отображение имени поля применяются.
v1.5 Скачать 1.1.2_01 0.2.1 Расширенные скрипты для поддержки декомпиляции, рекомпиляции и тестирования minecraft_server.jar.
v1.4 Скачать 1.1.2_01 0.2.1 Использование деобфускатора, чтобы переименовать все поля и методы, а также JadRetro, чтобы исправить некоторые ошибки декомпиляции.
v1.3 Скачать 1.1.2_01 0.2.1 Добавлены обновленные скрипты декомпиляции Minecraft.class, MinecraftApplet.class и MinecraftServer.class.
v1.2 Скачать 1.1.2_01 0.2.1 Перенаправление вывода инструментов в лог файл.
v1.1 Скачать 1.1.2_01 0.2.1 Исправление ошибки с TNT.
v1.0 Скачать 1.1.2_01 0.2.1 Первый релиз.
В данной статье используются материалы из статьи «Minecraft Coder Pack» с вики-сайта Minecraft Wiki, расположенного на Фэндоме, и они распространяются согласно лицензии Creative Commons Attribution-NonCommercial-ShareAlike 3.0. Авторы статьи.