//没登陆

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

头像被屏蔽

帖子:2041

符文:40

跳转到指定楼层
1#
发表于 2013-4-7 13:21:01 |只看该作者 |正序浏览 来自:辽宁
本帖最后由 Windforce#3510 于 2013-5-1 01:39 编辑

早有感觉游戏内部的时间跟现实时间是不同的。在某些计算上带来了许多不便,本帖做了一个测试。

先说结论:游戏内实际攻速比面板显示攻速稍快,比值是58:60

也就是说假如面板攻速是58,则实际攻速是60。


假如面板攻速是2.0,则实际攻速为2.07



测试方法

1.角色攻速调整为1
46.jpg

2.使角色攻击120次,理论消耗时间为120秒

3.现实中秒表记录消耗时间

试验3次,结果如下

IMG_0077.PNG IMG_0078.PNG IMG_0079.PNG

结论对build的输出能力计算有一定矫正作用。

http://v.youku.com/v_show/id_XNTQwMDA3NTQw.html

测试用。





已有 2 人评分 符文 收起 理由
sbrina + 10 不明觉厉
joinrigo + 15 + 2 感谢分享

总评分:  + 25  符文 + 2   查看全部评分

签名被屏蔽

帖子:5592

符文:453

78#
我前几天正好翻译完了游戏开发者大会的一篇文章,里面提到Wyatt Cheng有个题为“Through The Grinder: Refining Diablo III's Game System”的报告,涉及到了这方面的设计问题,既然GR提到我了,我就过来补充一下。

这个要从游戏内部机制来说,玩家的指令输入通过游戏人物的动画效果来表现,而三个动画效果的要素分别为:起手动作,判定点,结束动作。 指令的输入会造成“丢失”的点击,玩家疯狂的点击按键企图向角色发出指令,人的执行速度比游戏动作的反应要快,而角色在同一时间只能进行一个动作。所以暴雪改进了指令序列的细节:即两个指令同时发出时将后者加入序列,在序列中加入太多指令忽略后面的指令,结果就造成了序列窗口的出现,因此在序列窗口的作用下,有一些命令不是通过即时输入而产生的,而是通过动作序列而产生的,这就会造成GR口中一部分“T”的丢失,大体上就是这么个道理。

所以拍卖行的游戏时钟是没有问题的,有问题的只是战斗时的目测样本,而且这个误差会随着测试时间的增加而加大。GR的结论是有理可循的。

点评

Windforce#3510  感谢解惑  发表于 2013-4-9 10:01
已有 1 人评分 收起 理由
sbrina + 25 感谢分享

总评分:  + 25   查看全部评分

发表于 2013-4-9 07:23:35 |只看该作者 来自:日本
头像被屏蔽

帖子:373

符文:4

82#
提示: 该帖被管理员或版主屏蔽
发表于 2013-4-9 12:39:33 |只看该作者 来自:北京
签名被屏蔽

帖子:11797

符文:904

81#
九郎道雪 发表于 2013-4-9 07:23
我前几天正好翻译完了游戏开发者大会的一篇文章,里面提到Wyatt Cheng有个题为“Through The Grinder: Refi ...

你的解释比较通俗易懂,赞一个

点评

九郎道雪  大家以后多多交流~^^~  发表于 2013-4-9 17:35

帖子:5592

符文:453

80#
holocaust 发表于 2013-4-9 08:33
茅塞顿开。怪不得卡的时候很容易多做动作,就是这个隐形的序列吧。

是的,虽然网络顿卡了,但是指令序列还在,但是只保留到卡之前为止,所以你会发现虽然在卡,但是动作还是继续触发,但触发几个动作就停止了,这就是忽略了过多序列后端的指令的表现。
发表于 2013-4-9 07:35:56 |只看该作者 来自:日本

帖子:324

符文:4

79#
九郎道雪 发表于 2013-4-9 07:23
我前几天正好翻译完了游戏开发者大会的一篇文章,里面提到Wyatt Cheng有个题为“Through The Grinder: Refi ...

茅塞顿开。怪不得卡的时候很容易多做动作,就是这个隐形的序列吧。
发表于 2013-4-9 07:33:35 |只看该作者 来自:加拿大
[armory]http://eu.battle.net/d3/en/profile/byemygoddess-2999/hero/2294878[/armory]
今宵杯中映着明月

帖子:373

符文:4

77#
也许换个思路有可能搞到答案,我以前做过游戏开发,游戏里面的所有动作动画想做到精确的固定帧还是比较有难度的,一个连贯的动作可能不是整数倍的秒数完成,为了保证画质的流畅,可能会带来游戏内时间与实际时间的误差。

比如一个循环动作应该是60帧/秒,但是制作中58秒的效果比较好,那就有可能会出现真实游戏中1分钟播放60*60/58=~62次。

没有看懂上面说的T是指Tick吗?以现在的计算机的频率T是很精确,应该不会是为了代码写的简单,直接简化计算了吧。

仅猜测,供喷

点评

GabrielRum  额,也是种可能性,没做过相关工作,不了解了,不过反正是不影响任何计算和游戏内机制运行,所以知道一下,以后测试小心点即可  发表于 2013-4-9 11:58
发表于 2013-4-9 01:50:16 |只看该作者 来自:北京
[armory]http://tw.battle.net/d3/zh/profile/leeseon-6375/hero/50738076[/armory]

帖子:362

符文:16

76#
本帖最后由 GabrielRum 于 2013-4-9 22:40 编辑
Windforce#3510 发表于 2013-4-9 00:09
谢谢你的回复
你的说法我基本可以接受,虽然是假设,不过可以很好的解释这个现象

