Race Spotter Commands (JA) - SeriousOldMan/Simulator-Controller GitHub Wiki

以下は、AIレーススポッターElisaが認識する全音声コマンドのリストと、そのコマンドを構成する文法(grammars)の構文に関する簡単な解説です。

構文

  1. 予約文字

    [ ] { } ( ) および , の文字は、すべて特別な意味を持つ予約文字であり、通常の単語の一部として使用することはできません。

  2. フレーズ

    フレーズとは、文の一部または完全な文を指します。 スペースで区切られた任意の数の単語を含むことができますが、予約文字は含められません。 下記で定義されるように、代替要素(直接記述、または名前による参照)を含むことができます。例:

     メアリーはアイスクリームが欲しい
    
     (TellMe) あなたの名前は?
    
     {現在時刻}は何時ですか?
    

    最初の例は単純なフレーズです。2番目の例は、変数 TellMe (下記参照) で定義された選択肢を許可しています。3番目の例はローカルな選択肢を使用しており、「何時ですか?」と「現在時刻は何ですか?」を表します。

  3. 選択肢

    この構文を用いることで、フレーズの代替部分を定義できます。 代替となる(サブ)フレーズは {} で囲み、カンマ , で区切る必要があります。例:

     { 圧力、タイヤ空気圧 }
    

    特定の選択肢リストが複数のフレーズで使用される場合、その選択肢リストに変数を定義し、明示的な構文の代わりに変数参照(() で囲まれた選択肢リストの名前)を使用できます。すべての定義済み選択肢は、grammar fileの「[Choices]」セクションにリストされており、以下のように記述されます。

     TellMe=教えてもらえますか、教えてください、教えて、∼をくれますか、∼ください、ください
    

    この定義済みの選択肢リストは、フレーズの一部として (TellMe) を使用することで参照できます。

  4. コマンド

    完全なコマンドとは、上記で定義された単一のフレーズ、またはカンマで区切られ [] で囲まれたフレーズのリストです。 これらのフレーズは、それぞれが単独でコマンドをトリガーできます。例:

     (WhatAre) {タイヤの空気圧、現在のタイヤの空気圧、タイヤの空気圧}
    
     [(TellMe) 時刻、今何時ですか、{現在の時刻、時刻} は何ですか]
    

    最初の例は単一のフレーズですが、内部に選択肢(代替語)があります。2番目の例では、内部に選択肢があるにもかかわらず、コマンドに対して3つの独立したフレーズを定義しています。

コマンド(バージョン4.2.2以降で有効)

事前定義された選択肢

TellMe=教えてくれますか, 教えてください, 教えて, 情報をください

WhatAre=〜を教えて, 〜をください, 〜は何ですか

WhatIs=〜を教えて, 〜をください, 〜は何ですか

CanYou=〜できますか, 〜してください

Announcements=デルタ情報, 戦術的アドバイス, 側方警告, 後方警告, 青旗警告, 黄旗警告, カット警告, ペナルティ情報, 低速車警告, 前方の事故警告, 後方の事故情報

