请教一个游戏算法
以前没做过游戏开发. 现在第一次做游戏设计.很简单类似俄罗斯方块的游戏. 游戏是这样的.也许大家有人玩过.
1.一共有7种不同形状和不同颜色的方块(所占位置一样大小).为方便记录.我记为: 0.1.2.3.4.5.6. 在一个方框中可以显示 8*8 个这样的方块. 开始初始化时候.是随机放8*8个不同的方块.规矩是任何横/竖相邻都不会出现连续3个同型方块. 玩家可以调换相任何相邻的两个方块来懑足同一横/竖出现三个同型方块. 调换成功后可以的分.并删除这三个相邻的方块.并且由相邻的方块替换删除的位置.然后再检查是否还有同一横/竖出现三个同型方块.如果没有.再随即增加一些方块填充空白的地方.
----------------------------------
我觉得难度是初始化时候如何生成这个没有任何规律的不同方块按照8*8 排列.如果全部是按照随即数生成0-7方块型号的话. 怎样避免 "没答案 "现象.就是怎样避免玩家找不到任何可以对调方块位置来达到同同一横/竖出现三个同型方块.
[解决办法]
那如果要这样你可以事先 "故意 "产生至少一个或横或竖的三连块,然后将其中任一个调到旁边去.而其它部分的才用随机生成,不就可以了吗.
[解决办法]
我的手机上好像有跟你说的很像的游戏,也是8*8,只不过它是4种方块.待我分析分析它的行为.
另外你说的这一类型的游戏也有两种:一种是像幻想游戏中的一款,以及祖玛,泡泡龙等,虽然每次增加新块,但消到最后可以完全消去.; 另一种则和那个手机游戏一样,可以无穷尽地消. 不同模式的处理方法可能是不一样的吧. 有限步就能消去的就简单一些,只需要把可见的8*8区域看作是整个场景中的中心部分,反推地产生全部场景 至于无限的话就想不通了
[解决办法]
就是和游戏过程相反,从空的开始,随机生成3个或大于3个的连续方块
然后随机选择位置,如果原来有的则挤开,然后随机选择几对方块互换
这样至少有一种解决方案,可以参考“连连看”的无解处理
原先我玩的是分数达到一定程度就过关了
至于楼上说的无限,我估计8*8区域外的是根据区域内的方块动态形成的
[解决办法]
是啊,但关键是会不会有无论怎么安排新加入方块的种类也无法与其相邻块形成可以三连消的情况呢?
[解决办法]
挺难想的.
你能找到 "连连看 "的方法,就找不到 "回环连珠 "的方法吗?
[解决办法]
我在网上下载的,叫<宝石迷情>,你下载来研究研究. 研究出来也要写在BLOG里分享啊