Board logo

标题: [历史] [杂]攻击速度再认识(对拉斑的回应) [打印本页]

作者: 再见苏摩    时间: 2009-12-24 12:20     标题: [杂]攻击速度再认识(对拉斑的回应)

罗嗦下,以前没有和大家一起研究过攻击速度,现在已经N年不上游戏,偶尔关注交流区,所以对于一些现实的问题,已经没有概念了,只能探讨些古老的。
而且我一向废话居多,以下也是。


此文虽然有助于解惑,但是实际并没有太大意义
而且几乎是理论,没有实际测试过

但是我相信大部分分析是对的


一.最小的计量单位

但是我先否定最通常的攻击速度说法
比如190攻击速度,通常说的是每秒5下
189攻击速度是每秒4.545454545……下
这种说法在数值上是正确的,但是在环境概念下是错误的
相对正确的是每0.2秒一下和每0.22秒一下
但是这还不够严谨:

我们可以认识一下时间。时间作为物理上的第四维,和空间一样,是连续的,不存在最小单位。
但是,游戏或者说任何计算机都不能认识到这点。

所有程序等都有最小认知单位,服务器只能以这样的方式去处理攻击速度。
正确的描述是:多少个整数倍的最小时间单位发出一次攻击。


先确认一点,这个单位时间越短,各种计算就越精确,但是服务器的负担就越大。


然后是这个最小单位时间是多少。
这个我显然不知道,估计从来也没人测过。
然而是可以推测出些大概的。


1.显示赫兹数就是最小攻击频率。
以前我认为那是最小记时单位。50HZ对应就是0.02秒。
但是现在我看来,显然不可能,这个时间太长,不能有效对应一些状况。
比如攻击速度小数点后一位有效。如果按0.02秒算的话,那无法定位攻击速度后的一位小数点,只能对应整数的攻击速度。
玩相机的,DV的应该都知道,HZ数肯定不是最快的快门速度。HZ数绝大部分PAL制就是50,N制就是60。但是高端机的最快快门速度可达8000分之1秒。 虽然和RO计时的本质不同,但是有通理。

2.攻击速度的小数点的后一位所对应的就是最小攻击频率
如果是这样,那对应的就是0.002秒(2毫秒)
这个时间比较符合攻击速度的一些理论。

3.非常大众的0.001秒
就是1毫秒。个人认为大部分游戏可能都以这个作为最小计时单位。包括RO
没有必要用更短的时间去作为计时单位了

4.怪异的猜测
虽然最小计时单位几乎可以肯定是0.001秒,但是在攻速方面是否套用了?因为为了减少计算量,可能把数个最小计算单位组成一个新的单位去用于不同的模组。
我曾在想,为什么攻击速度要以200为理论上的无穷大,是偶然么?为什么不用100作为无穷大?
首先一个原因可能是尽量不让版面出现负数
版面负攻速是存在的,但是套用到公式内,其实也没什么大不了的,4秒/次,5秒/次而已。
假设用100攻击速度作为无穷大,那目前的攻速减去100,就是假设版本的攻速
目前看来,如果100是无穷大,那很容易可以把攻速变成负值,比如牧师装拳套(我已经忘记武僧的那个专用武器叫什么了,是不是拳套?)
但是,在当初1.0或者更早版本,要达到这一条件很难,最慢也就无A骑士骑鸟不修骑乘术,拿双手矛再中个泥沼之类的(计算器算下是多少?)
如果当初没有考虑新职业的武器因素,不必把它设定为200,基本上100就够了。
那200有没有可能是为了提示一个频率?虽然这个频率和攻击速度计算是完全没有关系的。
我的意思是可能200分之1秒就是攻击速度的最小单位。就是0.005秒,5毫秒。

无论0.005秒是否成立,都是可以被证实的。因为攻击速度后的一位小数。
如果成立,那190攻速就是40个最小单位,而189.9是40.4个最小单位,最小单位必须为整数,40.4是不能成立的,所以强制舍去或强制算进下一个单位。(PS,最小单位面前也不存在4舍5入)
189.8是40.8个最小单位,处理方法同189.9。
所以,如果0.005秒成立,则189.9攻速等于189.8。其他攻速也可以进行折算进行对比,可以算出哪些攻击速度是一样的。

当然,这个猜测90%是错的,正确答案有90%是第三种。
但是这不妨碍大家可以猜测,可以假设,可以论证。

