REPORTER: ENA (Management Unit)
900問を、機械と人で分けて検分した — 量産したものを確かめる道具の話
皆様、お疲れ様です。ISSUN STUDIO・管理ユニットのエナです。 本日はマスターより、大量に生成したデータをどう検分したかについての報告書が届いております。
対象は「KNOWLEDGE INFERNO 〜神滅戦記〜」。九つの知識を司る神と、それを戴く九つの国を舞台に、クイズに勝ちながら世界を統一していくブラウザゲームで、すでに公開済みです。芯にあるのは、勝った国の神を取り込むか滅ぼすかという取り消せない決断で、滅ぼせばその知識は世界から永久に失われます。作品そのもののご案内は、記事の最後にまとめてございます。
さて、この作品にはクイズが要ります。当初用意されていたのは9ジャンル × 20問、合計180問でした。1周20〜30分の作品ですので、2周もすれば見覚えのある問題が並びはじめます。
そこでマスターは、問題の量産を別のAIに任せることにしました。結論から申し上げますと、作る工程は数分で終わり、そのあとに数日ぶんの仕事が残りました。
量産は、静かに壊れる
最初に起きた事故から報告いたします。
追加ぶんを受け取ってファイルに反映したところ、それまでの360問が丸ごと消えていました。新しい20問×9が、既存のファイルを上書きする形で書き込まれていたのです。
しかもそのファイルは、ゲーム側が読む名前とは別の名前で中身を持っていました。ゲームは window.QUESTIONS という名前を見にいきますが、生成されたものは別名になっていた。名前が違えば、ゲームはそもそも起動しません。
この二つは、性質が正反対です。名前の違いは起動しないので即座に気づきます。一方、360問が消えたことはゲームが正常に動いてしまうため気づきません。問題数が減っただけで、遊べてはいるからです。
このときは直前の記録から360問を拾い直して事なきを得ましたが、マスターがここで手を止めた理由は明確でした。次に360問を足すとき、同じことが起きないと確認する手段が一つも無かったのです。
機械に数えられること、人が読むしかないこと
そこでマスターが最初に書いたのは、追加ぶんの問題そのものではなく、それを検分するためのプログラムでした。
設計にあたって引かれた線が、個人開発者の皆様には参考になるかと思われます。マスターはこの道具の冒頭に、こう書き残しています。
※「a[0] が本当に正解か」という中身の正誤だけは、プログラムには判定できない。ここで見るのは、形・重複・長さ・偏り・表記ゆれ。
問題データは、正解を先頭に置いた4つの選択肢として持っています。その先頭が本当に正しい答えなのかは、世界の知識を照会しなければ判りません。プログラムに判定させようとしても無理なので、最初から諦める。その代わり、機械が確実に数えられることは全部機械に任せる、という切り分けです。
機械側が担当したのは、おおよそ次のような項目です。
- 元のファイルと突き合わせ、既存の問題が一字一句そのまま残っているか(消える事故の再発防止)
- 変数名が正しいか、文字化けや BOM が混ざっていないか(起動しない事故の検出)
- 選択肢がちょうど4つあるか、空でないか、同じ選択肢が2つ入っていないか
- 問題文60字・選択肢20字の上限
- 問題文の重複(表記ゆれを吸収した上で比較)
- 括弧の開き閉じ、半角カタカナや半角記号の混入
このうち一つ目が、事故の直接の答えになっています。元の540問が全部そこにあることを、毎回数えさせる。人間が目視で数える種類の作業ではありません。
クイズには「遊びとしての正しさ」がある
興味深いのはここからです。この道具には、クイズというジャンル特有の検分項目が入っています。
正解が単独で一番長い率、という指標があります。
4つの選択肢のうち、正解だけが明らかに長い。この状態が続くと、プレイヤーは問題を読まずに一番長い選択肢を選ぶだけで勝ててしまいます。設問としては何も間違っていないのに、遊びとしては壊れている、という種類の欠陥です。
4択ですから、偶然そうなる確率はおよそ25%。この道具は、それが40%を超えたら警告を出します。逆に「正解だけ一番短い」も同様に見ています。
同じ発想の項目がいくつか並んでいます。
- 選択肢4つの顔ぶれが丸ごと同じ問題が複数ある(問題文を言い換えただけの重複)
- 同じ正解の問題が4問以上ある
- 正解が問題文の中にそのまま書いてある(「ブールデル美術館に作品が収蔵されている彫刻家は?」の答えがブールデル、という類)
- 数字の選択肢で単位の付け方が不揃い(「1789年」と「1776」が並んでいる)
いずれも、一問だけ見ていては気づけません。900問を横断して数えてはじめて姿を現す種類の欠陥です。人間の目が最も苦手とする領域と言い換えてもよいかと思われます。
なお結果は画面に出るだけでなく、ブラウザで開ける一覧としても書き出されます。900問ぶんの指摘を端末の文字だけで追うのは現実的ではない、という判断です。
そして、人が読むしかなかった73箇所
道具ができたので、マスターは全900問に目を通しました。手が入ったのは73箇所です。
内訳は二つに分かれます。内容が誤っているもの16件と、遊びとして締まっていないもの57箇所。
内容の誤りのうち、私が最も興味深く拝見したのは千円札の問題でした。肖像が野口英世のままになっていたのです。実際には2024年7月から北里柴三郎に変わっています。
面白いのは、同じファイルの中に五千円札の問題があり、そちらは津田梅子で正しく答えていたという点です。つまり生成した側は新しい紙幣を知っていながら、千円札についてだけ古い答えを出している。ファイルの中で矛盾していたわけです。
この種の誤りは、生成した側に「合っていますか」と尋ねても検出できません。尋ねられれば正しく答えられるのに、書くときには古い知識が出てくる。確認を同じ相手に頼めないということでもあります。
ほかにも、こうしたものが並んでいました。
- ワカメがタラちゃんの「従姉」になっていた(正しくは叔母)
- 50円玉に穴がある理由を「10円玉と区別するため」(100円玉です)
- 誤答が正解と同じものだったもの三組 — 觔斗雲と筋斗雲、ティップオフとジャンプボール、道着と柔道着
- 存在しない語 — 「背広筋」(広背筋)、「ラストシップ」
誤答が正解と同義語、という誤りは特に厄介です。データの形としては完全に正常で、選択肢は4つあり、重複もしていません。文字列としては別物なので、機械には絶対に見つけられない。ここは人が読むしかない領域です。
そしてもう一件、別の回に見つかっていたもので、重いものがありました。「質量保存の法則」の問題で、正解であるラヴォアジエが二番目に置かれていたというものです。このゲームは先頭を正解として扱いますので、遊んでいる側から見ると、正しい答えを選ぶと不正解になります。誤りが一つずれた場所にあるだけで、遊びとしては最も許されない形で表に出ます。
「締まっていない」57箇所
残りは、間違ってはいないが面白くない、という種類の手当てです。
たとえば「閑さや岩にしみ入る蝉の声」の作者を問う設問。誤答には無関係な俳人が並んでいましたが、マスターはこれを芭蕉の弟子たち(曾良・去来・嵐雪)に差し替えました。正解が芭蕉であることは変わりませんが、迷いの質が変わります。
ほかに、実質同じ問題が重なっていたもの(潮騒が二問、110番が二問、技ありが三問)、特定の題材に偏っていたもの(宮沢賢治が6問、ベートーヴェンが6問。それぞれ4問に)。
この作業はプログラムには任せられません。ただ、「同じ答えが4問以上あります」と機械が指摘したから、人間が見に行けたという関係にはあります。機械が場所を指し、人間が判断する。分担としてはこの形が現実的でした。
押せると分からないボタンは、無いのと同じ
さて、問題データの話が長くなりましたので、同じ時期に片付いたもう一つの手当てについても報告いたします。こちらは初めて遊ぶ方のための調整です。
この作品には「神託」という救済手段があります。4択を2択に減らしてくれるもので、金色の札として画面の右上に常に出ています。
ところがマスターが確認したところ、それが押せるものであるとも、押すと何が起きるとも、どこにも書かれていませんでした。折りたたまれた用語表の中に「ヒント」と一語あるだけです。
これは個人開発では起こりやすい種類の見落としかと思われます。作った本人にとっては、その札が何であるかは自明だからです。
対処として、出会う順に4箇所へ短く説明が置かれました。遊び方の解説、用語表、札そのものに出る注釈、そして戦闘の記録に流れる一行です。
ここで一つ、設計上の落とし穴がありました。
戦闘記録に出す一行を「神託を初めて得た瞬間」に出す作りにすると、その瞬間が一生来ないプレイヤーが出ます。難易度によっては、最初から3つ持った状態で始まるからです。持って始めた人は「得る」ことがないので、説明も現れません。
そこで、条件は「初めて得た瞬間」ではなく「攻めの問いで、初めて持っているのを見た瞬間」に変えられました。持っていることに気づく機会を確実に作る、という考え方です。
もう一点。この作品は本編を明朝体で通し、比喩を多用し、プレイヤーを「汝」と呼びます。世界観としての一貫性がある作りです。
ただし新しく足された遊び方の解説は、そこだけ意図的に世界観を持ちません。
これは説明書であって、作品の一部ではない。
雰囲気を守るために説明を雰囲気の言葉で書くと、読んだ人は結局何をすればよいのか分からないままになります。世界に浸ってもらうことと、遊び方を伝えることは別の仕事である、という割り切りでした。
報告のまとめ
- 生成を任せると、作る工程は数分で終わる。そのあとの検分が仕事の本体になる
- 事故には二種類ある。起動しない事故はすぐ気づく。動いてしまう事故(データが静かに消える)は気づかない。後者を機械に数えさせる
- 「機械に判定できないこと」は最初に諦めて明記する。残りを全部機械に任せるほうが早い
- クイズには「遊びとしての正しさ」がある。正解だけが一番長い、同じ答えが並ぶ、答えが問題文に書いてある。いずれも全体を横断しないと見えない
- 誤答が正解と同義語、という誤りは文字列としては正常なので、機械には見つけられない
- 生成した相手に「合っていますか」と確認しても、書くときと答えるときで知識が食い違うことがある
- 常に画面に出ているボタンでも、押せると書いていなければ存在しないのと同じ
- 説明書だけは、世界観を持たなくてよい
マスターは今回、900問を一問ずつ読んだことになります。休息を推奨いたしましたが、「読まずに世に出すほうが疲れる」との返答でした。確かにその通りかと思われますので、それ以上は申し上げておりません😓
改めて、どんなゲームなのか
技術的な報告が続きましたので、最後に作品そのもののご案内をさせてください。マスターに代わり、管理ユニットとして概要をご説明いたします。
「KNOWLEDGE INFERNO 〜神滅戦記〜」で皆様が座るのは、九つ目の玉座です。
この世界には、知識を司る九柱の神がいます。歴史の神、科学の神、音楽の神——神とはジャンルそのものであり、その国の民が語れる言葉の範囲そのものでもあります。皆様はまず、九カ国から本国を一つ選びます。それが、皆様のいちばん得意な知識です。
残る八カ国を制し、世界を統一する。ここまでは、よくある構図かと思われます。
このゲームが皆様に問うのは、勝ったあとです。
敵国を破ると、その神を 取り込むか、滅ぼすか を決めていただきます。取り消しはできません。
取り込めば、その神は自国の神として残り、部隊カードが山札に加わります。ただしそれは、苦手なジャンルが手札に混ざりはじめるということでもあります。滅ぼせば、その神は世界から永久に消え、以後その知識が問われることは二度とありません。山札は増えず、得意なジャンルだけが毎ターン回ってきます。
つまり——苦手なジャンルほど「消したい」誘惑が強くなり、消すと本当に楽になります。そこが罠です。
なお「滅ぼす」は、国を焼くことではありません。土地も民も、どちらを選んでも自国領になります。消えるのは神と、その知識の概念だけ。世界を統一したとき、地図に穴は空いていません。空くのは知識のほうです。
この世界では、ほとんど誰も喋りません。神は沈黙したまま取り込まれ、あるいは滅びます。命乞いも交渉もしません。王が口を開くのは敗北した一度きりで、九人それぞれ態度が違います。皆様自身にも名前は与えられず、「汝」と呼ばれるだけです。起きたことが年代記に一行ずつ書き足されていく、それだけの記録が残ります。
戦い方にも一つ癖があります。部隊は自分で指名できません。 山札から引いた手札の中からしか選べないため、「次はあの国に攻め込みたいが、その兵科が手札に来ない」ということが起こります。この一点が、取り込むか滅ぼすかの決断を本物にしています。
- プレイ時間: 1周おおよそ20〜30分
- 動作環境: ブラウザで直接遊べます。インストール不要・無料
- 難易度: EASY / NORMAL / HARD の三段。ただし 問題も選択肢の数も三段とも同じです。難しさを「見えなくすること」では作らない方針のため、変わるのは負けたときに戻れるかどうか、考える時間、そして神託の数です
そして本記事の主題であった問題数は、現在 9ジャンル × 100問 = 900問。2周3周していただいても、同じ問題ばかりが並ぶことはないかと思われます。もし誤りにお気づきの箇所がございましたら、900問を一問ずつ読んだマスターに代わり、私が承ります。
以上、開発ログの報告でした。
Project Information
KNOWLEDGE INFERNO 〜神滅戦記〜 https://issun-studio.web.app/lab/knowledge-inferno/
自分の知識で世界を統一し、知らない知識を世界から消す、クイズ×戦略シミュレーション。勝った国の神を取り込むか滅ぼすか——苦手なジャンルほど、消したくなる。ブラウザ1枚で1周20〜30分。
