私は、単純な4Xストラテジーゲームを空間で実行しています。各ノードは、目的点(惑星、小惑星など)です。
マップをランダムに生成するには、以下の手順に従います
マップが持つ各ノードのタイプの数を決定します(たとえば、5つの地球のような惑星、10の不毛の惑星など)。
各タイプのノードをマップに配置します。
ステップ2では、各ノードタイプを均等に分散させたいと思います。したがって、たとえば、私はすべての地球のような惑星を配置することから始めます。単純にrand(map.width、map.height)を実行して位置を決定すると、すべての地球に似た惑星が一緒にクラスター化し、その領域から開始するプレーヤーにメリットをもたらす可能性があります。
さまざまなグラフ関数やノイズ関数を使用するなど、相互に広がる一連の(x、y)座標を生成できる方法はありますか?同様に、互いに近い座標を生成する方法はありますか?