Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Деобфускация и последующая декомпиляция модов

Sirse

Старожил
Пользователь
Баллы
173
Имя в Minecraft
Sirse
На форуме часто спрашивают, как же декомпилировать мод с наибольшей точностью, чем деобфусцировать/декомпилировать, а после компилировать/обфусцировать.
Инструкция не претендует на абсолютную истину, я делаю это так, как удобно мне.

Для работы нам потребуются:
1. MCP под нужную вам версию MineCraft
2. Forge SRC, опять же под нужную версию MineCraft
3. Bearded Octo Nemesis (BON) (Версия, работающая с ForgeGradle (MC 1.7.x))
4. Декомпилятор. Я предпочитаю использовать FernFlower с патчиком от agaricusb, но можно использовать и JD-GUI. Учтите, что у FF есть проблемы с обработкой компараторов!

1. Ставим MCP, ставим на него Forge. Если у вас возникли проблемы на этом этапе, то подумайте, стоит ли вообще читать мануал дальше.
2. Запускаем BON, он потребуется для деобфускации мода. Он имеет консольный режим, однако я предпочитаю пользоваться GUI.
В поле Input File указываем путь до zip c нашим модом.
В поле Output File указываем путь и название файла, в который BON сохранит деобфусцированный мод.
В поле MCP Folder указываем путь к каталогу с MCP
Остальные поля трогать не нужно. Запускаем процесс кнопкой "GO".
3. Файл, полученный в процессе шага 2 открываем любым архиватором, и извлекаем содержимое в отдельный каталог. Теперь дело за малым - декомпиляцией.
Запускаем fernflower.jar со следующими параметрами - путь_к_каталогу_с_деобфусцированными_.class путь_к_каталогу,_куда_FF_должен_сложить_исходники
Например, в терминале, это будет выглядеть так
java -jar fernflower.jar /home/user/classes/ /home/user/sources/Если всё было сделано правильно, то на выходе вы получите исходники, с которыми вы можете делать всё что угодно.
Архив, с компонентами, при помощи которых я работаю под Windows, можно скачать в здесь.

Так же рекомендую попробовать автоматический скрипт для деобфускации/декомпиляции от @gamerforEA
 
Последнее редактирование:
Спасибо, теперь буду получать меньше пустых исходников :)
 
А как обратно компилировать и обфусцировать исходник?
 
Ну зачем?:) теперь увеличится количество школо-недокодеров.
 
Не переживай, кодировка мне не интересна, просто нужно Rei's minimap перевести.:)
А с каких пор для перевода нужна деобфускация/обфускация и декомпиляция/компиляция? Юзай InClassTranslator и не мучайся.
 
А с каких пор для перевода нужна деобфускация/обфускация и декомпиляция/компиляция? Юзай InClassTranslator и не мучайся.
Не всегда можно через него. Бывают случаи, когда он не поможет, да и сам код удобнее править.
 
А можно по подробнее? Что нажимать и где при этом должен находится исходник?
Кидаешь исходники мода в MCP/src/minecraft, проверяешь всё это дело через Eclipse (можно использовать и что-нибудь другое) на наличие ошибок, запускаешь файл recompile.bat (.sh), если надо реобфусцировать, то после рекомпиляции запускаешь файл reobfuscate.bat (.sh).
 
Кидаешь исходники мода в MCP/src/minecraft, проверяешь всё это дело через Eclipse (можно использовать и что-нибудь другое) на наличие ошибок, запускаешь файл recompile.bat (.sh), если надо реобфусцировать, то после рекомпиляции запускаешь файл reobfuscate.bat (.sh).
Как все это дело проверить?
Кидаю исходник KeyInput в MCP/src/minecraft
4af66c44f296.png

Запускаю рекомпиляцию и получаю
fb41c9657a23.png

Код:
  symbol:  class EnumRarity
  location: class ItemEnchantedBook
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockAnvil.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockAnvil.java:67:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockAnvil
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBasePressurePl
ate.java:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBasePressurePl
ate.java:271: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBasePressurePlate
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBed.java:8: er
ror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBed.java:157:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBed
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBrewingStand.j
ava:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBrewingStand.j
ava:209: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBrewingStand
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockButton.java:8:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockButton.java:41
3: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockButton
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCactus.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCactus.java:16
6: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCactus
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCake.java:7: e
rror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCake.java:90:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCake
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarpet.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarpet.java:14
6: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockCarpet
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarrot.java:5:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCrops.java:6:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarrot.java:54
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCarrot
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCrops.java:215
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCrops
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCocoa.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCocoa.java:228
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCocoa
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockColored.java:7
: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockColored.java:6
4: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockColored
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDetectorRail.j
ava:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDetectorRail.j
ava:174: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDetectorRail
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDispenser.java
:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDispenser.java
:110: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDispenser
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:7: e
rror: package net.minecraft.client.renderer does not exist
import net.minecraft.client.renderer.IconFlipped;
                                    ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:8: e
