Създаване на модификации с помощта modloader

  • Създаване на всяко място, удобно за вас празна папка. За да направите това Minecraft Кодер Pack (на MCP);
  • Сложете папка ресурси и бин папка в буркани, които са разопаковани рано заедно с MCP;
  • Отворете папката бин, и с помощта на архиватор отворен minecraft.jar файл. Изтриване на папката META-INF, и хвърля цялата ModLoader файлове обратно minecraft.jar;
  • Изпълнете decompile.bat и изчакайте, докато конзолата ви подканва да натиснете произволен клавиш, за да излезете;
  • Всички игри ще бъдат в файлове, които се появиха след декомпилацията SRC папка на пътя: \ SRC \ Minecraft \ нетна \ Minecraft \ SRC.

Писане на началната код Редактиране

Ако използвате Notepad ++ след това го отворите по подразбиране, ще се отвори нов файл 1. Изберете File> Save As. и запишете на вече известни пътя \ SRC \ Minecraft \ нетна \ Minecraft \ SRC (където се съхраняват всички файлове). (Ако не разполагате с Notepad ++, трябва да създадете този файл. Името на файла е вписано мод _ ***. Java.







mod_ - задължителен префикс. *** - всяко име (изберете по-лесно и без интервали (Пример: mod_block)). И натиснете спаси. Писане на файл:

Това е основен шаблон за всяка мода.

Тази линия трябва да присъства във всеки файл в горната част. Това е показател за вашия моден папка (ако използвате ModLoader, всички режими трябва да бъдат в тази директория).

Тази линия е необходима, когато използвате разширените функции на модифициране на тях по-късно.

Тук, в обществени невалидни натоварване () са написани на текстурните блокове, рецепти и още много други.

върне "1.5.2"; - Версията в кавички може да се променя за всяка друга. Обикновено се използва за означаване на версията Minecraft'a.

Съставяне и създаване на завършен мода Редактиране

За проверка на кода за грешки, трябва да стартирате recompile.bat файл. Той отново се събира в играта. Ако няма грешки, конзолата се затваря.

След стартирането startclient.bat, след това пуснете игра, където можете да опитате Министерството на отбраната по време на игра.

Ако сте създали режим на готовност, а вие искате да получите готов да работи на файлове,

Изпълнете reobfuscate.bat, скриптът ще открие всички променени / добавени класове и ще ги прехвърли на папката reobf. Сега всеки Minecraft с установена ModLoader копирате тези файлове в minecraft.jar и моден сет. Също така, за модове не се променят оригиналните файлове на играта могат да бъдат опаковани в .zip архив и пуснете в папка "модове".

Ако имате грешка при компилация Редактиране

Това често се случва, които се случват, когато прекомпилирате грешки. В този случай, е необходимо да:

  • Проверете внимателно дали всички файлове и да ги сравни с кода на урок
  • Проверете дали всички и поставена правилно кодовите имена на обекти (научете повече за това по-долу)
  • Проверете лимец цялата линия съотнесени recompiler
  • Ако не работи, копирайте кода за вашия мод и низ посочен от съставителя и поставете в дискусията

Декомпилиране с модове Редактиране

Понякога такива ситуации възникват, когато се налага да промените вашите събития, за да разкрие, в името на любопитство и владеене на чужди събития и т.н.

Добър и да я направи възможно и много вероятно вече сте предположили как.

Ние се намери правилният режим (изисква да ModLoader), след това направете стъпките по-горе, както и в случай вече модифициран minecraft.jar сложи мод файлове и след това изпълнете вече decompile.bat.

Готово! Сега можете лесно да смените чуждестранна модата.

Просто имайте предвид, че рецептите трябва да бъдат вмъкнати, или, както следва:

Обикновено крафт Редактиране

Да разгледаме следния ред:

- Рецепти в кода;

- Първият "###" означава настолна линия, следното - центъра и по-ниска. "#", Block.dirt - приемане на символа # за единица земя. Може да се използва вместо # някакви писма и много символи и пространство замества празната клетка. резултат:

Добавянето на блок Редактиране

Просто искам да кажа, че ние ще създадем нов блок единица (тя ще се нарича в играта). Така че това ще бъде по-лесно, отколкото мисля, че е безкрайно настроен ***.

За да започнете, след като пакет net.minecraft.src; веднага след внос java.util.Random;, непосредствено под него, пише следния код

Тези линии могат да попречат на някои проблеми при създаването на блокове.

ние поставяме на мястото, което създава блок (нещо, обект)

Нека разгледаме този привидно неясно място.

публично статично окончателно Блок - Тази линия всъщност създава блок.

NewBlock - е името на нашия блок, но не и в играта! NewBlock ние използваме в код. И ги използваме ние трябва да се често.

BlockNewBlock - в процеса на създаване на блок, ние трябва да се създаде специален файл за този блок. В този случай, името на този файл ще BlockNewBlock.java (ако porylis в SRC, вероятно сте виждали BlockDirt файлове, BlockSand и така нататък).

(160, 0) - 160 - Това устройство ID. Когато създавате всеки нов блок (неща, материали и т.н.), не забравяйте да смените ID. Това означава, че ако имаме три блока, ИД ще бъде съответно 160, 161, 162. 0 - допълнителна ID (прочетете повече тук).

setStepSound (Block.soundStoneFootstep) - звука издаван от ходене по някакъв блок. SoundStoneFootstep трябва да се промени до желаните стойности. Те могат да бъдат гледани в Block.java (File> Open> Block.java). За простота таблица на всички звуци.

Звук при преместване на наковалнята

setBlockName ( "NewBlock") - същото като в линията на публично статично окончателно Блок NewBlock. Трябва само да копирате името ни код и го поставете във кавички.

setHardness (4.5F) - времето, необходимо да се чука на блока, за да го получи. Насочване на това основание съпротивление е равно на 0.5F.

setResistance (5F) - Това устройство свръхналягане. Например в Obsidian (не унищожават TNT) свръхналягане е 6000F.

setLightValue (0.375F) - можете да премахнете тази опция. Определя яркостта на блока. 1F - светлина от двете svetokamnya.

Резултатът трябва да изглежда така

Име, текстура, занаят единица цитат

Сега идва най-важното нещо. По линия







В рамките на тези скоби, които пишем по пътя за текстура, присвоява името на устройството е вече в играта, тя ще добави Крафт.

Така че, за да започнем с това ще създаде име в нашия блок в играта

Имайте предвид, че в (NewBlock, "Нов блок") NewBlock - това е само нашето име код блок. И в кавички, ние блокира името на играта. Двойните кавички са код за форматиране марка. Това означава, че ако напишете "§6NewBlock", цвета на името на вашето устройство ще бъде златен. Следващата таблица показва качествата, които можем да приложим в нашия блок (визуален само).

След това, ние укажете пътя до текстурата

Така "/ текстури / New Block.png". / Текстури е папка в minecraft.jar, която, както може би си спомняте, е в буркани. Можете да промените по всяко време. / Нов Block.png тази снимка 16x16, позиция в тази папка. Име и формат трябва да съвпадат точно с определен код.

Това означава, че от написването на тази линия, ние отидат в буркани, кофата за боклук, отворен minecraft.jar WinRAR и поставете в папката текстури (или каквото и да е посочено) тази картина .png.

И накрая, нашата любима - рецептата:

Ето един пример на готовия код:

Създаване на Блок File Edit

Създаване на нова BlockNewBlock.java файл в същата директория SRC \ Minecraft \ \ Minecraft \ SRC мрежата. Напишете му:

върнете мод _ *** NewBlock.shiftedIndex -. Какво ще се падне на блока при неуспех.

върнете 1 - Брой падащия блок или обект.

Аз привлека вниманието ви към е

Това поставя от гледна точка на нашия блок в творчески меню в играта. Както може би си спомняте, че има няколко раздела - Материали, блокове и т.н. Така .tabBlock добавя нашия блок в раздела блокове. Ето една таблица на стойности, които могат да се използват вместо

Генериране на блок Редактиране

Този раздел е необходимо за тези, които искат да имат своя блок се генерира в света (или ада). Така например, при създаването на руда.

Generation в обикновения свят.

Така че след като бод

за (междинно съединение к = 0; к <5; k++) - k <5 чем больше цифра после <, тем чаще генерируется блок.

Int randPosY = random.nextInt (128); - 128 височина блок. В диамант рудата 16. Това означава, че диамант рудата генерира 16 пресечки от скала

(YourOreBlockName.blockID, 17)) - yourOreBlockName.blockID името ти блок (BlockNew.blockID).

