LV. 23
GP 288

【密技】給非洲朋友一個小小建議(轉蛋學問)

樓主 Irene rainsong
GP157 BP11
你是否認為自己轉蛋運氣很差,身邊都是10抽20抽泳裝出貨,自己卻200抽0三星,或連續出現三隻真步來亂的慘況?

對於這種現象,通常會有「命注定」、「挖礦理論」、「系統是不是有問題or工程師的陰謀」,「我的是非洲號」等各種幻覺,不信邪的會繼續課好幾單拚出貨,結果下場是19N

於是,非洲人的同伴如我寫了這篇,歐洲人就不用往下看了,看完說不定蛋運會下降(?)

先說結論:非洲人不要瘋狂般的連按10連抽,自覺運氣差請關掉遊戲,隔些時間再上去抽!


當然玄學信不信看個人,而接下來的內容就是我要向各位解釋,為何我會有這種結論。

這裡探討的不是你的業障問題,而是伺服器端程式是如何計算機率的?首先各位可能聽過所謂的「亂數」,但是你懂電腦程式中的亂數是什麼意思嗎?你知道「亂數」是如何產生的嗎?

電腦中的亂數是透過演算法計算出來的,只要將seed代入就會得到亂數。前面這段話包含一些專有名詞,講白話一點:亂數是透過數學式計算出來的,只要隨機代入變數就會產生亂數。

所謂的數學式就像:

5a + 6

a代入1得11
a代入2得16

OK,由於計算式是固定的,代入相同變數(seed)會算出相同結果,故程式不該重複使用相同seed來產生亂數。實務上伺服器程式會接收各種硬體輸入充當seed,例如鍵盤、滑鼠,因為我們認為鍵盤鍵位的觸發是隨機的,是不可預測的,因此拿這個隨機值當成seed計算亂數。

如果重複使用seed,或是演算法不夠好,會發生什麼事情呢?

這就好像把糖扔進麵粉後沒有充分拌勻,烤出來的餅乾有些很甜,有些卻沒味道。看到這裡,有沒有一種似曾相識的感覺

TMD周圍同事轉蛋都好香,怎麼自己扒出來的都是渣渣

實務上seed的採樣與亂數演算過程複雜得多,不在本文討論範圍內。但是請認清:電腦的亂數未必真的亂,它只是代入一個不可預測的因子,獲得不可預測的結果。


OK,接下來,為什麼說要關掉遊戲,等待一段時間再連上去抽呢?

通常伺服器計算亂數時是很消耗資源的,而且也沒那麼多seed可以滿足所有玩家使用。因此實務上伺服器會預先準備一張「亂數表」,大量計算亂數後填充至表內,等待玩家轉蛋時再從這張表依序取出亂數。

花凛問:你掉的是金色懸賞令,還是銀色懸賞令?

換句話說,這張表產生時就已經決定了許多事情,例如玩家會不會當歐洲人百發百中,或是連續各種歪。


作法一:同一亂數表不停重複使用(最糟糕的作法!)

為了節省伺服器資源,或者工程師蓄意這樣設計,只在伺服器開機時算出唯一一張亂數表,然後重複使用該表直到關機。更誇張一點是永遠固定死一張亂數表。

這種設計唯一好處是伺服器幾乎沒有開銷,再多人同時轉蛋也不會出現卡頓現象。但,假設這張亂數表沒弄好,亂數不夠亂,會發生某些玩家好幾百抽都零3星的現象,同時又有人單抽把老婆帶出場。

假設這唯一一張亂數表3星出貨率換算出來是1%,那麼所有人都會感受到老婆特別難抽,懷疑機率是不是被偷改過,其實不是。不過這種作法現在應該很少見了。


作法二:在系統產生新亂數表之前,重複使用舊表

seed採樣與亂數計算是需要花時間的,填充一張亂數表按照表的容量大小,可能會花費幾秒到幾十秒的時間。

這麼長的時間當然不能讓成千上萬的玩家排隊等待!因此舊表耗盡時,在新表還沒填充完畢之前,繼續從頭利用舊表的內容,這麼做大量玩家轉蛋時也不會感受卡頓,同時改進機率的分佈,是目前主流作法。

聰明的你馬上能懂,假設同時轉蛋的人太多,同一張舊表重複使用率就會增加。為何我建議非洲人不要瘋狂連抽?因為TNND你就是在重複使用那張出貨率1%的舊表!

那麼,為何要特地登出遊戲一段時間呢?

有些伺服器程式在玩家登入時,會將亂數表直接綁到你的連線上,讓你進入非洲人的世界線。這種如果不重登,你就等著抽到棄坑。


作法三:永遠保證使用新的亂數表

開銷很高,是牽涉到密碼學才比較需要用到的技巧,不太可能用在遊戲中。


我不知道這遊戲在伺服器端用的是哪種作法,在無法確定哪種作法的情況下,建議重登來避開不幸的狀況。

以上

祝福各位轉蛋順利

我要去打撈我的黑騎了(哭)
157
11
板務人員:

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】