マガジン

「セーブはどこに保存されていますか」:端末とクラウドの違い

遊びを見つける

執筆にClaudeを使用しています。

机上の二つの端末の間に、小さなゲームの駒と記録カードが並ぶイラスト。
記事のテーマをもとに制作したAI生成イメージ。実際のゲーム画面ではありません。

結論から答えます。アソバースでの保存先は、大きく3つに分かれます。1つ目は「画面を開いている間だけ残る記録」、2つ目は「その端末の中に残る履歴や進行」、3つ目は「ログインしたときに使えるクラウドセーブ」です。別の端末で続きを遊べるのは、3つ目だけです。しかも、ログインしていて、さらに作品がクラウドセーブに対応しているときに限ります。 ゲストで遊んで端末内に残った進行は、別の端末には移りません。ログインしても、自動では混ざりません。公式13作品のうち、保存があるのは「余白の庭」「WAVE / WAVE」「かたちのあいだ」の3作品です。残る10作品の記録や録音は、画面を開いている間だけ残ります。 この記事では、3つの保存先の違い、別の端末で続きを遊ぶ条件、ゲストからログインに移るときの注意を順に整理します。最後に、自分の環境で保存先を確かめる手順も用意しました。各作品の保存がどの仕組みで動くかは、確認済みの案内に書かれていないため、作品を開いて確かめる方法を示します。

この記事の目次
  1. Q1. 保存先は何種類ありますか
  2. Q2. 別の端末で続きを遊ぶには、何が必要ですか
  3. Q3. ゲストで遊んだあとにログインすると、進行は引き継がれますか
  4. Q4. 自分の環境で保存先を確かめるには、どうすればよいですか
  5. Q5. 作る人が気をつけることは何ですか
  6. Q6. 保存したデータは、どうなりますか
  7. 次の行動

Q1. 保存先は何種類ありますか

確認できている範囲では、次の3種類に分けて考えると整理しやすくなります。

  • 画面を開いている間だけ、残る範囲:画面を閉じるまで、別の端末で続けられるか:続けられません
  • 端末内(ゲストの履歴・進行など)、残る範囲:その端末の中、別の端末で続けられるか:続けられません
  • クラウドセーブ(ログイン中・対応作品)、残る範囲:アカウントに紐づく、別の端末で続けられるか:ログインすれば続けられます

1つ目の例は、公式10作品の記録や録音です。たとえば「雨音のピアノ」の録音は、画面を開いている間だけ残ります。「こだまの森」や「小さな軌道」の最高記録、「月夜の配達」の各夜の最少区間数も同じ扱いです。再読み込みや閉じる操作のあとに残る前提では遊べません。

2つ目は、ログインしないで遊んだときの履歴や進行です。ログインなしでも遊べますが、その履歴と進行は端末内に保存されます。端末の中に残る性質上、別の端末とは共有されません。

3つ目は、ログイン中に使えるクラウドセーブです。ログイン中は、クラウドセーブ、作品ごとのプレイ履歴、あとで遊ぶ、好きな作品、作者のフォローが使えます。

Q2. 別の端末で続きを遊ぶには、何が必要ですか

条件は3つあります。

  1. 同じアカウントでログインしていること
  2. その作品がクラウドセーブに対応していること
  3. 元の端末の進行が、クラウドへ送られていること

2つ目の条件は、作品の作り方で決まります。アップロードした作品には、SDK(作品とアソバースをつなぐ部品)が自動で追加されます。公開済みURLで投稿された作品では、作者がSDKを読み込んだときに、作品専用のプレイヤーIDとクラウドセーブが使えます。読み込まれていない作品は、ログインしていてもクラウドセーブを持ちません。

クラウドセーブの容量は、作品ごとにJSONで128KiBまでです。JSONは、数値や文字列を決まった書式で並べたデータ形式のことです。

3つ目の条件には、安全側の仕組みがあります。未同期の端末セーブは、クラウド上の古いデータより優先して再送されます。送れていなかった手元の進行が、古いクラウドのデータで上書きされにくい設計と読み取れます。ただし、再送が起きるタイミングや画面上の見え方は、確認済みの案内にありません。この部分は、作品を実際に開いて確かめる項目です。

Q3. ゲストで遊んだあとにログインすると、進行は引き継がれますか

自動では引き継がれません。ゲストの履歴と進行は端末内に保存され、ログイン後のアカウントへは自動で混ざらないと案内されています。

次の場面を考えてみます。スマートフォンのゲストのままで、ある作品をだいぶ進めたとします。あとから「パソコンでも続けたい」と思ってログインしたとします。このとき、スマートフォンの端末内にある進行が、そのままアカウントの履歴になるとは限りません。ログイン後の画面で、前の進行が見えるかどうかを確かめる必要があります。

そこで、続きを遊びたい作品が決まっているなら、進める前にログインしておくのが確実です。すでにゲストで進めてしまった場合は、元の端末で作品を開き、進行が見えるかを確かめてから別の端末へ移ります。引き継ぎの具体的な方法が案内されているかは、現在の案内で確認してください。

