MinecraftのModを作る①

マイクラの経験値はゼロですが、子どもがプログラミング可能なMinecraft（JAVA版）を購入したので、Forgeを使用した自作Modに挑戦してみました。

※ マイクラの経験値はゼロですが、仕事としてのプログラマ経験は25年ほどです。PCを使える中学生くらいを対象に記述しますが「当たり前なこと」としてすっとばした説明になっているかもしれません。分からない部分があれば他サイトを検索してください。

:::note warn
警告
他者が作成したJAVAコード/Modを使用する場合は、その危険性を十分理解した上で作業してください。
:::
#### 必要なもの
・JAVA
・gradle
・Minecraft PC版(JAVA版)
・Minecraft Forge
・Minecraft Forge MDK

#### 作業手順
１．JAVA環境構築
２．gradle環境構築
３．Minecraft ForgeとMDKのダウンロード
４．Minecraft Forgeのインストール
５．Minecraft Forge 起動環境作成
６．Minecraft Forge MKDの展開
７．サンプルModのビルド
８．自作Mod(サンプルMod)の起動

#### １．JAVA環境構築
これについては丁寧に説明しているサイトがあるので、そちらをご確認ください。
大雑把に言えば、以下の２ステップです。
① OracleのサイトからJDKのインストーラをダウンロード
② 環境変数を設定

#### ２．gradle環境構築
こちらも親切な解説がある他のサイトをご確認ください。こちらも2ステップです。
① ZIPファイルをダウンロード(https://gradle.org/install/)　
② 環境変数を設定

#### ３．ForgeとForge MDKのダウンロード
① Minecraft Forgeのサイトにアクセス
　https://files.minecraftforge.net/net/minecraftforge/forge/

② インストーラーとMDKをダウンロード(今回は1.20.2のRecommendedを使用)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/c308be83-2181-b618-6083-898d98a80e1b.png)

　Forgeのインストーラは.jarファイル、MDKは.zipファイルです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/32d93c20-be0e-d9e8-4f0f-5f331cdce8c9.png)

#### ４．Minecraft Forgeのインストール
① Forgeのインストーラ(forge-1.20.2-48.1.0-install.jar)をダブルクリックで起動
② [Install client]を選択して[OK]をクリック
　(必要に応じてインストールディレクトリを変更してください)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/1292b1a7-7e41-0709-f9d3-79d14d828c88.png)

#### ５．Minecraft Forge 起動環境作成
自作Mod／外部Modを取り込める環境を構築するために、Minecraftを一度起動します。
(一度起動することで必要なフォルダ構成を自動生成してくれます。)

① Minecraft Launcherを起動し、[Java Edition]を選択後、[起動構成]をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/d7c7794d-e831-3619-a7ca-25f80311778c.png)

② [新規作成]をクリック
 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/26b7a5f2-db88-e39a-22a7-0ba6bb649078.png)

③ 構成を設定後、[保存]をクリック
<dl>
  <dt>名前</dt>
  <dd>任意の名称を指定</dd>
  <dt>バージョン</dt>
  <dd>先ほどインストールしたForgeを指定</dd>
  <dd>もしドロップダウンリストに現れない場合は、Minecraft Launcherを再起動してみてください。</dd>
  <dt>ゲームディレクトリ</dt>
  <dd>ここで指定したディレクトリ下に起動構成フォルダを構築してくれます</dd>
  <dd>既存のMinecraftとは異なるディレクトリの指定を推奨します。</dd>
</dl>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/c8868d20-46b0-ba7b-f26d-0d6766182184.png)

④ 作成した環境の[プレイ]をクリックして起動します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/9d977d4d-8684-c374-ebf4-844228e642ea.png)

何度も言いますが、一度起動しないと必要なフォルダ構成がセットされず、**後で右往左往します!!**

⑤ 起動画面の左下にForgeのバージョンが記載されていることを確認
　もし記載がなければ、それは通常のMinecraftです・・・。構成画面の[バージョン]を見直してください。
 
⑥ [Mods]をクリックしてModの使用状況を確認
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/300391e0-9b9a-77e4-afcd-a27a855d3fe8.png)

⑦ 当たり前ですが、まだ自作Modを入れていないのでMinecraftとForgeのみが表示されます。
　念のため[Open mods folder]をクリックしてフォルダを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/74a433aa-73dd-15f4-0f93-aeafe1f52968.png)

⑧ 何もはいっていません。
　(MinecraftとForgeは基幹モジュールなので、こんなところには置かれないのでしょう。)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/1c7d2717-155b-ce13-18a6-518028c36a55.png)

蛇足ですが、そこら辺から拾ってきたModをこのフォルダに放り込めば、そのModを抱き込んで起動できます。
ですが、**外部Modは必ず信頼できるものをご使用ください。ModはJAVAなので、最悪の場合、PC自体がウイルス感染します。**

#### ６．Minecraft Forge MKDの展開

① 先ほどダウンロードしたForge MDKファイル(ZIP)を任意のディレクトリに解凍
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/59e1c618-b839-4f30-a425-6838985143c0.png)

#### ７．サンプルModのビルド
まずはコードを変更せず、ビルドできることを確認します

　ウインドウボタンを押しながらrを押し、[ファイル名を指定して実行]を起動
  [名前]に「cmd」と入力してコマンドプロンプトを起動
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/5e43b21c-99b7-46c3-b2ea-ea0f2f2ba01b.png)

 もし上手くできなかったら、検索ボックスに「cmd」と入力してもOKです。(コマンドプロンプトが起動すればどう起動してもOK！)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/5844e4c2-a2af-0771-2762-15e597617a7c.png)

それでもコマンドプロンプトを起動できなかったら、ググってください。

MDKを展開したフォルダに移動
cdコマンドで移動します。
 例：cd c:\xxxxxxxx\forge-1.20.2-48.1.0-mdk

gradle buildと入力してEnter
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/767cff2e-1a06-937c-c958-8572165b7936.png)

ビルドが成功すると「BUILD SUCCESSFUL」のメッセージと、MDKフォルダ内のbuild\libsにexamplemod-1.0.0.jarファイルが生成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/4c8fda71-4e6f-5f58-2612-c8c18cb60a1d.png)

#### ８．自作Mod(サンプルMod)の起動

このModを先ほど作成したForge環境下のmodsフォルダにコピーします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/8ac45dd0-e240-cce7-26f2-e3ac99276987.png)

Minecraftを起動します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/26495f08-4df8-60ff-b177-bc9f3623caf0.png)

[Mods]をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/dfe1e164-97c5-37d4-b9d7-94217bcd1b7f.png)

この環境に、先ほど作成したModが取り込まれているのがわかります
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703624/f708641c-b4f0-00fd-52c7-b510b82bcf1f.png)

---

ようやく環境を把握できたので、次はサンプルコートを見ながらカスタマイズしてみます。(まだスクラッチから書き上げる技量はないので。)