VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1497|回复: 12

技能伤害算法

[复制链接]

1

主题

5

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-1-25 19:20:01 | 显示全部楼层 |阅读模式
谁帮忙写几个 简单的常用的 RPG 技能伤害算法
谢谢
回复

使用道具 举报

0

主题

8

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-3-6 03:30:01 | 显示全部楼层
这也需要别人来写吗??你怎么定的规则,别人怎么知道??
回复

使用道具 举报

0

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-3-12 17:00:01 | 显示全部楼层
都是自己定义的
比如攻击力*N1 - 防御能力*N2 + 随机波动范围
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-3-13 08:00:01 | 显示全部楼层
```具体的代码没 不过我描述1段
假设主角S{int HP,int MP, int lev,string name ```public int sHP();public int sMP(); ``} ;
技能 class Sskill{int damage, int costMP ,int costHP,string name```}

假设敌人E{int HP,int MP,int lev,string name````};
技能 class Eskill{int damage, int costMP ,int costHP,string name````}
War war;//class War()返回值为true 进入战斗界面
S s=new S();
E e=new E();
if(war==true){
s.sHP-=e.damege;
e.eMP-=e.costMP;
e.eHP-=e.costHP;
}
````````````````````````
//描述的不是很好不过 大概就是这么做的 RPG基本都是回合制的



回复

使用道具 举报

1

主题

5

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-4-10 16:45:01 | 显示全部楼层
恩 我的RPG 战斗是回合类的

框架都设计好了 就是我没研究过策划 不知道如何伤害比较合理一点 当然+-*/的算法谁都会 关键看 怎么算 耐玩性高一点
回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-4-12 09:15:02 | 显示全部楼层
伤害的算法最好不要仅仅依靠一个方法,而是利用接口,

比如所有各种类型单位都有
int getPAttack(); //物力攻击力
int getMAttack(); //魔法攻击力
int getPAttackType(); //物力攻击类型
int getMAttackType(); //魔法攻击类型
int getPDefence(int pType); //对于某种类型物力攻击的防御力
... 还有攻击奖励/系数、防御奖励/系数、免疫、命中率/MISS率、距离系数、高度系数、随机系数等等

int computeDamage(Unit atk, Unit def) {
  int pDmg = atk.getPAttack() - def.getPDefence(atk.getPAttackType());
  int mDmg = atk.getMAttack() - def.getMDefence(atk.getMAttackType());
  int dmg = pDmg + mDmg ........ ;
}

这样,每个兵种的class自己override/implement这些方法,并根据unit当前的状态,返回不同的数值,然后计算
回复

使用道具 举报

0

主题

63

帖子

42.00

积分

新手上路

Rank: 1

积分
42.00
发表于 2020-4-12 10:30:01 | 显示全部楼层
上面讲到的那些基本属性都写在配置文件里,用以方便调整游戏平衡
回复

使用道具 举报

1

主题

5

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-4-12 23:30:02 | 显示全部楼层
楼上的赐教了  你的意思是进入战斗以后 先get兵种的属性用于计算 是这样吗?
能不能 具体写2个简单的算法 比如 MISS率 暴击率 这样的公式
回复

使用道具 举报

1

主题

5

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-4-12 23:45:01 | 显示全部楼层
楼上的赐教了  你的意思是进入战斗以后 先get兵种的属性用于计算 是这样吗?能不能 具体写2个简单的算法 比如 MISS率 暴击率 这样的公式
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-4-15 16:30:01 | 显示全部楼层
接口是个好方法啊 。 如果真的想让 伤害合理又耐玩的话——建议最好做1套比较简单的数学模型, 要不可以参考下别人的8位机上的游戏(怀念—吞食天地,经典 剧情好 又耐玩)楼主可以去找差不多的看下啊 这些游戏的代码网上都有的,别人建立好的数学模型套用就好了。推荐几款游戏的模型哇(小时候游戏玩多了~!~)《吞食天地》,《圣火徽章》,《林克大冒险》(适合ARPG),《口袋妖怪》(网上没代码,不过很经典)。其他的就不推荐了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

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