目次
Minecraft のMod開発環境を構築する
以下の構築環境は、主に「クライアントユーザ向け」のMOD構築です。
ModLoaderを使用する場合は、
Setup3の minecraft.jar(Modloader導入済)と minecraft_server.jar(ModLoaderを入れてない状態)の両方を用意して下さい。
(Setup.1) JDK(Java SE Development Kit)をダウンロードする
JDK(Java SE Development Kit)をダウンロードするには、
http://www.oracle.com/technetwork/java/javase/downloads/index.html をクリックして下さい。
12/3/6時点でページ内に「Java SE 7u3」と「Java SE 6 Update 31」がありますが、MCPのページに
Use the Java6 JDK with MCP, Java7 will not work properly
とあるので「Java SE 6 Update 31」を使いましょう。
Java7でも動くようですが、MOD導入者にJava7を必要とさせることもあるのでJava6にしておいた方が安全です。
JDK DOWNLOADというボタンがあるのでそのリンクを押します。
そして Oracle Binary Code License Agreement for Java SE に同意するために、
Accept License Agreement(訳: ライセンスに同意する)のラジオボタンを選択(クリック)して、
その後、自分のプラットフォームに合わせたJDKのダウンロードリンクをクリックしましょう。
JDKのインストール後、環境変数の設定が必要なことがあります(ほぼ必ず)
(Setup.2) Minecraft Code Pack(MCP) を入手
Download: http://www.minecraftforum.net/topic/54719-toolkit-minecraft-coder-pack/
上記をダウンロード後、mcp(バージョン).zip を解凍して下さい。
解凍後は、適当な場所(例: C:\McRoot\ ) にフォルダを生成し、解凍した中身を移す。
(※フォルダ名は、日本語等のマルチバイトの場合、不具合が起きる可能性があるため、英数をお勧めします)
(Setup.3) Minecraft 関連をダウンロードとコピーペースト
1. Minecraft Server Jar(minecraft_server.jar)をダウンロードする。 (Download: http://www.minecraft.net/download ))
2. minecraft_server.jar をMCPを設置した場所の\jars(例: C:\McRoot\jars )にコピーを行う
3. %appdata%\.minecraft/bin のフォルダ丸ごとを、MCPを設置した場所の\jars(例: C:\McRoot\jars )にコピーを行う
4. %appdata%\.minecraft/resource のフォルダ丸ごとを、MCPを設置した場所の\jars(例: C:\McRoot\jars )にコピーを行う
(Setup.4) デコンパイルを行おう
1. 先程適当な場所(例: C:\McRoot\) に decompile.bat というファイルがあるので、それをダブルクリックする。
2. するとデコンパイルが始まるので、終わるまでお茶でも飲んで待っていよう
3. デコンパイルされたソースは、先程適当な場所(例: C:\McRoot\scr ) 内に展開される
├この時点で失敗する場合は、minecraft.jar, minecraft_server.jar, MCP のいずれかのバージョンが合っていない可能性がある。
└ macの場合は、ターミナルでMCPROOT/へ移動した後./decompile.shと入力してdecompile.shを実行する。
4. ModLoaderを導入した場合は、MCPROOT/scr/minecraft/net/~/scrフォルダ内に
BaseMod.java, ModLoader.java も展開される。(ModLoader 導入成功)
└MCP 2.X 以前の様に enable_modloader.bat を実行する必要はありません。(実行すると不具合が発生する)
ソースファイルの作成
既存のクラスを変更する場合は C:\McRoot\src/minecraft/net/minecraft/src/ 内にあるソースコードを変更する。
自作のクラスを追加する場合も、このフォルダに追加する。
最初の内は無理をせず BlockXXX.java や ItemXXX.java などをコピーして練習すると感触をつかみやすい。
欲しい機能がある場合は、その機能を持つソースを覗いてみよう。(爆発を起こしたい→クリーパーのソースを見る…など)
既存のクラスを変更すると、他の MOD と競合することがあるので、レシピの追加などは ModLoader を使ったほうが無難。
ModLoaderを使用する場合は、BaseModを継承したクラスを作成する。
その際クラス名の先頭に"mod_"というプレフィックスをつけること。(つけないと ModLoader から認識されません)
cleanup.bat を実行すると、decompile 時に生成されたフォルダ以下が全て削除されます。
ソースコードは必ずバックアップを取ることを推奨 します。
リソースの作成と配置
自作のテクスチャを使用する場合は、作成して好きな場所に保存しておくこと。
自作のリソースは C:\McRoot\bin\minecraft\ に配置する。
公式のファイルとの区別がつきやすいようなフォルダ名・ファイル名にするのが良い。
(例 : C:\McRoot\bin\minecraft\mod\sample.png など)
cleanup.batを実行すると、decompile時に生成されたフォルダ以下が全て削除されます。
リソースのマスターデータは別のフォルダにバックアップをすることを推奨 します。
コンパイル
recompile.batを実行する。
エラーが出た場合は、コマンドプロンプトに詳細が表示されるので原因を取り除く。
コンパイルに失敗した場合、テストプレイを実行できない。
動作テスト
startclient.bat を実行すると、変更を加えた状態でテストを行える。
テストプレイ時は C:\McRoot\jars\ が .minecraft\に相当し、セーブファイルは C:\McRoot\jars\saves に作成される。
テストのためのアイテムやブロックがないときは、既存のセーブデータのコピーによって対処するといいだろう。
動作テストで満足できないときは、1に戻ってやり直そう。
配布ファイルの出力
※MCP 3.X で大きく仕様が変更されたので注意。
配布するファイルを出力する場合は C:\McRoot\reobfuscate.bat を実行する。
ファイル作成に成功すると MCPROOT/reobf に配布する class ファイルとリソースデータが出力される。
MPC 2.X 以前の様にファイルを列挙する必要はない。
自作MODを実際に導入して最終テスト
実際に minecraft.jar に導入してテストを行う。
ModLoader を入れた場合、 ModLoader を導入 したあと class ファイルをZIP内に書き込む。
もちろん META-INF は削除すること。
最後に起動テストをして完了。
うまくいったら好きな場所に公開してみよう。