Re: [閒聊] 關於抽卡技巧

作者: Nt1 (用功點吧!)   2017-05-23 13:10:17
吃飯中沒事來回應一下,小弟是軟體工程師,對於cc的背後傳輸有做過一些研究,看到推文(或是巴哈)很多似是而非抽卡理論都並不完全正確。
先說結論:
有沒有法老時間? 我相信有,但每個人不一樣,甚至每天都有可能不一樣。一天內也絕對不只一個時段,每個時段的長短也不一樣。短可能短到幾十秒內而已。
抽到什麼卡片,和時間有「絕對」的關係,至於這個時間,是你回ap時間,抽到某卡後的時間,或是如何如何的時間,就不得而知了。
反正和時間沒關的東西都不會影響你抽卡的結果就是了。(看過有人說很黑的話,把遊戲退出再開一次試試看,這就跟拔獅子的毛一樣啊…)
再說原理:
當你按下轉蛋鍵,開始轉蛋,畫面的右上方會出現 connecting 對吧,這時就是你的手機和伺服器溝通的時後了。
那手機會傳什麼資訊給伺服器?
會有以下的資訊:
- 你是誰(uuid)
- 哪個酒場
- 用什麼抽卡 (卷/幣/石...之類的)
- 現在的時間,以timestamp表示 (timestame就是一串看很大的數字,經過轉換後可以表示年月日時分秒)
- 你要轉幾次 (單抽/9連抽)
對,只有以上資訊而已。
伺服器收到後經過處理,然後跟你說
- 你得到的卡片是誰
- 你得到的卡片idx是什麼
這兩點不太一樣,舉例來說,你抽到兩張姐姐,第一點指的就是「姐姐」這張卡片代號,例如75號好了
第二點則是每張都不同,有點像是卡片的身份證字號(唯一識別碼)。例如123456,123457這樣。
所以你得到兩張75號的卡片,卡片號碼分別為123456, 123457。
接著,做了一個實驗:
我在抽到ssr後,記錄下該次發送的所有資訊,再對伺服器發送一次「一模一樣」的資訊,包含時間資訊(timestamp)。
也就是說,真實世界的時間和我跟伺服器端說的時間是不同的喔。
然後伺服器回應給我「一模一樣」的SSR,連身份證字號都相同,看到這裡別開心的太早,因為連身份證字號都相同,所以視為同一張卡,我並沒有得到兩張ssr。(但石頭還是會少)
接著,我把timestamp加一秒,再送一次,就得到不同的卡片了。
所以伺服器會以收到「你跟他說你抽卡的時間」,也就是收到的timestamp,來決定要讓你抽到什麼卡,以及產生對應的卡片身份證字號。
為什麼九連必金,其實是因為九連抽的資訊其實只有一個timestamp,伺服器一起幫你產生這九張卡,所以他當然知道你這九張卡要面要不要塞一張金卡給你。
九連分開抽會不會必金?這我沒做過實驗,所以不知道,如果「是」的話,表示伺服器會參考你上一次的抽卡結果來決定這次的結果。
就像推文裡講的,有法老時間就會有臉黑的時間,把所有玩家的資料拉大來看,就會是接近官方說的7%,有人歐就會有人黑,至於一些抽卡的都市傳說,聽聽就好,不一定適合你。
至於更誇張的,像是把遊戲重開,或是先做什麼事再抽卡,會重置你的抽卡機率這種就別信了。
有人說什麼抽了3單一張ssr也沒有,有人一抽入魂,其實都是整個群體中的一小部份而已,若以上帝視角來看,ssr的機率應該就是會和官方宣稱的差不多的。
大家都想拼成為一抽入魂的那個人,但其實瞭解到背後原理後,就會知道這是非常難的,因為你跟本不知道你的timestamp會被伺服器端怎麼運算來給你卡片。
如果有人想要再做一些不同的實驗,來驗證一些統計的實驗也可以和我說。
※ 引述《zorroptt (毛毛鼠)》之銘言:
: ※ 引述《hsnu7980 (老二)》之銘言:
: : 小弟由於最近在別款遊戲(少女前線)的聖造活動
: : 使用了以時間作為隨機因子來抽卡(造槍)
: : 詳情不再贅述,畢竟也不算是有經過計算及統計的方法
: : 不過之所以選擇用時間當作參考,主要是歷經了鎖鏈這款遊戲的洗禮
: : 比如曾經有一段時間流行討論法老時間的存在等等
: : 小弟在這裡想要請問各位大大是否看過一套說法:
: : 抽卡是根據AP的回覆時間作為時間SEED的,然後再倒數歸零的時候按下抽卡會有較高機率的高星卡面,小弟確信有在某一篇(可能不是PTT)看過所以想神一下那篇文章。
: : 另外還想做個小調查,版上各位相信或不相信時間流或是法老時間等等?
: : PS:踏破結束,接著聖撈整個就不想玩登入遊戲QQ
: 其他遊戲沒啥感覺
: 但鎖鍊我是相信的
: 鎖鍊一直以來我都覺得連抽和隔段時間單抽 機率差很多
: 我是沒特別抓時間 通常就是上班抽一張 下班一 睡前一
: 就算沒中五星 出四星體感也是特別高
: 但同樣方法我拿去抽其他遊戲就完全沒效果 就算刻意挑深夜抽也沒用XD
※ 引述《zorroptt (毛毛鼠)》之銘言:
: ※ 引述《hsnu7980 (老二)》之銘言:
: : 小弟由於最近在別款遊戲(少女前線)的聖造活動
: : 使用了以時間作為隨機因子來抽卡(造槍)
: : 詳情不再贅述,畢竟也不算是有經過計算及統計的方法
: : 不過之所以選擇用時間當作參考,主要是歷經了鎖鏈這款遊戲的洗禮
: : 比如曾經有一段時間流行討論法老時間的存在等等
: : 小弟在這裡想要請問各位大大是否看過一套說法:
: : 抽卡是根據AP的回覆時間作為時間SEED的,然後再倒數歸零的時候按下抽卡會有較高機率的高星卡面,小弟確信有在某一篇(可能不是PTT)看過所以想神一下那篇文章。
: : 另外還想做個小調查,版上各位相信或不相信時間流或是法老時間等等?
: : PS:踏破結束,接著聖撈整個就不想玩登入遊戲QQ
: 其他遊戲沒啥感覺
: 但鎖鍊我是相信的
: 鎖鍊一直以來我都覺得連抽和隔段時間單抽 機率差很多
: 我是沒特別抓時間 通常就是上班抽一張 下班一 睡前一
: 就算沒中五星 出四星體感也是特別高
: 但同樣方法我拿去抽其他遊戲就完全沒效果 就算刻意挑深夜抽也沒用XD
作者: moritsune (君をのせて)   2017-05-23 13:20:00
stopper是會累計的,分開抽也一樣,server會記錄之前結果
作者: hsnu7980 (老二)   2017-05-23 13:23:00
「然後伺服器回應給我「一模一樣」的SSR,連身份證字號都相同,看到這裡別開心的太早,因為連身份證字號都相同,所以視為同一張卡,我並沒有得到兩張ssr。(但石頭還是會 少)接著,我把timestamp加一秒,再送一次,就得到不同的卡片了。」是指這張已經給過了不會再給一次的意思嗎?那石頭少了怎麼辦?
作者: Nt1 (用功點吧!)   2017-05-23 13:31:00
對啊,給過了不再給,但是石頭已少,沒辨法,這也不是正常的行為,少了也就是少了
作者: azraelhanyue (hanyue)   2017-05-23 13:32:00
我相信法老時間
作者: NormcoreV   2017-05-23 13:35:00
平時做好抽卡紀錄,該非該歐都有個底
作者: asteea (Asteea)   2017-05-23 13:40:00
雖然timestamp有小數點 封包傳遞也有延遲時間就是所以就算真的有也沒甚麼意義
作者: jakyou (jakyou)   2017-05-23 13:48:00
有科學實驗只能給推了
作者: pain0 (囧)   2017-05-23 14:04:00
九連分開抽保底不是已經證實了?
作者: Nt1 (用功點吧!)   2017-05-23 14:05:00
to樓上,感謝,因為沒一直follow這個資訊^^
作者: pain0 (囧)   2017-05-23 14:05:00
怎麼覺得有點矛盾
作者: soliboy (剛)   2017-05-23 14:14:00
如果只靠timestamp算卡,那只要有人把SSR的timestamp記下然後改成別人的uuid,就可以靠這個必抽金卡了多花點時間把ts跟SSR的ID資料庫建起來,轉蛋姬就被破解了
作者: asteea (Asteea)   2017-05-23 14:19:00
這樣你要先發明一個抽卡外掛 然後還要算PING值耶
作者: altcd (這是個盲從的年代~)   2017-05-23 14:32:00
不可能只單純看timestamp啦...不然每個同時間抽的人都法老嗎.. 肯定會拿帳號資料當變數一起丟進去演算啊而且對系統來說timestamp是一個一直增加的數字 不會重複你不可能做出一個統計的資料庫來紀錄 因為是無限膨脹除非你超強 可以用拿到的紀錄去分析出他的轉蛋演算法不然單純的紀錄是沒有意義的
作者: jakyou (jakyou)   2017-05-23 14:35:00
所以法老帳號的說法是有可能的...XD
作者: playertwo (Zeta)   2017-05-23 14:41:00
樓上 s君的估計是可行的,但如果伺服器有紀錄,就會發現有人出術了,然後封號而且 timestamp 超過太久應該同樣會 reject 吧
作者: altcd (這是個盲從的年代~)   2017-05-23 14:48:00
我怎麼想都覺得在能分析出演算法前 單純的紀錄都是不可能破解的 還請樓上指點?我只要把uuid也丟進演算法裡 我的ts能中SSR 換你的uuid就會出不同結果了 怎麼可能破解
作者: playertwo (Zeta)   2017-05-23 14:56:00
純討論而已,如果只以 timestamp 決定SSR,謀人抽到 SSR 後以另一 uid + timestamp 應會出同一 SSR只是伺服器紀錄會很易發現吧
作者: altcd (這是個盲從的年代~)   2017-05-23 14:57:00
我們的基準點就已經不同..這樣不用討論了吧...我一開始就說演算法會把玩家資料丟進去一起算而且這是可能性比較大的做法 當然我無法肯定CC是這樣做
作者: Nt1 (用功點吧!)   2017-05-23 15:00:00
uuid一定會被帶進去算,我已試過拿別人的出金的timestamp給我用,結果在我的uuid配上對方出金的TS,會出不同的卡
作者: altcd (這是個盲從的年代~)   2017-05-23 15:02:00
而且就算只用ts 只做紀錄而不分析也是沒用的,我上面也說ts
作者: Nt1 (用功點吧!)   2017-05-23 15:02:00
樓上a大的推論我是支持的:D
作者: soliboy (剛)   2017-05-23 15:05:00
uuid也會被參考,這就合理了
作者: asteea (Asteea)   2017-05-23 15:08:00
雖然有很多點可以吐糟 但問題和樓上說的一樣 無法重現條件我比較感興趣的反而是因為現在CC有找第3方監測機率會不會為了令結果和表記相符 而在機制上去配合做成這時段比較多人抽到的話下時段比較難抽 或反之亦然
作者: zanns (苞可摸 GO)   2017-05-23 15:17:00
我比較好奇第三方要怎麼監測?
作者: asteea (Asteea)   2017-05-23 15:17:00
監察方如果取的是全時段抽卡數據 那只要別偏離太大就OK
作者: ssccg (23)   2017-05-23 15:18:00
其實我覺得這現象看起來比較像用這些參數去產生卡片id重覆的id直接回同一張,不能證明時間有被代入卡種計算
作者: asteea (Asteea)   2017-05-23 15:19:00
要看有沒有相事業內人士 雖然這部份可以每天跑Test Case測或拿實際每天的抽卡報告看分佈也行 反正數據會說話基本上TIMESTAMP基本情況一定會拿來用 只是絕非唯一
作者: ssccg (23)   2017-05-23 15:22:00
畢竟觀察到的現象重點在id相同,卡種相同只是id相同自然的結果,要觀察到卡種相同但id不同才能說這些參數跟卡種有關ts一定會用,但是我想不到用client的ts的必要性
作者: asteea (Asteea)   2017-05-23 15:24:00
就像用MD5來加密密碼 通常在加密前會對字串再動一點手腳抽卡那可能用客戶端資訊... 不對 那個火焰紋...我的頭好痛
作者: playertwo (Zeta)   2017-05-23 15:44:00
重覆的id直接回同一張,timestamp 這樣用吧
作者: asteea (Asteea)   2017-05-23 15:49:00
最低限度 SEED也會是TS+AID(或UID)吧 不然我會對SEGA失望阿 雖然重點不在這邊就是了 反正上面這句沒有任何意義
作者: slygun (放開那個阿婆)   2017-05-23 16:47:00
uid是說明真有法老號嗎 XD
作者: soliboy (剛)   2017-05-23 17:59:00
只要能破解亂數公式,非洲帳也會有法老時間!
作者: pain0 (囧)   2017-05-23 18:43:00
跪求樓上破解給我看
作者: asteea (Asteea)   2017-05-23 20:28:00
結果法老時間是早上4時 請早睡早起(X
作者: ssccg (23)   2017-05-23 20:43:00
為什麼最低限度要放UID? 是我的話一定不會放...現代語言通常不需要seed,會自己由OS取得好的entropy來源除非就是要控制讓random值不random,不然什麼都不用最好
作者: asteea (Asteea)   2017-05-23 21:02:00
看用那種方式啦 雖然我並不覺得需要分別對每個帳號做處理所以用戶資訊很大機會根本不會左右結果另外讓語言自己處理是不是真的變成隨機我是有疑問反正其實沒有所謂真隨機存在
作者: ssccg (23)   2017-05-23 21:04:00
有什麼好疑問的...一定比自己塞的東西好有真隨機存在啊,要專用硬體(靠物理理論上隨機的現象)
作者: asteea (Asteea)   2017-05-23 21:21:00
要說entropy也要看source 也有考慮到certainty的問題不過感覺這已經是另一領域了... 這要變技術交流串了嗎 QQ
作者: ssccg (23)   2017-05-23 21:25:00
說真的抽卡也沒必要多高的不可預測性,不要用client端能觀測的東西就很穩了啊...時間其實就可預測性來說是很差的seed
作者: asteea (Asteea)   2017-05-23 21:28:00
雖然我也不認為就算他真的作死有用到 就代表有辦法攻擊
作者: ssccg (23)   2017-05-23 21:29:00
抽卡要成本,PRNG沒太糟的話從成本角度來看就已經破不了了
作者: asteea (Asteea)   2017-05-23 21:29:00
...扯遠了 單純是我認為就算能破解掉 在再現上已經有困難更不用說 轉蛋這種東西如果出現可預期的規律才是最大問題而人在一些"玄學"應驗時會有更深刻印象 這種自我催眠狀態... 等等 我又想起數年前RO的轉蛋沒有隨機性的問題...怎麼遊戲業界盡是一些作死的怪事 -_-...
作者: guaz (guaz)   2017-05-23 21:34:00
時間變數由client給 工程師需要再教育吧
作者: asteea (Asteea)   2017-05-23 21:36:00
那可能XD 另外s大說不該用客戶端能看就是指降低uncertain無論遊戲與否 當一些隨機相關的資訊能被觀測 就有安全問題雖然我只能說越舊的遊戲越可能用一些白痴方法...都遇過用列表做循環派獎 額度派完就永不出貨的怪轉蛋了...
作者: guaz (guaz)   2017-05-23 21:42:00
這是安全性基本的sense...雖然入行久了就知道很多人沒有
作者: asteea (Asteea)   2017-05-23 21:42:00
PS 上面有人說用別人金的TS抽不出貨 怎樣才可以同TS抽阿XD說笑的 當我沒問好了 >.>隨機的要求要看IMPACT有多大. 我個人是不覺得CC能破到甚麼在日本現在轉蛋越來越規範化的現在 出現能被觀察規律的狀況是到了 在各種意義都是超過糟糕的地步另外關於下午說的第3方 理論上代碼應該也會被AUDIT就是了SEGA有柏青哥經驗 我是放心啦.... (X

Links booklink

Contact Us: admin [ a t ] ucptt.com