※このページや、カーゴシップ追加のために扱う設定ファイルはカーゴシップや探索要素のネタバレを含みます。 |
カーゴシップ(Cargo Shipsオプションがオンのときに登場するNPC船)を追加するMODの作り方についての解説ページです。
解説
MODのフォルダを作成し、必要なファイルを入れる
- 新規作成と投稿も参照してください。
下記に示すように、このゲームのMODフォルダの中に任意の名前でMODのフォルダ(以下、自作MOD)を作ります。
C:\Users\ユーザーアカウント名\AppData\Roaming\SpaceEngineers\Mods\自作MOD |
設定ファイルや船のファイルを置く場所として、MODのフォルダの直下にDataフォルダを作り、Prefabsフォルダを作ります。
(略)\自作MOD\Data\Prefabs |
Fake.ddsファイルを入れる場所として、MODフォルダの直下からTexturesフォルダを作り、その中にGUI、さらにその中にIconsフォルダを作ります。
(略)\自作MOD\Textures\GUI\Icons |
今回の自作MODフォルダ以下の構成は下記のようになります。
- Data
- Prefabs
- Textures
- GUI
- Icons
- GUI
船のsbcファイル
ゲーム内からエクスポートした、同梱したい船の「船名.sbc」ファイルを先ほど用意したPrefabsフォルダに置きます。
- ※エクスポート方法はリスポーンシップの追加を参照
Fake.dds
下記の場所からFake.ddsをコピーし、先ほどのIconsフォルダに置きます。
C:\Program Files (x86)\Steam\SteamApps\common\SpaceEngineers\Content\Textures\GUI\Icons |
スポーン設定ファイルの準備
本来のカーゴシップなどを設定しているファイルのコピーを改造元として用意します。
ファイルは以下の場所にある、「SpawnGroups.sbc」です。
C:\Program Files (x86)\Steam\SteamApps\common\SpaceEngineers\Content\Data |
このSpawnGroups.sbcファイルを自作MODのDataフォルダにコピーします。
スポーン設定ファイルの編集
自作MODのDataフォルダに置いたコピーの「SpawnGroups.sbc」をメモ帳などのテキストエディタで開き、編集を行います。
<SpawnGroup>から</SpawnGroup>の間が、1回のスポーンで出現するもののセットです(※<SpawnGroups>との混同に注意)。
SpawnGroups.sbcにはカーゴシップや探索要素がまとめて入っているので、カーゴシップの場合は「Military1」など既存カーゴシップのスポーングループを1つコピー元として残して他のスポーングループを削除し、下記で示す部分を編集します。
<SpawnGroups> <SpawnGroup> <Id> <TypeId>SpawnGroupDefinition</TypeId> <SubtypeId>★この出現グループのサブタイプID★</SubtypeId> </Id> <Icon>Textures\GUI\Icons\Fake.dds</Icon> <Frequency>★出現頻度★</Frequency> <Prefabs> <Prefab SubtypeId="★プレハブのサブタイプID★"> <Position> <X>0.0</X> <Y>0.0</Y> <Z>0.0</Z> </Position> <BeaconText>★ビーコン表示名(任意)★</BeaconText> <Speed>★初速★</Speed> </Prefab> </Prefabs> </SpawnGroup> </SpawnGroups>
- SubtypeId(サブタイプID)
- <Id>内の<SpawnGroup>のサブタイプIDは、SpawnGroups.sbc内で各SpawnGroupを識別するための名前です。任意の名前を使用できますが、他のSpawnGroupと被らない一意な名前である必要があります。
- Frequency(頻度)
- 出現頻度です。高いほうが出現しやすく、バニラのカーゴシップなら各タイプ3種の小さいものから順に4.0、2.0、1.0です。
- Prefab SubtypeId(プレハブのサブタイプID)
- 出現させるプレハブ、つまりカーゴシップMODなら船を指定します。船のサブタイプIDは「船名.sbc」ファイルの下記の部分を確認してください。(基本的にはファイル名から拡張子を抜いたもの?)
<?xml version="1.0"?> <Definitions xmlns:xsd="略"> <Prefabs> <Prefab xsi:type="MyObjectBuilder_PrefabDefinition"> <Id Type="MyObjectBuilder_PrefabDefinition" Subtype="★船のサブタイプID★" /> <CubeGrids>
- BeaconText(ビーコンのテキスト)
- 船のsbcファイルに設定された内容に関係なくBeaconの名前を変更することができます。
- Speed(速度)
- 出現時の移動速度(m/s)です。バニラのカーゴシップなら各タイプ3種の小さい船から順に25.0、17.0、10.0です。
- SpawnGroups.sbcファイルの中で、<SpawnGroups>から<SpawnGroups>の間に必要なだけ<SpawnGroup>を並べることで、複数種類の物を1つのMODとして同梱できます。
- 例えばバニラ3系列以外に1シリーズ3隻まとめて追加するであるとか、バニラ3系列と同シリーズ風の物をそれぞれ1つずつ追加するといったことができます。
- 1つの<SpawnGroup>内で<Prefabs>から</Prefabs>を複数並べると、編隊・船団のように1回の出現で複数同時にスポーンします。
- Positionの3軸の数値を変更することで、出現位置に差をつけることができます。
- GPS座標と同じく1m単位?
- Positionの3軸の数値を変更することで、出現位置に差をつけることができます。
テスト・投稿
ローカルのMODはワールド設定でオンラインモードがOfflineのワールドにしか適用できません。
- カーゴシップの出現頻度が低いので、1隻追加してFrequencyを大幅に高くしてワールドを読み込み、出現や動作を確認したらワールドを閉じて予定の出現頻度に下げて1隻追加、と繰り返してテストしながら実装するのが比較的楽です。
- サムネイルの追加などは新規作成と投稿を参照してください。
- 投稿時のMOD CATEGORYはちょうど良いものがないので「Other」にしておけば良いでしょう。
未整理情報・未確認情報
- カーゴシップ、探索要素、海賊船、ドローンなどは「IsEncounter」、「IsPirate」、「ReactorsOn」、「BeaconText」の4項目があったり無かったりする
- 前3無しBeaconTextのみ有りのカーゴシップ設定をコピーしたものの場合、とりあえずカーゴシップと同様に出現し、同様に消滅した。
- Argentavisのようにドローンのスクリプトを入れて慣性航行しないようにするとどうなるかは不明
- Prefabs内以外にSpawnGroupにもSpeed項目を持っている船が存在する。どれも停止している探索要素なのでこれによる挙動は未確認
名称または分類 | IsEncounter | IsPirate | ReactorsOn | BeaconText | 備考 |
---|---|---|---|---|---|
カーゴシップ | なし | なし | なし | 有 | |
海賊など | |||||
Raiding Station Raiding Outpost mk1 | true | true | true | 有 | |
Argentavis | なし | なし | なし | 有 | |
Argentavis系ドローン カーゴシップ系ドローン | なし | true | なし | 有 | |
惑星 | |||||
惑星海賊ドローン | false | true | true | 有 | |
探索要素 | |||||
IMDC Cerberus Destroyer | true | true | true | 有 | |
IMDC_Vulture_Fighter_Bomber | なし | true | なし | 有 | |
Christine他いくつか | true | なし | なし | なし |
- カーゴシップ(Cargo ships)設定ONは「IsEncounterとIsPirateが両方ともtrueでない船を出現させる」?
- Argentavisも3項目全てなしという点では、出現条件のみカーゴシップ扱いのように見える。実際カーゴシップのみONでドローンや探索要素Offでも出現した。
- 探索要素(Random encounters)の船は基本的にIsEncounterがtrue
- 探索要素は「IsEncounterがtrueである船を配置」するのならIsEncounterをtrueにするだけで探索要素追加MODも作れるとおもいきや、IsEncounterが設定されていない船が存在する。これがデータのみで今は出現しないという状態の船なら辻褄は合うが未調査
- Raiding Stationなど固定宇宙基地は探索要素扱いで出現している?
- 探索要素Offだと出なかった。
- 探索要素のみOnでカーゴシップやドローンはOffでも出現した
- 惑星上の海賊基地は探索要素Offでも出現する(自然重力下のランダムエンカウントはないのである意味当然だが)
- ChristineがNobodyらしいということから、「IsPirateは探索要素を強制的に敵所有にする」設定かも知れない?
- カーゴシップはカーゴシップとして出現するときに自動で敵対設定にされる模様
- 探索要素をテストする方法のアイデア(未検証)
- タイマーがカウントダウン中の状態でエクスポートしてビーコンやアンテナを起動する
カーゴシップ設定関連
- Nobodyのままエクスポートした船でも自動的に敵対設定で出現した。
- ダンパーも自動でOffに設定される
- 方向は未検証。Mining Carriageから推定して、操縦席の方向か?
- 室内のInterior Turretを初見殺しにしたくないなら、キャラクター以外への攻撃も行うように設定すると、新規建造した小型船ブロックを体当たりで部屋に投入するような方法で発見して対処する余地を与えられる。
増援アンテナ
- 増援アンテナはカーゴシップのアンテナ名どおりにしておけばちゃんとドローンが(おそらく同じ候補から)湧く
船名 | アンテナ名 | 距離設定 | 内容 |
---|---|---|---|
Private Sail | EMERGENCY - REQUESTING ASSISTANCE | 191m | |
Business Shipment | EMERGENCY - REQUESTING ASSISTANCE | 311m | |
Commercial Freighter | EMERGENCY - REQUESTING ASSISTANCE | 396m | |
Mining Carriage | EMERGENCY - REQUESTING ASSISTANCE | 200m | |
Mining Transport | EMERGENCY - REQUESTING ASSISTANCE | 300m | |
Mining Hauler | Hostiles detected - Requesting Backup | 795m | |
Military Escort | Hostiles detected - Requesting Backup | 2000m | |
Military Minelayer | Hostiles detected - Requesting Backup | 2000m | |
Military Transporter | Hostiles detected - Requesting Backup | 882m | |
海賊系 | |||
外部資料
- SPACE ENGINEERS WIKI:How to Mod Exploration
- Steam ユーザーガイド:How to create new Cargo Ships
カーゴシップ追加MODの製作ガイド