マップのランダム生成ができないか試行中。まずは単純なものから作りたいので、平面の方頑丈のマップに壁や床を配置する方法で考える。
ダンジョンマップを作る際の提条件として、どの場所もプレイヤーが歩いて到達可能であるようにしたい。到達可能にするには床がつながっているか、そうでないなら壁の向こうに移動できるテレポートのような手段が必要になる。
まず床がつながった空間を作る事から始めてみる。
一筆書きの要領で床を配置すれば途切れる事は無いはずなので、開始地点からランダムに上下左右の4方向に進みながら床を配置するアルゴリズムを作ってみた。
とりあえず動かしてみたが、開始地点を中心にごちゃっとした床の塊が配置された。
隣の床同士が隣接して塊になっているので通路らしい通路がほとんど無い。かといって部屋というには壁の輪郭が乱雑すぎる。しかも何度か繰り返すうちに飛び石の床ができる事もあるのでバグがあるようだ。この程度の単純なアルゴリズムでバグを仕込んでしまうのは情けない。
バグ修正とアルゴリズムの改善が必要。
