//没登陆

欢迎您来到凯恩之角,奈非天!

帖子:36

符文:2

1#
本帖最后由 concen 于 2016-5-30 18:26 编辑

猜测一下原理:

即使溢出,伤害数字也是看得见的,那么伤害本身的计算应该没有问题,问题出在这个伤害无法传递到怪身上。于是应该是鸟4机制相关的脚本里面,向造成伤害的函数传递的中间变量的类型不对。

就我个人的经验,我有理由相信这个变量类型是32位int,而绝对不会是unsigned int。 所以这里传递的变量阈值应该是2^31=2147483648。大于等于这个值,会导致传入变量在类型约束下变成负数。一般来说,在造成伤害的函数内对于这种不合法输入最多留个log。

接下来,通过实测出的这个2^31的3倍左右的阈值,我们可以推测鸟4dot的伤害是3小跳显示成我们能观察到的1跳,于是实际有效伤害阈值应该是2147483647*3=6,442,450,941。超过这个值的伤害就会无效。(考虑到除以3的取整处理方式不同,这个值也可能会是2^31*3-1=6,442,450,943)

不过想要测试这一点似乎有点难,因为想要达到2次伤害不点燃的话,为此缺少的二次增伤恐怕不够把伤害堆到阈值……

点评

派坤沙  大赞!此分析靠谱。  发表于 2016-5-30 19:24
发表于 2016-5-30 18:15:39 |显示全部楼层 来自:美国

帖子:36

符文:2

2#
然后,根据这个32位int猜测,非暴击有效,暴击造成3倍/5倍伤害时,暴击依然造成有效伤害;非暴击有效,暴击造成2倍/4倍伤害时,暴击无法造成有效伤害。
发表于 2016-5-30 18:20:39 |显示全部楼层 来自:美国

帖子:36

符文:2

3#
Arccueid 发表于 2016-5-30 19:27
单纯的脑补没任何意义啊。如果你玩了游戏,你就知道什么21-41亿之间没伤害是不对的,那其他更没什么道理 ...

图里那个106亿是没有实际伤害没错吧?如果有伤害的话那么我的猜测也是不对的……


按我的猜测是:

1~64亿:伤害有效
((2^31-1)*3=6,442,450,941)

64亿~128亿:伤害无效
((2^32-1)*3=12,884,901,885)

128亿~193亿:有效伤害为显示伤害减128亿(12,884,901,885)
(2^31-1+2^32)*3=19,327,352,829

193亿~257亿:伤害无效

依次类推

点评

Arccueid  不过可能性感觉也不大,因为超过120+亿的数字见过不少了,没有触发的DOT有伤害的印象。  发表于 2016-5-31 04:06
Arccueid  这个很好验证,我晚点去试试。  发表于 2016-5-31 04:03
发表于 2016-5-31 03:55:05 |显示全部楼层 来自:美国

帖子:36

符文:2

4#
本帖最后由 concen 于 2016-5-31 04:19 编辑
派坤沙 发表于 2016-5-30 19:32你如果你当过老师,你可能会知道,学生可能出现的常见错误点,有可能是你始料未及的方向。...

我相信你是没做过科研的,或者至少没有仔细想过这个问题的。

所谓“学生可能出现的常见错误点,有可能是你始料未及的方向”,其实有一个隐含的前提条件是,提出观点的学生需要具备该领域背景知识。
对于至少有一部分基础知识的"见习法师",找到新颖method/开发有价值新topic的"命中率"比如说是5%,显然这是值得思考一下可行性的。而对于领域外的"麻瓜"这个命中率能有0.1%就不错了,于是有这时间仔细思考这种观点不如安心干点实际的。

这也是为啥真正做研究的都不把民科当回事——“你们连个学位都不愿意去拿,我怎么相信你智商正常又具备牢固的基础?如果没有,听你们瞎侃跟回家和80岁老母聊自己的工作没有本质区别”
发表于 2016-5-31 04:06:08 |显示全部楼层 来自:美国

帖子:36

符文:2

5#
本帖最后由 concen 于 2016-5-31 04:20 编辑

回错人了
=====

已编辑,不好意思……



发表于 2016-5-31 04:15:43 |显示全部楼层 来自:美国
头像被屏蔽

帖子:36

符文:2

6#
提示: 该帖被管理员或版主屏蔽
发表于 2016-5-31 09:41:46 |显示全部楼层 来自:美国

帖子:36

符文:2

7#
lalz 发表于 2016-5-31 09:30
在研究上最忌讳的就是重复研究。。。。。让人把精力集中在更可能突破的位置上不好么?
而且2^32*1.5这个 ...

如果你真的有所谓“研究者的自尊心”,你现在应该在从头了解cs上的基础知识,而不是出来叫屈

我认认真真学了这么多年cs,还不好意思叫自己研究者,你一点专业知识都不懂,就跑出来拿着所谓计算机逻辑讨论,回头还谈所谓研究者的自尊心?把研究者三个字去了,你对得起自己的自尊心吗?

点评

lalz  你冷静一下,看看我是不是你要喷的对象,不要专业知识不懂啊这样的帽子你就随便扣了。 你上边提出的循环很合理啊。为什么不敢叫自己研究者么,这么心虚么? 而且自尊心是自己的,不是别人给的好么?我肯定对的起自   发表于 2016-5-31 09:58
发表于 2016-5-31 09:47:48 |显示全部楼层 来自:美国

帖子:36

符文:2

8#
本帖最后由 concen 于 2016-5-31 10:34 编辑
派坤沙 发表于 2016-5-31 10:23
> 回到主题,已经说了你的各种猜想没有任何逻辑依据,相关的东西你自己到底懂不懂哪怕一丁点,相信你也大 ...

我歪楼太重,咱们还是私信说道
发表于 2016-5-31 10:32:45 |显示全部楼层 来自:美国

帖子:36

符文:2

9#
派坤沙 发表于 2016-5-31 10:23
> 回到主题,已经说了你的各种猜想没有任何逻辑依据,相关的东西你自己到底懂不懂哪怕一丁点,相信你也大 ...

私信居然每天限制数目orz

首先,更大的C值确实有意义,这是我想差了,我道歉
这样溢出之后部分的增伤相当于从二次增伤变成了一次增伤,如果是测试属实估说不定三秒火要开始增伤档位了……

然后阈值上,回头看你那个107的问题应该在忘了考虑基础的那个3次计算,直接用2^31去乘3乘5得到的是1/3的伤害,所以不应该是107而是107*3=321(也就是64*5)

发表于 2016-5-31 17:43:25 |显示全部楼层 来自:美国
您需要登录后才可以回帖 登录 | 注册网易通行证