Re: [專欄] 抽卡玄學?從科學角度來分析抽卡兩三事

作者: sixthday (姬[TORCH])   2018-04-04 14:18:45
又不是啥非常嚴謹的科學研究
我相信實作上就是直接呼叫 XX 語言內建的函式來產生亂數
一般來說這種函式的運作方式就是
根據一個輸入值(稱作 seed),去翻出一張已經寫死的亂數表然後取出數字
說白一點,輸入 1 就拿第一張亂數表;輸入 2 就去拿第二張
只要 seed 不變,拿到的亂數表都會一樣
範例: 開了兩個 Python 終端用一樣的 seed 產生亂數,連順序都沒變
https://i.imgur.com/Z3INgdv.png
那最常拿來決定 seed 的方式是啥? 用當下的系統時間當 seed
這不就剛好拿來解釋整點神教52神教的合理性嗎 XD
不過真正拿來當 seed 的也沒人知道是啥,畢竟程式碼沒放出來
覺得不可能這麼蠢拿當下時間當參數?
以為當年 MHP3 的護石真的是隨機出嗎?
遊戲內建了好幾張表格決定這次啟動後可以挖到啥護石
而會讀取哪張表格則是看遊戲啟動時的 PSP 時間(秒)
要是進錯時間,就算從當年挖到現在大家都在刷歷戰古龍了
還是會挖不到特定護石
https://www43.atwiki.jp/mhpomamori/pages/25.html
所以單純用科學說玄學不存在是有問題的
實作上就是會發生一些玄學(=亂數調整)的操作空間
記得離散數學會提到怎麼產生夠亂的亂數
不過我已經忘光了
有缺誤請其他ㄉㄉ補充指正
作者: Wardyal (Wardyal)   2018-04-04 14:23:00
我只知道srand(time(NULL)而已
作者: dephille (一鍼同體!全力全快!)   2018-04-04 14:45:00
很多會用系統時間當seed沒錯。所以你知道系統時間精度會用到哪個單位嗎?
作者: waloloo (ARIAxヨシノヤ )   2018-04-04 15:00:00
真三三還幾要調系統時間刷護衛
作者: rofellosx (鏖)   2018-04-04 15:33:00
現在我都改用Guid.NewGuid().GetHashCode當種子
作者: AN94 (AN94)   2018-04-04 15:42:00
馬的只有大學生才會拿時間來當亂數好嗎
作者: tomwhite (小白)   2018-04-04 17:58:00
這就難說了 你怎麼知道設計者有沒有腦為了方便拿時間當參數當然有可能
作者: isaswa (黒丸)   2018-04-04 19:00:00
時間平方當參數 搞定

Links booklink

Contact Us: admin [ a t ] ucptt.com