我是亲手设计过一些谜题的,不过可能跟大家常接触到的冒险解密中的通过场景互动等方法制造的谜题、一些推理小说、推理游戏中类似“预告函”之类的谜题不大一样。它应该属于类似跳舞的小人一样的密码cipher,其特点是符合逻辑、对应明确、加密解谜一般情况下可逆,部分可以通过统计等暴力手段得出结果。但是整体上来说,和设计一款“冒险解密类”游戏中的谜题的区别应该不是很大,希望能够带来一些新的思路。
一般来说,一个好的、有趣的题目应该符合“合理”、“友善”、“简洁”、“明确”、“创新”的特点。
合理:首先明确一个观点,无论是什么谜题,都有其基本的范式。比如古典密码的加密方法一般就可以分为替代、乱序、提取等等,那么“冒险解谜”的谜题设计手段其实也是一样,可能包含着去某地找某物、开某机关、某物与某物组合等等基本的范式。在此基础上可以有所创新,或者运用多种范式的组合,但是应该保证符合谜题的基本特征。
而在此基础上,一个谜题还应该符合基本的逻辑思想,是能够通过足够的证据进行分析的,是能够被正常的思想解读的,并不应该为了“创意”而单纯求新求怪、从而难以理解,这样的谜题并不能称为一个好题目,更不能称为一个有趣的题目了。
友善:友善指的是出题人所应该保证的心态,和其出题的最主要目的。一般来说出题人的态度可以大致分为两种:一种是单纯为了彰显自己智商上的优越性,为了难倒解题人从而获得“碾压”式的精神愉悦。可以说这种出题人是不友善且便太的,不能作为一个正常的出题人加以讨论,如果你自认为自己是这种出题人,那么接下来的内容你可以不用看了。
另一种是我所喜欢并希望成为的“友善的”出题人。这一类出题人享受的是自己的题目能够被解题人正确解答时的一种“被理解”的感觉,题目是他们与解题人交流的一种手段,他们通过引导解题人解决自己的谜题而传递出自己所要表达出来的想法和目的,而解题的过程则是他们反馈给解题人的享受。也就是说,出题人在设计题目的时候首先要保证自己的题目并不是为了难为人或者单纯消耗解题人的时间,而是题目本身一定要能够被解且有意义。
简洁:一道好的题目可能不止包含基础范式中的一种,而是包含多种范式的组合。但是要注意题目不能成为一个多种方式的无序、无意义堆叠,应该尽量地避免冗长的解题流程。也就是说,在出题的时候应该秉行减法原则,除了必要的解题过程之外的一切不必要元素都应该酌情抛弃。如果必须要使用长流程的题目,那么至少应该保证题目的各个步骤都应该尽量简洁,且有所“停顿”。一定要尽力避免过于繁杂的规则和过于冗长的过程,确保有最优解或唯一最简最优解。
明确:制作题目的时候要保证题目的每一个步骤都应非常清晰,而且解题所得到的结果应该非常明白,不需要在验证上花费过多的时间。这一点无论是在结果还是过程上都应该保证。或者换一种方法来说,如果解题人已经确认了自己所想要执行的解题方法,那么在解题的过程中它应该能够得到一个关于这样做能否得到答案的明确反馈,尽量避免解题人浪费自己的时间从而保证一个良好的解题感受。
创新:创新不应该是单纯地去创造更多的规则、改造原有的范式的玩法、或者单纯地换一层“新皮”而怪瓶装旧酒,这样的方法并不能称为创新。比如在制作一个密码的时候,经常会有人“创造”出一门属于自己的“秘密”语言,其实不过就是规则复杂一些且用了一些新的“替代元素”的单表替代密码。这样的创新非常无趣。
一个好的创新可能更接近于“旧瓶装新酒”,把旧有的元素通过新的组合方式制造出更加新奇的解谜流程,这样的创新才更能够让双方都有一个非常好的感受。而更好的创新则应该是“新瓶装新酒”,但是我还没有达到这种境界所以不予讨论。
先更到这儿。
简单说一下大致的出谜题的步骤吧,挑着比较重要的详细说说,不重要的就暂且略过了。
确定出题的目的
对于我常玩儿的密码来说这一点并不重要,但是对于其他的一些解谜游戏这一点就比较重要了。作为一个出题人,首先应该考虑清楚自己是否要在此处设计谜题,设计的谜题究竟要起什么作用:究竟是通过谜题拖慢玩家的攻略速度,还是通过谜题完成剧情的过度,还是用于给予玩家重要的暗示或者下一场景/战斗所需要的重要道具等等。根据需求的不同,所要设立的谜题的类型也不一样。比如说你需要玩家在此处放慢速度并沉浸感受剧情,那么你需要的谜题可能就需要稍微长一些,然后要能够明确地串联起这段游戏中的几个重要剧情点。比如《战神2》中解放四匹马拉动小岛的谜题,虽然比较长但是能让玩家更加感受到场景的宏大壮丽,也可以算是一个不错的谜题。确定自己要加密的内容/传递的信息
确定自己想要应用的加密手法及相关步骤
对于一个密码或者谜题来说,有的时候为了避免自己所想采用的手法被一眼看穿,有的时候还需要引入一些迷惑性或有限地误导性的元素来增加题目的难度。这一点我根据具体的题目来说吧。根据加密的步骤与加密内容之间的相性对题目进行微调
有的时候你所想要加密的谜底和你所要采用的表达方式可能会有所冲突,在这种情况之下你就要根据实际情况要么在不改变原意的情况下改动你的谜底,要么有限度地改动你所想要采用的手法。如果还是不行,少侠请重新来过。第一遍复查扫除bug
在完全没有提示的情况下自己试解
我认为这一点以及下边几点是将一个谜题升华成好谜题的关键步骤。如上文所说,一个好的出题人是应该借由“谜题”这种方式与解题人完成沟通的。那么在这个前提下,出题人能够站在解题者的角度和思路上去观察、解读自己的题目就显得尤为重要了。如果你自己都讨厌自己创造出来的东西那它也不应该出来恶心别人对吧。在这种试解的情况下要尽力避免主观因素,觉得“我就是这么设计的所以玩家肯定会这么想”,这样是大忌。应该尝试走一遍根据题目所给出的信息所能达到的各种歧路,并将它们记录下来。然后尝试是否有其他的解法能够走通,最后统计解出最终解所需要的关键步骤,以便给出提示。根据试解情况扫除歧义项,并给出合适的提示
我认为如何给提示和怎样给出一个好提示是出题的时候最精髓,也最能体现、完成出题人和玩家的交流的部分,也是最能够体现一个出题人功力的一部分了。在这个环节中,你需要毙掉自己在试解过程中所发现的在有限少的步骤内不能确认走不通的歧路,避免产生不必要的时间浪费;毙掉可以在明显发现的、并且在有限少的步骤内就能得到其他合理解的歧路,避免产生不必要的误读;如果需要保证有且仅有唯一最优解的话,还要确保不会有其他的能够通向正解的方向。在完成了剔除不必要项之后,就要根据自己在试解中所尝试的一些歧路、所采用的一些关键步骤和自己设计题目时所采用的步骤进行对比,并给出一个明确且不容易引起歧义的提示了。需要注意的一点是:不要把你的提示做成另外的一个谜题,而应该让它尽可能的简洁明确,起到它应有的指引、除杂的作用。找一个无辜路人不知情者进行试解
修改提示
最终完成
如果你有兴趣的话可以自己做一做这个题目,先不要看我下面的分析。
(2416+5342)(362+37)=?
(5621+3425)(1346+2467)=?
(4325+126)(436+714)=?
(4631+3521)(6475+23514)=?
(1456+32145)(167+43)=?
(13564+231)(274+312)=?
(6153+4215)(6431+257)=?
(152+42157)(23+3)=?
原本的提示:两层题目蒙人流,专坑纸笔党。
针对牛关吃瓜群众的提示:1.最终答案形式为英文单词;2.仔细观察计算器;3在黑暗如何阅读?4.如果你得到了明确思路那么你一定能够确定这个思路是否正确。
用于校验的16位MD5码后四位:4a5b
首先确定我想要加密的单词原本是joyrider,而我想要采用的加密方式则是盲文。这一点上并没有什么过多可思考的,直接将单词转化为盲文的表达形式为:(245,135,13456,1235,24,145,15,1235)
然后则要确定自己想要掩盖盲文特征所用的手法了,我所想到的是通过晶体管的表现形式进行掩盖。如何掩盖呢,尝试在一组晶体管中找出重合的部分?看起来行得通啊。
但是单纯地这样并不够有趣,而且也很容易被看出。那么就尝试一下加一层误导吧,然后通过这一层误导给出正确解法的思路,不就既能达到有趣的目的,又加强了自己的加密方式,而且还能够剔除无法确认的其他思路了么?行得通。那么既然想要以晶体管的形式来表现这道题目,就再通过以晶体管表达数字的手法来加密出自己所想给出的提示吧,并且将原本的加密方式混入其中,形成最终的题目。
我原本想给出的提示是“重合的(chonghed)”,但是实际操作的时候发现并不能完成我所要的加密。然后我又尝试了其他的一些同义词,但是都不能被完美的表达出来。这时候我认为应该是我所选取的用来加密的谜底的特性可能不适合这样加密,但是我又不舍得这个好思路,于是我就查询了一下同义词,并最终选择了“swindler”来作为最终的答案。然后根据答案的变化我又将提示词转化成了“叠合处(diehechu)”,这样一来两套加密实现了完美的自洽,实现了我的需求。
于是原本的题目是这样的:
(1246+2345)(236+37)=?
(1256+2345)(1346+2467)=?
(2345+126)(346+147)=?
(1346+1235)(4567+12345)=?
(1456+12345)(167+34)=?
(13564+231)(247+123)=?
(1356+1245)(1346+257)=?
(125+12457)(23+3)=?
然后就是根据我所做出的题目进行试解了。在试解的过程中发现非常地顺利而且没有任何歧义,并不需要过多的提示,可以说已经比较优秀地完成了。但是问题还是太过于明显了,那么对于数字顺序进行一些无伤大雅的乱序吧,这样相对减小了特征但是又不影响解题。于是最后题目就变成了上面那样。
接下来所要面对的问题就是该如何给出提示了,这里原本的提示是针对一群有一定的解谜经验和能力的老鸟,所以我的提示比较简洁且不算太厚道。但是转发到牛关之后考虑到牛关里玩儿过类似游戏的人可能不会很多,于是就做了一些更详细的提示。
首先看到这些数字最大不超过7,最小为1,按照题目原文进行计算之后发现并没有有用的线索,那么这条路大概是走不通的,于是放弃。那么回过头来看提示,“专坑纸笔党/仔细观察计算器”,这里提示的肯定不是进行运算,而应该是计算其中某些更有特征的东西。再返回来观察数字,发现数字实际上非常有规律,有几个数组重复出现过,而且括号中元素最少为两个。那么在计算器中最符合这一特征的应该是晶体管数字显示器了,尝试带入,行得通,可以得出“diehechu”这一答案。
但是这个答案似乎并不具有实际意义,而且与提示不符,那么猜测这是通向真正解法和答案的提示。那么根据这一信息继续观察原本的题目,发现其中每一等式的重复元素非常多,将这些重复元素逐行提取出来进行观察,发现符合盲文规律,于是按照盲文解出答案swindler,虽然看起来还是被骗了但是符合题目和提示……
于是这就应该是最终答案了吧。
哦豁,还真是……
设计一个有趣又有难度的谜题,首先要保证这是一个好谜题。在此基础上,有趣体现在其表现形式、整体思路上的新颖而清晰。想要让题目有趣通常需要利用场景、解题方式的别出心裁、与剧情元素的契合程度等方面下下苦工。难度则通过谜题中各个步骤的解决难度和线索获得的难易度进行调节,一般来说是要通过缜密的逻辑链来钻人们的思维定式中的空子,造成一种出乎意料又合情合理的感觉。想要让“有趣”和“难度”有机结合起来,我觉得最恰当的可能就是利用人们的思维惯性进行表层的误导,当解题者发现自己被误导之后又能很快地找到正确的思路,发出类似于“原来如此,我怎么就忽略了/没想到”的赞叹,这样就基本算是成功了。“最是那一低头的温柔”。
还有一种思路,就是通过合理的提示“勾引”解题者去解决一个庞大谜题中的每一个细碎环节。这些细碎环节之间应该井井有条、环环相扣,之间的逻辑联系应该清晰明朗,逐步加深。这样诱使解题人逐步深入,从而欲罢不能。
当然了,我认为在整个设计环节中,最重要的就是如何在恰当的时机给出最恰当的提示了。提示大概是一个谜题的点睛之笔,是诱使人们继续玩儿下去的一种动力。一个好的提示完全有可能把原本的整个冗长庞大的谜题给盘活,一个不恰当的提示也完全有可能毁了你精心设计的谜题——它既有可能太过简单直白而让你的题目完全没有难度,又有可能太过晦涩而使你的简单题目无法被理解。提示不能成为题目之外的题目,应该尽量保证清晰明朗,但又不简单直白。
_(:з」∠)_哔哔了一大堆,不知道是否对大家有所帮助,挑着捡着看吧还是……
_(:з」∠)_顺便说一嘴,如果有人喜欢上边那种“题目cipher”的话,我可以尝试每周或者每X天在奶牛关出一个两个的大家玩玩儿……
如何将解谜游戏中的谜题设计得既有难度又有趣?
0 条评论