3

私のゲームでは、プレイヤーがゲームをプレイすればするほど、iOS のゲーム「Dungeon Raid」のように、敵をランダムに生成して倒すのが難しくなるようにしたいと考えています。敵が持つべきステータスは次のとおりです。

  • HP
  • 攻撃
  • 時間: 敵が攻撃するまでに必要な秒数 (時間が長いほど、敵の動きが遅くなります)。
    • 時間は攻撃量により変動(敵が強ければ遅いに違いない)
  • スコア: 敵を倒したときに与えられるスコア

私が正しいと思ったのは、敵が取得できる最小の統計を決定し、ゲームの状態に応じてそれを増加させ、それに応じて計算するアルゴリズムを使用することですが、実際にそれを行う方法がわかりません。どこから始めても。

4

1 に答える 1

1

おそらく、特定の範囲で乱数を生成できるようにすることから始めたいと思うでしょう。最も単純なケースは、最小値と最大値の間で一様に乱数を生成することです。ゲームが進行するにつれて、最小値と最大値を変更して、統計とともに増加させることができます。あなたのプレーヤーの。

これを次のように行うことができます。

NSUInteger BoundedUniformRandomNumber( NSUInteger min, NSUInteger max)
{
    NSUInteger range = max - min;
    u_int32_t randomNumber = (u_int32_t)min + arc4random_uniform((u_int32_t)range);
    return (NSUInteger)randomNumber;
}

arc4random_uniformは fromstdlibなので#import <stdlib.h>、 も含めてくださいarc4random_uniform。これは、最小値を返しますが、最大値を決して返さないことを意味します。したがって、上記の関数で生成される最大値は実際にはmax - 1です。

うまくいけば、それで始められます。

于 2013-01-13T06:18:08.193 に答える