|
[杂谈]有关无猜扫雷的一点思考 (18/3659) |
|
|
|
|
昨天在群里唠嗑偶然提到了无猜扫雷的话题,睡前又想了想它的好处,感觉很有意思,因而想和各位雷友讨论讨论其实现的可行性。 在我看来,扫雷无猜化有两点好处,一可以更容易吸收萌新,二可以更新扫雷竞技的形式,使扫雷更具有观赏性。 虽然绝大多数的大佬已经习惯了用不断重开来抵消低开率的情况,但是对于萌新来说,接触扫雷的第一个阶段必定是扫开一局完整的雷。而死猜的存在让这一步变得非常艰难(记得某B站视频统计过无猜的扫雷仅占全部情况的百分之三十左右)。这也在第一步劝退了很大一部分萌新(这是从我本人的安利经验出发的)。扫雷被许多的人认为是“运气游戏”也源于此。若能开发出无猜的专业扫雷软件,我想在一定程度上可以吸收更多的新人。 同时,扫雷的无猜化也可以更新扫雷竞技的形式,比如两人对战扫同一张图这种更贴近电子竞技的形式,这样的形式也有利于增加扫雷的观赏性,从而吸引更多的人。 无猜扫雷也可能有一些问题,比如和现在的排行榜发生冲突。我的想法是可以再建一个排行榜,两榜并行,也不会对传统的扫雷造成很大影响。 当然我对扫雷类型的游戏也不是完全了解,不知道有没有这样的软件出现(如果有请一定安利给我)。之前在论坛里看到过有雷友发了一个网站里面有无猜扫雷,但那个网页总是把快速左键认成双击实在是太难受了=-=。 不知道大家怎么想这个东西呢……
|
|
想法很好,问题就是没有算法。巧克力扫雷的局面是实时生成的,很容易出现很多相似的局部。目前检验一个局面是否无猜我知道的只有把整个局面扫开来这种方法,那么计算时间大约就要花秒级。总之要是有个好点的算法,实现起来还是容易的。
|
|
扫雷GO (Minesweeper GO) 有无猜,是通过计算机扫一遍得到的,花的时间没有你想象的长。扫雷GO也有在线竞技,竞技没有无猜(因为无猜功能需要花钱买),炸了就罚时间,每次炸罚的时间指数增加
|
|
那么问题就归结于如何写一个判断局面是不是无猜的函数,比如Flag=IsJudgeable(MineSweeper,x1,y1),以及算法有多复杂。只要这个函数能写出来问题就解决了。
|
|
1.关于程序技术问题,可以仿照巧克力扫雷的方式,把局面放大到高级,但更高的雷密度。事先用强大算力内置个几万局,然后可以选项中设置通关后不重复(该模式下视情况对第一点位置进行限制)。也可以让电脑临时随机生成一批局面加入库,生成的时候挂后台几个小时也没啥吧。因为无猜肯定是高雷密度,所以这种情况下无猜的概率肯定比高级低很多。以及可以考虑“允许死猜”以增加局面生成成功率,如果碰到死猜,无论点哪个都判定成功(Freesweeper有这个功能)。也可以有提示功能方便学习。
2.关于排行榜:上述软件设想只是另一种不同的玩法,而不是竞技,毕竟计算机解局算法很成熟,局面也是随机的,作弊以及排行公平性都难以解决。竞技的话可以考虑把上述功能移植到网页版,计算连续的最高百局胜率,以解决这一问题。或者线下赛,表演赛。但这个工程量太大了,不认为雷网能做到。
3.关于竞速扫雷和胜率扫雷:这个问题很容易引战,所以之前一直没有发表过相关观点。以下个人观点,不喜轻喷。目前中国扫雷网其实更适合叫中国竞速扫雷网,对竞速以外的群体没有吸引力。把竞速视作扫雷唯一正确方向,一有新人就往竞速上引,是有待商榷的,更应该鼓励多元化发展。就像对街上慢跑的人说,你这样跑不对,你跑之前应该怎么调整状态,怎么注意呼吸和节奏,平时怎么练习,以跑出个人1/4/1000米最佳成绩。1000米140s算跑帝,150s跑圣……嗯这些对运动员有用但一般人根本不感兴趣只会觉得很可怕,很多玩家只是觉得玩个游戏,并不愿意花大量的精力追求那么几秒。所以推广竞速以外的部分更容易吸引普通玩家,而普通玩家中又有一定的比例会成为竞速玩家。微软把win10扫雷做那么简单不是没有道理的,肯定考虑过受众。
4.总结:支持发展无猜扫雷,不论能否成为竞技项目进入排行榜,都对推广扫雷、吸引更多用户群体有着非常积极的作用。
|
|
来点无脑的想法,大佬们可以参考着出算法。首先就是分区块出雷。初中级相对简单,用不上,而高级较难,可以考虑分成两个15*16,靠首次点击先加载点击所在的半区,依靠雷数量,IS和OP来限制两个半区的复杂度差距。再一个办法就是局部后验。靠逻辑推不出来的死猜,一律设置成点的就是对的。整体难度不会因为一两个猜下降。当然,点击次序造成的死猜可以酌情下调正确率,个人认为75%较为合适。
|
|
5楼让我想起了win8win10的扫雷现代皮肤是和中文不兼容的,现代皮肤下它的动画就没有花园那么矫情,只希望巨硬想起这档子事来,花园主题游戏体验不是每个人都舒服的。
|
|
我觉得可以用这个思路。思路有了就是用哪种编程语言写了。我觉得JavaScript不错,可以跨平台。有没有大佬能推荐些其他的。
|
|
我对编程实在不了解只能提出这些粗浅的建议…… 楼上的大佬加油啊! 另5楼提出的Freesweeper中Lucky mode其实相当程度上实现了“无死猜”的功能(就是不知道完不完善)不知道可不可以建议一下在软件下载中添加Freesweeper并做一些相关说明呢?
|
|
|
|