- Unityエクスポート: 特定のUnityプロジェクトテンプレートを使用して、Super Battle Golfのカスタムマップ用のアセットバンドルをビルドします。
- バンドル命名規則: modフォルダ内でのファイル競合を防ぐため、常に
Username.PackName形式を使用してください。 - JSON設定: 各マップパックには、ホール名、パー数、難易度を定義するための対応するJSONファイルが必要です。
- ファイル構成: エクスポートしたバンドルは
Weapon X/plugins/Super Battle maps/maps/ディレクトリに配置します。 - マルチプレイヤー: すべてのプレイヤーが同じファイルをインストールしている場合、カスタムマップはマルチプレイヤーモードと完全に互換性があります。
カスタムマッピングの始め方
Super Battle Golfのカスタムマップを作成することで、プレイヤーはベースゲームのコンテンツを超えて、ユニークなチャレンジをデザインすることができます。このプロセスでは、Unityエンジンを使用してレベルを構築し、ゲームのモッディングフレームワークが認識できるアセットバンドルとしてエクスポートします。開始する前に、ビルドパイプラインに必要なスクリプトが含まれている、正しいバージョンのUnityプロジェクトテンプレートがダウンロードされていることを確認してください。
| 要件 | 説明 | 推奨事項 |
|---|---|---|
| Unityのバージョン | ゲームのビルドに一致する特定のバージョン | 公式Discordで現在のバージョンを確認 |
| プロジェクトテンプレート | Super Battle Golf用にエクスポートされたUnityプロジェクト | ビルドスクリプトに必須 |
| アセットバンドル | 3Dシーンをパッケージ化するために使用されるフォーマット | カスタムメニュー経由でビルドする必要あり |
| JSONの知識 | マップメタデータ用の基本的なテキスト編集 | ホールの定義に必要 |
アセット内の Assets/Scenes/Holes/CustomHoles/ の下にある専用のフォルダにすべてのカスタムシーンを配置して、Unityプロジェクトを整理された状態に保ちます。これにより、ライブラリが成長するにつれて、複数のマップパックの管理が大幅に容易になります。
Unityからのマップのエクスポート
エクスポートプロセスは、Super Battle Golfのカスタムマップを作成する上で最も技術的な部分です。シーンバンドルとアセットバンドルを区別する必要があります。シーンバンドルには実際のレベルレイアウト(ホール)が含まれ、アセットバンドルにはプロジェクトにインポートしたカスタム3Dモデルやテクスチャが含まれます。
動画のハイライト:
- バンドルの命名:
username.packnameの命名規則の使用方法。 - ビルドコンソール:
B:コマンドを使用してバンドルの内容を確認する方法。 - エクスポートパイプライン: ビルドメニューを操作して最終ファイルを生成する方法。
- マルチシーンパック: 単一のアセットバンドルに複数のホールを追加する方法。
同じバンドル内にシーンと他のアセット(テクスチャやモデルなど)を混在させることはできません。ベースゲームにないカスタムオブジェクトを使用する場合は、別個のバンドル(例:username.assets)を作成し、それに応じて参照する必要があります。
アセットバンドル名のクリア
ビルドする前に、Unityの「Build」メニューに移動し、「Clear All Asset Bundle Names」を選択します。これにより、古いデータが新しいエクスポートに干渉しないようになります。
バンドル名の割り当て
Projectウィンドウでシーンファイルを選択します。インスペクター(右下)で、新しいアセットバンドル名を作成します。YourName.MapName の形式を使用してください。
バンドルのビルド
「Build」メニューに移動し、「Build Asset Bundles」を選択します。このプロセスは、ハードウェアのスペックによってシーンあたり1〜2分かかる場合があります。
エクスポートされたファイルの場所を確認
Windowsエクスプローラーでプロジェクトフォルダを開き、Assets/Bundles に移動します。拡張子のないファイルのみが必要です(.manifest ファイルは無視してください)。
ディレクトリ設定とファイル管理
Super Battle Golfのカスタムマップをエクスポートしたら、それらを正しいゲームディレクトリに配置する必要があります。ゲームは、Weapon Xプラグイン構造内のカスタムコンテンツを探します。配置が正しくないと、ゲーム内の「Custom Holes(カスタムホール)」タブにマップが表示されません。
| フォルダ階層 | パスの構成要素 | 目的 |
|---|---|---|
| ルート | Super Battle Golf/ | ゲームのメインインストールフォルダ |
| プラグインパス | Weapon X/plugins/ | すべてのmod関連データの場所 |
| マップストレージ | Super Battle maps/maps/ | カスタムレベル用の特定のディレクトリ |
| あなたのパック | 15_cool_maps/(例) | 特定のマップパック用のユニークなフォルダ |
バンドルファイル
- Unityからエクスポートされた生のファイル。
- 3Dジオメトリとロジックが含まれています。
- ファイル拡張子は不要です。
JSONファイル
- ゲーム用のメタデータファイル。
- パー数、難易度、名前を定義します。
- バンドルと一致するように正しく名前を付ける必要があります。
マルチプレイヤーで友人とマップを共有する場合は、全員がまったく同じフォルダ名を使用していることを確認してください。ゲームは、内部のシーン名とフォルダ構造に基づいてマップを識別します。
JSONメタデータの設定
JSONファイルは、Super Battle Golfのカスタムマップの「IDカード」として機能します。正しく設定されたJSONがないと、ゲームはメニューにマップを表示する方法や、スコアルールが何であるかを認識できません。modフォルダにある example.json をコピーして、Notepad++などのテキストエディタで編集できます。
| JSONキー | 値の型 | 説明 |
|---|---|---|
| sceneName | String | Unityのシーンの正確な名前と一致する必要があります |
| holeName | String | メニューでプレイヤーに表示される名前 |
| par | Integer | ホールの標準打数(パー) |
| difficulty | String | Easy、Medium、Hard、またはExpert |
| enabled | Boolean | ゲーム内に表示するには true に設定する必要があります |
1つのパックに複数のホールを追加するには、最初のホールエントリーの閉じブラケットの後にカンマを追加し、2番目のホールのデータを含む新しいブラケットのセットを貼り付けるだけです。
最適化と品質保証(QA)
機能するマップを作成することは最初のステップにすぎません。コミュニティに受け入れられるためには、十分にプレイできることを確認することが不可欠です。Super Battle Golfのカスタムマップは、共有する前にローカルでテストする必要があります。衝突判定(コリジョン)ゾーンやアウトオブバウンズ(OB)のトリガーには細心の注意を払ってください。これらはカスタム作成において最も一般的な失敗要因です。
公開前チェックリスト:
- JSON内のシーン名がUnityのシーン名と完全に一致していることを確認する
- 設定ファイルで「enabled」がtrueに設定されていることを確認する
- パー数の設定をテストし、公平でありながら挑戦しがいがあることを確認する
- ゲーム内でテクスチャの欠落や「ピンク色」のシェーダーがないか確認する
- マップが「Custom Holes」タブに読み込まれることを確認する
モッディングフレームワークの一部の機能はまだ開発中の可能性があります。特定のインタラクティブオブジェクトが機能しない場合、それはマップのデザインではなく、現在のmodバージョンの制限によるものである可能性が高いです。
| 難易度レベル | 推奨パー数 | 特徴と焦点 |
|---|---|---|
| Easy | 3 | 広いフェアウェイ、ウォーターハザードなし |
| Medium | 4 | 一部の障害物、軽微な高低差 |
| Hard | 4-5 | 狭い通路、動くプラットフォーム |
| Expert | 5+ | 高い精度が必要、厳しいハザード |
よくある質問
Q: 作成したSuper Battle Golf ofのカスタムマップがメニューに表示されないのはなぜですか?
最も一般的な原因は、JSONファイルの「enabled」フィールドが「false」に設定されていることです。また、JSONファイルが正しく命名されており、シーン名がUnityプロジェクトと完全に一致していることを確認してください。
Q: マップでカスタム3Dモデルを使用できますか?
はい、可能ですが、それらを別のアセットバンドルとしてエクスポートする必要があります。同じバンドルファイル内にシーンと個別のアセットを混在させることはできません。
Q: カスタムマップでマルチプレイヤーは動作しますか?
はい、マルチプレイヤーは完全に機能します。ただし、ゲームが正しく同期するためには、ロビーにいるすべてのプレイヤーがまったく同じマップパックとフォルダ構造をインストールしている必要があります。
Q: すでにエクスポートしたマップを更新するにはどうすればよいですか?
Unityから同じ名前でバンドルを再エクスポートし、マップフォルダ内の古いファイルを置き換えて、ゲームを再起動します。シーン名が変更されていない限り、JSONを変更する必要はありません。