最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【冰話XS】009:真假隨機 誰是真招誰把戲

2022-04-29 03:20 作者:八重冰冰姬-麗穎明蘭  | 我要投稿

☆※冰の引言※☆

前文主要介紹了 XS 函數(shù)中的測試神器 xsChatData() 函數(shù)獨特的全局廣播在多人局中可以堪稱利器,徹底打破了發(fā)送聊天必須針對特定玩家的限制,一條頂八條!以往對于帝國中的隨機部分介紹不是語焉不詳,就是淺嘗輒止,這方面的研究還不算太到位。本文屬于獨家全網(wǎng)首發(fā),是第一篇深入全面解析帝國中的隨機(Random)這一效果的教程,從零開始悟隨機,看這篇足矣。關(guān)于真假隨機的研究,本文的從全新角度の經(jīng)驗總結(jié)與亦是首次披露。不多贅述,讓我們馳騁于隨機的世界,感受這一效果的獨特奧妙吧。

☆※本節(jié)の紹介※☆

☆※隨機百分比の廬山真面目※☆

俗話說:"兵無常勢,水無常形",可以說戰(zhàn)役設(shè)計者和游戲玩家總是存在著套路與反套路的斗爭.為了讓玩家沒那么容易看穿猜透設(shè)計者的思路,使用隨機事件成為設(shè)計者必然的選擇。把事件的判定權(quán)交給電腦自行判定,每次打開同樣的場景都會發(fā)生不同的結(jié)果,這樣既可以很大程度上減輕通過先開全圖背板對場景趣味性大幅降低的負(fù)面影響,又能使游戲過程變得充滿未知與刺激,在驚喜中略帶有跌宕起伏。

在帝國時代2決定版中,就有一個專門用于隨機的條件,官方名稱為機會(Chance),這名稱在游戲效果上不太準(zhǔn)確,最準(zhǔn)確的翻譯名應(yīng)為"隨機百分比(偽隨機)"。

為什么會起這個名字,顧名思義,這個隨機百分比不是真的隨機,而是微軟炮制出來的偽隨機。乍一看,“隨機百分比”這個條件里,只能填寫一個參數(shù),理論上說,這個參數(shù)應(yīng)該指的就是觸發(fā)的概率值(范圍0-100)。比如設(shè)置20,就是有20%的概率觸發(fā)該效果,80%的概率不觸發(fā)該效果,這樣的結(jié)果才是滿足設(shè)計需求,但如果你這樣寫的話一定達(dá)不到你想要的效果。

究其原因,是由這個條件的運行原理所決定的,這是一個無條件自循環(huán)的條件,就算你不開循環(huán),它也照樣會循環(huán)觸發(fā),這點相比其他觸發(fā)條件算是比較特殊的。舉個淺顯易懂的例子:就好比你丟骰子,你的設(shè)想是20%的概率搖到6, 80%的概率骰不到6,無論是否搖到6,我都只骰一次;但是微軟的想法卻是20%的概率第一次搖到6,不論我骰多少次,我必須要骰到6,所以骰到6這個是個必然事件,這個條件的觸發(fā)機制是以骰到第一次6作為終結(jié)條件的,所以這從根本上違背了概率學(xué)的原理,就算你設(shè)置1%,這個條件即使再苛刻,終究還是會達(dá)到觸發(fā)條件,只是這個骰的時間越長,觸發(fā)時間也就越長罷了。如果我們寫個開場50%概率獲得1000黃金,單單使用這個條件是無法實現(xiàn)預(yù)想效果,你必須通過寫兩個一樣"隨機百分比"條件的觸發(fā)才能實現(xiàn),非常的麻煩。

讓我們從一個案例中洞悉要實現(xiàn)一個簡單的隨機功能有多繁瑣了:為了和玩家斗智斗勇,減少玩家通過背板記地圖走捷徑枉費作者一番設(shè)計苦心的情況,我們希望地圖上AI的火星兵可從隨機點神出鬼沒出現(xiàn),而不是在固定點進行刷兵或者是在同一點可刷出隨機的兵種諸如此類。比如說同一點隨機刷出步弓、騎兵、步兵,概率各為三分之一,需要如下所示編寫觸發(fā):

