MOD解説 > ID競合防止支援MOD

目次

はじめに


Block IDs
マインクラフト内のブロック(=マップ上に設置可能なアイテム)のデータを管理するID。
新たなブロックを追加するMODは、ブロックIDの空きIDに新たなブロックを追加登録する。
そのため、複数のMODの導入を行った時、登録するブロックIDが重複していると読み込みエラーが発生してしまう。
競合が発生しやすいだけに、ブロックの追加を行うMODでは付属の設定ファイル(拡張子txt, ini, cfgなど)で登録するIDを変更できるものが多い。
1.6.x現在、0~4096の内、0~173がブロックIDとして、256~421と2256~2267がアイテムIDとして使用済みである。
よって、174~255, 422~2255, 2268~4095の計3744枠が空きIDとなる。
※1.2.3からBlockIDが4096と大幅に増えたが、一部バニラのアイテムIDとして登録済みのため、使用不可能である。
※AertherMODのように特殊な地形生成で使用されるブロックは、1~255の範囲内でなければならないという制限がある。
(ここでいう地形生成には、植物生成や鉱石生成、建物生成などは含まれないため、1.5.2現時点において該当するのはAertherMOD以外にほとんど存在しない点に留意したい。例えばBCの油田やRP2の火山なども該当しない。)


Item IDs
マインクラフト内のアイテム(設置不可能なアイテム)を管理するID。
新ブロック追加MODは、この空き枠にユーザー作成のアイテムを追加する。
複数MOD導入時、この範囲(256~31999)で同じIDにブロック&アイテムを追加するMODがあると、
ゲーム自体は問題なく起動するが、片方のMODのアイテムがもう片方のMODに上書きされて入手不可能になる。
(→レシピの作成結果や、モンスターがドロップするアイテムもおかしくなる)
使用領域が広く、滅多に競合が発生しないため、MODの中には競合回避手段を用意していないものが多々ある。
1.6.x現在、256~31999の内、256~421と2256~2267が使用済みである。
よって、422~2255, 2268~31999の計31566枠、4095以下除外で27904枠が空きIDとなる。
※1~255の空き領域もItemIDとして使うことはできるので、それも含めると最大で31648枠の空き枠となるが特にメリットはない。

Sprite ID
Sprite=描画。マインクラフト内に新規追加可能なアイテムグラフィックの残数。
新たに書き起こされたブロックやアイテムが追加されるMODほど大量に消費する傾向がある。
使い切るとリソース不足、これ以上新規グラフィックのアイテムは追加できないという事で、
Block IDやItemID、classファイルが競合していなくてもマインクラフトがブラックアウト、プレイ不可能になる。
1.5以降はSprite IDというシステムが削除されたので特に気にする必要はない

Terrain ID
Terrain=地形。性質的にはSpriteIDsとほぼ同じであり追加可能なグラフィックの残数を示すが、
こちらはマップに設置された状態のブロックの描画用に消費する。
六面の模様が同一でないブロックや、凝った見た目を持つデコレーションブロック、
On状態とOff状態で見た目が変わるなど二相を持つブロックが消費する傾向があるが、
必ずしもそうとは限らず、そういうブロックでも消費しないものはある。
1.5以降はTerrain IDというシステムが削除されたので特に気にする必要はない

既存classファイル
バニラ状態のminecraft.jarを開いた際、最初から入っているa, sw, bcaなどのアルファベット1~3文字のファイル群。
書き換えるclassファイルが重複してしまうと競合を起こし、大きな不具合をもたらす。
最近では多くのMODがなるべくこれらに手を加えないよう配慮して作られているが、それでもシステムに大きな改変を加えるMODは手を加えざるを得ない。
ID競合と違って厄介なのは、仮にclassファイルが重複したとしても、必ずしもブラックアウトはしないという事。
起動が不可能になるものから、特定の行動を取った時だけクラッシュしてしまうもの、ゲーム中のブロックやMOBの挙動に異常が発生するもの、ワールドデータを破壊してしまうものまである。
逆に表面上は何の問題も無く普通にプレイできるものまであるなど、影響は多岐に渡る。


処理の矛盾による競合
その他、同時導入するMOD数が多くなれば多くなるほど発生しやすくなる競合。
ブロック・アイテムID、書き換えるclassなどの重複が発生していないのにも関わらず、動作不良が発生している場合、これが原因の可能性が高い。
いかに書き換えるclassファイルが重複しておらずとも、別々のMODの新たに追加されたclassファイルが互いに矛盾相反する命令や処理を要求した場合、必然的にフリーズやエラーが発生してしまう。



