炼器的进度条 只有一个用处就是给你一种期待感
炼器判断的时候并不是判断炼器框里的东西 而是用炼器框锁定你炼器的东西在包裹里的坐标
点了炼器开始的时候,实际是把装备 符 祝福符的坐标传送给了服务器
服务器收到坐标后并没有用你走进度条那么长的时间来做炼器成功失败的运算 这个运算是瞬间完成的
炼器的过程转化成编码是这样的
用户 选择装备 符 祝福符 点炼器
客户端将三者的坐标(没祝福符则为空)传送到服务端
服务端收到坐标 X Y Z 同时摇骰程序生产一个数 W(W范围可以是任意的,由骰的面数决定) 把这4个数据传给判断子程序 同时返回响应到客户端
判断子程序收到X Y Z W后等待 (以上这些从点炼器到现在大概是零时间完成的),之后服务器等待(比如是1.5秒,那么你的进度条就放1.5秒的动画)pause之后
这个时候炼器判断函数根据X Y Z的属性和W运算 产生结果R
R返回客户端,这个时候如果有延迟你的进度条应该是没有走完的,(因为进度条播放指令是服务器进度等待的那一下传送过来的,如果延迟了,你的进度条就走的相对较晚)收到炼器结果 直接显示成功和失败
如果把进度条取消掉,那么你的炼器就是一点就出结果
如果这样的话 是不是很残忍?
这就是炼器过程
没有任何特别之处
即便你认为电脑摇骰只是伪随机 但是你任然不能猜出它是多大
还有迷信90%的时候已经刷世界了,那是因为延迟,你延迟了100ns收到GET返回,进度条就晚放了一会,但服务器不会知道你的延迟,它只是按照动画设置的时间来延迟,延迟结束结果就出来了,而你应为延迟在90%的时候看到刷世界了,接着立刻就会弹出成功的提示。
如果没有延迟你在95%的时候永远不会看到世界的提示,有延迟95%的时候已经有结果了 你ESC已经无法取消了
前两天看到一个所谓“强制炼器成功”的帖子
我说说这个歪理吧
你看到世界刷出当然无法ESC了 你按ESC返回服务器只是一个空操作
而同样失败 在同样的时间你ESC 同样的延迟情况下 仍然是无法取消的
往详细了说
进度条到95%
没有延迟的情况下,就算是成功了你也不会看到世界刷公告。只有超过99%的时候你才能看到
但是你取消了,那么自然不会有炼器结果了,就没有公告不公告的说法了
如果有延迟,到95%的时候,只是你的动画播到95%但是服务器上已经等待结束,结果已经出了
你按ESC,到服务器上 这个进程已经是关闭的了,你的ESC就是一个无意义的操作了
如果成功了,你可以在95%的时候看到公告,因为延迟
如果失败了,你不会看到公告 你取消也是没有用的了,你会看到炼器失败