CUIコマンドの組み合わせ

色んな事をしたい、でもコマンドの組み合わせは少ない方がいい、そこで

放すと話すはともかく、披露というコマンドはないよなぁ…
同音異義語など、結局人間でも判断できない文は少なくない
死にすぎ王子 と 虹の王女に、こんなシーンはありません

コマンド入力とは

 以前、コマンド選択法メニューの次元コマンドの場所で、コマンド選択の分類や考察を試みたが、今回からはコマンド入力について考察してみたい。

 その前に、軽く「コマンド入力」について解説しておく必要があるだろう。
 アドベンチャーゲームというより、コンピュータゲーム黎明期、キーボードから単語を打ち込んで行動を決定する「コマンド入力」というシステムが一般的であった。例えば、次のような感じだ。

コマンド>ミル ヘヤ

 その後生まれた、画面に並んだコマンドから選ぶ「コマンド選択」という方法と区別するために、もともとの入力方法を「コマンド入力」と呼んだ。これはパソコンのOSで、GUIが生まれたため、それまでの方式がCUIと呼ばれだしたのと似ている。
 その後、コマンド選択しか存在しないと言っても過言ではない程、コマンド選択方式が一般化したため、コマンド選択のシステムであっても「コマンド入力」と呼ぶ事も珍しくなくなってしまった。
 また、裏技や対戦格闘ゲームで使われる複雑な入力を「コマンド入力」と呼ぶようにもなったため、いまや適切な呼び名とは言えなくなってしまった。
 それと区別するため「テキスト入力」と呼ぶ場合もあるが、ネームエントリーなどで使われる「コマンド選択によるテキスト入力」システムの事を指す、と思われかねないほどコマンド選択が普及している。
 そこで、本サイトでは単語(コマンド)を文字の組み合わせで入力していく方式を「CUI入力」と呼ぶ事にする。

CUI入力の基本

 基本が英語圏で確立されたので単語を空白で区切る。もちろんコマンドの解析を簡単にする意味もある。
 ゲームによっては「ヲ」「ニ」を受けつけ「カギヲ アナニ イレル」などと入力できるものもあるが、その場合も日本語であっても空白区切りとなっている。

 英語の場合は、もともと単語の並びの融通がなく単語を空白で区切るので入力も解析も行ないやすい。そこでWITHを使って「動詞 名詞(を) WITH 名詞(で)」と入力させるパターンもある。

コマンド>HIT TROLL WITH STICK

 米国ではさらに、TOやINTO、AT、ABOUT、WITHOUTなども認識する高度なゲームエンジン(InfocomのInformなどが有名)も存在するが、日本語ではそこまでのものは無い。
 そういう自然言語に近い入力を可能にしようという方向性もあるが解釈できるパターンに限りがあり、結局は入力ルールが複雑化してプレイヤーも制作者も覚える事が増えるだけという面もある。

 深く突っ込むと日本語の言語解析の難しさの話になるので、CUI入力は動詞と名詞の2単語を並べるのが基本、と納得してもらいたい。

3単語指定

 とはいえ単語ふたつで行動を指定するのは難しいという事は、すぐに気づく。
 しかし受け付ける単語数が増えれば組み合わせのバリエーションも増えるし、「動詞+名詞」というシンプルさに比べ「〜を〜で〜する」ような表現で「名詞+名詞+動詞」のように名詞が2回出てくると、単語の出現順がほとんど意味に影響を与えない日本語では、どう入力して良いか分かりにくくなる。
 ひとつの解決策としてマニュアルに、名詞をふたつ組み合わせる場合は「動詞 名詞(を) 名詞(で)」ですよ、と入力方法を説明しておく方法がある。

コマンド>ヒラク ロッカー キー

 不自然さもさることながら入力する側の負担が大きい。

自動判断

 道具を持っている場合は自動的に使用する。また対象を適当に判断する。ということで3単語指定を避けようという方法もある。
 例えばドアを開けるのにカギが必要な場合。

コマンド>アケル ドア
 カギがかかっていて開きません。

 どこかでカギを入手した後は、同じコマンドでも反応が異なる。

