MOD解説 > MinecraftForge

MOD名 Minecraft Forge
製作者 LexManos、Forge team
配布場所 Forge File Server
関連サイト MinecraftForge公式フォーラム:Minecraft Forge Forums
競合MOD 下記参照


+ Minecraft1.4.7~1.5.2の使用classファイル




このMODについて

前提MOD。MODの開発および導入に際して要求頻度の高い様々な機能を、包括的に提供するAPI。
現在はマルチ対応やTerrainID・EntityID・BlockID・ItemIDの消費量の抑制の為などに、多くのMODが前提に【MinecraftForge】を利用する。
様々な機能を持つ高度複雑なMODであり、MOD製作者・使用者共にForgeを理解していないと不具合を誘発させる。
最低限、導入までは自分で解決出来なければ扱うのは難しい。
MOD導入時のエラーや不具合の解決の糸口になるものは、「基本事項および導入手順」で解説されているので活用しよう。
200個以上もの既存classファイルを書き換えるので他MODとの競合が非常に起きやすい。Forgeを前提としないMODとは高確率で競合する。
→このページの相性問題を参照。
Demo版に入れるとプレミアムアカウントでログオンしたようになる。

Universal

シングルの内部的なマルチ化の影響を受けてClient版とServer版を統合したUniversal版を提供するようになった。
Universal版はClient版とServer版を兼用するもので、シングル・マルチのどちらの導入にも使用できる。
このMinecraft ForgeのUniversal化に伴って、【Minecraft Forge】を前提にする殆どのMODがUniversal化している。

Recommended / Latest

【Minecraft Forge】は非常に更新頻度が高く、機能の追加・調整が頻繁に行われている。
その為、バグや不具合をある程度修正した安定版(Recommended)と、最新の状態である最新版(Latest)の2種類が用意されている。
普段はRecommended版を使用していれば問題ないが、β版や【Minecraft Forge】の最新の機能を利用するMODにはLatest版が求められていることもある。
(公式Recommendedにもバグが残っている事があり、修正されたものを探す以上のことをするには英語フォーラムを読む意気込みが必要。)
また、MODによって要求する【Minecraft Forge】のバージョンが異なる場合は、基本的に後方互換性があるため、一番要求するバージョンの高いものを利用すればよい。
Latest版では一部MODが動作しなかったり、重度のバグや開発中で不安定な機能もあったりするので自己責任で。

Installer(7.8.0.684~ / Minecraft 1.5.2~)

1.5.2から新ランチャーになった事やフォルダ構成が大幅に変更されたことによって従来のjar上書きタイプから専用のInstallerを使用する形式に更新された。
Installerは.exeではなく.jarなので[Java(TM) Platform SE binary]などで開く必要がある。
また、1.5.1以前にはInstallerは付属していないので、新ランチャーかつ1.5.2以前のバージョンでプレイする場合は手動で導入する必要がある。
※UniversalではなくInstallerの方をダウンロードする。

9.11.1.960(Minecraft1.6.4)からwindows限定ではあるが、exeタイプのInstallerが用意され、導入が容易になった。


Javaが最新でないと上手く起動しない例が報告されているので、起動しない場合はJavaを更新してみるのも手 ※ただしJava8にする場合は少し下の文章を参考すること。
それでもうまくいかない場合は、ForgeforumのEAQで指摘されているjarfixというプログラムを使ってみるとよい

もし起動しない場合、プロフィールの【JVM Arguments】にチェックを付けて、”-Xmx1G”を削除またはその後に続けて
”-Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true”または"-Dforge.forceNoStencil=true"を貼り付けてセーブすると起動する場合がある。

Java 8環境での注意点

