発話者の性別その他でフィルタリングした上で、その中からランダムな1個を表示する、ということをシステムがやっています。気にしないパラメータ(AllやNone)は省略可(デフォルト値としてAllやNoneが入るので)。
これはDialogue型というデータ枠ですが、AnswerText型で別枠に入れて、その枠の中をシステムが走査。このSceneの代わりに、EditorIDを指定できるようにすれば良いかなと思います。(EditorIDじゃなくてシーンIDと言った方が適切か)
噂話についても、発話テキストをstring型で定義するよりは、こういう型のEditorID(シーンID)を指定する方が、発話者ごとに微妙にテキストを変えられるので良いかも。Genericな噂ばなし用のRumor型という、似た処理をするものがあるので、それをシーンID指定できるようにすればok。
フィルタリング項目にFaction指定がまだ無いけど、Factionの名前かEditorIDを指定できれば良さそう。

Dialogue{
ReplyDeleteData = "Greetings"
...
}
で Greetingタイプと宣言できるんですね。
このDataで指定できる"Greetings"みたいなのは事前登録されてるものになるんでしょうか?
Dataは実際に表示するテキストですね。
DeleteScene = 'scGreeting'がタイプ指定になります。
で、このDailogue型は、ジェネリックなもので、システムで事前登録してるタイプしかありません。
スクリプトクエストで使う用には、この「タイプ」の代わりに、クエストユニークなシーンIDを指定できるようにするイメージです。
AnswerText {
Data = "Greetings from Quest Test!"
SceneID = "QUEST_TEST_ANSWER_FOR_QUEST_START"
}
みたいな感じで、フィルタリング用として、任意の文字列IDを与えます。(このテキストデータの固有IDではありません。)
Dialogue型に、SceneID指定を足しても出来ますが、走査対象が物凄く増えるので。