這里需要強調(diào)的是數(shù)值這里只要不是0或100其實都隨意,畢竟原理在上面的部分已經(jīng)做了充分的闡明,因為這里的數(shù)值并不是我們傳統(tǒng)意義上認(rèn)為的概率,所以在等概率隨機設(shè)計場景中該數(shù)值無意義。這里的觸發(fā)邏輯大概思路如下:三個觸發(fā)代表一個隨機事件的三個不同分支,系統(tǒng)先搖到某個分支,就關(guān)閉其他分支。如果在觸發(fā)一個分支后不及時關(guān)閉其他分支的話,其他分支也會被觸發(fā),只是時間長短問題。將其依此規(guī)律延伸開來,如果要做N個分支就要寫N個觸發(fā),觸發(fā)了這N個觸發(fā)中的某一個的同時,還必須寫上關(guān)閉其他 N-1 個分支的觸發(fā)效果,不可不謂是非常繁瑣了,特別是分支越多的時候這個隨機系統(tǒng)設(shè)計的工作量將成指數(shù)式增長,當(dāng)我們需要設(shè)計N個分支的時候,使用隨機百分比需要寫 N*(N-1) 條關(guān)閉觸發(fā),想想都知道有多恐怖了。觸發(fā)的先后順序必定存在延遲,所以用隨機百分比不可能實現(xiàn)N分之一的嚴(yán)格等概率的設(shè)計,偽隨機可以說是名副其實的。當(dāng)然那種什么第一種設(shè)置數(shù)值為33,第二種設(shè)置數(shù)值為50,第三種設(shè)置數(shù)值為100來做嚴(yán)格等概率三分之一的做法純屬扯淡,這種盲猜的三分之一是經(jīng)不起考證和推敲的,也沒辦法通過理論推導(dǎo)證明。綜上所述,隨機百分比(偽隨機)不可能承擔(dān)起嚴(yán)格等概率的隨機設(shè)計的重?fù)?dān),也不可能實現(xiàn)這一目標(biāo)。隨機百分比可以說只是花拳繡腿,"假把式"實錘無疑。

☆※偽隨機の局限性※☆

從上文的分析,可以清晰明了地得出隨機百分比(偽隨機)的局限性,羅列如下:

  1. 無法實現(xiàn)嚴(yán)格的等概率隨機設(shè)計,簡單的設(shè)計無從談起

  2. 多并發(fā)相互獨立判定的原理注定了多分支的隨機設(shè)計需要搭配海量的關(guān)閉觸發(fā),繁瑣

  3. 作為一個恒成立的條件,觸發(fā)時間無法得到精準(zhǔn)把控,全程看臉,極不靠譜

烈火現(xiàn)真金,隨機百分比可以說只是花拳繡腿,"假把式"實錘無疑。但是這"假把式"是不是真的沒有存在價值,真的一無是處?這里可以給出肯定的答案:是的!隨機百分比是個純純廢物的條件,在 XS 橫空出世之后,它的歷史使命已經(jīng)完成,業(yè)已可以光榮退休了,XS 函數(shù)既能實現(xiàn)等概率隨機設(shè)計,也能實現(xiàn)不等概率隨機設(shè)計,它行的人家也行,人家行的它卻不行,長江后浪推前浪,隨機百分比已然成了可有可無的存在,有它沒它已經(jīng)無足輕重。退一萬步講,在不等概率的隨機設(shè)計方面,隨機百分比還算是能有一定的用武之地,這應(yīng)該算是偽隨機僅存の打開方式。

☆※偽隨機僅存の打開方式※☆

不等概率的隨機設(shè)計中,隨機百分比中的數(shù)值代表該分支可能觸發(fā)的權(quán)重,數(shù)值越大權(quán)重越大,與此同時觸發(fā)的概率也就越大。舉個栗子,我們希望設(shè)定75%獲得100黃金,25%概率獲得1000黃金,此場景下兩者概率并不相等,我們可以把隨機百分比的值一個設(shè)定為75,另一個設(shè)定為25,或者一個設(shè)定值是另一個設(shè)定值的3倍即可,這樣兩者并發(fā)執(zhí)行概率的判斷,觸發(fā)"獲得100黃金"的概率就會比"獲得1000黃金"高2倍,貌似形成了75%對25%的概率(其實只是錯覺罷了)

偽隨機使用最成功的案例莫過于日本史詩長篇北條氏系列中獨創(chuàng)的御守系統(tǒng)(Omamori)這種在游戲里首創(chuàng)的抽獎系統(tǒng),具有非常廣泛的普適性,基本上來説,換個背景,換個內(nèi)容,即可完美套用,像之后的自定義戰(zhàn)役大理王朝也借鑒了這一點來進行設(shè)計。毋庸置喙,這個系統(tǒng)如若能推廣開來,足以在一定程度上改變目前建毀戰(zhàn)役千篇一律的思維定式,為戰(zhàn)役創(chuàng)新性增添一抹亮色。