現在のJavaの最新版である Java 8 ではJavaの仕様変更の関係で、1.7.10か1.8以降の【Minecraft Forge】しか起動できない場合がある模様で、 Java 8では1.6.4以下の【Minecraft Forge】が使えない場合がある
Java 8で起動できない場合、1.6.4以下で【Minecraft Forge】を導入したい場合はJavaのバージョンを Java 7 にする必要がある。ただし、セキュリティリスクが高いため、自己責任でダウングレードするか、Java 8と共存させること。
共存時はLauncherのProfile編集のExecutableでJava 7を指定する必要がある。例えば、Java 7の64bit版でインストールする場所を、初期設定の場合は「C:\Program Files\Java\jre7\bin\javaw.exe」となる。
インストール場所を変更している場合(Dドライブ等)はjre7フォルダ内のbinフォルダにある「javaw.exe」を指定するパスを入力すればいい。この時「java.exe」を指定しないように注意すること。

1.6.4では最新版の9.11.1.1345を使えばJava 8でも使用できる
+ どうしても1.6.4-9.11.1.965や1.7.2環境でプレイしたい人向け

対応環境

◆Minecraft 1.9
  • 12.16.0.1766 ~ (最新公式Recommendedは 12.16.1.1887 )

◆Minecraft 1.8.9
  • 11.15.0.1656 ~ (最新公式Recommendedは 11.15.1.1722 )
※ただし、11.15.1.1722にはホッパーに関する不具合が存在する。この不具合は、11.15.1.1724で修正されているため、それ以降のバージョンを利用することが推奨される。

◆Minecraft 1.8.8
  • 11.14.4.1575 ~ 11.15.0.1655

◆Minecraft 1.8
  • 11.14.0.1237 ~ 11.14.4.1577 (最新公式Recommendedは 11.14.4.1563 )

◆Minecraft 1.7.10
  • 10.13.0.1150 ~ 10.13.4.1614 (最新公式Recommendedは 10.13.4.1558 )

◆Minecraft 1.7.2
  • 10.12.0.967 ~ 10.12.2.1147 (最新公式Recommendedは 10.12.2.1121 )

◆Minecraft 1.6.4
  • 9.11.0.879 ~ 9.11.1.1345 (最新公式Recommendedは 9.11.1.1345 )

◆Minecraft 1.6.2
  • 9.10.0.776 ~ 9.10.1.871 (最新公式Recommendedは 9.10.1.871 )