Q4. 自分の環境で保存先を確かめるには、どうすればよいですか

作品ごとに保存の仕組みが違うため、次の手順で自分の端末とアカウントで確かめます。実験の設計書として使える形にしました。

準備するもの

  • 確かめたい作品(保存のある「余白の庭」「WAVE / WAVE」「かたちのあいだ」の3作品が試しやすいです)
  • 端末2台(パソコンとスマートフォンなど)。1台しかない場合は、別のブラウザで代用できます
  • アカウント(GoogleまたはメールアドレスでOKです)
  • メモ用の表

手順

  1. 端末Aでログインしないまま作品を開き、見分けやすい変更を加えます。庭なら木を1本置く、パズルなら数手進める、といった変更です。
  2. 画面を閉じ、同じ端末Aで作品を開き直します。変更が残っているかを記録します。
  3. 端末Aでログインし、同じ作品を開きます。ゲストのときの変更が見えるかを記録します。
  4. ログインした状態で、もう一つ別の変更を加えます。
  5. 端末Bで同じアカウントにログインし、同じ作品を開きます。手順4の変更が見えるか、手順1の変更が見えるかを、それぞれ記録します。

記録は、作品ごとに「ログイン状態」「操作」「端末」「見えたか(はい/いいえ/判断できない)」の4列で十分です。各条件は1回ずつで構いませんが、迷う結果が出た場合は、時間をおいてもう1回確かめます。

結果の読み方

  • 手順2で残らなければ、その作品の記録は画面を開いている間だけの可能性があります。公式10作品のように、そもそも保存のない作品かもしれません。
  • 手順2で残り、手順5で端末Bに出なければ、端末内の保存と考えられます。
  • 手順5で手順4の変更が出れば、クラウド側に送られていると考えられます。
  • 手順3で手順1の変更が見えなければ、ゲストの進行はアカウントに混ざっていないことになります。Q3の案内と合っているかを照らして読みます。

起こりやすい誤り

  • 画面を開いたままで確かめてしまうと、保存と関係なく見えているだけの可能性があります。必ず一度閉じてから開き直します。
  • 端末Bで見えない原因が、保存先の違いとは限りません。ログインのし忘れ、別のアカウントでのログイン、通信の状況も確認します。
  • ブラウザには、閲覧データを消す設定やプライベートな閲覧モードがあります。これらが有効だと、端末内の保存が残りにくくなる場合があります。切り分けるには、通常の設定で試します。
  • 保存の表示は作品ごとに異なります。画面に「保存しました」と出ない作品でも、保存されている可能性があります。逆も同じです。確かめるのは表示ではなく、開き直したときの状態です。

Q5. 作る人が気をつけることは何ですか

作品を投稿する人は、保存を3つの点で整理しておくと安心です。

1. localStorage/sessionStorageに頼らない。 アップロードした作品の中では、これらは一時メモリーとして働く互換処理です。ブラウザに永続的に保存される仕組みとは考えず、続きを遊んでほしいデータはクラウドセーブ側で扱います。

2. 公開方法でSDKの扱いが変わる。 アップロードならSDKが自動で追加されます。URL投稿なら、作者がSDKを読み込むことが条件です。

3. 保存するデータを小さく作る。 上限は作品ごとにJSONで128KiBです。進行状況、最高記録、設定のように必要な値だけを持たせると収まりやすくなります。サイズは次のようなコードで見積もれます。

html
<script>
const save = {
  stage: 3,
  best: [12, 9, 15],
  items: ["lamp", "key"]
};
const bytes = new TextEncoder().encode(JSON.stringify(save)).length;
const limit = 128 * 1024;
console.log(bytes + " / " + limit + " バイト");
console.log(bytes <= limit ? "収まっています" : "超えています");
</script>

このコードは、保存したい内容をJSON文字列にしてバイト数を数えます。上限の数え方がこの方法と完全に一致するかは、現在の案内で確認してください。上限ぎりぎりの設計は避け、余裕を持たせます。

また、ゲームにはFirebaseのUID、認証トークン、メールアドレスを渡してはいけません。作品ごとには専用のプレイヤーIDが用意されます。保存データにも、個人を特定する値を入れない設計にします。

Q6. 保存したデータは、どうなりますか

退会すると、アップロードファイル、履歴・セーブを含む個人データ、認証アカウントが削除されます。クラウドセーブも、個人データの一部として消える前提で考えます。続きを遊ぶ予定がなくなってから退会するか、必要な記録を別に控えてから手続きするのが安全です。

反対に、ゲストのままで端末内に残っているものは、退会の対象に含まれません。端末を手放すときは、ブラウザの保存データを消す手段を、端末やブラウザの説明で確認してください。

次の行動

まず、続きを遊びたい作品を1つ選び、Q4の手順を端末2台(またはブラウザ2種類)で一度通してみてください。表の「見えたか」の列が埋まれば、その作品の保存先が自分の環境でわかります。保存先が確認できない作品や、引き継ぎの具体的な方法については、現在の案内で確認してください。