最初の足場(Modding)

バージョン: forge-1.7.10-10.13.3.1403-1.7.10

概要




 
 

ここではMod制作を始めるのに最初にやることを載せる。ここに在る手順を踏めば、一応Moddingの環境が整う。

Moddingを行うにあたって、JavaやEclipseなどのIDEは使える前提とする(コマンドプロンプトも)。

 

導入

以下はWindowsの手順だが、同様の操作が出来ればなんでもいい。gradleの使い方が分かってると、ほとんど何もしないで大体のことは分かる。

  • Forgeのサイトにいき、目的のバージョンのsrc版をダウンロードする。
  • ダウンロードしたやつを解凍する。
    • 任意のフォルダ名に変更してもよい。
  • フォルダ(このフォルダをここではForgeルートと呼ぶことにしておく)(ここにはgradlew.batなどのファイルがある)の中に入る。
  • Forgeルートでプロンプトを起動する。
    • Explorerで何も無い場所をShit+右クリックからコマンド ウィンドウをここで開くからいける。
  • プロンプトで、とりあえずgradlew --daemonと打ってみる。
    • 必要なファイルがgradleの機能によって色々ダウンロードされる。
    • gradlewを起動可能なJava環境があれば、BUILD SUCCESSFULと表示される。
      • もしかしたらMinecraftを既にインストールしていない場合、ここで失敗するかもしれない。
    • 動作することが分かり切ってるならこの手順は飛ばしていい。飛ばすと次にgradlewを使うときに勝手に同じ効果が得られる。
      • とりあえずやっとくとコマンドの履歴に出てくるからその後の入力が楽。
  • gradlew --daemon tasksでは、実行可能なコマンドが大量に出てくる。
    • 説明文が付いているし分かりやすい名前になっているので、眺めてみると色々分かることがあるだろう(多分)。
  • おもむろにgradlew --daemon runClientと打ってみる。
    • 別に必要な操作ではないが、これをやっとくととりあえず走らせるとこまで行けるのが確認できる。
    • クライアントが起動出来れば問題ない。
      • Minecraftの実行フォルダはForgeルート\eclipse。セーブデータやスクリーンショットなどもここの下に置かれる。
    • Example ModというMODが導入されていれば成功。Forgeルート\src\main\java\com\example\examplemod\ExampleMod.javaが今導入されているMODのソース。
      • [20:00:40] [Client thread/INFO] [STDOUT]: [com.example.examplemod.ExampleMod:init:18]: DIRT BLOCK >> tile.dirtのようなメッセージがコマンドプロンプトに残っているはずである。
  • この時点で、ソースがコンパイルされてMinecraftに導入されていることが分かるので、開発環境の導入は一応達成

Eclipseの導入

Eclipseの使い方が分かっている前提の記述である。

  • Forgeルートのプロンプトでgradlew --daemon eclipseを実行する。
    • こうすると、Forgeルート\eclipseにEclipseを実行するための色々なものが置かれる。
  • Eclipseをワークスペース=Forgeルート\eclipseで起動する。
    • Minecraftというプロジェクトが既に作られている。
      • これのフォルダはForgeルートである。プロジェクトがワークスペースの外にある。
  • Forgeルート\src\main\javaForgeルート\src\main\resourcesが既にインポートされているので、中を覗いてみる。
    • ​ここに色々なコードを書くわけである。
    • ExampleModというクラスは、既にModとなる最低限の記述を満たしている。
      • @Modを付けたクラスがクラスパスに入っていると自動認識されるのである。
  • 実行やデバッグからClientを叩くと、クライアントが起動する。

サーバーの設定

  • まず、一回Eclipseかgradlewなどからサーバーの起動を試みなければならない。
    • 必ず失敗するであろう。
    • Forgeルート\eclipse\eula.txtが作成されるので、そこのコメントにある利用規約の内容を考慮しつつ先に進む。
  • eula.txtのeula項目をtrueにする。
  • 次に、またサーバーの起動を試みる。
    • 成功するが、この時点では入れない。
    • この時点でForgeルート\eclipse\server.propertiesがの中身にデフォルトの値が入る。
  • server.propertiesを書き換える。
    • online-mode=false
      • これをすると非ログイン環境(つまり開発環境)から入れるようになる。
  • この時点でサーバーの設定は完了。
    • サーバーは、localhostという名前のアドレスで入れる。
  • ログインしたらサーバーのコンソールでログイン名(例えばPlayer376)を確認し、op ログイン名と打つと権限が付与される。
    • クライアントからコマンドが利用可能になる。

リリース

  • gradlew --daemon jarでdev版を、gradlew --daemon assembleでリリース版を組み立てることができる。
    • ​保存場所は、Forgeルート\built\libs
  • ​build.gradleの中のversionを書き換えると出力ファイル名が変わる。
    • archivesBaseNameも。

 

最終更新:2015年05月31日 18:46