而抽獎自然要分為一二三等獎,越好越高級的獎勵中獎概率越低,自然就不能搞均分吃大鍋飯,肯定是要有獎勵差異化和概率不等化,那么偽隨機就到了能派上用場的時候了。

對于隨機百分比來說,它的強項在于不等概率的隨機設(shè)計,畢竟它無法做到嚴(yán)格的等概率隨機。而在不等概率方面,設(shè)計不需考慮是否真正達(dá)到相關(guān)骰取概率,只需讓不同分支的骰取概率拉開一定數(shù)量級的層級差距即可。不同分支的數(shù)值大小則能恰好體現(xiàn)骰取權(quán)重之間的對比,什么分支容易骰取,哪些分支較難骰取均由骰取權(quán)重所決定。

當(dāng)然想當(dāng)歐皇非酋的夢是每個人的夢想,但是真正骰取之時好不好彩還是看臉、看人品、看運命的,還是那句老話:"因緣到了,一切都將水到渠成",所以嘛,對于抽獎這件事而言放平常心,毋論抽到啥都是命運使然,好不好都是你的運命。

最后小結(jié)一點,隨機百分比只能用在不等概率的隨機設(shè)計當(dāng)中,而等概率隨機設(shè)計怎么解決呢?那就留待真隨機的粉墨登場帶給我們完美的答案吧。

☆※真隨機の無雙工夫※☆

有假必有真,你方唱罷我登臺。如果想做嚴(yán)格的等概率隨機設(shè)計,對于XS腳本調(diào)用函數(shù)而言舍我其誰,上佳之選.沒有比之更適合的了。XS腳本調(diào)用函數(shù)在隨機這個領(lǐng)域主要由3個函數(shù)構(gòu)成.而這3個函數(shù)以是否含參(包含參數(shù))為維度,又是花開兩朵各表一枝,分成兩類:分別是全隨機函數(shù)條件隨機函數(shù),而這兩者統(tǒng)稱真隨機函數(shù)。

☆※全隨機函數(shù):xsGetRandomNumber()※☆

xsGetRandomNumber()函數(shù)作為一個不含參的全隨機函數(shù),范圍是系統(tǒng)固定死的:0 ~ 32766,我們只能通過數(shù)學(xué)運算調(diào)控它閾值的范圍。比如典例就是一個普適性的例子,任何變量以及任何玩家的資源均可以通過全隨機函數(shù)作隨機化處理,而且默認(rèn)情況下該函數(shù)只會運行一次,與傳統(tǒng)概率學(xué)的定義完美吻合,與下面要介紹的條件隨機函數(shù)堪稱等概率隨機設(shè)計的典范。

這里闡述一下隨機虧本范圍的定義及應(yīng)用。隨機虧本范圍設(shè)計者希望在多大的概率下通過隨機化系統(tǒng)后會產(chǎn)生虧本的范圍,比如說我的隨機化系統(tǒng)希望有2/3的人在通過隨機化系統(tǒng)后能產(chǎn)生增益,1/3的人則蒙受損失,此時的隨機虧本范圍(?y/x?)即為1/3。以此類推,如若想40%的人蒙受損失,則該模型下的隨機虧本范圍數(shù)值為2/5等等。

關(guān)于全隨機函數(shù)的隨機化系統(tǒng)設(shè)計可以有很多別樣的玩法,筆者這里僅列舉最簡單的入門級案例供各位理解該函數(shù)的實際應(yīng)用場景,希望能拋磚引玉,在此基礎(chǔ)上設(shè)計出更新穎更別樣的系統(tǒng),實現(xiàn)各自符合自身要求的理想效果。

☆※條件隨機函數(shù)※☆

相比于全隨機函數(shù),含參的條件隨機函數(shù)在等概率隨機設(shè)計方面可以更自如的發(fā)揮。

--- xsGetRandomNumberLH()函數(shù) ---?

  • 特別提醒:目前因游戲存在 bug 的原因,xsGetRandomNumberLH函數(shù)實際效果與同區(qū)間長度的xsGetRandomNumberMax函數(shù)的實現(xiàn)效果完全一樣。實際該隨機數(shù)出現(xiàn)的區(qū)間在?0~(H-L) 之間,包含0但不包含 (H-L) ,所以需要使用規(guī)避措施進行優(yōu)化。

  • 規(guī)避措施の訣竅:詳看下面典例分析的介紹

