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