
「実践3: アイテムの追加」の概要
■本項目では新たなアイテムの追加に挑戦。「じゃんげま」に登場する、えいむちゃんのベレー帽(髪の毛付き)を制作します。

■今回のModは“aimuchanberet”という名前で、構成は以下の様になっています。
Starbound\mods\aimuchanberet\
│
├─ items\
│ └ armors\
│ └ decorative\
│ └ hats\
│ └ aimuchanberet\
│ ├ aimuchanberet.head … アイテム定義ファイル
│ │
│ ├ Head.png … 画像1
│ │
│ ├ icons.png … 画像2(インベントリ用アイコン)
│ │
│ └ mask.png … 画像3(マスク用)
│
├─ recipes\
│ └ spinningwheel\
│ └ clothes\
│ └ aimuchanberet.recipe … クラフト用レシピ
│
├─ _metadata … ゲーム内のModリストで表示される情報を記載
│
├─ aimuchanberet.modinfo … Modの基本情報を記載
│
└─ player.config.patch … 新しいレシピを認識させるための情報を記載
│
├─ items\
│ └ armors\
│ └ decorative\
│ └ hats\
│ └ aimuchanberet\
│ ├ aimuchanberet.head … アイテム定義ファイル
│ │
│ ├ Head.png … 画像1
│ │
│ ├ icons.png … 画像2(インベントリ用アイコン)
│ │
│ └ mask.png … 画像3(マスク用)
│
├─ recipes\
│ └ spinningwheel\
│ └ clothes\
│ └ aimuchanberet.recipe … クラフト用レシピ
│
├─ _metadata … ゲーム内のModリストで表示される情報を記載
│
├─ aimuchanberet.modinfo … Modの基本情報を記載
│
└─ player.config.patch … 新しいレシピを認識させるための情報を記載
STEP1. 準備
■いきなりゼロからアイテムを作るのは難しいので、既存アイテムのデータを流用します。今回は作りたいアイテムと似ている既存アイテム“Sassy Beret”のデータを拝借。
■「制作に向けての準備」で展開したゲームデータの“Starbound\UnpackedAssets\armors\hats\beret\”内の4つのファイル(“beret.head”、“Head.png”、“icons.png”、“mask.png”)を、“Starbound\mods\aimuchanberet\items\armors\decorative\hats\aimuchanberet\”にコピーします。

“Sassy Beret”のデータ
■コピーしたファイルの中の“beret.head”は“aimuchanberet.head”にファイル名を変更しておきます。
STEP2. グラフィックの変更
■画像編集ソフトで3つの画像をそれぞれオリジナルのグラフィックに描き換えます。

■“Head.png”は通常のゲーム中、“icons.png”はインベントリで表示されるグラフィックです。“mask.png”は装着したキャラクターの髪の毛の表示部分を指定します。

黒い部分だけキャラクターの元の髪の毛が表示されます(今回は元の髪の毛は見えていません)
STEP2. アイテム定義データの書き換え
■STEP1.の準備で“beret.head”から“aimuchanberet.head”に名前を変更したファイルの中身を一部書き換えます(太字が変更箇所)。
aimuchanberet.head
{
"itemName" : "aimuchanberet",
"price" : 5000,
"inventoryIcon" : "icons.png:head",
"maxStack" : 1,
"rarity" : "Legendary",
"category" : "headwear",
"description" : "Aimu chan beret",
"shortdescription" : "Aimu beret",
"tooltipKind" : "armor",
"maleFrames" : "head.png",
"femaleFrames" : "head.png",
"mask" : "mask.png",
"colorOptions" : [
// BLUE
{ "ffca8a" : "96cbe7", "e0975c" : "5588d4", "a85636" : "344495", "6f2919" : "1a1c51" },
// BLACK
{ "ffca8a" : "838383", "e0975c" : "555555", "a85636" : "383838", "6f2919" : "151515" },
// GREY
{ "ffca8a" : "b5b5b5", "e0975c" : "808080", "a85636" : "555555", "6f2919" : "303030" },
// WHITE
{ "ffca8a" : "e6e6e6", "e0975c" : "b6b6b6", "a85636" : "7b7b7b", "6f2919" : "373737" },
// RED
{ "ffca8a" : "f4988c", "e0975c" : "d93a3a", "a85636" : "932625", "6f2919" : "601119" },
// ORANGE
{ "ffca8a" : "ffd495", "e0975c" : "ea9931", "a85636" : "af4e00", "6f2919" : "6e2900" },
// YELLOW
{ "ffca8a" : "ffffa7", "e0975c" : "e2c344", "a85636" : "a46e06", "6f2919" : "642f00" },
// GREEN
{ "ffca8a" : "b2e89d", "e0975c" : "51bd3b", "a85636" : "247824", "6f2919" : "144216" },
// BLUE
{ "ffca8a" : "96cbe7", "e0975c" : "5588d4", "a85636" : "344495", "6f2919" : "1a1c51" },
// PURPLE
{ "ffca8a" : "d29ce7", "e0975c" : "a451c4", "a85636" : "6a2284", "6f2919" : "320c40" },
// PINK
{ "ffca8a" : "eab3db", "e0975c" : "d35eae", "a85636" : "97276d", "6f2919" : "59163f" },
// BROWN
{ "ffca8a" : "ccae7c", "e0975c" : "a47844", "a85636" : "754c23", "6f2919" : "472b13" }
]
}
■“itemName”はゲームがデータを管理するための名前、“description”はアイテムの説明文、“shortdescription”はアイテムの表示名です。
STEP3. レシピデータの作成
■ゲーム内の“Spinning Wheel”(クラフティングステーションの1つ)でアイテムがクラフトできるようにレシピデータを作成します。