rror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:103:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDoor
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDropper.java:5
: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDropper.java:2
7: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDropper
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnchantmentTab
le.java:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnchantmentTab
le.java:127: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEnchantmentTable
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnderChest.jav
a:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnderChest.jav
a:171: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEnderChest
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortal.java
:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortal.java
:135: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEndPortal
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortalFrame
.java:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortalFrame
.java:36: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEndPortalFrame
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFarmland.java:
7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFarmland.java:
176: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockFarmland
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFence.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFence.java:187
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockFence
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFenceGate.java
:6: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFenceGate.java
:175: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockFenceGate
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\util\ChatMessageComponent
.java:270: warning: non-varargs call of varargs method with inexact argument typ
e for last parameter;
                var7.append(StatCollector.translateToLocalFormatted(this.transla
tionKey, var13));

        ^

  cast to Object for a varargs call
  cast to Object[] for a non-varargs call and to suppress this warning
100 errors
1 warning
==================

Для продолжения нажмите любую клавишу . . .
 
Как все это дело проверить?
Кидаю исходник KeyInput в MCP/src/minecraft
4af66c44f296.png

Запускаю рекомпиляцию и получаю
fb41c9657a23.png

Код:
  symbol:  class EnumRarity
  location: class ItemEnchantedBook
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockAnvil.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockAnvil.java:67:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockAnvil
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBasePressurePl
ate.java:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBasePressurePl
ate.java:271: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBasePressurePlate
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBed.java:8: er
ror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBed.java:157:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBed
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBrewingStand.j
ava:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockBrewingStand.j
ava:209: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockBrewingStand
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockButton.java:8:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockButton.java:41
3: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockButton
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCactus.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCactus.java:16
6: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCactus
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCake.java:7: e
rror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCake.java:90:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCake
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarpet.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarpet.java:14
6: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockCarpet
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarrot.java:5:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCrops.java:6:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCarrot.java:54
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCarrot
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCrops.java:215
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCrops
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCocoa.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockCocoa.java:228
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockCocoa
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockColored.java:7
: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockColored.java:6
4: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockColored
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDetectorRail.j
ava:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDetectorRail.j
ava:174: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDetectorRail
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDispenser.java
:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDispenser.java
:110: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDispenser
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:7: e
rror: package net.minecraft.client.renderer does not exist
import net.minecraft.client.renderer.IconFlipped;
                                    ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:8: e
rror: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDoor.java:103:
error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDoor
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDropper.java:5
: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockDropper.java:2
7: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockDropper
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnchantmentTab
le.java:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnchantmentTab
le.java:127: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEnchantmentTable
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnderChest.jav
a:7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEnderChest.jav
a:171: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEnderChest
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortal.java
:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortal.java
:135: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEndPortal
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortalFrame
.java:8: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockEndPortalFrame
.java:36: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockEndPortalFrame
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFarmland.java:
7: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFarmland.java:
176: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockFarmland
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFence.java:7:
error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFence.java:187
: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister)
                            ^

  symbol:  class IconRegister
  location: class BlockFence
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFenceGate.java
:6: error: package net.minecraft.client.renderer.texture does not exist
import net.minecraft.client.renderer.texture.IconRegister;
                                            ^

C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\block\BlockFenceGate.java
:175: error: cannot find symbol
    public void func_94332_a(IconRegister par1IconRegister) {}
                            ^

  symbol:  class IconRegister
  location: class BlockFenceGate
C:\mcp164\forge\mcp\src\minecraft_server\net\minecraft\util\ChatMessageComponent
.java:270: warning: non-varargs call of varargs method with inexact argument typ
e for last parameter;
                var7.append(StatCollector.translateToLocalFormatted(this.transla
tionKey, var13));

        ^

  cast to Object for a varargs call
  cast to Object[] for a non-varargs call and to suppress this warning
100 errors
1 warning
==================

Для продолжения нажмите любую клавишу . . .
Собирать клиент надо, а не сервер. И должна соблюдаться структура мода
 
MCP не хочет у меня не как компилировать(и не надо намеков по поводу произрастания моих рук:)). Скажите как в Eclipse скомпилировать исходник .java в .class. Желательно подробную инструкцию что бы не запутаться. Буду благодарен.;)
 

Поделиться этой страницей

Назад
Верх