设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1475|回复: 9
打印 上一主题 下一主题

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

 关闭 [复制链接]

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
跳转到指定楼层
1
发表于 2009-9-16 09:16:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

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

if rand(100) < [($game_variables[2]-$game_variables[3])/$game_variables[2]*100,0].max+20+rand(5)
  进行伤害处理的计算
end
囡囚囨囚囨図囨囧

Lv1.梦旅人

梦石
0
星屑
202
在线时间
498 小时
注册时间
2006-10-21
帖子
907
2
发表于 2009-9-16 09:35:03 | 只看该作者
如果不考虑你是否确实将敏捷即时跟更新到那几个变量里的话,说说你的计算式吧。
从中看出,只要你的灵敏平均数小于敌敏捷的话,再升级也是白搭,此外,你又拿他当分母…所以敌敏捷必需是你均数的几分之一才能见到明显效果,你升一级敏捷翻一翻的话应该能看到效果……
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
3
 楼主| 发表于 2009-9-16 09:55:23 | 只看该作者
本帖最后由 幻耶 于 2009-9-16 09:58 编辑

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

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
21 小时
注册时间
2007-7-3
帖子
573
4
发表于 2009-9-16 11:22:41 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
5
 楼主| 发表于 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)
囡囚囨囚囨図囨囧
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
21 小时
注册时间
2007-7-3
帖子
573
6
发表于 2009-9-16 16:43:00 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-27
帖子
21
7
发表于 2009-9-16 20:25:51 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
3
星屑
6420
在线时间
1131 小时
注册时间
2007-12-26
帖子
2402
8
 楼主| 发表于 2009-9-16 20:33:43 | 只看该作者
5# 幻耶


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



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

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-27
帖子
21
9
发表于 2009-9-16 20:46:33 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

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

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-8 05:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表