“Spinning Wheel”
■“Starbound\mods\aimuchanberet\recipes\spinningwheel\clothes\”フォルダに“aimuchanberet.recipe”を作成し、以下の内容を書き込みます。
aimuchanberet.recipe
{
"input" : [
{ "item" : "fabric", "count" : 2 },
{ "item" : "cottonwool", "count" : 1 }
],
"duration" : 2,
"output" : { "item" : "aimuchanberet", "count" : 1 },
"groups" : [ "craftingwheel", "clothes" ]
}
■“input”内の“item”はクラフトに使用する素材と必要な数です。今回はWoven Fabric x 2、Cotton Wool x 1という設定にしました。
■“duration”はクラフトに要する時間(秒)、“output”は出力アイテムと数、“groups”はレシピの分類です。“groups”の他の分類は既存のレシピファイルを参考にすると良いでしょう。
STEP4. レシピデータの登録用ファイル作成
■ゲームがレシピデータを認識するためのファイルを作成します。
■“Starbound\mods\aimuchanberet\”フォルダに“player.config.patch”を作成し、以下の内容を書き込みます。
player.config.patch
[
{
"value": { "item" : "aimuchanberet" },
"op": "add",
"path": "\/defaultBlueprints/tier1/0"
}
]
STEP5. “.modinfo”と“_metadata”の作成
■“.modinfo”と“_metadata”を作成します。
spashield02.modinfo
{
"name" : "aimuchanberet",
"path" : ".",
"dependencies" : [],
"metadata" : {
"author" : "Supa Kun",
"version" : "0.0",
"description" : "Aimu chan beret and hair"
}
}
_metadata
{
"name" : "aimuchanberet",
"friendlyName" : "Aimu chan beret",
"version" : "0.0",
"link" : "",
"description" : "Aimu chan beret and hair",
"author" : "Supa Kun"
}
STEP6. 動作確認
■各ファイルが準備できたら動作確認。“Spinning Wheel”からクラフトしてみましょう。

Spinning Wheelでのクラフト

完成!

「実践4: Steam Workshopへの投稿」の概要
■Modが完成したら、せっかくなのでSteam Workshopに投稿しましょう。『Starbound』では専用ツール「Mod Uploader Tool」が用意されているので簡単に投稿できます。
STEP1. 「Mod Uploader Tool」でのアップロード
■Steamから『Starbound』を起動すると、プレイする以外の選択肢がいくつかあるので、その中から“Launch Mod Uploader Tool”を選択して“プレイ”ボタンを押します。

■起動したら“Select Mod Directory”ボタンを押して、アップロードしたいModのフォルダを選択します。例えば今回制作した、えいむちゃんのベレー帽をアップロードしたい場合は“Starbound\mods\aimuchanberet\”フォルダを選択。
■名前や説明文などは“_metadata”ファイルから自動で読み込まれます。このツールで編集することもできます。
■あとはプレビュー画像を設定し、一番下の“Uplaod to Steam”ボタンを押すとSteam Workshopにアップロードされます。

STEP2. Steam Workshopでの編集
■アップロードが完了すると“Mod ID”が割り振られます。「Mod Uploader Tool」で“Mod ID”のリンクをクリックするとSteam Workshopのページに飛ぶので、タイトルや説明文の調整、追加の画像や動画の登録など細かい設定を行います。

■アップロード後はデフォルトで公開設定が“非公開”となっているので、必要に応じて“公開”あるいは“フレンドのみ”に変更してください。

いかがでしたでしょうか? 筆者自身『Starbound』のModを制作するのは初挑戦なので説明が至らない点もあるかもしれませんが、これを機に皆様がMod制作に興味を持って頂けると幸いです。「ゲームを1から作ることはできないけど、何かを表現したい」という方は、是非Mod制作に挑戦してみて下さい。公式WikiにはModに関する情報が掲載されているので、そちらも要チェックです。
※コメントを投稿する際は「利用規約」を必ずご確認ください