私はプレーヤーがAIと話をしなければならないゲームに取り組んでいます(それは主な機能ではありませんが、それは繰り返しです)。テキストを一文字ずつ表示して、ボットとの対話感を高めたい。
個人的な経験から、テキストの表示が遅すぎると嫌です。文が短くなるので、「スキップ」ボタンなどは関係ありません。
私が知りたいのは、文の新しい各文字の間にいくつの遅延を設定すべきかということです。私はユーザーが何かが遅くなることに煩わされないようにしたいのですが、何かが速すぎると本当に役に立ちません。同様のことについての研究や分析を知っていますか?
JRPGのビデオ(ファイナルファンタジーなど)をいくつか調べて、NPCが話しているときに何が行われるかを確認してください。今日のプレーヤーは、非常に高速で速攻なコンテンツに慣れています。
また、プレーヤーを行のアニメーションの最後にジャンプするスキップして終了ボタンを除外することも検討します。あなたの文章が短い場合でも、ゲーム内のダイアログが完了するのを待つと、ほんの一瞬が永遠に感じられます。
スキップトゥエンドボタンを含めなくても、非常に高い割合のプレイヤーが何をスキップボタンにするかとにかくつぶしますアニメーションが行われます。ユーザビリティテストでこれを何度も何度も見ました。アニメーションダイアログにスキップトゥエンド機能を含めると、ゲームの応答性が向上し、その時点でのプレーヤーのフラストレーションが軽減されることがわかりました。
ニンテンドーゲームをプレイしたことがありますか?各ラインがアニメートされるのを待つキャラクターインタラクションに実際に座ったことはありますか?
ほぼ全員が、コントロールボタンを使用してアニメーション部分をスキップできることがわかったら、まさにそれを行うという予感があります。その時点で、アニメーションはエクスペリエンスを向上させるものではなく、邪魔になるだけです。
だからあなたの質問に答えるために、私はテキストのアニメーション化がそれがAIであると推論するための最良の方法ではないと主張します。 AIはとにかく高速です。テキストがそもそもアニメーション化されるという考えは、本当に有用で実用的なものというよりは、ちょっとした策略です。
画面にテキストを印刷するのにそれほど時間がかからず、人間が話すことができるよりも速くなります。したがって、あらゆる種類のプリミティブAIを実行するのに十分なコンピューティングパワーが近くにある場合、AIが言うことを「タイピング」することはあまり意味がありません。
これは完全に代替のオプションです:
文字ごとに単語を綴らないでください。 AIがWord for Wordと言っていることすべてを綴る必要もありません。代わりに、ポップアップキーワードを使用してください。次に、それらの単語を少し拡張して、通常の中間単語を追加し、最後に文を完成させます。
いくつかの疑似コードを追加することもできます。
これは、文を作成するときにコンピュータがたどる経路に、より厳密に追従します。
Spinny 'think' icon しばらくしてから、応答が判明したとき
{self} need {key_bl} to open {door_002}
より人間的になる
i need blue keycard to open rear airlock
その後
I need the blue keycard to open the rear airlock for you.
またはそのようなもの。ある程度の進行速度と計算時間は得られますが、人為的なスローダウンのようには見えません。
また、少し進んで、より厳密な意味でのコミュニケーションを編成することもできます。
To achieve X, Y needs to Z.
これはゴールから始まり、そこからさかのぼります。 (これにより、クエストを構成するためのややユニークな方法になる場合もあります)結果として、
To open the airlock, I need the blue keycard.
そして、その人がAIに再び話しかけたとき。
To have the blue keycard, you need to give it to me.