クリーチャーパックの作成
クリーチャーパックは、Game Modeで戦う相手となるクリーチャーのアートです。パックを選ぶと、パックにアートがある敵は、戦闘の盤面で丸いトークンの代わりにそのアートで描かれます。アートは敵が最後に移動した方向を向き、そのクリーチャー本来のサイズで描かれます。パックにアートがない敵はトークンのままです。実際のプレイでの見え方はTactical戦闘と地形を参照してください。
パックは1つのJSONファイル(.creatures.json)です。いちばん簡単な作り方は、PixelforgeのCreatures(クリーチャー)タブを使う方法です。Pixelforgeは、クリーチャーごとに1枚の画像からファイルを組み立てる外部のツールです。このガイドでは、別の方法でパックを作る方に向けて、ファイルそのものを説明します。
パックを使う
始める前に、.creatures.jsonファイルを作るか、ダウンロードしてください。Pixelforgeは作成用の別アプリで、Marinaraの一部ではありません。
- PixelforgeでCreatures(クリーチャー)タブを開きます。
- ファイルを読み込むには、Import a creature pack file(クリーチャーパックのファイルをインポート)を選びます。Pixelforgeで作ったパックの場合は、Save to the library(ライブラリーに保存)を選びます。
- Use for fights(戦闘に使う)を選びます。
すべての戦闘は1つのパックで描かれます。トークンに戻すには、選んだパックを外すか、Use tokens instead(代わりにトークンを使う)を選びます。
ファイル
{
"creaturePackVersion": 1,
"id": "my-monsters",
"name": "My monsters",
"version": 1,
"author": "Robin",
"tileSize": 48,
"sheets": [{ "id": "s1", "png": "data:image/png;base64,iVBORw0KGgo...", "width": 2048, "height": 1536 }],
"creatures": [
{
"id": "goblin",
"match": ["5e-2014/creatures/goblin", "Goblin"],
"size": "small",
"w": 1,
"h": 2,
"frames": 1,
"variants": [
{ "sheet": "s1", "x": 0, "y": 0 },
{ "sheet": "s1", "x": 1, "y": 0 }
]
}
]
}| フィールド | 内容 |
creaturePackVersion | 1です。飛行用アートを含むパックでは2です(Capability API 1.352)。 |
id | 小文字の英字、数字、_、-で構成します。インポートしたパックは、ライブラリーにlocal/<id>として登録されます。 |
name, author | ライブラリーに表示されます。authorは任意です。 |
version | 整数です。一度使ったバージョンが書き換えられることはありません。パックを変更するときは、バージョンを上げてください。同じファイルをもう一度インポートしても何も変わりません。 |
tileSize | 1セルの大きさ(ピクセル)で、16から96までの16の倍数です。Game Modeのグリッドは48です。 |
sheets | 最大64枚の画像で、それぞれ1辺8192ピクセルまでです。 |
creatures | 最大2000体のクリーチャーです。 |
| ファイルサイズ | 最大32 MBです。 |
シート
シートのpngは、PNGのデータURLでなければなりません。data:image/png;base64,の後にbase64が続き、それ以外は何も含みません。別の場所にある画像へのリンクは拒否され、base64の後に何かが続くものも拒否されます。これにより、パックが表示できるのは常にそのパック自身の画像だけになります。widthとheightはPNGの実際のサイズと一致する必要があります。Engineは画像のヘッダーからサイズを読み取り、シートの記載と異なるパックを拒否します。
クリーチャー
| フィールド | 内容 |
id | パック内でのクリーチャーのIDです。一意である必要があります。 |
match | アートの対象で、1から16個の項目です。各項目はルールセットのクリーチャーか名前で、両方の種類を並べて書くこともできます。 |
size | tiny、small、medium、large、huge、gargantuanのいずれかです。見た目だけの設定で、どのユニットも1マスを占めることに変わりはありません。 |
w, h | 1フレームのサイズをセル数で表したもので、それぞれ1から6です。 |
frames | 静止したクリーチャーは1、歩くクリーチャーは3(踏み出し、直立、踏み出し)です。 |
variants | クリーチャーの見た目で、1から8個です。それぞれ、シート上でブロックが始まる位置をsheetと左上のセルx、yで指定します。 |
fly | 任意で、creaturePackVersion 2が必要です。飛行用ブロックを、歩行用ブロックと同じ配置(横に3フレーム、縦に4方向)で、variantsと同じ方法で指定します。すべての見た目で共用する1つか、見た目ごとに同じ順で1つずつ指定します。 |
飛行
flyを持つクリーチャーは、戦闘で空中にいると表示される間、飛行用ブロックのフレームを0、1、2、1の順で再生して描かれます。空中にいると表示されるのは、次のいずれかに当てはまる場合です。
- 飛行速度があり、歩行速度がない
- ホバリングしている
- 地面より上の位置にいる
- このターンに飛行した(水の上など、飛行でしか通れないマスへの移動)
それ以外の場合は、従来どおりの見た目で描かれます。
クリーチャーパックに飛行用アートを含むExperienceのマップパックには、Capability API 1.352が必要です。
matchで指定するもの
- ルールセットのクリーチャー:
<catalog>/<entry>(例:creatures/goblin)は、どのルールセットでもその図鑑の項目に一致します。<ruleset>/<catalog>/<entry>(例:5e-2014/creatures/goblin)は、そのルールセットの中でだけ一致します。 - 名前: 敵の名前で一致します。大文字と小文字の違い、句読点、末尾の数字は無視されるので、「Goblin 2」もゴブリンとして扱われます。
ルールセットの図鑑から出てきた戦闘参加者は、まず図鑑の項目で、次に名前で照合されます。2体のクリーチャーが同じ対象に一致する場合は、パック内で先に書かれたほうが優先されます。Engineはパックのインポート時にこのことを通知します。
サイズ
フレームはセル単位で数えます。クリーチャーはマスの下端に立ち、左右の中央に描かれるので、大きなクリーチャーは周りのマスにまたがって立ちます。48ピクセルのグリッドでは、次のサイズが自然に見えます。
| クリーチャー | フレーム(w×h) |
| 超小型、または小型か中型の四足のクリーチャー | 1×1 |
| 小型か中型で、直立するもの | 1×2 |
| 大型 | 2×2。直立するもの(オーガ、ゴーレムなど)は2×3 |
| 超大型 | 3×3。直立するもの(巨人など)は3×4 |
| 巨大 | 4×4 |
ブロック: 行とフレーム
各見た目は、シート上の1つのブロックです。ブロックは横にframes個のフレーム、縦に4行で構成され、各フレームはw×hセルです。各行は向きを表し、次の順に並びます。
- 下(見る人の方向)
- 左
- 右
- 上(背後から見た姿)
静止したクリーチャー(frames: 1)は、4つの向きを1列に並べたものです。歩くクリーチャー(frames: 3)は、一般的な歩行スプライトシートと同じく、各行に踏み出し、直立、踏み出しを並べます。どのブロックもシートの内側に完全に収まっている必要があります。Engineは端からはみ出すブロックを名指しで示します。
見た目
複数の見た目(服、色、武器の違いなど)を持つクリーチャーは、戦闘参加者それぞれにそのうち1つを割り当てます。戦闘参加者は描かれるたびに同じ見た目を保ち、同じ戦闘にいる2体のゴブリンが違う見た目になることもあります。1体のクリーチャーの見た目はすべて同じサイズです。
PixelforgeのCreatures(クリーチャー)タブでは、クリーチャーの横にあるAdd looks(見た目を追加)で、最初の見た目と同じサイズの画像を追加できます。合計8つまでです。