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

Project1

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

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

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

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

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

x
本帖最后由 lqx50 于 2012-10-7 17:53 编辑 , j# t2 v6 j+ @2 O3 M. g) _

( a2 @  z- q3 N- D8 Z  P  T什么因素会决定怪物攻击主角的命中率?为什么主角升了几级后怪物攻击就从来未命中过主角?
梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
帖子
607

开拓者

2
发表于 2012-10-7 16:09:12 | 只看该作者
本帖最后由 ML4455739 于 2012-10-7 16:10 编辑
- j- D2 y/ Q7 R* s" D8 l- _8 ]2 t/ I! A6 U! L: P
先放个参照表备忘。% Q4 S" p% G$ e+ [7 {- x! K- C
str 力量
+ v4 A8 @2 X& a# T9 J. O  Pdex 灵巧9 t) ~7 _/ b. O
agi 速度
0 m+ ?( `1 b# ?int 魔力
; G) x, i$ x- [7 fatk 攻击力
! }8 e1 R: \* Z; ipdef 物理防御
3 B" h- j  a8 O; @, ]% m  ^3 B) pmdef 魔法防御, p" t  v: [8 D' _, X3 E
eva 回避修正
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:
  1.       eva = 8 * self.agi / attacker.dex + self.eva/ Q' Z0 h, e5 ~. @( V5 G
  2.       hit = self.damage < 0 ? 100 : 100 - eva/ A: w2 q0 T% x
  3.       hit = self.cant_evade? ? 100 : hit: W& i7 X3 ~. e; e- s; N$ u  X  s0 i. s
  4.       hit_result = (rand(100) < hit)
    * A8 f) i+ i0 G! y1 g+ ^8 j) v
复制代码
对照的中文翻译是:  w2 Z. }0 w" T0 t; I
闪避率 = 8 × 速度值 / 灵巧值 + 回避修正值0 I2 P0 Z- E! p7 b. N
命中率 = 伤害小于零吗 ? 如果小于零则命中率为100;反之命中率为100 - 闪避率/ T% h4 Z( L/ H- i) ]0 E
命中率 = 无法闪避的场合吗? 如果无法闪避命中率为100;反之命中率不变
- n5 n' f( U$ y6 w% ~4 v0 F是否击中 = ((随机数0~100) 是否小于命中率)0 h4 a2 t4 Q: W" y

4 M) t( b1 P( t$ _说明:/ d0 W$ ^& g+ W" d
无法闪避的场合可能是由于状态,数据库-状态的“不可回避攻击”那一栏有此设定。
- {- q  c  H+ O7 b/ w4 F9 {是否击中的概念是一个布尔型(即true/false 真或伪),
+ `) u0 y4 z- S5 v. dXAS - Damage的53行左右有一个if hit_result == true就是对是否命中的分歧,( l  R4 J$ G$ d/ K" K
是否命中这个判定结果为真则进行伤害相关,如果为伪,会执行126行左右的:
  1.       self.damage = "Miss"4 v$ q: W. x  v. x
  2.       self.critical = false. s) P% k! t+ o$ r
复制代码
即设定伤害为miss,同时取消会心一击标志。
, }/ n* ~# y+ _# [& W+ G
5 i. W* n1 H9 j6 t- @* x! f4 K' R) g' e, f8 g6 S
总的来说,. n3 d- c1 H$ }" Q: }; d
可能是您的游戏中数据库-角色栏对某个角色的能力值成长曲线设置不平衡导致,% W; b' c, e4 H7 \! L: e
需要修改灵巧(青色的成长曲线)以及速度(绿色的成长曲线)。* g) f/ V8 }/ Y2 N# R
往事简直不堪回首,稍微做点想做的事吧
回复 支持 反对

使用道具 举报

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
3
 楼主| 发表于 2012-10-7 16:26:29 | 只看该作者
ML4455739 发表于 2012-10-7 16:09
; A) o+ l9 Z/ @0 w. N9 V1 R先放个参照表备忘。$ Q# V; x% t+ N
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:对照的中 ...
9 o- q# X/ Z3 e- V; L6 _/ i; q
原来如此,我之前好像也翻到这些脚本了,就是没看懂= =现在应该可以看懂了,谢谢
回复 支持 反对

使用道具 举报

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

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

GMT+8, 2026-7-28 04:52

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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