如果猜测4有谁想测试,我可以告知100%准确的测试方法,可以测得正确与否。



二.攻击速度浮动

篇幅很短,下午再写。
吃饭

现在应该研究的或者拍砖的都比那时少多了吧。。。。。。?
可惜

[ 本帖最后由 再见苏摩 于 2009-12-25 17:26 编辑 ]
作者: intro    时间: 2009-12-24 12:24

科学家猜测时间可能有最小单位,普朗克时间.
空间已经被证实有普朗克空间.
是人不能认识,计算器如何"认识",它只是被设计出来而已.
以上与RO毫无关系- -

要设计一个实验检验是不可能的,0.005秒的时间完全会被误差值影响.如果无法证实,那我宁愿相信是假的.

[ 本帖最后由 intro 于 2009-12-24 12:32 编辑 ]
作者: 再见苏摩    时间: 2009-12-24 12:51

原帖由 intro 于 2009-12-24 12:24 发表
科学家猜测时间可能有最小单位,普朗克时间.
空间已经被证实有普朗克空间.
是人不能认识,计算器如何"认识",它只是被设计出来而已.
以上与RO毫无关系- -

要设计一个实验检验是不可能的,0.005秒的时间完全会 ...


回与RO无关的
量子论对最短时间定义本身就是基于物理意义上其他单位(能量,质量,速度)的最小值

普朗克时间内无法发生任何可被观测甚至是可被判断的物理变化

但是我觉得这不能用来定义客观的时间,这只能定义目前人类可认知的时间


回与RO有关的话题

如果我接下来对于第二点攻速浮动的判断正确的话
我的实验可以100%准确判断是否最小攻击速度单位是0.005秒
这个时间本身不牵涉到时间甚至攻击次数

只是简单计算
作者: 是是非非    时间: 2009-12-24 12:54

楼主辛苦了!先顶下
作者: 黑暗咆哮    时间: 2009-12-24 13:55

从程序编写角度来看,浮动攻击频率需要更多代码,而且这些代码完全没有意义,只有一个例外,那就是用于反外挂。
问题在于从nc普攻的发送的封包来看是没有多余的数据的,即nc普攻指令发出后的普攻完全是服务器处理的,因此也不合理

嘛……等part2……
作者: .ˊ頽ヾo?    时间: 2009-12-24 13:57

如果设计的初衷存在浮动,那不是自找麻烦么...
作者: 再见苏摩    时间: 2009-12-24 15:56

继续,感觉这篇真是小众啊

今天上班偷懒的厉害了。。。

顶一下算了,不编辑

另,我的语言组织和表达能力是很差的

二.攻击速度浮动

篇幅貌似也不,简单描述。

如上所述,N个最小计时单位组成了每一次攻击的时间单位。

如果没有浮动,那很简单但拗口:每次攻击必须在判定在攻击所需要的时间中固定的第N个计时最小单位。而且无论攻击速度多快,始终固定发生在这第N个最小计时单位。
而攻击速度不同的话,构成每次攻击所需要的最小计时单位是不同的。所以我认为,如果认定没有攻击速度浮动,那攻击只可能发生在第一个计时单位或者最后一个计时单位。
没有看懂的话,我可以具体举例,以2MS为最小计时单位。(方便对应攻击速度)
比如攻击速度150,那就是1S/下,每秒1下,每500个最小计时单位攻击一次。如果攻击始终固定在第100个最小计时单位的话,那对应其他更快的攻击速度就无解了。比如极端假设攻击速度199.9,那就是2MS/下,每秒500下,每1个最小计时单位攻击一次。由于不存在第100个最小计时单位(因为只有1个)那没有选择,这个计时单位既是该攻击时间的第一个计时单位,又是最后一个。

以上是假定没有浮动的情况。

但是如果不允许浮动,那计算必须精确计算,精确的代价是负荷。


那如果有随机浮动就较为有利。

但是如何让浮动不影响攻击速度?
意思就是说,无论怎么浮动,在一长串的攻击中取任意量的攻击次数,这些攻击的攻击速度都一致,而不会产生甚至是0.1的差异。
好比190攻击速度砍1000下,无论随机怎么抽一段连续的攻击(任意次),它的攻击速度都是190,而不是189或者189.9

那不就是不浮动么?

