サーバーリソースパックの開発者向けトップページ
Wikiで編集mofupack_official
MOFUCRAFTで使用しているサーバーリソースパックです。
現在の動作想定バージョンはMinecraft 1.21.11と26.1です。(v11.14)
リソースパックのデータは、GitHubのmofucraftオーガナイゼーション上でプライベートリポジトリとして共同管理しています。 (アクセス権限が必要です)
必須動作環境
- Minecraft 1.21.11 / 26.1
- Variants-CIT v5.0.0以上
リソースの統合元
- ItemsAdder
- ModelEngine ※一時休止中
各種ガイド
【初期セットアップ】開発バージョンをMinecraftで利用する
/resourcepack/develop/how-to-use(閲覧にはアクセス権限が必要です)
テクスチャ画像を作成するときの注意
①ファイル名には小文字英数字とアンダーバー(_)だけを使って下さい。
大文字アルファベットや日本語などがファイル名に含まれていると、Minecraftに認識されません。
②ファイル名の末尾を_n・_sにしないで下さい。
末尾が_nまたは_sのテクスチャ画像は、テクスチャアトラスに登録されず、ゲーム内でまったく表示されません(紫と黒の市松模様になります)。
これらはLabPBR規格でノーマルマップ(_n)・スペキュラマップ(_s)用に予約されている名前で、Iris(シェーダーMod)やOptiFineが通常のテクスチャとしての読み込みから除外してしまうためです。シェーダーをオフにしていてもIrisが導入されているだけで発生し、テクスチャの実装方式(Variants-CIT / バニラCIT / OptiFine CIT)を問わず回避できません。
例:ka_sword_n.pngは表示されないため、ka_sword_no.pngのように末尾を変えてください。
判定されるのは拡張子を除いたファイル名の末尾だけです。item/kga_bow_n/kga_bow_no.pngのようにフォルダ名が_nで終わるのは問題ありません。
なお_e(発光テクスチャ)はこの制限の対象外ですが、hoge.pngとhoge_e.pngが揃っているとhoge_e.pngが発光レイヤーとして扱われる点に注意してください。
③テクスチャ画像解像度は16x16, 32x32, 64x64など、区切りの良いものを使用してください。
40x40や130x100などのテクスチャ画像が1個でも混入すると、リソースパック使用時にミップマップレベルの描画が行われなくなってしまいます。
例:[Worker-Main-110/WARN]: Texture modelengine:entity/fhibaegaaaislid-removebg-preview with size 411x607 limits mip level from 4 to 0
また、圧縮時にエラーが発生するなどのエラーの原因にもなります。
④テクスチャ画像は透過PNG形式を使って下さい。
JPEGから名前を変えただけのものはエラーを起こします。
最初から透過PNG形式で画像データを作成するか、画像フォーマットを変換してください。
3Dモデルを作成するときの注意
3Dモデルはその特性から、2D画像テクスチャよりも圧倒的にデータ量を多く使用します。
凝った3Dモデル1つで2D画像テクスチャ1000個分に相当することもあります。
キューブ数を可能な限り減らす、キューブで表現するのではなくテクスチャで表現する、3Dモデル用テクスチャ画像の解像度をなるべく下げるといった方法で可能な限りファイルサイズを削減するようご協力ください。
テキストファイルは文字コードUTF-8で作成してください。Shift-JISのようなUTF-8以外の文字コードは使用しないでください。圧縮時にエラーが発生します。
テクスチャデータを実装するときの注意
mofupack_officialリポジトリにおいて、作業を行うときは必ずreleaseブランチ以外(例:developブランチ)を使用してください。
developブランチなどで開発を行ったのち、リリース作成の段階でreleaseにマージまたはプルリクエストを行って下さい。
テキストファイルは文字コードUTF-8で作成してください。Shift-JISのようなUTF-8以外の文字コードは使用しないでください。圧縮時にエラーが発生します。
CustomModelDataタグの利用
Minecraft 1.14以上で使えるCustomModelDataタグについて
CustomModelData(数値)の使い分け
1番~499999番までを運営アイテム、500000番~999999番までを住民アイテムとして区別しています。
番号はなるべく小さい番号から順番に使用してください。
※1.21.xあたりから、CustomModelDataタグには数値以外に文字列も設定できるようになったようです。なお、文字列の使用には現状特に命名法則は設定していません。
空き番号の具体的な調べ方や、WeaponMechanics武器での5連番予約についてはCustomModelData(CMD)の採番ガイドを参照してください。
item_modelコンポーネントの利用
Minecraft 1.21.4以上で使えるitem_modelコンポーネントについて
詳細はCustomModelData(CMD)の採番ガイド内の「item_modelコンポーネント(1.21.4以上)について」の章を参照してください。
Variants-CITでの防具装備テクスチャの追加
Variants-CIT(v5系Mod)導入者向けに、.propertiesとlayer_1/layer_2テクスチャで装備の見た目を差し替える手順は防具装備テクスチャの追加を参照してください(asmodeusやsakuraなどの実例つき)。
ItemsAdderでテクスチャ付きアイテムを作成するとき
resouce:以下のmodel_path:に正しいテクスチャファイルのパスを入力しておくこと。
空もしくは未入力だと、ダミーのバリアブロックテクスチャを表示してしまうため
開発版でバリア化するのはこのため。packsquashによる圧縮を経ると、奇跡的に本来のテクスチャが優先されるため公開版では問題ないように見える。
resource:
material: FEATHER
model_id: 16
generate: false
model_path: mofucraft_before_1_19:item/xmashat
ItemsAdderの作成するリソースパックとのマージ
サーバー側ItemsAdderが/iazipで生成したパックから、必要なファイルだけを手作業で取り込む手順はItemsAdder生成パックのマージ手順を参照してください。取り込んではいけないファイル(バニラアイテムの上書き定義)と過去の事故事例を含みます。
ItemsAdderでの防具装備テクスチャの追加
バニラクライアントでも見えるItemsAdder equipment定義(JSON)とhumanoid/humanoid_leggingsテクスチャの配置手順は防具装備テクスチャの追加を参照してください(moon・santa・tsuyuなどの実例つき)。
ItemsAdderでエモートを追加する
エモートの仕組み・必要ファイル・追加手順・過去の経緯と教訓、ModelEngineの現状はエモートとModelEngineの現状にまとめました。
OptiFine CIT系テクスチャのバニラ最実装
CrackShot系武器を除き、OptiFine CITで実装していたテクスチャのバニラ方式での最実装を進めています。
リポジトリにClaude Codeで使える移行用Skillsが含まれています。
移行したいテクスチャを手に持ち/wm test nbtで表示されたNBTをチャットログごとコピーし、/cit-migrateスキルに添付して実行すると自動でバニラ方式で最実装されます(同時にOptiFine CITでの実装は削除されます)。
CrackShotの武器をWeaponMechanicsで再現実装した場合は、CrackShotまたは最実装WeaponMechanicsの武器情報をコピーし、/cs-to-wm-cmdスキルに添付して実行すると自動でWeaponMechanicsのSkin項目で割り当てるべきCustomModelDataを実装してくれます(同時にOptiFine CITでの実装は削除されます)。
手動での追加手順・custom_nameのマッチング仕様・よくある失敗例はアイテムテクスチャの追加方法(バニラCIT)を参照してください。
packsquashによる高効率圧縮
/resourcepack/develop/packsquash
リソースパックの更新と公開
/resourcepack/develop/how-to-release
権限・インフラ一覧(管理者・保管場所のマップ)
/resourcepack/develop/access-and-infra
障害時の対応とロールバック
/resourcepack/develop/emergency-rollback
アーカイブ
OptiFine Custom Item Texture (CIT)
https://blog.turutaru.com/2022/02/12/post-118/
CrackShotPlus武器にCustomModelDataでテクスチャを付ける
https://blog.turutaru.com/2022/04/15/post-190/

