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

Project1

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

[已经解决] 【请教】请问怪物攻击主角的命中率是怎么计算的?

[复制链接]
梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
跳转到指定楼层
1
发表于 2012-10-7 13:39:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 lqx50 于 2012-10-7 17:53 编辑
' b" ~2 T) D$ Z7 N1 h4 \1 d5 u# J7 F& {$ Q2 M
什么因素会决定怪物攻击主角的命中率?为什么主角升了几级后怪物攻击就从来未命中过主角?
梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
帖子
607

开拓者

2
发表于 2012-10-7 16:09:12 | 只看该作者
本帖最后由 ML4455739 于 2012-10-7 16:10 编辑
, ]) G3 M; L( t5 N
! i9 e. t& P6 I先放个参照表备忘。5 W+ ~( |+ ]5 d
str 力量
2 G$ \# t# h6 V. a  w8 z3 hdex 灵巧- U& x9 Y* l( `$ r/ x$ q& |
agi 速度
; l) o, h( S& I8 `7 S. E* V# uint 魔力; I% L, x! X( U# B. ]5 H
atk 攻击力; ]* |- s5 Q1 Q0 r
pdef 物理防御
$ g0 C2 M, N9 \3 Cmdef 魔法防御& @; m. b( P( y' v
eva 回避修正
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:
  1.       eva = 8 * self.agi / attacker.dex + self.eva* Q6 m6 e* V# E  e$ v
  2.       hit = self.damage < 0 ? 100 : 100 - eva/ w8 B6 S: ~) @* c8 `6 R. L! X
  3.       hit = self.cant_evade? ? 100 : hit
    . P! }4 E# I) |" d
  4.       hit_result = (rand(100) < hit)
    , \# K5 W" e. P5 D& N6 R. J& S5 T
复制代码
对照的中文翻译是:' f* @( h% ^" t+ S
闪避率 = 8 × 速度值 / 灵巧值 + 回避修正值$ B2 z! h8 x- I  c: x  Q: R
命中率 = 伤害小于零吗 ? 如果小于零则命中率为100;反之命中率为100 - 闪避率
4 E1 l  p( l* J6 c+ V1 V+ k命中率 = 无法闪避的场合吗? 如果无法闪避命中率为100;反之命中率不变
: l( q! }1 C5 @' \" W是否击中 = ((随机数0~100) 是否小于命中率)+ I  C1 j" e2 v4 `: M& g
& I: y' J; P, D* _7 ~) \  r4 L
说明:  K9 _5 }& Y9 j: K/ P( K% x( D
无法闪避的场合可能是由于状态,数据库-状态的“不可回避攻击”那一栏有此设定。
0 ^0 ]' p. b* K: h2 a+ E是否击中的概念是一个布尔型(即true/false 真或伪),; \# ]& H% Z2 o
XAS - Damage的53行左右有一个if hit_result == true就是对是否命中的分歧,
: e' b% L% |7 e8 b: j是否命中这个判定结果为真则进行伤害相关,如果为伪,会执行126行左右的:
  1.       self.damage = "Miss"  x' g; [; @: d5 F3 A4 @
  2.       self.critical = false
    " P# j2 _, g1 z( j; h% n9 V' C0 X
复制代码
即设定伤害为miss,同时取消会心一击标志。9 X/ b7 y3 v$ a$ p+ ]. T3 E
1 d! x7 q. n0 A: C7 @7 @. i8 X! A

3 [5 O: Z- a2 Z: {) d0 G总的来说,
3 r7 Z$ x1 \; S; o9 ~9 V可能是您的游戏中数据库-角色栏对某个角色的能力值成长曲线设置不平衡导致,
6 q" B& j/ e# u需要修改灵巧(青色的成长曲线)以及速度(绿色的成长曲线)。
* u$ R+ r9 Z5 \% [2 v4 w$ K, u
往事简直不堪回首,稍微做点想做的事吧
回复 支持 反对

使用道具 举报

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
3
 楼主| 发表于 2012-10-7 16:26:29 | 只看该作者
ML4455739 发表于 2012-10-7 16:09
- B3 H5 [) V8 ^$ l* v先放个参照表备忘。
. h: ?8 U; w) Y" u& W) |在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:对照的中 ...
- u+ |* L& N* D+ x* I2 r
原来如此,我之前好像也翻到这些脚本了,就是没看懂= =现在应该可以看懂了,谢谢
回复 支持 反对

使用道具 举报

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

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

GMT+8, 2025-8-4 21:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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