ゲーム内のキャラクターに、部分的にランダムなアクションを実行させたいのですが、好みの影響も受けます。たとえば、キャラクターが怒っている場合、冗談を言うよりも怒鳴る可能性が高くなります。そこで、キャラクターがとる行動をどのように決定するかを考えています。これが私に思いついたアイデアです。
解決策 #1 : 考えられるすべてのアクションを繰り返します。アクションごとにランダムロールを行い、その乱数に優先値を追加します。最も高い値を持つアクションが、キャラクターがとるアクションです。
解決策 #2 : アクションに数値の範囲を割り当て、アクションの可能性が高いほど範囲が広くなります。したがって、ランダム ロールが 1 ~ 5 のいずれかに戻ると、キャラクターは冗談を言います。6-75 を返すと、彼らは叫びます。等々。
解決策 #3 : すべてのアクションをグループ化し、分岐ツリーを作成します。彼らは友好的な行動をとるでしょうか、それとも敵対的な行動をとるでしょうか? ランダム ロール (好みの値が追加された) は、敵対的であると言います。彼らは物理的な攻撃や口頭で攻撃しますか? ランダムロールは口頭で言います。アクションに到達するまで、ラインを下っていきます。
解決策 1 は最も単純ですが、ほとんど効率的ではありません。解決策 #3 はもう少し複雑だと思いますが、より効率的ではありませんか?
この特定の問題について、これ以上の洞察を持っている人はいますか? #3は最善の解決策ですか?より良い解決策はありますか?