◆Minecraft 1.5.2
  • 7.8.0.684 ~ 7.8.1.738 (最新公式Recommendedは 7.8.1.737

+ 過去の対応環境

Minecraft Forgeの導入方法

シングルプレイ

  最低限、このページや基本事項および導入手順を全て読んでから始めること。
  1. バニラ状態で一度Minecraftを起動し、該当バージョンのバニラ環境を作成しておく。
  2. MinecraftForge(installer)をダウンロード(目的のVerをDLできない場合は、Forgeのファイルサーバーから探すこと)
  3. ダウンロードしたinstallerを起動する。
    普段7-Zipなどを使っている場合は、右クリック→プログラムから開く→[Java(TM) Platform SE binary]を選択する。
  4. デフォルトではInstall clientが選択されているのでそのままOKをクリックし、インストールする。
    また、Forge環境で必要なライブラリはこの時点でダウンロードされる。
    必要であれば、インストール先のフォルダを変更する。
  5. Minecraft.exeを起動し、"Forge"というプロフィールが追加されている。
  6. 必要であればプロフィールの"Game Directory"を編集する。
    この作業をした場合、指定したフォルダにこのプロフィール専用のmodsフォルダやsaveフォルダ等が作成されるのでプロフィールごとの使い分けが出来る。→この機能を利用した分かり易い外部説明
  7. 全ての設定が終了したらプロフィールをセーブしてログインする。
    Forge環境の必要フォルダが指定されている場所に自動生成される。タイトル画面まで進めたのを確認したら導入成功。

注意点
  • "Game Directory"で指定した場合、config、resourcepacksフォルダも同じ場所に作成される。
  • ver1.6.2以前で、導入するMODが【ModLoader】【AudioMod】などを要求していても導入してはいけない。
    Forgeを使用して導入すると失敗する場合は諦めよう。

+ 旧ランチャー.~1.5.1の導入方法

マルチプレイ(他人のサーバーにログインして遊ぶ場合)

  1. 上記の手順に従って、シングルプレイ用にMinecraftForgeを導入する。
  2. 対象のサーバーにログイン。
    ただしこの際、サーバーもしくは環境にMODを入れていてそれがクライアントMODでない場合、サーバー側に同様のMODもしくは環境にサーバーと同様のMODが入っている必要があります。
    要するに、 OptiFineなら大丈夫ですがブロック追加系MODはサーバーと揃えて下さい。

マルチプレイ(自分でサーバーを建てる場合)

最低限、このページや基本事項および導入手順を全て読んでから始めること
minecraft_server.jarのDL方法や、MOD導入以前の初期設定の仕方についてはサーバーを参照して下さい。
そもそもサーバー建てが初めての場合は、いきなりMODを導入せずに、バニラの状態で問題なく動作するかを確認する事をおすすめします。

  1. 建てたいバージョンのForgeのインストーラーをForgeのファイルサーバーよりダウンロードします。
  2. ダウンロードしたインストーラを起動します。
    普段7-Zipなどを使っている場合は、右クリック→プログラムから開く→[Java(TM) Platform SE binary]を選択して下さい。
  3. 「Install server」を選択し、インストール先のフォルダを指定してOKをクリックし、インストールします。
    (minecraft_server.(Minecraftのバージョン).jarがない場合はインストーラー側でダウンロードされます。
    また、Forge環境で必要なライブラリはこの時点でダウンロードされます)
  4. batファイルを作成します。書き込む内容は下記参照
  5. 一度サーバーを起動。Forge環境の必要フォルダ及びeula.txtが自動生成され、サーバーが終了します。
  6. eula.txt及びそれに記載された URLの先を熟読し、EULAに同意します。 (elua=trueに変更をします)
    なお、EULAの同意は、バニラでそのような変更があったため1.7.10より行わなくてはならなくなりました。
  7. EULAに同意した後、もう一度サーバーを起動をします。エラーが出なければ作成完了です。

batファイル(Windows)
@echo off
java -Xms1024M -Xmx1024M -jar forge-###-universal.jar
pause
※###はそれぞれのバージョンによるため、実際のForgeサーバーjarを指定して下さい。
※注意 minecraft_server.jarの代わりにを Forgeのjarの方を指定してなければForgeサーバーは起動しません。 (例:forge-1.9-12.16.0.1817-1.9-universal.jar)
詳細もしくは他OSは、起動用スクリプトを参照して下さい。}

ここからは、各自でMODを入れましょう。
ただし、OptiFine等の クライアントMODを入れてしまうとエラーで起動することが出来ません
また、サーバーに入ってくる人のMOD(クライアントMODでないブロック追加系MOD等)と サーバーのものを揃える必要があり 、configも同様に揃える必要があります。
そして、 その際には必ず公式配布サイトよりダウンロードさせて下さい 。でなければ、二次配布となってしまうため規約違反になることが多いです。

また、この手順を踏んだ際、他のMODをminecraft_server.jarに導入できるかは不明です(Forge環境下でサーバー側のjarに直接導入するMODはほぼないですが)。
試してみなければわかりません。

サーバー管理者はこれらを留意して下さい。

ForgeサーバーへのクライアントMODの導入について

非公式フォーラム等でもよくある質問ですが、 ForgeサーバーにはクライアントMODの導入はできません。
(クライアントMODとはクライアント依存のクラスを用いているMODのこと、サーバーにはクライアントにあるクラスが無いために動くことができません)
なお、1.10.2でクライアントMODを導入した場合、以下のエラーが出て飛ばされ(読み込まれず)サーバーは落ちることはない模様です。
落ちることが無いからと言って残すのもおかしいので、 必ずクライアントMODはForgeサーバーのmodsから削除して下さい。
[Server thread/INFO] [FML/]: Disabling mod #### it is client side only.
[Server thread/DEBUG] [FML/]: Skipping mod ####, container opted to not load.

しかし、 1.7.10等古いForgeサーバーではサーバーが落ちてしまうので、クライアントMODの導入はしないで下さい。
クライアントMODの例
  • OptiFine
  • Minimap系MOD
  • 日本語変換MOD
など

