Minecraft Wiki
м (Откат правок 37.21.183.149 (обсуждение) к версии Clearsky2)
(Исправление ссылки + Информация для версий старше 1.12)
(не показано 10 промежуточных версий 7 участников)
Строка 1: Строка 1:
 
{{Программа
 
{{Программа
  +
|разм=290px
 
|изображение=Logoug.png
 
|изображение=Logoug.png
 
|автор=[[Searge]], ProfMobius, bspkrs, r4wk, IngisKahn
 
|автор=[[Searge]], ProfMobius, bspkrs, r4wk, IngisKahn
|послвер=9.37
+
|послвер=9.40
 
|версия minecraft=[[1.12]]
 
|версия minecraft=[[1.12]]
 
|дата=17 октября 2010
 
|дата=17 октября 2010
Строка 10: Строка 11:
 
}}
 
}}
   
'''Minecraft Coder Pack''' (сокращенно ''MCP'') — коллекция скриптов и инструментов в помощь разработчику для создания [[мод]]ификаций [[клиент]]а и [[сервер]]а ''Minecraft''. Данный пакет инструментов позволяет выполнять декомпиляцию и деобфускацию кода сервера и клиента игры, а также обратные им действия. Также разработчики создали [https://spreadsheets.google.com/ccc?key=0AgPl2O82XX1pdFp2SnQxZUNuVWVJeHl0eGRSdnRDNGc&hl=en&authkey=CJvxgKgM таблицу], которая используется для деобфускации.
+
'''Minecraft Coder Pack''' (сокращенно ''MCP'') — коллекция скриптов и инструментов в помощь разработчику для создания [[модификации|модификаций]] [[клиент]]а и [[сервер]]а ''Minecraft''. Данный пакет инструментов позволяет выполнять декомпиляцию и деобфускацию кода сервера и клиента игры, а также обратные им действия. Таблица обфускации может быть отдельно найдена [http://export.mcpbot.bspk.rs/ здесь].
  +
  +
Для версий игры с 1.13 и выше доступен форк [https://github.com/Hexeption/MCP-Reborn MCP Reborn], но Forge использует свой форк, включённый в Forge MDK, поэтому для совместимости рекомендуется использовать именно последний. Альтернативно можно использовать [[Fabric]] (их инструмент для деобфускации ''yarn'' доступен [https://github.com/FabricMC/yarn здесь]).
   
 
== Установка и использование ==
 
== Установка и использование ==
# Для скачивания MCP перейдите на [http://www.modcoderpack.com/website/releases официальный сайт] и скачайте последнюю доступную версию.
+
# Для скачивания MCP перейдите на [http://www.modcoderpack.com/ официальный сайт] и скачайте последнюю доступную версию. Старые версии можно найти [https://web.archive.org/web/20150427034239/http://mcpold.ocean-labs.de/index.php/MCP_Old_Releases здесь (MC 0.2.1 — MC 1.6.1)] и [https://web.archive.org/web/20150121033253/http://mcp.ocean-labs.de:80/download.php?list.2 здесь (MC 1.5 — MC 1.8)].
 
# После скачивания архива распакуйте его в отдельную папку.
 
# После скачивания архива распакуйте его в отдельную папку.
 
# Подготовьте файлы:
 
# Подготовьте файлы:
Строка 43: Строка 46:
 
# Декомпилируйте игру.
 
# Декомпилируйте игру.
 
# Откройте Eclipse и в качестве Workspace выберите папку ''eclipse'' из директории <code>mcp</code>.
 
# Откройте Eclipse и в качестве Workspace выберите папку ''eclipse'' из директории <code>mcp</code>.
# Создавайте мод. Для тестирования вы можете пользоваться функциями Run и Debug — они уже корректно настроены.
+
# Создавайте модификацию. Для тестирования вы можете пользоваться функциями Run и Debug — они уже корректно настроены.
 
# По окончании разработки выполните <code>compile.bat</code> и <code>reobfucate.bat</code>.
 
# По окончании разработки выполните <code>compile.bat</code> и <code>reobfucate.bat</code>.
 
# Файлы из директории <code>reobf</code> перенесите в соответствующий jar-файл сервера или клиента. Обратите внимание, что при переносе файлов в клиентский jar-файл требуется удалить из него папку <code>META-INF</code>.
 
# Файлы из директории <code>reobf</code> перенесите в соответствующий jar-файл сервера или клиента. Обратите внимание, что при переносе файлов в клиентский jar-файл требуется удалить из него папку <code>META-INF</code>.
Строка 101: Строка 104:
 
|1.6.2
 
|1.6.2
 
|1.6.2
 
|1.6.2
|Обновлены MD5 суммы клиента<br>Исправлен баг с не найденными библиотеками<br>?Удалены некоторые не обнаруженные пасхалки?
+
|Обновлены MD5 суммы клиента<br>Исправлена ошибка с не найденными библиотеками<br>?Удалены некоторые не обнаруженные пасхалки?
 
|-
 
|-
 
|v8.04
 
|v8.04
Строка 113: Строка 116:
 
|1.6.1
 
|1.6.1
 
|1.6.1
 
|1.6.1
|Исправлены важные баги приводившие к неправильной декомпляции клиента.
+
|Исправлены важные ошибки приводившие к неправильной декомпляции клиента.
 
|-
 
|-
 
|v8.02
 
|v8.02
Строка 203: Строка 206:
 
|1.3.1
 
|1.3.1
 
|1.3.1
 
|1.3.1
|Добавлена поддержка Minecraft 1.3.1 и Minecraft Server 1.3.1.<br>Расширенные патчи для удаления кода Херобрина из декомпилированных классов.
+
|Добавлена поддержка Minecraft 1.3.1 и Minecraft Server 1.3.1.<br>Расширенные патчи для удаления кода Хиробрина из декомпилированных классов.
 
|-
 
|-
 
|v6.15
 
|v6.15
Строка 221: Строка 224:
 
|1.2.5
 
|1.2.5
 
|1.2.5
 
|1.2.5
|Добавлена поддержка Minecraft 1.2.5 и Minecraft Server 1.2.5.<br>Обновление патчей для работы над крашем при генерации мира в ванильном клиенте и сервере.<br>Обновление патчей для работы над крашем клиента при клике по истории чата.
+
|Добавлена поддержка Minecraft 1.2.5 и Minecraft Server 1.2.5.<br>Обновление патчей для работы над падением при генерации мира в ванильном клиенте и сервере.<br>Обновление патчей для работы над падением клиента при клике по истории чата.
 
|-
 
|-
 
|v6.1
 
|v6.1
Строка 257: Строка 260:
 
|1.8.1
 
|1.8.1
 
|1.8.1
 
|1.8.1
|Добавлена поддержка Minecraft Beta 1.8.1 и Minecraft Beta Server 1.8.1.<br>Улучшены инструменты «Retroguard» и «Exceptor».<br>Исправления отображения методов в EntityLiving.<br>Исправление краша при воспроизведении звуков из-за ошибки в Block.java.
+
|Добавлена поддержка Minecraft Beta 1.8.1 и Minecraft Beta Server 1.8.1.<br>Улучшены инструменты «Retroguard» и «Exceptor».<br>Исправления отображения методов в EntityLiving.<br>Исправление падения при воспроизведении звуков из-за ошибки в Block.java.
 
|-
 
|-
 
|v4.3
 
|v4.3
Строка 383: Строка 386:
 
|1.2.2
 
|1.2.2
 
|0.2.4
 
|0.2.4
|Баг-фиксы в инструментах переобфускации.
+
|Исправление ошибок в инструментах переобфускации.
 
|-
 
|-
 
|v2.2
 
|v2.2
Строка 401: Строка 404:
 
|1.2.1_01
 
|1.2.1_01
 
|0.2.3
 
|0.2.3
|Незначительные баг-фиксы. Некоторые сценарии не работают должным образом.
+
|Незначительные исправления ошибок. Некоторые сценарии не работают должным образом.
 
|-
 
|-
 
|v2.0
 
|v2.0
Строка 443: Строка 446:
 
|1.1.2_01
 
|1.1.2_01
 
|0.2.1
 
|0.2.1
|Фикс бага с TNT.
+
|Исправление ошибки с TNT.
 
|-
 
|-
 
|v1.0
 
|v1.0
Строка 454: Строка 457:
 
[[Категория:Разработка]]
 
[[Категория:Разработка]]
   
[[de:Mod/Minecraft Coder Pack]]
+
[[de:Modifikation/Mod Coder Pack]]
 
[[en:Programs and editors/Mod Coder Pack]]
 
[[en:Programs and editors/Mod Coder Pack]]
[[fr:Minecraft Coder Pack]]
+
[[fr:Mod Coder Pack]]
  +
[[pl:Programy i edytory/MCP]]
 
[[zh:辅助程序与编辑器/Minecraft Coder Pack]]
 
[[zh:辅助程序与编辑器/Minecraft Coder Pack]]

Версия от 15:41, 24 января 2021

Minecraft Coder Pack
Logoug
Автор

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:

  • Скопируйте папку bin из вашей папки %APPDATA%\.minecraft в папку jars (клиент должен быть не модифицированный, с папкой META-INF, иначе процесс декомпиляции и деобфускации кода может нарушиться).
  • Следуйте дальнейшим инструкциям (ниже).

1.6.x — 1.7.2:

  • Скопируйте папки assets, libraries, versions из вашей папки %APPDATA%\.minecraft в папку jars (клиент должен быть не модифицированный, с папкой META-INF, иначе процесс декомпиляции и деобфускации кода может нарушиться).
  1. Для декомпиляции запустите decompile.bat.
  2. Измените необходимый исходный код, который расположен в папке src.
  3. Для компиляции запустите файл recompile.bat.
  4. Для обфускации запустите reobfuscate.bat. После окончания работы скрипта в папке reobf в соответствующей папке вы найдете .class файлы, которые вам необходимо будет переместить с заменой в jar файл.
  5. Перед переносом файлов в версия.jar убедитесь, что из jar файла удалена папка META-INF.

1.7.10 и выше:

  • Удалите (или переместите в другое место) все лишние папки в %APPDATA%\.minecraft, оставив лишь папки assets, libraries и versions. Зайдите в папку versions и оставьте в ней только папку с нужной версией (клиент должен быть не модифицированный, с папкой META-INF, иначе процесс декомпиляции и деобфускации кода может нарушиться).
  1. Для декомпиляции запустите decompile.bat.
  2. Измените необходимый исходный код, который расположен в папке src.
  3. Для компиляции запустите файл recompile.bat.
  4. Для обфускации запустите reobfuscate.bat. После окончания работы скрипта в папке reobf в соответствующей папке вы найдете .class файлы, которые вам необходимо будет переместить с заменой в jar файл.
  5. Перед переносом файлов в основной .jar убедитесь, что из jar файла удалена папка META-INF.

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

  • Файлы игры находятся в домашней директории пользователя в скрытой папке ~/.minecraft.
  • Для работы MCP не требуется установленный Wine.
  • Для работы запускайте аналогичные файлы с расширением .sh, а не .bat. Перед запуском им надо выдать права на исполнение: наберите в терминале chmod +x *.sh, находясь в папке с MCP.

Работа из 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 Первый релиз.