BlockID・ItemIDの一覧の出力

そのMODがBlockID、およびItemIDのどこに新アイテムを追加するかを調べるためのMOD。
導入した状態でマインクラフトにログインすると、.minecraftフォルダ内に使用中のID一覧がtxt形式で出力される。
あくまで調査し確認するだけのMODであり、競合回避を補助する機能はない。

ID Checker [1.6.2] [1.5.2] [1.5.1] [1.4.6] [1.4.5] [1.4.4] [1.4.2] [1.3.2]

IDwakanderとの違いとして、Omit形式での出力が無くなった代わりに、
BiomeID、EntityID、SpriteID、TerrainID、WorldTypeIDの確認もできるようになっている。
1.5.1からは SpriteID TerrainIDがなくなった代わりにEnchantmentID、MetadataID、PotionTypeIDの確認もできるようになった。
ModLoader前提版とMinecraftForge(FML)前提版の2種類が用意されており、マルチでの動作保証はFML版のみ。
1.6.2版はForge版のみ。
+ ←開くにはここをクリックしてください。



IDwakander(ham86氏版)[1.2.5] [1.2.4]

日本人製作者によるIDListの完全上位互換のMOD。
+ ←開くにはここをクリックしてください。



IDwakander(A.K.氏版)[1.6.4] [1.6.2]

ham86氏のIDwakanderをtakanasayo氏が引き継ぎ、さらにそれをA.K.氏が引き継いだもの。
+ ←開くにはここをクリックしてください。



ID競合の自動回避


ID Resolver [1.5.2] [1.5.1] [1.4.7] [1.4.5] [1.4.2] [1.2.5] [1.2.3] [1.1] [1.0.0] [b1.6.6~b1.8.1]

BlockID、ItemIDの競合が発生した場合、自動でそれを空いているIDに移送、オートで競合回避してくれるMOD。
非常に便利だが全能ではなく、そのMODのConfigファイルの形式によっては二重の移送処理によるブッキングが発生、
逆に入れていた方が競合の原因になる事があり、手動で移送できるならそれに越した事は無い。

githubのソースコードを確認したところ、仕様が変更されておりかなり高度な競合回避ができるようになっていた。
詳細は、spoilerの中のMod製作者向け情報を参照のこと。
+ ←開くにはここをクリックしてください。



ブロックID上限増加


Minecraft Forge [1.6.4~1.6] [1.5.2~1.5] [1.4.0~1.4.7] [1.3.2] [1.2.5~1.2.3] [1.1]

Forge3.3.7.136以降、「mDiyo's 4096 Fix」がMinecraftForgeに同梱されるようになった。
そのため、3.3.7.136以降のForgeは最初からBlockID拡張機能を有する。
他のBlockID4096化MODもこれを受けて、Forge3.3.8.152以後は更新停止や開発終了にしている。

>解説ページ



Robinton's 4096BlockIDs [1.2.5] [1.2.3] [1.0.0] [b1.8.1]

1.2.3アップデートで追加された新規ブロックID枠を有効化させるMODでID Resolverの必須MOD。
他のブロックID上限増加MODとの違いは既存アイテムのIDが4097以降に設定されるため、
4096個のブロックID枠をフル活用できること、【MinecraftForge】不要のバージョンが用意されていることの2つである。
そのためこのMODを導入すると、導入以前に作成したワールドデータでは遊べなくなるので注意。
+ ←開くにはここをクリックしてください。



ExtendedBlockIDSupport [1.2.5][1.2.4] [1.2.3]

日本人製作者による新規ブロックID枠を有効化させるMOD。
他のブロックID上限増加MODとの違いは既存アイテムのIDは変更されず、なおかつその範囲にもブロックIDを設定できることである。
Modの一部Blockは、拡張分のIDを指定すると不具合が出るものが在る。影響情報や回避方法はフォーラムを参照。
+ ←開くにはここをクリックしてください。



mDiyo's 4096 Fix [1.2.5]

InfiCraft作者による新規ブロックID枠を有効化させるMOD。
他のブロックID上限増加MODとの違いは1~4096までのIDがBlockIDとItemIDのハイブリッドになること。
そのためこのMODを導入すると、導入以前に作成したワールドデータでは遊べなくなるので注意。
+ ←開くにはここをクリックしてください。




