デイリーマップと部屋モジュール
マップは職人が1枚ずつ作っているのではなく、50個の部屋の組み合わせで毎日作り直されています。
01毎日変わる仕組み
配信ページは「new maps each day(毎日新しいマップ)」と明記しています。ビルド側では、Firebase Storage のバケット cg-swingmultiplayer.firebasestorage.app から map.json を取得する作りになっていました。つまり地形データはゲーム本体に固定されておらず、日付ごとにサーバーから降ってきます。
そのため、前日のマップを暗記しても翌日には役に立ちません。覚えるべきは地形ではなく、ロープの使い方のほうです。
0250個の部屋モジュール
ビルドには _rooms という 6000×2000 のレイアウトがあり、room000 から room049 まで50枚のレイヤーが入っています。イベントシート名は ex_Generator で、ここで部屋を選んで繋げているとみられます。
「部屋を選んで繋ぐ」方式なので、同じ部屋が別の日に別の位置で出てくることもあります。見覚えのある区画が出てきたら、その区画だけは先に動きを思い出せます。
- 区画の数は50。1日ですべてを使うとは限らない
- レイアウトが 6000×2000 なので、1枚のマップは横長に組み上がる
- 生成用のイベントシート(ex_Generator)が分かれている=地形は実行時に組まれる
03レイアウト一覧
ビルドのレイアウトは6種類だけです。本編・タイトル・チュートリアル・起動画面と、部屋の置き場・ショップ見本の2つに分かれます。本編が 1080×1080 の正方形なのは、横長の部屋をカメラで追いかける前提だからです。
| 名前 | サイズ | イベントシート | 用途 |
|---|---|---|---|
| splash | 1080×1080 | ev_splash | 起動画面 |
| title | 1080×1080 | ev_title | タイトル(SHOP / LEADERBOARD / private の各レイヤー入り) |
| tutorial | 1080×1080 | ev_tutorial | 操作チュートリアル |
| game | 1080×1080 | ev_game | 本編の 16 レイヤー |
| _rooms | 6000×2000 | ex_Generator | room000〜room049 の部屋モジュール置き場 |
| _rep | 1080×1080 | なし | ショップ見本の保管用 |