資源描述:
《水果忍者解析及攻略》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、水果忍者解析及攻略首先解釋一下什么叫偽隨機(jī):在計(jì)算機(jī)、通信系統(tǒng)中我們采用的隨機(jī)數(shù)、隨機(jī)碼均為偽隨機(jī)數(shù)、偽隨機(jī)碼。所謂“隨機(jī)碼”,就是無論這個(gè)碼有多長都不會出現(xiàn)循環(huán)的現(xiàn)象,而“偽隨機(jī)碼”在碼長達(dá)到一定程度時(shí)會從其第一位開始循環(huán),由于出現(xiàn)的循環(huán)長度相當(dāng)大,例如CDMA采用42的偽隨機(jī)碼,重復(fù)的可能性為4.4萬億分之一,所以可以當(dāng)成隨機(jī)碼使用。(百度百科)簡單地說,偽隨機(jī)和抽樣很像,10個(gè)樣品有一個(gè)是次品,如果把次品固定第一個(gè),每次都只抽第一個(gè),這樣次品率就是100%,也就是偽隨機(jī)。真正的隨機(jī)不管你怎么抽只要次數(shù)夠多次品率都應(yīng)該趨于一個(gè)
2、10%的水平。?好了,言歸正傳。我們遺憾地發(fā)現(xiàn),《水果忍者》這個(gè)游戲中出現(xiàn)水果的種類、個(gè)數(shù)和時(shí)間等,也并非真的是隨機(jī)出現(xiàn)的。它也是一個(gè)偽隨機(jī)的游戲。我們的測試平臺有二,一是ios,一是android。其他平臺如windowsphone暫不討論。接下來,為了驗(yàn)證以上的說法。我們先對《水果忍者》這個(gè)游戲所玩的關(guān)卡進(jìn)行一個(gè)標(biāo)記。不妨將第一次啟動這個(gè)游戲,我們玩的第一局稱為關(guān)卡1,第二局為關(guān)卡2,以此類推。如果把游戲重啟的話,還要從關(guān)卡1開始玩。首先,我們發(fā)現(xiàn)每次玩的關(guān)卡1都是一樣的——這點(diǎn)非常感謝林亦園1Q84對ios平臺和androi
3、d平臺的驗(yàn)證。我們先討論IOS上的《水果忍者》——android大同小異——只要打開水果忍者并選擇香蕉模式,一開始你肯定會碰到這5個(gè)家伙:接著如果你一個(gè)水果都不切的話,那么在第50秒在屏幕中間的上方會掉下一個(gè)冰香蕉(Freeze):?不要切這個(gè)冰香蕉,也不切其他水果的話,第16秒屏幕左邊會扔一個(gè)狂熱香蕉(Frenzy):?這就是偽隨機(jī)。程序是固定的。有同學(xué)要說了,我的水果忍者關(guān)卡1可不是這樣的。首先你要確定你玩的到底是不是關(guān)卡1。怎么讓自己從關(guān)卡1開始呢:退出游戲,注意是退出而不是后臺,重新啟動游戲,如果你看到這個(gè)畫面:那么你的i
4、os進(jìn)入香蕉模式就和上面一樣了?!灸壳耙呀?jīng)有同學(xué)反映他們ios的關(guān)卡1開頭分別是[2個(gè)炸彈、2個(gè)蘋果](iphone用戶游戲來源于appstore)和[1個(gè)炸彈、幾個(gè)草莓]?和[?1個(gè)炸彈1個(gè)蘋果1個(gè)草莓]】出現(xiàn)這種情況的原因應(yīng)該是各位所玩的版本不同。而在android上什么都不切的話,香蕉出現(xiàn)的順序?yàn)椋罕憬?8(秒)?狂熱香蕉24?狂熱21?狂熱13【值得注意的是:在windowsphone上即使重新啟動游戲關(guān)卡1也是不盡相同的,應(yīng)該是wp設(shè)置了隨機(jī)種子吧?!康前l(fā)現(xiàn)這個(gè)偽隨機(jī)沒什么不起的。因?yàn)橥娓叻挚偸且兴?,上面的根?/p>
5、一個(gè)水果都沒切??墒俏覀兦辛怂蟀l(fā)現(xiàn)和沒切水果是不一樣的,特別明顯的是16秒時(shí)的狂熱香蕉不見了,在其他時(shí)候還出現(xiàn)了別的香蕉。于是我和林亦園1Q84開始討論到底是什么因素導(dǎo)致了水果出現(xiàn)順序與格局的改變。最直接的方法就是查看程序源碼,但這就沒意思了,和作弊一個(gè)意思,也超出了我的能力。所以只好悶頭繼續(xù)玩關(guān)卡1,得出4種潛在的影響因素:·水果(不包括香蕉)·香蕉(包括frenzy,freeze和double)·連切(combo)·炸彈最后排除水果、連切和炸彈3個(gè)因素的影響。因?yàn)樵?0秒以前不論如何切水果、如何連切、如何切炸彈都不影響5
6、0秒的時(shí)候掉出冰香蕉——除非你在51秒切到炸彈把冰香蕉轟沒了。同時(shí)發(fā)現(xiàn)切不切冰香蕉會導(dǎo)致后面的格局不盡相同。?顯然香蕉是最重要的因素,因?yàn)橄憬队绊懞竺娉鰜淼南憬?,而且要玩高分香蕉越多也就越容易。但是每次玩關(guān)卡1切到香蕉之后再出來香蕉的時(shí)間和種類也似乎不一樣了。里面肯定還有什么沒發(fā)現(xiàn)的變量,我不認(rèn)為是隨機(jī)事件或者大家習(xí)慣稱的人品。因?yàn)橹灰惚M量保持和上次的切法,甚至能切出和上次一樣的格局和差不多的分?jǐn)?shù)——為什么不是一樣的分?jǐn)?shù)呢,因?yàn)樗瓦B切不影響出香蕉,所以這次你多切幾個(gè)水果和連切分?jǐn)?shù)自然就高了——?dú)v史會重演即是最好的證明,只要你
7、能保持和上次一模一樣的軌跡,分?jǐn)?shù)肯定相同。到這里毫無頭緒的時(shí)候,林亦園1Q84建議我去找找有沒有相關(guān)的攻略,我心想大部分人傾向于認(rèn)為得分高低是人品作祟,所以想必不會有這方面的攻略。但是我還是去找了,甚至還讓我找到了一個(gè)視頻。我不知道視頻作者是否認(rèn)同上述的觀點(diǎn),但是其玩法的本質(zhì)和我的想法不謀而合。視頻里面的一句話也一針見血地提醒了我——第一個(gè)冰香蕉一定要消滅在萌芽狀態(tài)——是不是前面提到的未知變量就是香蕉出現(xiàn)后所處的位置或時(shí)間呢。果然,我又玩了幾局關(guān)卡1。對于未知變量的結(jié)論是切到香蕉的時(shí)間。每個(gè)香蕉大概出現(xiàn)1秒鐘,將這一秒鐘分為幾段,
8、在每段內(nèi)切到香蕉都會導(dǎo)致后續(xù)香蕉的變化。以50秒出現(xiàn)的冰香蕉為例子,一出來就把它切掉,在第31秒屏幕左邊會扔出一個(gè)雙倍香蕉;而在50秒的冰香蕉快掉落時(shí)切掉,在第33秒則又掉落一個(gè)冰香蕉。接著對31的雙倍香蕉和33秒的冰香蕉進(jìn)行分析也得出相同的結(jié)論。