--- xsGetRandomNumberMax()函數(shù) ---?

本函數(shù)目前游戲中的效果與上面介紹的條件隨機函數(shù)的實現(xiàn)效果完全一致,兩者目前可以混用。與前者不同的是,該函數(shù)僅有一個參數(shù),代表設(shè)定上限,設(shè)定下限強制為0。下面還是以日本史詩長篇北條氏系列中匠心獨創(chuàng)的閃耀暖暖換裝系統(tǒng)作為使用案例講解該函數(shù)肯定具體應(yīng)用。

當(dāng)然,這套系統(tǒng)可以移花接木到任何等概率隨機設(shè)計,在大框架不變的基礎(chǔ)上結(jié)合設(shè)計者個人的需求,通過更換效果可以完美實現(xiàn)所有的等概率隨機設(shè)計。任何等概率隨機設(shè)計上的問題,碰到 XS 的真隨機函數(shù)的真功夫也必將迎刃而解。

☆※真隨機の不等概率隨機設(shè)計※☆

曾經(jīng)筆者也認(rèn)為真隨機不能實現(xiàn)不等概率的隨機設(shè)計,但是筆者發(fā)現(xiàn)能進行等概率隨機設(shè)計的一定也能進行不等概率隨機設(shè)計。關(guān)于前面的案例御守系統(tǒng),如果用真隨機來做設(shè)計的話,遠(yuǎn)比使用隨機百分比簡潔明了,而且在概率上更具象化更精準(zhǔn)。

在 XS 中實現(xiàn)嚴(yán)格不等概率的設(shè)計の原理:通過設(shè)定幾個模式,然后分配各自獨立不均等的隨機數(shù)區(qū)間,使隨機數(shù)落到各個區(qū)間的概率不同產(chǎn)生差異,從而實現(xiàn)利用等概率原理設(shè)計出不等概率的效果。

當(dāng)然,如果使用外掛 XS 文件,在沒有256字符上限的束縛之下,甚至可以一個觸發(fā)搞定。

至此, XS 真隨機函數(shù)可以解決隨機界一切的問題,XS 真隨機函數(shù)無敵的存在說明,隨機界任何需求 XS 真隨機函數(shù)都能完美勝任,那還要什么雞肋的隨機百分比呢,一曲涼涼唱罷,迎接偽隨機的那只能是無奈的落幕,畢竟時代已然變了。

☆※真?zhèn)坞S機の選擇優(yōu)先級※☆

縱覽全文,我們可以總結(jié)出以下經(jīng)驗之談:在任何條件下都應(yīng)選擇真隨機函數(shù),如若需要等概率隨機設(shè)計,首選真隨機函數(shù)自不必說,而若需要在不等概率隨機設(shè)計上有一番作為,真隨機函數(shù)依然是不二選擇。設(shè)計者可結(jié)合自身需求,對號入座進行優(yōu)選法,尋覓解決需求方案的至佳途徑。

☆※冰の小結(jié)※☆

本節(jié)從隨機百分比開始講起,繼而帶出了帝國中真隨機偽隨機之爭,而后以詳實的例子對真?zhèn)坞S機的使用指南娓娓道來,所論述之內(nèi)容均為獨家首發(fā),可以肯定的說,這定是目前國內(nèi)外對于帝國時代2決定版中關(guān)于隨機的使用最詳細(xì)最全面的解讀。下期將重點聊聊資源、變量之間的萬物互聯(lián),想洞悉這物聯(lián)網(wǎng)世界之無窮奧妙,下期不見不散!

欲知后事如何,請聽下回分解

私の心はいつも氷氷です?

Cly0806

04/29/2022

【冰話XS】009:真假隨機 誰是真招誰把戲的評論 (共 條)

分享到微博請遵守國家法律
孟津县| 奉贤区| 同心县| 都匀市| 武安市| 布尔津县| 乌拉特前旗| 泉州市| 亚东县| 江川县| 开平市| 剑川县| 南宁市| 牟定县| 普宁市| 虞城县| 田东县| 晴隆县| 泌阳县| 云安县| 西和县| 米泉市| 西盟| 游戏| 玉龙| 香格里拉县| 平和县| 武夷山市| 民县| 上高县| 宁波市| 巴林左旗| 涞水县| 吐鲁番市| 江华| 丘北县| 永和县| 南投市| 遵义县| 寿阳县| 白河县|