查看: 1649|回复: 9

[已经解决] 请教这个算式的写法有什么问题吗

  [复制链接]
梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
发表于 2009-9-16 09:16:12 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
在做ARPG,当满足以下算式,角色就判定为打中敌人,变量2是主角的灵巧+速度的平均数,变量3是敌人的灵敏(在敌人的名字中提取)
但是在游戏中测试发觉即使主角的灵巧和速度都升级了,命中率也没上升,怎么回事?

if rand(100) < [($game_variables[2]-$game_variables[3])/$game_variables[2]*100,0].max+20+rand(5)
  进行伤害处理的计算
end
囡囚囨囚囨図囨囧
梦石
0
星屑
202
在线时间
498 小时
注册时间
2006-10-21
回帖
859
发表于 2009-9-16 09:35:03 | 显示全部楼层
如果不考虑你是否确实将敏捷即时跟更新到那几个变量里的话,说说你的计算式吧。
从中看出,只要你的灵敏平均数小于敌敏捷的话,再升级也是白搭,此外,你又拿他当分母…所以敌敏捷必需是你均数的几分之一才能见到明显效果,你升一级敏捷翻一翻的话应该能看到效果……
回复

使用道具 举报

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
 楼主| 发表于 2009-9-16 09:55:23 | 显示全部楼层
本帖最后由 幻耶 于 2009-9-16 09:58 编辑

我测试是从主角1级升到70级来对比的,也就是说,主角的灵敏平均数差不多从50增到400,而测试敌人的灵敏是60不变,但是命中率没上升,按这个算式来看,命中率应该从百分之二十几增加到百分之百的
囡囚囨囚囨図囨囧
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
21 小时
注册时间
2007-7-3
回帖
570
发表于 2009-9-16 11:22:41 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
 楼主| 发表于 2009-9-16 12:28:48 | 显示全部楼层
因为,如果变量2和变量3都是整数的话,这个运算结果是[零]~~~:
[($game_variables[2]-$game_variables[3])/$game_variables[2]
goahead 发表于 2009-9-16 11:22



运算结果是0?为什么不会是小数呢?那么这样可以么:($game_variables[2]-$game_variables[3])*100/$game_variables[2]+20+rand(5)
囡囚囨囚囨図囨囧
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
21 小时
注册时间
2007-7-3
回帖
570
发表于 2009-9-16 16:43:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-27
回帖
18
发表于 2009-9-16 20:25:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
回帖
914
 楼主| 发表于 2009-9-16 20:33:43 | 显示全部楼层
5# 幻耶


把100改成100.0
goahead 发表于 2009-9-16 16:43



100 和 100.0 有什么区别?
囡囚囨囚囨図囨囧
回复

使用道具 举报

头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-27
回帖
18
发表于 2009-9-16 20:46:33 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
回帖
1912
发表于 2009-9-16 20:58:53 | 显示全部楼层
两种精度不同的数据类型进行运算的时候,编译器会自动将运算精度提升到两种数据中最高的精度,你 / 100.0 的时候前面虽然是整数,但最后返回的结果精度还是提升到了浮点数;而如果你 / 100,前后都是整数,所以它仅仅返回的是整除 100 后得到的商
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部