SpriteID & TerrainID 関係

Minecraft Forge [1.6.4~1.6] [1.5.2~1.5] [1.4.0~1.4.7] [1.3.2] [1.2.5~1.2.3] [1.1]

このMODを前提に必要とするMODは、基本的にSpriteID & TerrainID を一切消費しないと思っていい。
>解説ページ


UnForgeTextureBinder [1.4.7] [1.4.5] [1.4.2] [1.3.2] [1.2.5]

前提にMinecraftForgeを使用していないMODに対しても、
Forgeの機能を利用して、SpriteID & TerrainIDの消費を減らせるように働きかけるMOD(当然だが前提にForgeが必要)
ただ、RunicDustModの本台や粉、zeitgeistのFrass系など、
バニラのアイテム&ブロックのテクスチャとハイブリッドしてるアイテム&ブロックに対しては無効でエラーの原因になり、
(UnForgeTextureBinder.cfgから該当テクスチャの項目の数値を1から0に切り換える事で解決)
またOptifine等を使用してConnnectedTextures機能を使用した際に、本棚やガラスが透明化する不具合もある。
(現時点では対処法が判明していない)
このため、まだ枯渇が発生していない段階で特に意味もなく入れる事はあまり推奨されない。
+ ←開くにはここをクリックしてください。



SpriteIDCounter [1.2.5]

SpriteIDの消費数を数えてtxt形式で出力するだけのMOD。IDwakanderのSpriteID版。
前提ModLoader + DLしたzipファイルを「mods」フォルダに入れておくだけで動作するお手軽MOD。
+ ←開くにはここをクリックしてください。




コメント

コメント欄の運営・編集方針に関してはコメント欄方針を参照してください。
このコメント欄はwikiの情報充実のため、追記がしやすいよう設けた物なので、編集が苦手な方は以下のコメントフォームへ書き込んで頂ければ有志でページに取り込みます。
編集に関わらない質問は一切受け付けておらず、一律して削除されます。
注意書きをよく読んだ上で、質問掲示板または非公式日本ユーザーフォーラムをご利用ください。
Wikiの運営に関連する話はWiki運営掲示板、雑談等は非公式日本ユーザーフォーラムにてお願いします。
表示される親コメントには限りがあるので、返信の際は返信したいコメント横のチェックを付けて返信するようご協力お願いします。
  • IDResolverの仕様が変更されていたため、その旨を記述。文章力がないためあまりまとまらない文章になってしまいました。気になる方がいたらお手数ですが修正お願いします。 - 名無しさん 2013-02-26 22:47:55
  • ID Resolverが1.5.1来てます - 名無しさん 2013-04-21 19:11:09
    • forge682で動作確認、設定ファイルを鯖にコピーすればマルチも問題ない様子。 - 名無しさん 2013-05-11 14:00:16
      • レシピの重複があるMODがある場合、クリエイティブでタブが正常に表示されないようです。要検証かな? - 名無しさん 2013-05-17 12:22:10
  • ID Checkerとかで出るitemIDは+256された値が出てきてるのか? - 名無しさん 2013-08-06 14:32:04
  • 1.5.2は、まだこなそうですか? - 名無しさん 2013-11-03 21:06:44
    • ↑ミスです - 名無しさん 2013-11-03 21:07:33
  • id checker 入れるとクラッシュする・・・・ - 名無しさん 2013-11-09 13:07:23
  • id wakanda-って1.6.2までしかなくね? - 名無しさん 2013-11-24 12:53:04
    • srg化されているので動くはずです - S 2013-11-28 20:06:17
  • IDFいx追加してください - 名無しさん 2014-03-22 12:22:33
  • レシピ競合回避するMODって無い? 1.6.4です - 名無しさん 2014-04-26 16:47:23
    • IDCheckerは1.6.2までとなっていますが、1.6.4環境で試したところ、正常に動作しました。(Forge) - 名無しさん 2014-07-18 12:40:47
  • ID Resolverが起動しません - 名無しさん 2014-04-29 06:21:53
  • ID Resolverのページからはzipしかダウンロードできませんでした。jarはどこで手に入るのでしょうか。 - 名無しさん 2014-04-29 07:48:18
名前:

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

基本事項



プラットフォーム



アイテムデータ



ゲームデータ



ワールド



Tips



ADVANCE



マルチプレイ



リンク





Wiki運営



その他





カウンタ


合計
-

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

更新履歴


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

人気ページ