コマンド>アケル ドア
 カギを使ってドアを開けました。

 これはプレイヤーが意図しない行動が行なわれる危険があり、極端な場合は謎が勝手に解かれちゃう事もある。
 逆に、勝手に判断されないコマンドを見つけるとか意外な解釈を楽しむとか、そこで面白みを出す事もできる。
 また行動をシステム側が勝手に決めるためプレイヤーに押し付けを感じさせるが、だいたいやりたい事が分かりきっている場合は楽。
 カギを持っててカギの掛かったドアを開けようとするなら、普通カギ使うでしょと言うわけだ。

 そもそも日本語の場合は、「てにをは」を自動判断しているので、それほど違和感も無い。

二段階指定

 もうひとつは1回の入力の単語数を減らすために、2段階にコマンドを受け付けるシステムだ。

コマンド>イレル パスワード
パスワード?0123

 とか

コマンド>ムスブ ロープ
ドコニ?キ

 自動で判断されるよりプレイヤーのやりたい事がやれるシステムだ。
 分かりきった事を聞き返されると、ムッときてしまう場合もある。

識別子

 同じようなものが沢山あると、どれか識別できる名前を付けておく方法がある。
 形容詞(adjective)と言い換えても、そう間違いではない。
 例えばドアが沢山ある場合は、それぞれにアカイドア、アオイドアとかドア1、ドア2とか最初から付けておく。
 それを入力する事で、次のような聞き返しを無くせる。

コマンド>イレル ディスク
ドノ?アカ

 識別子込みの名前を使う事で、一度の入力で解決できる。

コマンド>イレル アカイディスク

モード変更

 二段階指定と似ているが、まずモードを変えるコマンドを入力する。
 そしてコマンドを打ち込むことで、通常とは異なる行動を指定する。
 移動したりすることで、そのモードを終了するまではコマンドの対象が持続する。

コマンド>ツカウ コンピュータ
コマンド>ヨム ニッキ
コマンド>ヤメル コンピュータ

 場所の移動は、全てモード変更の一種とも言える。
 同じ「タタク キ」の入力でも、場所が違えば当然コマンドの意味も異なってくる。

装備変更

 モード変更と似ているが、手に持ったものや着ている服、乗り物で、コマンドの種類や反応を変えるというパターンもある。
 これは移動(モード変更)と組み合わせられるので、自然にバリエーションを増やせる。
 装備を外したり乗り物から降りたりする事で、効果は無くなる。

コマンド>ノル センシャ
コマンド>ウツ キジュウ
コマンド>オリル センシャ

 武器の装備はRPGでは当たり前だが、アドベンチャーでは全面的に採用される事は稀かと思う。

コマンド>モツ ジュウ
コマンド>ウツ ライオン

これからのCUI入力

 実は、これらの入力パターンは音声認識による入力にも転用できる。
 言語を使って操作するという点では、まったく同じものだからだ。
 ただ、ビバリウムシーマン、任天堂ピカチュウ元気でちゅう、SCEオペレーターズサイドなど、音声認識はまだ「1単語」の状態で、「2単語」となると「コマンド選択」や「カーソル指定」との組み合わせなのが現状と言える。
 それがいけないという訳ではないが、言語による操作という面で考えると、貧弱と言わざるを得ない。

 またCUI入力は言語解析が目的なのではない。究極はゲームを面白くするのが目的である。
 つまり自然言語が解析できる必要は「まったくない」。
 OSのCUIが繰り返し作業や、文字の抽出などの操作が簡単になるように発達したように、ゲームのCUIもゲームが面白くなるように発達する必要がある。
 その事については、さらにこれから考察を進めていこうと思う。

関連:IF : インタラクティブフィクション鳶嶋工房製CUI入力ゲーム。
CUIコマンド動詞分類CUIコマンド名詞分類CUIコマンドその他分類CUIコマンド短縮入力

 そこで結論。

必要なのは、 現状の言語の解析ではない、使いやすい言語の発明だ