マガジン

名前を決めずに作り始めたら、どの作業で手が止まるか:仮の名前の効果を確かめる実験設計

遊びをつくる

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

試作の段ボールから入口やゴールを備えた完成形へつながるゲーム模型の写真風イメージ。
記事のテーマをもとに制作したAI生成イラスト。

ゲームのアイデアが浮かび、名前は後で考えることにして、とりあえず空のフォルダに index.html を作る場面を考えてみます。最初の数時間は何も困りません。ところが、フォルダ名を付けるとき、画面に見出しを出すとき、保存用のキーを決めるとき、投稿の入力欄に向き合うときに、「これは何というゲームか」という問いが戻ってきます。 名前は最後に決めればよい作業なのか、それとも途中のあちこちで作業を止める要因なのか。これは感覚で語られやすい話題ですが、自分の制作で確かめることができます。この記事は結果を示すものではなく、確かめるための設計書です。「名前がない状態で、どの作業が止まるか」と「仮の名前を置くと何が変わるか」を、記録を取りながら観察する手順をまとめます。

この記事の目次
  1. 問いを3つに分けて立てる
  2. 準備するもの
  3. 手順:作業を区切って「止まった瞬間」を記録する
  4. 記録の取り方と結果の読み方
  5. 起こりやすい誤り
  6. 次の行動

問いを3つに分けて立てる

「名前がないと困るか」という問いは広すぎるため、次の3つに分けます。

  1. 名前がない状態で、手が止まる作業はどこか(場所の問い)
  2. 止まるのは制作の序盤か、終盤か(時期の問い)
  3. 仮の名前を置くと、止まる回数や時間は減るか。減った代わりに、後から直す手間は増えるか(効果の問い)

仮説も先に書いておきます。たとえば「ファイル名やフォルダ名では止まらないが、画面のタイトル表示と投稿時の紹介文で止まる」といった予想です。外れてもかまいません。事前に書いておくと、結果を見たあとで都合よく解釈することを防げます。

比べる条件は2つです。

  • 条件A「名前なし」:作品名を一切決めない。画面の見出しは「無題」とし、フォルダ名は日付だけにします。
  • 条件B「仮の名前」:開始前に、深く考えずにコードネームを1つ決める。意味が薄く、公開名にしにくい単語がおすすめです(例:果物の名前や地名)。

準備するもの

  • 小さなゲームのお題を2つ。難しさと規模がほぼ同じものを選びます。たとえば「3×3の盤面で遊ぶ簡単なパズル」と「タイミングで止めるだけの反射ゲーム」のように、完成まで数時間で届く規模にします。
  • 時間を測るタイマー(スマホのストップウォッチで足ります)。
  • 記録用の表。紙でも表計算ソフトでもかまいません。
  • テキストエディタと、フォルダ全体を検索できる機能。
  • 作業の区切りを決めたチェックリスト(次節)。

同じ人が両方の条件を行うと、2回目は慣れで有利になります。そこで、お題Aを条件A、お題Bを条件Bで作る回と、割り当てを入れ替える回を作り、合計2〜4回行うのがおすすめです。1回だけでは、お題の違いと条件の違いが区別できません。

手順:作業を区切って「止まった瞬間」を記録する

作業のチェックリスト

制作を次の作業に区切ります。どれも多くのブラウザゲームで必ず出てくる作業です。

  1. フォルダ・ファイルを作る
  2. 画面にタイトルを表示する
  3. ゲームの本体(操作・判定)を作る
  4. 記録(ベストスコアなど)の保存処理を書く
  5. カバー画像や見た目の方向性を決める
  6. 紹介文と遊び方を書く
  7. 公開の準備をする(入力欄を埋め、表示を確認する)

アソバースでは、作品の投稿は「入力→表示の確認→公開」の3段階で進み、公開前に下書き保存もできます。作品名の入力欄の扱いや必須かどうかは投稿画面を開いて確かめてください。実験の7番では、実際に投稿画面の手前までは進めて、そこで何を求められるかを記録に残します。

名前が出てくる場所に印を付ける

名前は、画面に出る文字だけでなく、内部の識別子としても使われます。次のコードは、表示名と内部IDを分けて一か所にまとめた最小構成です。条件Bで使うと、後で本名に置き換える場所が一つで済みます。

html
<!doctype html>
<html lang="ja">
<head>
  <meta charset="utf-8">
  <title>仮: kamome</title>
</head>
<body>
<h1 id="h"></h1>
<p id="best"></p>
<button id="b">+1</button>
<script>
// 名前に関わる値はここだけに集める
const GAME = {
  displayName: "仮: kamome", // 画面に出す名前(後で変える)
  saveId: "game-0001"        // 内部ID(名前が変わっても変えない)
};
document.title = GAME.displayName;
document.getElementById("h").textContent = GAME.displayName;