1/60s就是T。

如果结合我的帖子,以上理论基本不能算假设,算结论了,但是毕竟不知道是怎么编程的所以还是说假设严谨一点。

关于测试,我的看法,如果能去除人为误差就一定去除,这个理工科做实验的都懂,如果真正是要研究游戏机制,那么就要追求精确,你的这个实验的说明的差别也只有0.04而已,那如果不追求精确,你这个研究就是没意义的了,再说个实际的例子吧:你玩法师那一定知道1.64朵杖和1.65朵杖的区别有多大,2.49999攻速和2.50001的区别有多大,所以测试的时候凡是能通过实验思路去除的误差都要去除。

点评

sbrina  每次回复都充满技术!压力山大啊!  发表于 2013-4-9 00:39
已有 1 人评分 收起 理由
sbrina + 5 感谢分享

总评分:  + 5   查看全部评分

发表于 2013-4-9 00:31:36 |只看该作者 来自:江苏
交易区发帖请先阅读版规
头像被屏蔽

帖子:2041

符文:40

75#
提示: 该帖被管理员或版主屏蔽
发表于 2013-4-9 00:09:50 |只看该作者 来自:辽宁
签名被屏蔽

帖子:362

符文:16

74#
本帖最后由 GabrielRum 于 2013-4-9 22:39 编辑
gfocus 发表于 2013-4-8 21:45
是的,不过传视频的好处就是,放个证据上来让大家都能看到

那和我的推理基本一致了,我做出这个推理是因为黑人和烈光波的白字都是31T出一次,但是一T是1/60s,这让我觉得暴雪很白痴,而这个实验基本证明了编程上的可行性,简单来说就是基础单位T上面有个更大一位的存储单位即0-31,这个是2进制存储的手段了,暴雪是把半秒分成32份,存在这么个单位里(就叫它BT吧),由于编程指针计时的原因等等,可能在循环中跳掉第一个指针,和结尾缩掉最后一个,挤掉了2T,所以与实际时间有差了,出于数据结构的不同也可能介于之间,大致就是这样。


经过九郎道雪的进一步说明,这个跟动作序列有关,挤掉的T就是动作序列排序中挤掉了。


这里编辑一下,存储空间还是0-31,但是0与31是定位空指针,序列中两个指令连起来会挤掉后一个的1和前一个的30,所以精确值是29/30.


如果各个技能(可以排除个别计算公式不同的)大致都是如此的比例,那么这个时间缩减我觉得就是普遍的了,即暴雪时间数据结构的一个bug。实际的作用在下面:

说明:1.这个应该是只作用于攻击技能上,所以对游戏或者AH时间没什么影响(算是个科学推测)
      2.综上所述,这个研究只对掐秒表和视频计时的一些精确性研究有影响,我早就说过这是不科学的啦,凡是技能测试,先确定消耗,在用消耗来计数(计时)才是科学的测试方法,无消耗的比较蛋疼,但如果对最小时间计数单位和伤害理解清楚的话还是能计数的。

已有 1 人评分 收起 理由
sbrina + 5 技术帝 你好。。。欢迎来到复仇者营地

总评分:  + 5   查看全部评分

发表于 2013-4-8 22:23:00 |只看该作者 来自:江苏
交易区发帖请先阅读版规

帖子:11797

符文:904

73#
Windforce#3510 发表于 2013-4-8 21:39
我的榴弹的视频也在上传

不过我真心觉得没有必要,盯着屏幕数数这个举动怎么想都很蛋疼哈。

是的,不过传视频的好处就是,放个证据上来让大家都能看到
头像被屏蔽

帖子:2041

符文:40

72#
gfocus 发表于 2013-4-8 21:29
呵呵,我也很感兴趣,视频已补上

我的榴弹的视频也在上传

不过我真心觉得没有必要,盯着屏幕数数这个举动怎么想都很蛋疼哈。

点评

GabrielRum  回复见楼下  发表于 2013-4-8 22:27
发表于 2013-4-8 21:39:43 |只看该作者 来自:辽宁
签名被屏蔽

帖子:11797

符文:904

71#
Windforce#3510 发表于 2013-4-8 21:27
感谢你的测试

呵呵,我也很感兴趣,视频已补上
头像被屏蔽

帖子:2041

符文:40

70#
gfocus 发表于 2013-4-8 21:16
刚才用 GabrielRum  提出的控制憎恨消耗的办法测试了一下,
全身脱光,只带上-5战轮憎恨消耗的乔丹,
这样 ...

感谢你的测试



发表于 2013-4-8 21:27:04 |只看该作者 来自:辽宁
签名被屏蔽

帖子:11797

符文:904

69#
本帖最后由 gfocus 于 2013-4-9 16:07 编辑

刚才用 GabrielRum  提出的控制憎恨消耗的办法测试了一下,
全身脱光,只带上-5战轮憎恨消耗的乔丹,
这样攻速为1,按着右键不放的话,每秒1下战轮消耗5憎恨,
考虑自身每秒回4憎恨,每秒的憎恨消耗刚好是1,
测试了三次,都是在刚好1分40秒的时候憎恨见底,
看着视频数了一下,101秒内打出104下战轮,
这跟楼主的测试结论应该是相符的。
先上面板图,视频已补上
未标题-1.jpg




已有 1 人评分 收起 理由
sbrina + 5 感谢分享

总评分:  + 5   查看全部评分

您需要登录后才可以回帖 登录 | 注册网易通行证