否,可以认为是一种伪浮动.

应该有人懂帧间压缩和帧内压缩,又是不一样的概念,但是可参考一下.


原则上,攻击还是由第一个或者最后一个计时单位发出.但是刚才说了,每次攻击是由N个最小计时单位构成,那浮动可以在这一个整体时间内,交给最小计时单位.但是浮动绝对不会跨出单次的整体时间.
举例190的攻击速度,假设0.002S的最小计时单位.
每次攻击由100个最小计时单位构成,则可在这100个最小计时单位以内随意构成一次攻击.如此便造成了浮动.
如果190的攻击速度,那最小间隔时间是0.004S,最大为0.396S.最大间隔将近0.4秒,绝对是一个容易被肉眼察觉的值.只可惜,察觉不如不察觉,只容易被其误导.
另外出现这样极端情况的概率也比较小.

那是否任何的攻击速度,都可以在自身的单次攻击整体时间内浮动呢?答案是否定的,和之前的不浮动情况的那个单次判定点同理.
比如150攻击速度,每下1秒.每次攻击时间由500个最小计时单位构成,是否可以在这500个单位内任意浮动.那样,150的攻速也可以在某瞬间体会到190以上的快感.
NO,这个必须考虑到最高攻速,目前是190,就是浮动不能超过0.2S,不然攻击速度在190时就无解.

也就是说,浮动完全是在以每次攻击为一个整体的内部浮动,不会产生跨越整体的浮动. 所以,红字部分可理解.

但是那种浮动确实没有意义,封包应当早已将此结合.
作者: intro    时间: 2009-12-24 16:39

看了2遍,马马虎虎明白你想讲什么.
1.存在最小时间单位.
2.猜测最小时间单位为0.005秒.缺少证据.设计实验也没提到.
3.假想实验:190ASPD在0.002秒最小单位下,极端情况会产生0.396s的误差.
4.内部有限次浮动.

请提交你的实验设计,该设计可以有效区别你的"浮动"与"不浮动".
两句话是如此表述的:
1.是的.有一个极小的概率,你偶然可以看见系统熵倒流,冷水会突然加热.
2.夸克是不会单独出现的,他们总是成对出现.
结论4的最大问题是,如何确定攻击整体的组成.难道不是每一次攻击是最小攻击单位么?你如何预测攻击会持续多少时间从而编组呢?要知道流媒体编码也是预读的.
作者: 再见苏摩    时间: 2009-12-24 17:03

如何判断最小单位是不是0.005秒
(我之前说过,估计90%不是,90%应该是0.001秒;但是可以判断是不是0.005秒)

条件难遇

找两个素质点完全一样的高A高D敏骑,不要有LUCK,通过计算器,靠装备调整出0.1的攻击速度差异
拿低攻木乃伊武器之类保证命中,保证稳定,另外尽量低伤害,高攻击速度
CRI不可避免,但是可以数的出


在苹果内,牧师加满血
开始互相砍,撤消苹果

如此可以保证互砍开始时的血量相等,差别就是某人先砍<1下(其实如果上述成立,这<1次的攻击最后会被还清,因为攻击必须完成每次的一个整体,即便死亡)

然后我们要做的是数LUCK,CRI
一直到一方死亡,看另一方的HP量
可通过计算,算出双方攻击次数是否相等

如果觉得HP量不够,可以用牧师给双方加等量次数的血,对加血时间没有要求,只是不能加满

如果攻击次数相等,表示攻击速度相等,则最小单位是5MS,
如果攻速高的攻击次数多,那表示最小单位是2MS或者1MS等等
作者: 再见苏摩    时间: 2009-12-24 17:09

原帖由 intro 于 2009-12-24 16:39 发表
看了2遍,马马虎虎明白你想讲什么.
1.存在最小时间单位.
2.猜测最小时间单位为0.005秒.缺少证据.设计实验也没提到.
3.假想实验:190ASPD在0.002秒最小单位下,极端情况会产生0.396s的误差.
4.内部有限次浮动.
...



第四条不是内部有限浮动
而是单次攻击是一个整体,在这整体内可能有浮动,可能不浮动,
不可能有两次浮动,因为只有一次攻击.
如果浮动,则最大值是服务器限定的攻击速度,目前来讲就是190,就是0.2S
最小浮动就是那个最小计时单位
作者: lolicon    时间: 2009-12-24 17:14

