精華區beta C_Chat 關於我們 聯絡資訊
※ 引述《elase2000 (吉米黃)》之銘言: : 其實會造成原Po疑問的地方 : 不是在於電腦是不是能做出完全隨機 : 問題在於隨機數的機率是否固定 : 比如說產生1-100的隨機 : 無法保證每一個數字產生的機率是1/100 : 當然母數夠大時是可能可以保證 : 簡單的解法就是做一個卡池 : 比如說ssr比率是1%,sr比率是3%,s比率是10% : 那100張的卡池中就會放入1張ssr,3張sr,10張r : 這樣就可以確定機率是固定的 : 亂數在這邊是決定從卡池的哪時開始抽 : 所以卡池被抽出來的順序是固定的 : 而在其些情況下可以被人重置卡池抽的位置 : 也造成大家覺得隨機不夠隨機的問題 直接用回文表達好了。 其他遊戲我不確定, 魔物再進行任務時煉金表會+1~+2(跳過一行/兩行) 神奇寶貝在生蛋領取後但位會+19?~+22?,放棄領取後會+1 也就是,玩家以正常方式遊玩的時候,不會真的抽完這100張, 可能只抽個其中10張就跳到下一輪了。 如果有一個臉特別黑的非洲人,他要的結果每次都在被跳過的部分, 這似乎比大樣本後結果最終會趨近於期望值還不能保證玩家在多次遊玩後得到要的結果。 如果不是程式面無法真的每產出一次結果當下隨機, 那從遊戲設計面來說我也好奇可能有什麼原因這樣做,但似乎不能說是為了保證機率? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.209.137 ※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1520402125.A.1B2.html
gn00399745: 先以非洲人當前提來說這個方法不好本身就是種統計偏差 03/07 14:01
gn00399745: 了 03/07 14:01
FallenAngelX: 樓上那也不是重點 重點是這種做法有什麼好處嗎? 03/07 14:02
FallenAngelX: 目前一堆人在說這是為了讓玩家感受到確實的機率 03/07 14:02
FallenAngelX: 但不論是抽卡還是MHW都沒有這種感受啊 XDDDD 03/07 14:03
gn00399745: 用內建rand其實也是亂數表呀 03/07 14:04
KuBiLife: 整體機率趨近於設定好的機率就好 03/07 14:06
FallenAngelX: 所以他的問題不就是 為什麼不當下取隨機(ex系統時間 03/07 14:06
lordmi: 我總覺得這問題越來越牛角尖了... 回到單機/查表法這兩個 03/07 14:06
FallenAngelX: 而是固定的seed或是先生好隨機表 03/07 14:06
gn00399745: 當下取時間種子也是用亂數表啊 03/07 14:06
lordmi: 前提的話,就很簡單:機率平衡不是大部分設計的優先 03/07 14:07
FallenAngelX: 固定seed的內建rand跟事前隨機表這兩者也不是議題 03/07 14:07
FallenAngelX: 所以你沒看懂他的問題嗎...Orz 03/07 14:07
gn00399745: 用時間當種子容易被物理方法抓到表單結果 03/07 14:07
FallenAngelX: 他舉的例子 MHW現在用的方法 比時間還容易抓欸 03/07 14:08
FallenAngelX: 結果通通都是固定的 然後你說是因為系統時間容易抓 03/07 14:08
lordmi: 單機設計的大前提是Losing is fun才對 03/07 14:09
gn00399745: seed是用來查表的 表單是不變的 03/07 14:10
gn00399745: 你可以控制時間seed就可以讓自己落在想要的亂數位置 03/07 14:11
zseineo: 我猜工程師根本沒想那麼多,就習慣這樣寫了(誤 03/07 14:12
gn00399745: mhw的控制亂數方法並不能窺見表單全貌 他是預先偷看之 03/07 14:12
gn00399745: 後的幾種結果而已 03/07 14:12
gn00399745: seed被破解後是會像寶可夢那樣可以100帕控制結果 03/07 14:13
FallenAngelX: 那seed會變動的情況下容易被破解 還是seed不變動? 03/07 14:14
gn00399745: seed不變動你破解不了 因為你無法窺見表單全貌 你只能 03/07 14:15
gn00399745: 知道自己的結果 03/07 14:15
silentlich: 看你seed如何變動,如果根本是開機秒數的話...XD 03/07 14:16
gn00399745: seed可控制的話 一個人抓到某個時間會有特定結果那就 03/07 14:16
gn00399745: 是所有人受惠 03/07 14:16
seaEPC: 這就是單機(PC/遊戲機)的難點啦,你難以取得足夠隨機的來源 03/07 14:21
seaEPC: 做seed,除非有別的辦法收集環境雜訊之類的.. 03/07 14:21
seaEPC: MHW則是另一個問題,seed固定,S/L造成取第N個數字的動作也 03/07 14:23
seaEPC: 能重現,結果就是玩家能偷窺後面的結果 03/07 14:23
ssccg: seed固定不就等於寫死的結果,那還用隨機幹麻,應該是seed 03/07 14:28
ssccg: 重設的時機和seed的來源分開談吧 03/07 14:29
kaj1983: 你的例子變成公式化不是隨機了 03/07 15:45
kaj1983: 以前回合制rpg敵人出招固定但暴擊隨機 03/07 15:48
kaj1983: 會有的debuff也是隨機 03/07 15:49
GKki2012: 對於只會寫srand(time(NULL))的我來講 這些回應好精彩 03/07 15:57
ZMTL: 但MHW在知道結果後,就可以用內建的機制在不花資源的情況下 03/07 15:59
ZMTL: 掉過不想要的,某方面而言差異只在查表這件事情要手工而不是 03/07 16:00
ZMTL: 像PM被解到你給他seed他給你整張表(? 03/07 16:00