Minecraft【MOD制作 1.12.2】 (2) 〈mcmod.infoの編集と、環境構築〉Intellij IDEAでマイクラMOD開発講座

 

どうも、まっしゅです。

 

YouTubeで、ゲーム実況などをやってるので、ぜひ見に来てください!

www.youtube.com

 

 

今回は、マイクラのMOD制作の続きで、

中身を書いていくのは初めてということで、丁寧に説明してみました。

 

 

前回は、MOD制作をするための、ソフトウェアなどの環境を整えたのですが、

今回していくのは、実際に、MODの環境構築です。

 

大きく分けてすることはふたつ。

mcmod.infoの編集

 

MOD環境構築

 

 

 

それでは、頑張っていきましょう。

 

 

 

・mcmod.infoの編集

 

mcmod.infoというファイルを編集していきます。

このファイルは、Mod情報について書かれたファイルです。

 

 

 まずは、このファイルを開きます。

main/resourcesにあります。

それぞれの意味についてはこちらを参照してください。

https://mcmodding.jp/modding/index.php/Mcmod.info%E3%81%AE%E8%A8%AD%E5%AE%9A

僕の場合はこんな感じで書いてみました

f:id:maikura-info-wiiUedition:20200630174917p:plain

 ここはそれほど重要ではないのでここらへんで終わりにしておきます。

 

 

 

次。

 

・環境構築

 

ではさっそく環境構築をしていきます。

 

 

 

まずはメインクラスを開きます。(自分の場合Example_mod.java

f:id:maikura-info-wiiUedition:20200630175718p:plain

 もとからたくさん書いてあるんですが、必要のないところが多いので、

いったん全部消してから、

下に書いてあるコードをコピペしてください。

(エラーが出るとおもうけど、あとで説明します。)

 

package jp.mash.example_mod;

import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.Mod;

@Mod(
modid = Example_mod.MOD_ID,
name = Example_mod.MOD_NAME,
version = Example_mod.VERSION
)
public class Example_mod {

public static final String MOD_ID = "example_mod";
public static final String MOD_NAME = "Example_mod";
public static final String VERSION = "2019.3-1.3.4";

@Mod.Instance(MOD_ID)
public static Example_mod INSTANCE;

@Mod.EventHandler
public void preinit(FMLPreInitializationEvent event) {

}

@Mod.EventHandler
public void init(FMLInitializationEvent event) {

}

@Mod.EventHandler
public void postinit(FMLPostInitializationEvent event) {

}

}

 

そうすると、一番上のところがエラーをはくと思うんですが、

 

ここは、写真の、赤下線同士が一緒になってないといけないので、

自分のと見比べて書き換えてください。

f:id:maikura-info-wiiUedition:20200630181416p:plain

 

次は、新しいフォルダとファイルを作ります。

jp.mash.~~ を右クリックして、新規→パッケージで、新しいフォルダを作ります。

名前は、util

f:id:maikura-info-wiiUedition:20200630192340p:plain

できたら、そのファイルをまた右クリックして

今度は、新規→javaクラスというところから、新しいjavaファイルを作ります。

名前は Reference

f:id:maikura-info-wiiUedition:20200630192500p:plain

 

できたら、画像のところをさっき作ったファイルにコピペしてください。

f:id:maikura-info-wiiUedition:20200630192823p:plain

さらに、もう二つ新しいのを付け足します。(コピペ用↓)

public static final String CLIENT_PROXY_CLASS = "jp.mash.example_mod.proxy.ClientProxy";
public static final String COMMON_PROXY_CLASS = "jp.mash.example_mod.proxy.CommonProxy";

できたらこんな感じになるはず。

f:id:maikura-info-wiiUedition:20200630195216p:plain

 

そしたら、MOD_IDはたくさんのところで使うので、簡単にしておきたいので、

example_modの頭文字をとって、emとしておきましょう。

 

できたら、コピペ元のところは消しておいてください。

エラーが出るので、(MOD_ID)というところも消してください。

f:id:maikura-info-wiiUedition:20200630193412p:plain

f:id:maikura-info-wiiUedition:20200630193438p:plain

 

 

次は、proxyというのを作ります。

まずは、jp.mash...の下に、さっきの要領で、proxyフォルダを作り、

その下に、CommonProxy.java

と、CrientProxy.java

を作ります。

f:id:maikura-info-wiiUedition:20200630194409p:plain

そしたら、CommonProxyのほうは何も変更せず、

CrientProxyのほうは、

public static CrientProxy のあとに、

 

extends CommonProxy と入力します。

f:id:maikura-info-wiiUedition:20200630194737p:plain

ここまで出来たら、メインクラスに戻って、

 

写真の部分に、コピペでこれを貼り付けてください。

@SidedProxy(clientSide = Reference.CLIENT_PROXY_CLASS, serverSide = Reference.COMMON_PROXY_CLASS)
public static CommonProxy proxy;

f:id:maikura-info-wiiUedition:20200630195403p:plain

これでproxyの設定はOK。

 

 

MODの環境構築は、これで完了です。

 

お疲れさまでした!

 

 

・まとめ

 

今日やったところのまとめです。

 

①mcmod.infoの編集

書き方→https://mcmodding.jp/modding/index.php/Mcmod.info%E3%81%AE%E8%A8%AD%E5%AE%9A

 

②メインクラス(完成形)

package jp.mash.example_mod;      ←ここは自分のに合わせて書き換える

import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.Mod;

@Mod(
modid = Reference.MOD_ID,
name = Reference.MOD_NAME,
version = Reference.VERSION
)
public class Example_mod {

@Mod.Instance
public static Example_mod INSTANCE;

@Mod.EventHandler
public void preinit(FMLPreInitializationEvent event) {

}

@Mod.EventHandler
public void init(FMLInitializationEvent event) {

}

@Mod.EventHandler
public void postinit(FMLPostInitializationEvent event) {

}

}

 

 

③Reference.javaを書く           jp.mash.example_mod/util

 

public static final String MOD_ID = "em";
public static final String MOD_NAME = "example_mod";

public static final String VERSION = "2019.3-1.3.4";

public static final String CLIENT_PROXY_CLASS = "jp.mash.example_mod.proxy.ClientProxy";
public static final String COMMON_PROXY_CLASS = "jp.mash.example_mod.proxy.CommonProxy";

 

 

④CommonProxy(作るだけ。何も変更しなくて良い)      jp.mash.example_mod/proxy

 

public class CommonProxy {

}

 

 

⑤CrientProxy                                                jp.mash.example_mod/proxy

 

public class CrientProxy extends CommonProxy {

}

 

 

 

 

次回は、アイテムの追加のしかたについてやろうと思います。

 

ほかの記事も見てくれると嬉しいです。

 

 

 (もしかしたらYouTubeでもMOD開発の解説をするかもしれない)

YouTubeで、ゲーム実況とかをやってるので、チャンネル登録よろしくお願いします!

www.youtube.com

 

 

最後まで見てくれてありがとうございました!