+ 旧ランチャー.~1.5.1の導入方法

機能

Forge ModLoader(FML(3.2.5.125~)) Mod導入支援機能

MinecraftForge用にマージされたModLoaderで、【ModLoader】とほぼ同じ働きをする。
稀にFMLではエラーを起こすMODも存在する。
この機能が内包されてから、【ModLoader】を必要としなくなり、【ModLoader】とは併用できなくなった。

追加機能
  • 【ModLoader】を前提とするMODを導入可能にする。
.minecraft(Game Directory)/mods/(Minecraftのバージョン) 以下にMODの.zipファイルか.jarファイルを置けば大体機能する。
  • 設定とワールド間のIDについて調合性を確認する。
cfgファイルで設定されているBlockID・ItemIDとワールド内のBlockID・ItemIDが一致しない場合に、ワールドに入る前に警告する。
警告を無視して(あるいは理解した上で)そのままワールドに入るとブロックやアイテムが別のものに変化したり、消失したりする。
BlockIDやItemIDの一覧を出力したり競合を回避したりする機能ではない。
IDを出力するMODはこちらで詳しく解説されている。

Forge対策されていないModLoader用のMODの誤動作について
Entityの取り扱い

オートアサイン機能(6.4.1.400~)

BlockID・ItemIDの自動移送機能。
BlockID ~255 を出来るだけ使用しない様にするのが目的 なので、この機能によってID Resolverの様に完全に競合を回避出来る訳ではない。

追加機能
MOD導入時に初回ログインした時に、以下の法則に従って自動的に変更する。
  • BlockID ~255 に追加されるのを確認した場合、BlockID 4095(拡張BlockID領域の末尾)から逆順に追加し直す。
  • 移送したBlockIDに対応するアイテムを同番号のItemIDに移送する
  • ~255に追加する必要のあるブロック(主に地形生成に使用されるブロック)は移送しない。
  • この機能に対応していないMODのBlockIDは一切移送しない。
  • 同番号のItemIDが既に埋まっている場合、そのBlockIDには移送しない。

注意点
  • BlockIDの競合を回避するのではなく~255を使用しない為の移送なので競合を回避する機能ではない。
    その為、起動時に移送しないブロック同士では普段通り競合する。
  • cfgファイル生成時に一括して移送する為、初回以外では移送しない(= 既にcfgファイルがある場合はオートアサイン機能が働かない)
  • cfgファイル生成後、手動でBlockIDを変更してもItemIDは変更されない。
  • コンフィグファイルを作り直すと使用BlockID・ItemIDが大きく変更されるので、既存ワールドとの整合性が取れなくなり新しいワールドを作らざるえなくなる。
    一応手動でIDを元に戻せばログインできるが、膨大な手間がかかる。
  • オートアサイン後に、デフォルトでBlockID 4090前後を使うMODを導入すると競合する(どちらかのMODのBlockIDをコンフィグで移動すれば回避はできる)

動的難読化解除機能(7.7.0.559~)

  • 今までMinecraftのバージョンが変わるごとに内部クラス名が変わっていてMODを導入し直さなくてはならなかったが
    Minecraft 1.5以降のForgeModLoaderもしくはMinecraftForge対応かつ特定の条件(MOD開発者がreobfucated_srgで出力している)を満たしている場合に、ほぼそのまま動作するようになった。

注意点
  • 後のバージョンで作られたMODを前のバージョンで使う場合に機能が足りなくて使えない場合がある。
  • ModLoader用環境からreobfuscated_srgを使用していたMODの一部がパッケージの関係で動かない場合があるほか、当然ながらModLoader環境では使用できない。

その他付属する機能

BlockID 拡張サポート
バニラでは0~255までしか使えないBlockIDを4095まで使用出来る様に拡張する。

音楽ファイルの再生サポート
Risugami氏の【AudioMOD】と同じ働きをする機能。【AudioMOD】の代用として使用できる。

HD Textures
x128までのテクスチャをサポートしている。それ以上は【OptiFine】を使用してくださいとのこと。
【HD Font】をサポートしていないので注意