到家了,粗略读了1遍。。。
让我再好好想想。。。
作者: 再见苏摩    时间: 2009-12-24 17:16

请提交你的实验设计,该设计可以有效区别你的"浮动"与"不浮动".




这个我认为是不可证实的,因为我上述理论表达的是每次攻击,其整体时间不变,这个是没有浮动的
所以我说是伪浮动.

基本单位如你所述就是"每次攻击"
作者: intro    时间: 2009-12-24 17:28

不可证实有谈论的必要么.
那句老话就是:谈论针尖上能坐几个天使.

实验我再看看.
作者: 再见苏摩    时间: 2009-12-24 17:39

那只是我认为不能通过外界证实

如果有内部数据,那就可以定论


这些猜测即便都是对的,其实都没什么意义

但是可以有效解释为什么看上去攻击速度会有浮动
作者: zhouvilly    时间: 2009-12-24 18:10

提示: 作者被禁止或删除 内容自动屏蔽
作者: Shit-Man    时间: 2009-12-24 18:14

太高科技....求红字重点
作者: 再见苏摩    时间: 2009-12-24 20:20

intro桑,或其他几位如果认为绝对没有浮动
那那些看上去明显是频率浮动的攻击,是由于什么造成的呢?
1.显示
2.网络速度
还哪些?

显示可以爬出排除
因为某些程序应当是跳过显示这一步了

然后是网速
一般不会那么不稳定?

其他可知的一些原因呢?
作者: 压力山大为妻逼得懦夫死鸡    时间: 2009-12-24 22:40

原帖由 Shit-Man 于 2009-12-24 18:14 发表
太高科技....求红字重点



我是LZ

意思就是说,假设每0.2秒/下的攻击

你可以把一连串的攻击时间看成一直线
然后每0.2秒构成一个短的线段,其中包含一次“攻击”

那这个浮动只产生于线段内,而不会跑到线段外边,影响到下一次攻击




我自己也感觉这篇比较麻烦难懂,也比较难以证实
蛋是,我没觉得我在YY啊?
作者: 黑暗咆哮    时间: 2009-12-24 22:59

原帖由 再见苏摩 于 2009-12-24 20:20 发表
intro桑,或其他几位如果认为绝对没有浮动
那那些看上去明显是频率浮动的攻击,是由于什么造成的呢?
1.显示
2.网络速度
还哪些?

显示可以爬出排除
因为某些程序应当是跳过显示这一步了

然后是网速 ...

再然后是RO的程序优化
在没有试验证明浮动确实存在的情况下谈浮动不靠谱啊,恶魔的证明么……
作者: 压力山大为妻逼得懦夫死鸡    时间: 2009-12-24 23:31

我一直在用如果如果,只是假象和个人认为

如果是真浮动,那可以测试

但是上述的这种浮动是一种假象,我应该证明不了这个伪浮动

谁有办法证明有或没有呢?

哪怕用非法手段

希望有定论

[ 本帖最后由 压力山大为妻逼得懦夫死鸡 于 2009-12-24 23:32 编辑 ]
作者: lolicon    时间: 2009-12-24 23:32

确实是那种想要验证的话,则很不靠谱的东西。。。

190的情况下,会有低几率出现瞬时2次攻击的情况。。。
作者: 压力山大为妻逼得懦夫死鸡    时间: 2009-12-24 23:37

不是同一瞬间2次
以190为例

0秒到0.2秒其实是21个最小单位

应当是0.01秒到0.2秒作为一个攻速单位
那最极端的情况是0.2秒遇到0.21秒
5000分之1左右的概率

这还是有0.002秒的间隔的。
作者: lolicon    时间: 2009-12-24 23:40

哦,那你是再引入了一个参数说的。。
作者: 水水910910    时间: 2009-12-24 23:45

文科生路过...[m_路过]
作者: intro    时间: 2009-12-25 00:17

我知道.他这个问题就好比在说为什么电子只能够在固定的能级上,而不会陷入或逃离中心.
这是不是形而上的讨论?
作者: 再见苏摩    时间: 2009-12-25 08:49

总之无差别素质点互砍一次就能知道有没有绝对的浮动
这个是主要的

如果有绝对的浮动,那上文都是毛




欢迎光临 浆糊论坛-RO小站 (http://bbs.rohome.cn/) Powered by Discuz! 7.2