逗游網(wǎng):值得大家信賴的游戲下載站!
發(fā)布時間:2020-09-04 17:00 來源:bilibili 作者:流浪de蒲公英 編輯:潘東子
生成算法
收起生成算法
地圖生成器中的生成算法如下所述:
1.系統(tǒng)首先會將所有可用的自然奇觀進行一次隨機排序,并依次放入待選自然奇觀列表,通常來說列表前面的奇觀會有更高的概率生成。
2.系統(tǒng)會從列表第一個自然奇觀開始,隨機選擇一個格子作為其生成位置,然后檢測該格子是否可以生成該自然奇觀(除了地形需求,所有自然奇觀的8格內(nèi)是不能生成其它自然奇觀的。不排除有部分MOD奇觀的生成距離限制低于或高于8的情況。)。如果可以,則在該格子生成該自然奇觀;如果不可以,則不會生成任何自然奇觀。然后,無論該自然奇觀是否生成了,其都會被從待選自然奇觀列表中移除——也就是說如果該奇觀不能生成在這個被隨機選定的格子上,那么本局他也不會出現(xiàn)在游戲中(給你機會也不中用啊.jpg)。
3.如果步驟2中沒有生成自然奇觀,則重復步驟2,直到第一個自然奇觀生成。
4.為全圖所有格子打分,其分數(shù)為:
如果最近的自然奇觀與其距離不超過10格:分數(shù)=100*到最近自然奇觀的距離+rand(0,99)
如果最近的自然奇觀與其距離超過10格:分數(shù)=1000+到最近自然奇觀的距離+rand(0,99)
5.在分數(shù)最高的單元格上,生成當前列表第一個自然奇觀。與步驟2相同,如果可以生成,則在該格子生成該自然奇觀;如果不可以生成,則不會生成任何自然奇觀。然后,無論該自然奇觀是否生成了,其都會被從待選自然奇觀列表中移除。
6.重復步驟4與5,直到生成的自然奇觀數(shù)量到達了上限(該上限大小與地圖大小有關)。
可以看出,由于分數(shù)的原因,兩個自然奇觀相距的距離幾乎完全不可能低于10格,同時由于生成算法的原因,一些生成地形苛刻的自然奇觀會很難被生成。