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

Project1

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

[讨论] RM1.02伤害计算中小数点问题.

[复制链接]

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
跳转到指定楼层
1
发表于 2010-7-1 06:44:57 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 jhhuang 于 2010-7-1 08:21 编辑

不知道最新版有没有这些问题...我习惯使用1.02了...
也不知道是不是问题.
今天在编辑Game_Battler中发现几个问题.
当使用特技时.
  1.     # 第一命中判定
  2.     hit = skill.hit
  3.     if skill.atk_f > 0
  4.       hit *= user.hit / 100
  5.     end
  6.     hit_result = (rand(100) < hit)
复制代码
hit *= user.hit / 100
打个比方:使用者命中为85时.就会因为除于100得出有小数导致结果为0.
战斗测试:
p user.hit
p hit
    hit = skill.hit
    if skill.atk_f > 0
      hit *= user.hit / 100
    end
    hit_result = (rand(100) < hit)
p user.hit
p hit

四次输出结果:
85
100
85
0
很多地方都这样= =都不说了..先搞清楚是不是BUG.
PS:不是求解决方法=.=

Lv1.梦旅人

梦石
0
星屑
50
在线时间
270 小时
注册时间
2010-2-4
帖子
1305
15
发表于 2010-7-1 08:49:03 | 只看该作者
话说现在最新版本是RM1.03吗?
求一个带有RM1.03的真相帝....
如果1.02存在BUG实在太多...考虑去下个最新版 ...
jhhuang 发表于 2010-7-1 08:39

不过以前在别人的电脑上装过1.03,貌似界面也没有优化...

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
14
 楼主| 发表于 2010-7-1 08:39:34 | 只看该作者
本帖最后由 jhhuang 于 2010-7-1 08:42 编辑

话说现在最新版本是RM1.03吗?
求一个带有RM1.03的真相帝....
如果1.02存在BUG实在太多...考虑去下个最新版好了...

刚看了下更新....1.03只是界面优化了下是真的吗?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
270 小时
注册时间
2010-2-4
帖子
1305
13
发表于 2010-7-1 08:37:39 | 只看该作者
:funk:还真有这问题,话说我也没有装1.03,测试不能。
好歹当年也当过大魔王过,orz
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
12
 楼主| 发表于 2010-7-1 08:22:48 | 只看该作者
数字神又出现鸟.....
DIY那边帮大忙了~回来了说声感谢.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
11
发表于 2010-7-1 08:21:24 | 只看该作者
本帖最后由 紫苏 于 2010-7-1 08:24 编辑

其实这个在大多数语言中都是通用的,两个整数相除,在汇编层实际上是把商和余数分别存在了两个寄存器中,编译器编译出来的代码会只从保存了商的那个寄存器提取数据,而舍弃掉余数,这是整数相除

当你有两个不同精度类型做运算的时候,编译器就会做一个隐式精度提升,把运算中精度小的类型转换成精度大的类型,然后再运算,所以
5/2 = 2,而 5/2.0=2.5,因为这里的 5 会自动被提升到本地双精度浮点类型,这时的除法运算就是浮点数相除了,CPU 有不同的芯片分别处理浮点数相处和整数相除
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
10
 楼主| 发表于 2010-7-1 08:20:41 | 只看该作者
本帖最后由 jhhuang 于 2010-7-1 08:21 编辑

没事= =我1楼已经标明
PS:不是求解决方法=.=



实在不好意思...我标题应该改成"讨论"...而不是有事请教.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
462 小时
注册时间
2007-7-30
帖子
643
9
发表于 2010-7-1 08:19:39 | 只看该作者
脚本改成
hit = hit * user.hit / 100
或hit *= user.hit / 100.00 (会自动转成浮点数)
RGE这万年大坑 啥时填起来@@

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
8
 楼主| 发表于 2010-7-1 08:16:39 | 只看该作者
本帖最后由 jhhuang 于 2010-7-1 08:19 编辑

我说的是它脚本上的一些错误= =...不,当我说错了...是它游戏上的一些错误.

另外:
经过测试...我新建立一个工程.
阿尔西斯中状态:命中率85%
果然~发生战斗后阿尔西斯99级无法击中幽灵= =
悲剧

请问用RM1.03的大大们有这个问题吗?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
462 小时
注册时间
2007-7-30
帖子
643
7
发表于 2010-7-1 08:12:23 | 只看该作者
回复jhhuang 的帖子
RM 1.02 用的就是 RUBY 规则通用
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 09:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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