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

Project1

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

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

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

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

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

x
本帖最后由 lqx50 于 2012-10-7 17:53 编辑
  ^5 h8 T& k: E0 y5 p5 L) m1 M, _( b. _5 |8 d9 t- {+ k4 L3 X
什么因素会决定怪物攻击主角的命中率?为什么主角升了几级后怪物攻击就从来未命中过主角?
梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
帖子
607

开拓者

2
发表于 2012-10-7 16:09:12 | 只看该作者
本帖最后由 ML4455739 于 2012-10-7 16:10 编辑 5 T/ c/ g, z2 g7 w0 Y

5 C& A5 ^; `2 a# u先放个参照表备忘。( }( f/ D& ~* W2 `4 M
str 力量
4 D: l, r( N$ `+ P& Ddex 灵巧, j# r$ O; K3 ~8 h+ j% z0 N; v  D
agi 速度
$ }7 ?9 y7 v$ G- M& }% w& y  o' aint 魔力
3 U: O7 R. L+ m$ [atk 攻击力
4 x0 A, W  A+ O5 c7 p+ L* W+ kpdef 物理防御
3 q/ O3 Q' G* A+ `mdef 魔法防御
' M  X$ a/ G; l7 y! {, j. T: a* a8 Veva 回避修正
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:
  1.       eva = 8 * self.agi / attacker.dex + self.eva* p# l6 _  W1 e# V
  2.       hit = self.damage < 0 ? 100 : 100 - eva  P: w5 @4 T$ N# w
  3.       hit = self.cant_evade? ? 100 : hit
    % G9 M: J* H$ p, A* V+ v
  4.       hit_result = (rand(100) < hit)( f& d' t( w. }& v5 v7 G1 G
复制代码
对照的中文翻译是:9 b9 o+ L& n. E; a. o3 Q- N) `- w/ h
闪避率 = 8 × 速度值 / 灵巧值 + 回避修正值9 o4 _1 @' \4 w6 l1 L) u
命中率 = 伤害小于零吗 ? 如果小于零则命中率为100;反之命中率为100 - 闪避率$ G) W( q* [3 t; A; M- f+ m( [
命中率 = 无法闪避的场合吗? 如果无法闪避命中率为100;反之命中率不变( J; J' \: T8 Q% x# J4 Y
是否击中 = ((随机数0~100) 是否小于命中率)- P3 ^+ ?# f5 m' o- C% @* }1 U
$ \# \2 ~' b/ j" t& D
说明:( X  k# _/ A% _  f
无法闪避的场合可能是由于状态,数据库-状态的“不可回避攻击”那一栏有此设定。. v3 j" F& h5 u7 o9 K
是否击中的概念是一个布尔型(即true/false 真或伪),+ W/ M$ }- @7 ]  \% A5 N# X. v0 q* l
XAS - Damage的53行左右有一个if hit_result == true就是对是否命中的分歧,; r- w; v* L3 l: M: ~1 v# x- {8 r
是否命中这个判定结果为真则进行伤害相关,如果为伪,会执行126行左右的:
  1.       self.damage = "Miss"
    # [6 d* Z! l: i4 {: y" T& j4 b) |
  2.       self.critical = false, f0 p- {  x$ Y
复制代码
即设定伤害为miss,同时取消会心一击标志。
- ]8 X( o& `: I4 J7 I3 m& B2 B; O
2 Y: N/ \; Q+ K3 w; T8 u* y; s8 Z; _* p2 K8 E1 X
总的来说,
9 G. G6 V* G9 P& q7 A" d* k可能是您的游戏中数据库-角色栏对某个角色的能力值成长曲线设置不平衡导致,% I  b5 J( U# a
需要修改灵巧(青色的成长曲线)以及速度(绿色的成长曲线)。; n3 D* J" g5 m5 g9 s/ r
往事简直不堪回首,稍微做点想做的事吧
回复 支持 反对

使用道具 举报

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
3
 楼主| 发表于 2012-10-7 16:26:29 | 只看该作者
ML4455739 发表于 2012-10-7 16:09 9 [3 Z! |% j# i1 q+ \, g4 ^
先放个参照表备忘。
- V& n# G. E' m( y在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:对照的中 ...
0 @+ K* y7 e/ e$ \
原来如此,我之前好像也翻到这些脚本了,就是没看懂= =现在应该可以看懂了,谢谢
回复 支持 反对

使用道具 举报

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

站长信箱:fux2@moe9th.com|手机版|小黑屋|无图版|Project1游戏制作

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

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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