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

Project1

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

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

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

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

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

x
本帖最后由 lqx50 于 2012-10-7 17:53 编辑 % q% c! A1 B3 E; k; s
% u2 N9 X( _$ f, y/ ]/ k
什么因素会决定怪物攻击主角的命中率?为什么主角升了几级后怪物攻击就从来未命中过主角?
梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
帖子
607

开拓者

2
发表于 2012-10-7 16:09:12 | 只看该作者
本帖最后由 ML4455739 于 2012-10-7 16:10 编辑 0 k+ a; ~: Y) i0 O6 _/ b9 i

3 E& v2 R, ?- h/ O$ {" _) H先放个参照表备忘。+ \' l! r8 z# O) {( x
str 力量
6 P, ?( A6 `0 Q* |dex 灵巧
" x$ f* p0 u& g; Z2 fagi 速度7 Y# R' K0 f/ |
int 魔力* @( ~) s+ `: e
atk 攻击力
8 n7 W" Z) A4 h* W/ A; X- X& g$ Tpdef 物理防御
) b+ o/ U3 M/ h4 ymdef 魔法防御
% y7 N, O& F7 W4 a5 neva 回避修正
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:
  1.       eva = 8 * self.agi / attacker.dex + self.eva! E6 p, i$ |) q$ R8 H' ~
  2.       hit = self.damage < 0 ? 100 : 100 - eva0 V5 D2 U1 n, R, f, h
  3.       hit = self.cant_evade? ? 100 : hit( |) K* P' R5 C" q8 h, ]
  4.       hit_result = (rand(100) < hit)
    ) ?. R# D/ I5 s) G
复制代码
对照的中文翻译是:
! U2 T: b% C- H* f9 v( E& u6 t闪避率 = 8 × 速度值 / 灵巧值 + 回避修正值8 a% j% J; r1 v
命中率 = 伤害小于零吗 ? 如果小于零则命中率为100;反之命中率为100 - 闪避率& q: N8 d: i- b) [
命中率 = 无法闪避的场合吗? 如果无法闪避命中率为100;反之命中率不变5 t& V& p3 s+ {6 ^) s
是否击中 = ((随机数0~100) 是否小于命中率)3 J: |2 L  r% n8 e

* r: d3 o8 y8 m: ?说明:) U, a* z& T! X& ]
无法闪避的场合可能是由于状态,数据库-状态的“不可回避攻击”那一栏有此设定。
% l3 b; y9 o! ?- r# z# h是否击中的概念是一个布尔型(即true/false 真或伪),0 n; h# G: M9 ]$ c& [* `
XAS - Damage的53行左右有一个if hit_result == true就是对是否命中的分歧,
: ~1 O" z. a1 a" v+ l( w! \是否命中这个判定结果为真则进行伤害相关,如果为伪,会执行126行左右的:
  1.       self.damage = "Miss"8 W* ~3 F% |- f. A% o
  2.       self.critical = false. N- ?7 p0 T2 {3 M% }) X1 c
复制代码
即设定伤害为miss,同时取消会心一击标志。
% N' F& C9 t* M
" e) T( a1 n  O1 K2 w- \0 `/ k. e  m" N
总的来说,
* a, g5 G9 n4 _: }! V2 D6 ]可能是您的游戏中数据库-角色栏对某个角色的能力值成长曲线设置不平衡导致,4 _# f+ }9 F) |. G: T$ A
需要修改灵巧(青色的成长曲线)以及速度(绿色的成长曲线)。2 M8 E, W3 o, `  [( A
往事简直不堪回首,稍微做点想做的事吧
回复 支持 反对

使用道具 举报

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
3
 楼主| 发表于 2012-10-7 16:26:29 | 只看该作者
ML4455739 发表于 2012-10-7 16:09
. N( t3 v: a2 V7 B先放个参照表备忘。
6 F3 h* l* ]0 H* X) z/ c2 w7 U在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:对照的中 ...

9 V0 r- ~( s, M5 I) p' Q5 [原来如此,我之前好像也翻到这些脚本了,就是没看懂= =现在应该可以看懂了,谢谢
回复 支持 反对

使用道具 举报

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

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

GMT+8, 2025-9-20 11:04

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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