Ние rekompiliruem и за нашия блок изглежда.

Generation в ада.

Сменете код, написани на

Всички параметри са същите като при генерирането в обикновения свят.

Създаване NetherGenMinable.java файл и да влезе в него (без промяна, кодът е готова)

Всичко е готово, можете да търсите за вашата руда в ада.

Multi-текстура Edit

За нашия блок имаше различни текстури от различните страни, е необходимо да се промени малко кода.

- всички, както и с конвенционален блок.

- тогава структурата на долната страна на уреда

; - и страни

Освен това, както с всички конвенционални единица. Ние качване на снимки, rekompiliruem и се насладете на няколко текстура единица.

Falling единица Редактиране

Министерството на отбраната _ *** всички са добре и поставете BlockNewBlock.java

простира BlockSand - тази опция и да дадем своя блок да падне като копия гравитационни имоти в пясъка.

Устройството е готова. Можете да компилирате и тест в играта (виж. 1.1 Съставяне и създаване на режим на готовност).

Блок нанася Редактиране

Ние ще работим изключително в BlockNewBlock.java.

onEntityCollidedWithBlock - състояние, при което играчът е в близост до блок

par5Entity.attackEntityFrom (DamageSource.cactus, 1); - тип щети кактус (кактус) в polserdtsa (фигура 1).

