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

Project1

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

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

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

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

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

x
本帖最后由 lqx50 于 2012-10-7 17:53 编辑
! ?7 \3 M: l6 T+ }( O3 d0 M* {$ G* f1 u& @  u( t# v" _$ m
什么因素会决定怪物攻击主角的命中率?为什么主角升了几级后怪物攻击就从来未命中过主角?
梦石
0
星屑
672
在线时间
2184 小时
注册时间
2009-12-6
帖子
607

开拓者

2
发表于 2012-10-7 16:09:12 | 只看该作者
本帖最后由 ML4455739 于 2012-10-7 16:10 编辑
- A+ s8 p7 g- {2 {2 S/ s$ ]/ P0 z, x9 S* R! A3 [. X/ @! J* ^4 z2 F
先放个参照表备忘。
& n9 I: q* s: t0 V: J8 \/ W3 ]
str 力量
' n0 f/ a! }) x* @% Rdex 灵巧% T5 X) X& f" b2 r' E7 T3 E$ ^! {
agi 速度
4 y" p9 ?6 D% Y' T. V& Y2 iint 魔力# l# h( `1 v  t* B+ G
atk 攻击力
& f' q. e9 }  K% x* n0 H2 [pdef 物理防御
( ]0 E$ p/ i$ }$ Qmdef 魔法防御6 y; M0 [2 D) E" |  P( p& p9 Y- `
eva 回避修正
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:
  1.       eva = 8 * self.agi / attacker.dex + self.eva
    5 D8 o. c: e4 }9 s. v) v$ g( ^) ^
  2.       hit = self.damage < 0 ? 100 : 100 - eva
    ; x6 x& H" X2 j
  3.       hit = self.cant_evade? ? 100 : hit
    * V) C9 J3 Y6 B; v$ X/ Z
  4.       hit_result = (rand(100) < hit)& U4 ^& Z8 E& _3 C2 L5 h
复制代码
对照的中文翻译是:
8 Z$ _: C8 K3 a, K闪避率 = 8 × 速度值 / 灵巧值 + 回避修正值
2 W; Q. F2 j6 {% b( c* i/ H命中率 = 伤害小于零吗 ? 如果小于零则命中率为100;反之命中率为100 - 闪避率
+ @4 t% U  ^4 u% Q! F: i, J  H命中率 = 无法闪避的场合吗? 如果无法闪避命中率为100;反之命中率不变
/ p  ^7 b  M* b( \* j是否击中 = ((随机数0~100) 是否小于命中率)
/ H5 B; c; J: P+ ~- T  c2 s' R  v7 H- Z, ]$ l* v$ ~+ U
说明:7 |3 \& ^1 f5 p# l7 x
无法闪避的场合可能是由于状态,数据库-状态的“不可回避攻击”那一栏有此设定。
+ N, P% ]- D7 m' {4 [/ e8 q是否击中的概念是一个布尔型(即true/false 真或伪),
7 @. `0 Y& b# J9 M5 n7 P0 E: fXAS - Damage的53行左右有一个if hit_result == true就是对是否命中的分歧,
- W1 l& {7 `3 F是否命中这个判定结果为真则进行伤害相关,如果为伪,会执行126行左右的:
  1.       self.damage = "Miss"
    5 o. g  w9 N7 s1 K
  2.       self.critical = false' E. h9 E" ?5 Z4 `  H
复制代码
即设定伤害为miss,同时取消会心一击标志。
5 }7 T2 _; t! V& s, I- {, {' s/ j  O' O8 p8 G! K' f) L: e: [. p
2 ~4 n% n8 n# o3 g2 m; m  \2 h
总的来说,- H% U7 i& `8 f6 Z* s
可能是您的游戏中数据库-角色栏对某个角色的能力值成长曲线设置不平衡导致,
9 h7 n: J4 g- o. c3 c2 f需要修改灵巧(青色的成长曲线)以及速度(绿色的成长曲线)。+ o( R: U9 X3 e  C1 n+ t
往事简直不堪回首,稍微做点想做的事吧
回复 支持 反对

使用道具 举报

梦石
0
星屑
50
在线时间
33 小时
注册时间
2012-10-2
帖子
42
3
 楼主| 发表于 2012-10-7 16:26:29 | 只看该作者
ML4455739 发表于 2012-10-7 16:09
9 l' p0 z# O% w, v先放个参照表备忘。# T3 ^/ Q- ]* @0 N" M
在XAS 3.82里XAS - Damage找到的伤害计算公式,其中回避部分的计算式是如下:对照的中 ...

, V; t2 [0 M9 r原来如此,我之前好像也翻到这些脚本了,就是没看懂= =现在应该可以看懂了,谢谢
回复 支持 反对

使用道具 举报

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

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

GMT+8, 2024-11-22 09:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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