Валерик
Игрок
Всем доброго времени суток!
Перед вами будущий учебник для начинающих модостроителей Minecraft'а.
Намечается написать целых 20-ти и более глав для новичков.
Так же скажу от себя - моддинг под данную игру может быть и не очень сложен, но он отнимает много времени и от вас потребуются железные нервы.
АХТУНГ! УЧЕБНИК ПО МОДДИНГУ ДЛЯ MODLOADERA!
Вопрос-ответ:
Вопрос: Чем этот учебник отличается от статей WD'kun'a?
Ответ: В данной учебнике больше информации и моддинг осуществляется для клиента с ModLoader'ом.
Вопрос: А зачем этот ModLoader?
Ответ: Делает удобнее и быстрее моддинг в разы.
Вопрос: Я сделал свой первый мод, куда мне можно его залить и кому показывать?
Ответ: Если вы уверены, что Ваш мод достоин внимания и он хорошо проработан как и в плане оптимизации, так и в плане внешнего вида - скидывайте его на minecraftforum.net
Вопрос: А что если у меня не лицензионная копия игры? Я не смогу делать моды?
Ответ: Моды можно делать и на пиратке, на счет этого не беспокойтесь. Разницы нет.
Вопрос: Я там карочи всие сделол как написана и игра паказывает англиские слава какие та ниче ни понятна!!111
Ответ: Для того, чтобы мы Вам помогли, скиньте Log'и (текст) ошибки прямо в эту тему, мы Вам обязательно поможем!
Вопрос: При рекомпиляции выпадает море ошибок. Что делать?
Ответ: Отписать в эту тему или в джаббер конференцию. Если никто Вам не отвечает, проверьте, все ли скобки стоят правильно и совпадает ли регистр букв.
Вопрос: Я зашел в конференцию, а там никого нет? На форуме не отвечают, в конфе тоже пусто. Вы пропали?
Ответ: Скорее всего из авторов учебника никого нет в сети. Будьте терпеливы, как только появится возможность, мы Вам обязательно поможем!
Вопрос: У меня ничего не получается! Сделайте, пожалуйста за меня ...
Ответ: Мы делаем что-то для пользователей только в крайних случаях, если например ошибки неизлечимы, и все это связанно с вашим компьютером, а не руками.
Вопрос: Я прошел весь учебник, но обновлений не наблюдаю. Вы забросили его?
Ответ: Конечно же нет! Просто у нас тоже есть личная жизнь, и иногда приходится отлучаться.
Вопрос: Я видел у буржуев статью про ... Вы добавите ее к себе?
Ответ: Добавьте ссылку на источник статьи, мы ее прочитаем, проверим, проанализируем и запишем по своему
Вопрос: Все время вы говорите создать какой-то файл .java. Как его вообще создать?
Ответ: Создаете текстовый файл и просто переименовываете его из Текстовый документ.txt, например, в mod_gcc.java (открывая его, непосредственно, в нотепаде), а затем редактируете и сохраняете.
Вопрос: В учебнике слишком неудобно отписаны некоторые моменты. Можно я какие мне надо строчки в другие файлики перемещу, ведь так удобнее!
Ответ: Ни в коем случае! И даже не пытайтесь.
Вопрос: А как открыть файл .jar винраром?
Ответ: ПКМ --> Открыть с помощью --> WinRar или 7zip.
Вопрос: Я начал работать, но в src/minecraft/ файлов нет! Я что-то забыл сделать?
Ответ: Скорее всего, декомпилятор выдал ошибку и не отдал вам сорцы игры. Ну или в крайнем случае вы просто забыли его включить.
Глава 1. Подготовка рабочего места и настройка MCP.
Я отказываюсь писать статьи по старому стилю оформления как в прошлых уроках, т.к надоедает все время отписывать числа.
Надеюсь, вы меня поймете
Требования:
- Java Development Kit 6 (JDK 6).
- Minecraft Coder Pack (MCP 4.3, самая верхняя).
- Notepad++ - обязательно, иначе вы не сможете пройти главы.
- ModLoader + Клиент (качать обязательно).
- Руки, но не крюки.
- И желательно базовое знание английского языка.
Установка:
1. Создаем папку в любом удобном для вас месте.
2. Копируем файлы архива MCP в эту папку.
3. Прописываем путь к javac.exe (JDK) в системной переменной PATH.
Щелкните правой кнопкой мыши по ярлыку Мой компьютер и выберите категорию Дополнительно. Там же ниже будет кнопка Переменные среды.
В системных переменных найдите переменную Path (PATH) и допишите в ней строки:
;C:\Program Files\Java\jdk1.6.0_25\bin
или
;C:\Program Files\Java\jdk1.6.0_26\bin
В зависимости от версии.
Без пробела и с символом "точка с запятой". Путь укажите, конечно же, по вашему усмотрению системы.
4. Кладем из клиента Minecraft папки bin и resources в папку jars, которая непосредственно находится в вашей папке которую вы подготовили ранее (о как сказанул ).
5. Откройте папку bin и найдите minecraft.jar. Откройте (не разархивируйте), и удалите папку META-INF.
6. Запускаем decompile.bat.
7. Как только вы пройдете уроки ниже, просто напросто запускайте recompile.bat, а после чего startclient.bat и тестируйте.
8. Ну а когда вы точно решили что мод готов - запускайте reobf.bat, проходите в папочку reobf и все содержимое кидайте в файл minecraft.jar специально подготовленной для этого игры.
Глава 2. Создание блока.
Запоминайте сразу, в пути \src\minecraft\net\minecraft\src находится весь декомпилированный код игры.
Для начала давайте создадим новый файлик посредством нотепада. Называться он будет mod_gcc.java.
Он служит для складывания всей информации о блоках, рецептах, etc.
Впишем такую строчку (используйте Notepad++, детишки!).
Она включает магию которая даст возможность данному файлику работать с Кубокрафтом.
После чего добавим еще две строчечки, но сначала делаем пробел.
Здесь мы создаем класс.
Пишем в 5 строке вот такие словечки про наш кубик, тут мы его регистрируем.
Давайте попробуем разобрать данную неразбериху.
newblock - это название, точнее регистр блока (не путайте с обычным названием, или консоль ошибок покарает вас!).
Ну а вот тут у нас как раз и обычное название. Будет использоваться для обозначения в отдельном файлике для блока (доп. характеристики).
Число 101 - айди блока. Используйте с 101 по 250.
Число 0 - не трогайте, это индексация текстуры по terrain.png, оно вообще не понадобится. Пусть стоит в фазе нуля.
Тут у нас крепкость указана. На сколько силен блок, так сказать Вполне реально хватит и 0.5F если это блок похожий на землю (по скорости разрушения).
Устойчивость от взрыва. 0.3F отлично вписывается.
Если хотите чтобы ваш блок был светящимся (для дополнительных команд вызова я выведу чуть позже целый спойлер ), просто укажите это через точку.
1.0F - светится как австралий.
Сделан специально чтобы полностью до конца объявить регистр.
Профиряем.
Теперь давайте создадим специальный файлик BlockNew.java (по названию блока) который определит наш кубик в игре.
Вписываем в первую строчку магические буковки, опять.
Затем импортируем еще одну магию которая даст нам возможность использовать переменную Random.
Потом создаем публичный класс (не забудьте название).
После чего копипастим вот это.
Тут у нас получается что мы объявляем блок, делаем его настоящим (материальным) и задаем свойство (каждое свойство имеет ряд своих особенностей, типа звуков и т.п).
Дальше объявляем выбрасывание и его ID.
Примечание: У меня там Rock написано в свойстве, пропустите это, ага
Перед вами будущий учебник для начинающих модостроителей Minecraft'а.
Намечается написать целых 20-ти и более глав для новичков.
Так же скажу от себя - моддинг под данную игру может быть и не очень сложен, но он отнимает много времени и от вас потребуются железные нервы.
АХТУНГ! УЧЕБНИК ПО МОДДИНГУ ДЛЯ MODLOADERA!
Вопрос-ответ:
Вопрос: Чем этот учебник отличается от статей WD'kun'a?
Ответ: В данной учебнике больше информации и моддинг осуществляется для клиента с ModLoader'ом.
Вопрос: А зачем этот ModLoader?
Ответ: Делает удобнее и быстрее моддинг в разы.
Вопрос: Я сделал свой первый мод, куда мне можно его залить и кому показывать?
Ответ: Если вы уверены, что Ваш мод достоин внимания и он хорошо проработан как и в плане оптимизации, так и в плане внешнего вида - скидывайте его на minecraftforum.net
Вопрос: А что если у меня не лицензионная копия игры? Я не смогу делать моды?
Ответ: Моды можно делать и на пиратке, на счет этого не беспокойтесь. Разницы нет.
Вопрос: Я там карочи всие сделол как написана и игра паказывает англиские слава какие та ниче ни понятна!!111
Ответ: Для того, чтобы мы Вам помогли, скиньте Log'и (текст) ошибки прямо в эту тему, мы Вам обязательно поможем!
Вопрос: При рекомпиляции выпадает море ошибок. Что делать?
Ответ: Отписать в эту тему или в джаббер конференцию. Если никто Вам не отвечает, проверьте, все ли скобки стоят правильно и совпадает ли регистр букв.
Вопрос: Я зашел в конференцию, а там никого нет? На форуме не отвечают, в конфе тоже пусто. Вы пропали?
Ответ: Скорее всего из авторов учебника никого нет в сети. Будьте терпеливы, как только появится возможность, мы Вам обязательно поможем!
Вопрос: У меня ничего не получается! Сделайте, пожалуйста за меня ...
Ответ: Мы делаем что-то для пользователей только в крайних случаях, если например ошибки неизлечимы, и все это связанно с вашим компьютером, а не руками.
Вопрос: Я прошел весь учебник, но обновлений не наблюдаю. Вы забросили его?
Ответ: Конечно же нет! Просто у нас тоже есть личная жизнь, и иногда приходится отлучаться.
Вопрос: Я видел у буржуев статью про ... Вы добавите ее к себе?
Ответ: Добавьте ссылку на источник статьи, мы ее прочитаем, проверим, проанализируем и запишем по своему
Вопрос: Все время вы говорите создать какой-то файл .java. Как его вообще создать?
Ответ: Создаете текстовый файл и просто переименовываете его из Текстовый документ.txt, например, в mod_gcc.java (открывая его, непосредственно, в нотепаде), а затем редактируете и сохраняете.
Вопрос: В учебнике слишком неудобно отписаны некоторые моменты. Можно я какие мне надо строчки в другие файлики перемещу, ведь так удобнее!
Ответ: Ни в коем случае! И даже не пытайтесь.
Вопрос: А как открыть файл .jar винраром?
Ответ: ПКМ --> Открыть с помощью --> WinRar или 7zip.
Вопрос: Я начал работать, но в src/minecraft/ файлов нет! Я что-то забыл сделать?
Ответ: Скорее всего, декомпилятор выдал ошибку и не отдал вам сорцы игры. Ну или в крайнем случае вы просто забыли его включить.
Глава 1. Подготовка рабочего места и настройка MCP.
Я отказываюсь писать статьи по старому стилю оформления как в прошлых уроках, т.к надоедает все время отписывать числа.
Надеюсь, вы меня поймете
Требования:
- Java Development Kit 6 (JDK 6).
- Minecraft Coder Pack (MCP 4.3, самая верхняя).
- Notepad++ - обязательно, иначе вы не сможете пройти главы.
- ModLoader + Клиент (качать обязательно).
- Руки, но не крюки.
- И желательно базовое знание английского языка.
Установка:
1. Создаем папку в любом удобном для вас месте.
2. Копируем файлы архива MCP в эту папку.
3. Прописываем путь к javac.exe (JDK) в системной переменной PATH.
Щелкните правой кнопкой мыши по ярлыку Мой компьютер и выберите категорию Дополнительно. Там же ниже будет кнопка Переменные среды.
В системных переменных найдите переменную Path (PATH) и допишите в ней строки:
;C:\Program Files\Java\jdk1.6.0_25\bin
или
;C:\Program Files\Java\jdk1.6.0_26\bin
В зависимости от версии.
Без пробела и с символом "точка с запятой". Путь укажите, конечно же, по вашему усмотрению системы.
4. Кладем из клиента Minecraft папки bin и resources в папку jars, которая непосредственно находится в вашей папке которую вы подготовили ранее (о как сказанул ).
5. Откройте папку bin и найдите minecraft.jar. Откройте (не разархивируйте), и удалите папку META-INF.
6. Запускаем decompile.bat.
7. Как только вы пройдете уроки ниже, просто напросто запускайте recompile.bat, а после чего startclient.bat и тестируйте.
8. Ну а когда вы точно решили что мод готов - запускайте reobf.bat, проходите в папочку reobf и все содержимое кидайте в файл minecraft.jar специально подготовленной для этого игры.
Глава 2. Создание блока.
Запоминайте сразу, в пути \src\minecraft\net\minecraft\src находится весь декомпилированный код игры.
Для начала давайте создадим новый файлик посредством нотепада. Называться он будет mod_gcc.java.
Он служит для складывания всей информации о блоках, рецептах, etc.
Впишем такую строчку (используйте Notepad++, детишки!).
Код:
package net.minecraft.src;
После чего добавим еще две строчечки, но сначала делаем пробел.
Код:
public class mod_gcc extends BaseMod
{
Код:
public static Block newblock = new BlockNew(101, 0).setHardness(0.5F).setResistance(1.0F).setBlockName("newblock");
Давайте попробуем разобрать данную неразбериху.
Код:
public static Block newblock
Код:
new BlockNew(101, 0)
Число 101 - айди блока. Используйте с 101 по 250.
Число 0 - не трогайте, это индексация текстуры по terrain.png, оно вообще не понадобится. Пусть стоит в фазе нуля.
Код:
setHardness(0.5F)
Код:
setResistance(0.3F)
Код:
setLightValue(1.0F)
1.0F - светится как австралий.
Код:
setBlockName("newblock")
Профиряем.
Теперь давайте создадим специальный файлик BlockNew.java (по названию блока) который определит наш кубик в игре.
Вписываем в первую строчку магические буковки, опять.
Код:
package net.minecraft.src;
Код:
import java.util.Random;
Код:
public class BlockNew extends Block
{
Код:
public BlockNew(int i, int j)
{
super(i, j, Material.ground);
}
Дальше объявляем выбрасывание и его ID.
Код:
public int idDropped(int i, int j)
{
return mod_gcc.newblock.blockID;
}
public int quantityDropped(Random random)
{
return 1;
}
}
Примечание: У меня там Rock написано в свойстве, пропустите это, ага