let n = 0;
const key = GAME.saveId + ":best";
const best = document.getElementById("best");
function show() { best.textContent = "ベスト: " + (Number(localStorage.getItem(key)) || 0); }
document.getElementById("b").onclick = () => {
  n++;
  if (n > (Number(localStorage.getItem(key)) || 0)) localStorage.setItem(key, n);
  show();
};
show();
</script>
</body>
</html>

保存キーに作品名を使うと、名前を変えた瞬間に古い保存が読めなくなります。そのため表示名と内部IDを分けています。なお、アソバースにアップロードした作品内の localStorage は一時メモリー向けの互換処理で、永続的な保存を前提にするものではありません。作品ごとのクラウドセーブ(JSONで128KiBまで)はSDKを通じて使う仕組みです。実験では、保存キーの名前をどう決めたかも観察項目の一つにします。

記録の取り方と結果の読み方

何を、どの単位で記録するか

手が止まったと気づいたら、その場で次の4項目を1行で書きます。

  • 作業番号(チェックリストの1〜7)
  • 止まった分数(タイマーで測る。5分未満の迷いは「小」とだけ書いてもかまいません)
  • 止まった理由のタグ
  • 名前が理由か、ほかの理由か(自分で判断して○か×)

理由のタグは、事前に次のように用意しておくと迷いません。

  • 名前そのもの、意味:名前が決まらず、先に進めない
  • 文字組み、意味:名前がないとタイトルの見せ方を決められない
  • 識別子、意味:フォルダ名・保存キー・変数名に使う語が決まらない
  • 説明、意味:紹介文や人への説明で名指しできない
  • 無関係、意味:名前と関係のない詰まり(実装上の問題など)

加えて、各回の終わりに次の3つを数えます。

  • 止まった回数の合計と、「名前が理由」の回数
  • 止まった分数の合計
  • 条件Bのみ:仮の名前を本名に置き換えるとき、フォルダ全体を検索して見つかった箇所の数と、置換後に見つけた置換漏れの数

結果の読み方

数字が揃ったら、次の基準で読みます。これは結果の例ではなく、判断の枠組みです。

  • 名前が理由の停止が後半(5〜7番)に集中し、前半にほぼない場合:名前は後で決めても制作を止めない可能性が高いといえます。決める時期は、紹介文を書く前までが目安になります。
  • 前半の2番(タイトル表示)や4番(保存)で名前による停止が目立つ場合:作り始めの時点で、少なくとも仮の名前や内部IDを置く価値があります。
  • 条件Bで名前による停止が減り、置換の手間が小さい場合:仮の名前は低コストの対策として機能しています。
  • 条件Bで停止は減ったが置換漏れが多い場合:仮の名前は止まりにくくする代わりに、公開物へ残るリスクを生んでいます。表示名と内部IDの分離を徹底する理由になります。
  • 条件Aでも条件Bでも差が小さい場合:この規模のゲームでは、名前の有無が制作の進み方を左右しにくいと読めます。お題を大きくして再確認する余地があります。

「文字組み」のタグが多い回は、見た目の方向性が名前に引っ張られていることを示します。公式作品ではタイトルの文字組みが作品ごとに異なり(縦組みの明朝、手描き文字、郵便ラベルなど)、名前と見た目がセットで設計されているように見えます。作品を開いて、名前と雰囲気の結び付き方を見比べると参考になります。

起こりやすい誤り

  • 名前以外の停止を混ぜてしまう:実装で詰まった時間を名前のせいにすると、名前の影響が過大に見えます。止まった瞬間に「名前を決めれば解決するか」を自問し、そうでなければ「無関係」と記録します。
  • 2回目が有利になる:慣れの影響を消すため、お題と条件の組み合わせを入れ替えます。
  • 測ること自体が行動を変える:タイマーを意識して、止まる前に名前を決めてしまうことがあります。止まったと自覚したときだけ測り、「測るために急いで決めた」と感じたらメモに残します。
  • 仮の名前に愛着が付く:コードネームがそのまま公開名になることは悪くありませんが、実験としては「仮のまま残った」と記録します。公開前に、title 要素、見出し、紹介文、カバー画像の文字を検索して確認します。
  • 内部IDまで変えてしまう:名前を変えたついでに保存キーも変えると、それまでの保存が読めなくなります。表示名だけを変える練習も、置換の手順に含めます。
  • 1回の結果で結論を出す:作品の種類や規模が違えば、停止する場所も変わります。2〜4回の傾向で判断し、断定は避けます。

次の行動

まず、規模の近いお題を2つ決め、チェックリストの7項目と理由タグを紙に書き出してください。1回目は条件A(名前なし)で作り、止まった瞬間だけを記録します。2回目は条件B(仮の名前)で、表示名と内部IDを分けて作り、最後にフォルダ全体を検索して置換漏れを数えてみてください。