2

作成中のゲームにランダムティックが必要です。それを行う方法はありますか?キャラクターのランダムな動きが必要なため、ゲームのティック レート (1 秒あたり平均 60 ティック) に基づいて設定したくありません。Notch のコードの一部を使用できますか?

4

2 に答える 2

1

javax.swing.Timera を固定レートで実行します。nextBoolean()リスナーでは、ランダム変数を使用して、たとえば50% の確率、 33% の確率など、何かが起こるかどうかを決定します。nextInt(3)関連する例がここにあります

于 2012-11-28T22:49:20.120 に答える
0

主な選択肢は 2 つあります。

  1. ランダムな値を保存し、ティックごとにデクリメント (1 ずつ減らす) することができます。ゼロになったとき。目的のアクションを実行し、変数に新しい乱数を割り当てます。すすぎ、繰り返します。
    • これにより、既存のタイミングメカニズムの制約内で完全にランダムな疑似ティックが効果的に得られます。
  2. ティックレートは無視してください。ランダム化されたアクションは、ランダム化された間隔を必要とせず、ランダム化されたチャンスのみを必要とします。
    基本的に、ティックごとに新しいアクションを決定するチャンスが転がり、チャンスが成功した場合、エンティティの新しいアクションを選択します。
    • 現在のアクションを行っている時間に基づいてチャンスを変更するのが一般的です。そのため、エンティティが「座っている」時間が長いほど、別のものに切り替える可能性が高くなります。

ゲーム キャラクターに単純な AI を実装する一般的な方法であるため、state-machinesでマテリアルを検索することも必要になるでしょう(これはあなたが行っているようです)。

于 2013-08-28T03:45:17.913 に答える