コマンド

  1. 会話

    [{こんにちは, ねえ} %name%, %name% 聞こえますか, %name% お願いがあります, %name% どこにいますか]

    [はい {お願いします, もちろんです}, {はい, わかりました} 続けてください, {どうぞ, オーケー} {続けて, 先をどうぞ}, 同意します, その通りです, 確認しました, 了解]

    [いいえ {結構です, 今はいいです, また後で呼びます}, 今は結構です, 否定します]

    [(CanYou) ジョークを言ってください, 何かジョークはありますか]

    [黙って, 静かにしてください, 集中しないと, 集中させてください]

    [オーケー 話していいですよ, {また, もう一度} 聞けます, {また, もう一度} 話してください, {情報をください, 最新情報を教えてください}]

    [(Announcements)はもう不要です, (Announcements)はもういりません, (Announcements)はもう結構です]

    [(Announcements)をください, (Announcements)をもらえますか, (Announcements)をお願いします]

  2. 情報

    [(TellMe) 時刻を, 今何時ですか, {現在の時刻, 時刻}は何ですか]

    [(WhatIs) {私の, 私のレースの, 私の現在のレースの}順位は, (TellMe) {私の, 私のレースの, 私の現在のレースの}順位を]

    [(TellMe) {前の車, 前方の車, 前の順位}とのギャップを, (WhatIs) {前の車, 前方の車, 前の順位}とのギャップは, {前の車, 前方の車, 前の順位}とのギャップはどのくらい]

    [(TellMe) {後ろの車, 後方の順位, 一つ前の車}とのギャップを, (WhatIs) {後ろの車, 後方の順位, 一つ前の車}とのギャップは, {後ろの車, 後方の順位, 一つ前の車}とのギャップはどのくらい]

    [(TellMe) {トップの車, 先頭}とのギャップを, (WhatIs) {トップの車, 先頭}とのギャップは, {トップの車, 先頭}とのギャップはどのくらい]

    [(TellMe) {カーナンバー, (Number)番}とのギャップを, (WhatIs) {カーナンバー, (Number)番}とのギャップは, {カーナンバー, (Number)番}とのギャップはどのくらい]

    [(TellMe) 前の{ドライバー名, ドライバーの名前}, (WhatIs) 前の{ドライバー名, ドライバーの名前}は]

    [(TellMe) 後ろの{ドライバー名, ドライバーの名前}, (WhatIs) 後ろの{ドライバー名, ドライバーの名前}は]

    [(TellMe) 前の車の{クラス, 車両クラス}を, (WhatIs) 前の車の{クラス, 車両クラス}は]

    [(TellMe) 後ろの車の{クラス, 車両クラス}を, (WhatIs) 後ろの車の{クラス, 車両クラス}は]

    [(TellMe) 前の車の{カップカテゴリ, 車のカップカテゴリ}を, (WhatIs) 前の車の{カップカテゴリ, 車のカップカテゴリ}は]

    [(TellMe) 後ろの車の{カップカテゴリ, 車のカップカテゴリ}を, (WhatIs) 後ろの車の{カップカテゴリ, 車のカップカテゴリ}は]

    [(TellMe) {カーナンバー, (Number)番}の{現在のラップタイム, 前のラップタイム, ラップタイム}を, (WhatIs) {カーナンバー, (Number)番}の{現在のラップタイム, 前のラップタイム, ラップタイム}は]

    [(TellMe) {順位, (Number)番}の{現在のラップタイム, 前のラップタイム, ラップタイム}を, (WhatIs) {順位, (Number)番}の{現在のラップタイム, 前のラップタイム, ラップタイム}は]

    [(TellMe) {私の, 私の現在の, 私の前の}ラップタイムを, (WhatIs) {私の, 私の現在の, 私の前の}ラップタイムは]

    [(TellMe) {現在のラップタイム, ラップタイム}を, (WhatAre) {現在のラップタイム, ラップタイム}は]

    [(TellMe) {車の数, コース上の車の数, セッション中の車の数, アクティブな車の数}を, (WhatAre) {車の数, コース上の車の数, セッション中の車の数}は, 何台の車が{アクティブですか, コース上にいますか, セッション中にいますか}]

    [(TellMe) {カーナンバー, (Number)番}が何回ピットに入ったか, {カーナンバー, (Number)番}のピットストップ回数は, {カーナンバー, (Number)番}は何回ピットに入りましたか]

    [(CanYou) {カーナンバー, (Number)番}に{集中して, 注目して}ください, (CanYou) {カーナンバー, (Number)番}について{もっと情報をください, 情報をください}]

    [{カーナンバー, (Number)番}に関する情報はもういりません, {カーナンバー, (Number)番}のレポートをやめてください]