Tower-Defense

最佳迷宮路徑(按長度)

  • February 14, 2014

假設一個 N×N 正方形的遊戲空間,塔和敵人都佔據 1x1 的區域,那麼在 N×N 正方形迷宮中迫使敵人花費最大總距離路徑的最佳迷宮設置是什麼?

好吧,假設您從左上角開始並在右下角結束,那麼最長的可能路徑將是沿著整個地圖從北到南或從東到西曲折/曲折的路徑。為了好玩,我編寫了以下遞歸程序來找到最長的路徑並產生輸出,無論您輸入的身高、體重的大小如何,它都會得出這個解決方案:

但請注意,這並不意味著最長路徑實際上是砲塔防禦類型遊戲中的最佳策略,因為您必須考慮塔樓成本和升級等因素。通常情況下,最好的情況是簡單地迫使單位盡可能多地聚集在殺傷區。當您考慮到諸如減速塔之類的事情時,它會變得更加複雜。以下是一些範例輸出:

# = wall
. = path
N = start
O = end

Width = 10, Height = 5
N#...#....
.#.#.#.##.
.#.#.#.#..
.#.#.#.#.#
...#...#.O

Width = 10, Height = 10
N#...#....
.#.#.#.##.
.#.#.#.#..
.#.#.#.#.#
.#.#.#.#..
.#.#.#.##.
.#.#.#.#..
.#.#.#.#.#
.#.#.#.#.#
...#...#.O

@烏鴉夢想家

是的,我意識到最後一個邊緣情況,我不確定為什麼它還沒有進行最後一次優化,但我確實修改了我的程式碼以包含一個可移動的入口/出口。這是中間入口的範例生成:

...#...#...#...##...
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
.#.#.#.#.#.#.#.##.#.
N#.#.#.#.#.#.#.##.#O
#..#.#.#.#.#.#.##.##
..#..#.#.#.#.#.##.## <---
.#..#..#.#.#.#.##.## <---
.#.#..#..#.#.#.##.## <---
.#.#.#..#..#.#.##.## <--- need optimization here
.#.#.#.#..#..#.##.## <---
.#.#.#.#.#..##..#.## <---
.#.#.#.#.#.####.#.## <---
...#...#...####...## <---

我刪除了我的程序,因為我找出了錯誤的來源,我稍後會發布一個工作版本,但它需要一些重寫。答案仍然沒有改變,最長的路徑並不那麼有趣,但它是一個有趣的程式練習。

引用自:https://gaming.stackexchange.com/questions/20038