游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5223|回复: 10

[求助] 关于减法公式随机数的问题

[复制链接]

4

主题

7

帖子

41

积分

注册会员

Rank: 2

积分
41
发表于 2015-6-2 23:01:17 | 显示全部楼层 |阅读模式
设杀怪耗血比为5% 攻击频率为每秒1次 战斗时长为3秒 角色生命为 300 设角色防御为56 只需以下公式就能准确的计算出怪物攻击,并能达到预期的效果。:
角色生命*耗血比/战斗时长+角色防御 = 怪物攻击
但引入随机数后,将角色防御变更为33-56后,计算起来就觉得难以把控具体请看下列公式。
设怪物攻击随机范围区间为50%-100%
角色生命*耗血比/战斗时长+角色防御*0.5 = 怪物最小攻击(35)
角色生命*耗血比/战斗时长+角色防御 = 怪物最大攻击(61)
角色防御等于33-56 怪物攻击 = 35-61
如此随机起来变得完全无法把控, 很可能出现不破防,或者超出预期的问题。
举两个比较极端的例子:角色防御最后随机出的结果是56,而怪物攻击随机出的是35,这肯定是不破防的。
而遇到怪物攻击等于61时 角色防御随机值=33,角色损伤又远远的超出了预期。
求各位大神告知,如何才能更好的把控随机数值,尽量使计算结果在可承受的范围内?
描述问题的方式可能比较笨拙,还请各位见谅。

0

主题

88

帖子

1488

积分

金牌会员

Rank: 6Rank: 6

积分
1488
发表于 2015-6-3 10:40:21 | 显示全部楼层
为什么要把防御和攻击做浮动呢?
何不将伤害 = 攻击-防御算出来后,再做一定的浮动

12

主题

53

帖子

610

积分

高级会员

Rank: 4

积分
610
发表于 2015-6-3 11:23:05 | 显示全部楼层
感觉你这个数值 都达到war3级别了
如果非要这么做  你别担心破防的问题   给破防之前的 减法函数加一个 保底削减比如
攻>1.2防              攻-防=攻-防
攻≤1.2防    攻-防=0.1防*e^(5 (攻-防)/防-1)=0.1防*e^(5 攻/防-6)

这公式考虑了分段函数连续性和导数连续性,你可以验证下,应该能解决你的问题

5

主题

101

帖子

1723

积分

金牌会员

Rank: 6Rank: 6

积分
1723
发表于 2015-6-3 11:50:18 | 显示全部楼层
223.png

可调参数k>0(越大越好)

0

主题

88

帖子

1488

积分

金牌会员

Rank: 6Rank: 6

积分
1488
发表于 2015-6-3 14:36:37 | 显示全部楼层
一个浮动也能弄的这么复杂

0

主题

141

帖子

872

积分

高级会员

Rank: 4

积分
872
QQ
发表于 2015-6-3 18:00:06 | 显示全部楼层
同意2楼的看法,算出伤害再随机就好了嘛。随机放在越前面,浮动自然也会越大。
而且浮动范围从50%-100%,这个也太夸张了吧~

4

主题

7

帖子

41

积分

注册会员

Rank: 2

积分
41
 楼主| 发表于 2015-6-3 20:30:42 | 显示全部楼层
casy 发表于 2015-6-3 18:00
同意2楼的看法,算出伤害再随机就好了嘛。随机放在越前面,浮动自然也会越大。
而且浮动范围从50%-100%,这 ...

我也觉得2楼的方法比较简单,不过我知道的传奇类项目,数值一直是这么做的,公司也不让改基础模型和战斗公式,所以就比较蛋疼了。

4

主题

7

帖子

41

积分

注册会员

Rank: 2

积分
41
 楼主| 发表于 2015-6-3 20:36:59 | 显示全部楼层
感谢各位热心回答,改变公式的话,就目前来说,我这边可能性不大。不知道还有没有其他的好方法,例如从技能方面着手,给怪加个技能啥的。

57

主题

578

帖子

2294

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2294
发表于 2015-6-4 16:13:59 | 显示全部楼层
BeerRabbit 发表于 2015-6-3 11:50
可调参数k>0(越大越好)

右边的LN是怎么出来的,推导与设计是?

1

主题

61

帖子

238

积分

中级会员

Rank: 3Rank: 3

积分
238
发表于 2015-6-4 17:02:54 | 显示全部楼层
你的计算基于:
伤害=攻击力-防御力
-------------------------------------------------
这样做本身就有很大局限性,各种增益后,攻击力要远大于防御力才行。
防御力的增幅,对战斗影响过大。防御力与战斗时间,不成正比。防御力越大,同样的增幅,防御力的收益越高。
wow、暗黑3的防御力,不是直接这样相减。

p.s.有时间的话,我想写一篇分析暗黑数值设计思路的文章。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-29 10:05

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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