導入MOD一覧
導入しているMODを一覧として見れるボタンをスタート画面に追加する。

Minecraft Coder Pack(MCP)
MOD製作の為の支援ツールおよびスクリプトのこと。
6.0.1よりMCPの情報が内包される様になった。導入MOD一覧には出力されるが、アイテムやブロックなどを追加する事はない。


導入後のフォルダ構成

導入後にMinecraftを起動すると、新しくフォルダが作成される。
--バニラで起動してワールドに入った状態のフォルダ--

.minecraft
 ├ assets
 ├ crash-reports-(1度でもminecraftがクラッシュすると生成)
 ├ saves
 ├ screenshots-(1枚でもスクリーンショットを撮ると生成)
 ├ stats
 ├ resourcepacks
 ├ versions
   ├ (Minecraftのバージョン)
     ├(Minecraftのバージョン).json
     └ (Minecraftのバージョン).jar

--MinecraftForge導入後に起動して追加されるフォルダ--

   └ (Minecraftのバージョン)-Forge(Forgeのバージョン)
     ├(Minecraftのバージョン)-Forge(Forgeのバージョン).json
     └ (Minecraftのバージョン)-Forge(Forgeのバージョン).jar
 ├ config
 ├ coremods(8.9.0.763以降はmodsフォルダに統合されたので生成されない)
 ├ mods
   └ (Minecraftのバージョン)
 └ libraries

+ ver1.5.2以前

config
MODのconfig用ファイル。"Game Directory"でフォルダを指定した場合、指定したフォルダ内に作成される。
forge.cfg
B:disableStitchedFileSaving= trueにすると.minecraftにdebug.stitched_items.png及びdebug.stitched_terrain.pngが生成されなくなる
パフォーマンスにも影響するためか、デフォルトでtrueとなっている。
B:enableGlobalConfig= trueにすると対応しているMODのconfigが"global.cfg"にまとめられる
対応していないMODのcfgは通常通り生成される

coremods
8.9.0.762以前にて、一部のmodを導入するときに使う(Not Enough Items、CodeChickenCore、ID Resolver、Treecapitator等)。
8.9.0.763以降では作成されない。

lib
内部処理用のフォルダ。

mods
Forgeを前提にするMODのほとんどはここにMODの.zipファイルか.jarファイルを置けば機能する。
"Game Directory"でフォルダを指定した場合、指定したフォルダ内に作成される。
8.9.0.763以降では、Minecraftのバージョン名でサブフォルダを作成すると、Minecraftのバージョンによって導入するMODを切り分けることも可能。


相性問題

大量の既存classを書き換える為、基本的にForgeを前提としないMODとは競合すると思って良い。
そのようなMODもForge対応版を用意している場合が殆どであるが、対応しているForgeのバージョンに注意する必要がある。

このMODを前提とするMOD同士で競合する場合もある。
多くはBlockIDやItemIDの競合たが、描画改変MODやメニュー改変MOD同士など、まれに機能そのものが競合するMODも存在する。
その場合は片方のMODを削除するしかない。

Forgeを前提としていてもForge本体の更新により競合するMODも存在する。
これはForgeのバージョンアップと同時に問題が発生し始めたら疑われる原因の1つで、そのMODが使用しているForgeの機能がForge本体の更新により仕様変更されたことで発生する。
MOD側の更新で解消される事が殆どなのでMOD側の対応を待つか、Forgeをバージョンダウンさせるしかない。

動的難読化解除機能の実装により、ver1.5以降は条件付きではあるが、互換性をほぼ維持できる様になった。

MinecraftForge導入後のエラーの一例

導入時は、エラーが出た際にプレイヤーがエラーの解消をしやすいよう、エラー文になんらかのメッセージを出力してくれることがある。ここではその一例と対処法を紹介する。
以下、***はなんらかの数字、######はMOD名などの文字列を指す。

導入関連

1.5.2以前で【MinecraftForge】を導入して正常に起動できない場合
Minecraft非公式日本ユーザーフォーラムで詳しく解説されているのでそちらを参照

ID関連

