gpt4 book ai didi

.net - "Level Generation"疯狂病毒游戏算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:53:21 25 4
gpt4 key购买 nike

我正在 .NET 上制作这款游戏​​(链接:http://www.bubblebox.com/play/puzzle/539.htm)。一切都很好,只是我不知道如何生成一个可以在N回合内解决的关卡。 Google+ 上的一个类似游戏是 Flood Fill,但它们是方形的,而不是六边形。

编辑:这是关于这种游戏的解释:https://www.youtube.com/watch?v=QihKrPLb8e8&feature=player_embedded . Mad Virus类似,但它有六边形网格,并且步数不是恒定的,随着难度的增加而增加。

最佳答案

从最终结果开始,逆向计算。

到第 nth 圈时,网格应该统一为一种颜色,所以从这里开始。然后选择网格的一个连接区域(包含左上角的六边形)并用一些颜色填充它。通过重复此过程 n 次,您将获得一个可以在 n 轮中解决的网格。

每回合的颜色应随机选择,但不得连续两次选择相同的颜色。可能会根据每种颜色最近被选择的时间来对随机选择进行加权。

随机选择每个区域的算法应该(平均而言)使每个区域小于上一个区域。它可以尝试从每个先前的填充过程中保持至少一个六边形。我建议你尝试一些区域选择算法,并测试结果。

此过程为您提供最快解决方案的上限。我能想到的验证所需的实际最小转数的唯一方法是详尽搜索。我个人认为,对于像这样的关卡生成算法来说,这听起来有点矫枉过正。使用上述形式的算法,轮数将试探性地增加(直到 n 等于最复杂网格的最快解决方案)。

关于.net - "Level Generation"疯狂病毒游戏算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7305315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com