Сега, когато сте попаднали на устройството, ще бъде разгледан щети на 1 polserdtse.

Unit излъчваща частица Редактиране

Файлът на блок в този ред

Този код прави нашите блокови отделят частици, като блок от червен камък.

par1World.spawnParticle ( "reddust" - reddust - правилното тип частица.

Тук тя ще изглежда като на външния вид на частици мръсотия около код блок

Таблица частици кодове:

Добавянето артикули Редактиране

Както и в "блок", за удобство, ние ще създадем обект newItem.

За дълго време, ние няма да разбере кода, тъй като всички направени до "Блок".

Така че, както с блока, между обществения мод клас _ *** простира BaseMod <и void load мы вставляем строчку, которая создает блок (вещь, предмет)

Тук всички параметри са абсолютно идентични, за да блокира създаването на следните параметри:

крайната точка - създаване обект, крайна Блок - създаване на единица.

NewItem = нов ItemNewItem (5000) и NewBlock = нов BlockNewBlock (160, 0) - всички са добре тук. ID на обекта 5000. Не забравяйте да се увеличи с всеки предмет ID.

Освен това, в блока са функциите и приликата е само в .setItemName ( "NewItem").

Как да видите устройството за създаване на код и темата са почти идентични.

Ето как трябва да изглежда кода

Име, текстура, занаят предмет на правото

Ето, вижте подраздел "наименование, текстура, занаят единица" в "блок". Всичко е точно същото, само за да замени NewBlock newItem.

Това е в крайна сметка това, което изглежда кода:

Единствената разлика: няма нужда да се добави ModLoader.registerBlock (NewBlock).

Създаване на обект Редактиране на файла

Създаване на нов файл ItemNewItem.java. Не забравяйте новата ItemNewItem (5000) при добавянето на модна линия - ItemNewItem и посочва името на новия ни файл.

maxStackSize = 64 - Брой на обекти в един слот.

this.setCreativeTab (CreativeTabs.tabMaterials); - добавяне към раздела в рекламното послание. Вижте "Създаване на звено файл."

Тема готов. Изпълнете прекомпилирате, а след това startclient проверите. Ако има грешки, а след това прочетете статията отново.

Направете храна Редактиране

Направете храна е много проста: това е необходимо да се замени определението на обектен код

6, 1F, вярно - 6 - колко храна възстановява възстановява половинките глада точки (съответно, броят 20 възстановява глад), 1F - времето до момента, в който герой започва да гладува отново, вярно - невярно - можете да / не може да бъде опитомен вълк храна.

Създаване на правилните инструменти

Там, където сме въвели кода за създаване на блока и е вписано обекта

yourSword - кодово име.

(Нов ItemSword - създаването на меча.

203, EnumToolMaterial.EMERALD - ID тук и е много важно нещо, за което по-късно.

setItemName ( "yourSword") - отново кодово име.

Но това не е краят, можете да създадете свой собствен материал, само в рамките на действащата пиша с големи букви името, например, NEW.

Сега анализираме тези странни номера 3, 1561, 8.0F, 3, 10 (в примера взех ЕМЕРАЛД). 3 - Ниво фрактури блокове значителни блокове могат да бъдат извлечени. 1561 - брой употреби. 8.0F - фрактури скорост блокове. 3 - увреждане на тълпи. 10 - добра възможност да очарование.

В този пример, ние създадохме меч. В следващите редове създават мотика лопата, мотика брадва, съответно.

MATERIALNAME замени на желания или създадени от вас.

Име, текстура, занаятчийски инструменти Edit

Това е кодът за целия набор инструмент. Писане в публичния празнотата

Това е всичко, (не забравяйте да добавите текстура).

Ето как ще изглежда напълно код, който добавя набор от елементи:

Ако искате вашите елементи | продадени единици жителите, Министерството на отбраната _ *** запис

TradeEntry тест = нов TradeEntry (Item.gunpowder.itemID, 0.5f, фалшиво, 2, 4); - Item.gunpowder.itemID - тогава си обект, блок и т.н.

0.5f - шанс да се появи в продажба на жителите

ModLoader.addTrade (1, тест); - 1 - жител на професията
Числата 2, 4 - е обменният курс за продажба, което означава, че продуктът ще бъде в продажба от 2 до 4 изумруди.
False - това означава, че резидентът продава стоките на вас съответно истински - това означава, че продукта, който продават.

Името на жител на професията

Промяна на съществуващи команди Редактиране

Имената на всички отбори в играта (и сървъра) започва с командата.

Такива като при отваряне на файла CommandKill.java виждаме кода

върне "убие"; - убийство - след серия /. Ние можем да го променим, за краткост, например чрез к. В този случай, когато влезете в играта / убие нас, за да се каже, че такава заповед не съществува, и когато въвеждате / к Run.

обществен инт getRequiredPermissionLevel () - все още не е разбрал (най-вероятно нивото на достъп, т.е., например 0, така че може да използва обичайните играчи, и 2 - Само администраторите.

var3.attackEntityFrom (DamageSource.outOfWorld, 1000); - ефектът на командните - Съставено 1000 вида outOfWorld единици (падане в бездната).

par1ICommandSender.sendChatToPlayer ( "Ох Това изглежда, че боли .."); - цитира съобщение умира за чат.

Създаване на своите екипи Редактиране

В Министерството на отбраната _ ***, както стана обичайно за много, напиши обществена класа mod_test простира BaseMod

NewCommand - кодовото име на отбора.

CommandNewCommand - името на файла с екип .java.

В обществени нищожен товар () <пишем

Просто посочете вместо NewCommand кодиране името на отбора. Аз създадох CommandNewCommand.java файл. Все още не е демонтирано кодиране Ето код мицел пълзящо растение с.