クラッシュしたのち、以下の文が出力される場合
java.lang.IllegalArgumentException: Slot *** is already occupied by ###### when adding ######
→BlockIDの競合。どちらかのMODのIDをコンフィグから書き換えて回避できる。

java.lang.RuntimeException: Tried to recreate an item id (*** / shifted:***) for an item which already exists as ######. Check your config and resolve the conflict.
→同じIDをBlockIDとItemIDで共用している。現在は同じIDにblockとItemの両方を割り当てる事は出来ない為、このエラーが返される。

java.lang.RuntimeException: Duplicate stat id: "Unknown stat" and "######" at id ***
→実績のIDが被ってしまうときに表示される。コンフィグの再生成で直ることもある。


ワールド/サーバー関連

サーバーに接続しようとして、以下の文が表示されて接続できない
Forge Mod Loader could not connect to this server
The mods and versions listed below could not be found
They are required to play on this server
→表示されているMODが不足しているか、バージョンが違うためサーバーに入れない。探して入れてくること。

ワールド/サーバーに入ろうとして、以下の文が表示され、マルチプレイではサーバーに接続できない
共通 Forge Mod Loader has found ID mismatches
Complete datails are in the log file
ID *** is mismatched between world and game
ID *** from Mod ###### is missing
シングルプレイ Do you wish to continue loading?
Yes No
マルチプレイ You cannot connect to this sever
→マルチプレイでは、サーバー側で指定されたIDとクライアント側で指定されたIDが一致しないときに表示される。クライアント側のIDをサーバー側に合わせると解消される。
→シングルプレイでは、configを作りなおした場合などに、configとワールドでIDが一致しなかった場合に表示される。
 マルチプレイとは違い、無理やりワールドに入ることも出来るが、アイテムやブロックが化けたり消滅したりするなど、不具合が起こる場合がある。
 config側のIDをワールドに合わせると解消される。
→シングルプレイにて「ID *** from Mod ###### is missing」のみが表示される場合、MODを導入せずにワールドに入ろうとした、
 または、古いバージョンにダウングレードした際にワールドに入ろうとした場合に表示される。
 IDが一致しない場合と同様、無理やりワールドに入ることも出来るが、該当のアイテムやブロックが消滅する。
→シングルプレイにて、1.4.7以前から1.5以降にアップデート、あるいは逆にダウングレードし、ワールドに入ろうとした際に大量に表示される。
 おそらく動的難読化解除機能が実装された影響。


このMODを前提とするMODの解説ページを編集して下さる方へ

+ MODの解説ページを編集して下さる方へ



編集用コメント

コメント欄の方針に関してはコメント欄方針を参照して下さい。
wikiの編集が苦手な方は、以下のコメントフォームへ書き込んで頂ければ有志でページに取り込みます。
※コメントを投稿する際は、以下の点を確認して下さい※
  • 編集に関わらない内容のコメント・質問・雑談 は一律して削除されます。
    Wiki運営に関してはWiki運営掲示板、質問は質問掲示板、雑談等は非公式フォーラムにてお願いします。
  • 投稿の前に、一度コメントログや、バージョンアップ直後はパッチノートにも目を通し、 既に同じ内容が載っていないか確認して下さい。
  • 投稿されているコメントへの返信の際は、 返信したいコメント横の○にチェックを入れて 返信して下さい。
    表示できる親コメントの数は限られます。新規投稿をむやみに行うことは、他のコメントが流れてしまう要因になります。
+ 上記の内容を守れる方のみご利用ください。

|新しいページ|検索|ページ一覧|RSS|@ウィキご利用ガイド | 管理者にお問合せ
|ログイン|
Wikiのガイドライン
必ずお読みください!

基本事項



プラットフォーム


アイテムデータ



生物



ゲームデータ



ワールド



Tips



ADVANCE



マルチプレイ



リンク




Wiki運営



その他



カウンタ


合計
-

トップページ
今日 : -
昨日 : -

更新履歴


取得中です。
※「ログ」「アーカイブ」「コメント」のページはここの履歴に表示されませんので、「更新履歴」および「コメント」から参照してください

人気ページ