《Project:SeniorHigh》角色/数值设计方案

角色构成

属性

角色的各项可量化数值,包含与成长相关的角色等级、角色成长,以及与战斗有关的生命、护盾、韧性。

名称 内部命名 期望效果 默认值/初始值
角色等级 CharacterLV 角色的等级 1
角色成长 CharacterCG 角色升级后获得指定数量的强化点 0
生命 CharacterHP 角色的血量,归零时角色退场
生命不可大于角色生命上限
50/50
护盾 CharacterSD 角色的额外血量类型之一
如果角色拥有护盾,在受到伤害时优先扣减角色的护盾,溢出的伤害会作用到是生命上
0/0
韧性 CharacterTN 角色的额外血量类型之一
如果角色拥有韧性,则受到的伤害将使用韧性区
0/0

*:关于生命等数值与角色等级直接挂钩的部分,参考下表示意。

等级 1 2 3 4 5 6 7
HP 50 60 70 80 90 95 100
护盾 0 0 0 0 0 0 0
韧性 0 0 0 5 5 10 10

技能

角色能使用的技能。

名称 内部命名 期望效果 默认值/初始值 期望定位
技能槽位 Slot_Skill 角色的技能槽位
角色拥有固定的3个技能槽位,其中第1、2槽位可装备角色拥有的任意战斗技能
第3槽位限定为防御类技能
/ 能够装备任意符合要求技能的槽位
技能 Skill 角色的战斗方式技能
包含6项参数
可能要为技能的升级留一些空间,要注意
/ 包含多份数据的数据体,请注意为动画留一下空间
三文鱼不是很擅长美术侧的方向,我不太了解这部分需要留多少部分给美术
因此没有写美术的部分
技能_冷却时间 CD 技能的冷却时间为1时,技能在每个回合都可以使用
大于1时,每增加1,多1回合的冷却时间

防御的冷却时间为1
1 限定在1~10,建议使用int
技能_五行属性 Element 技能的伤害属性包含金木水火土和无,6种
置空时造成无属性伤害
NULL 参数等于NULL、Metal、Wood、Water、Fire、Earth其中之一
技能_伤害 Damage 技能造成的伤害数值
技能效果为治疗时,伤害数值即为恢复量
0 为一个整数
技能_技能效果 SkillEffect 技能造成的,诸如治疗、中毒、易伤等效果
一个技能至多拥有3个效果
防御技能也拥有技能效果
/ 交给程序来实现了,应该是一个可接入技能效果的配置
技能_前摇 SkillTimeCost 技能的释放使用的【瞬】数
当角色的技能<前摇>小于目标的技能<前摇>时,视作先攻
当角色被先攻时,未释放技能的<前摇>会被增加等同于攻击人技能<造成硬直>数目的数值
当<前摇>大于10时,技能会被取消释放
防御的前摇为0
前摇为-1时,技能为瞬发技能
1 为整数,建议用int
瞬发技能和防御的结算先后,请参考“战斗过程”
技能_造成硬直 StunTime 技能造成先攻时,目标的未释放技能增加<造成硬直>数值的<前摇> 0 为0~11的一个整数,建议用int
技能_破韧 AntiTN 技能造成伤害时,如目标拥有韧性,则在韧性区加算破韧
韧性区部分,参见“结算公式—韧性区”
0.00 为一个浮点数,需要使用2位小数
技能_防御_伤害减免 DamageRE 会让最终伤害乘算伤害减免数值 0.50 为一个浮点数,需要使用2位小数
不会大于1.00

相性

角色的属性类型,一个角色可能拥有多个相性。

与相性有关的结算,参见“结算公式——相性区”

名称 内部命名 期望效果 默认值/初始值 期望定位
相性 Basis 角色的属性类型
一个角色可能有多个相性
至多为5,至少为1
/ 角色的<技能_属性>,需要和<相性_五行属性>匹配。如不匹配则角色不能装备这一技能
NULL属性的技能,即无属性技能,可以无视该规则
相性_五行属性 Element 相性的属性包含金木水火土,共5种 Metal 参数等于Metal、Wood、Water、Fire、Earth其中之一
相性_相性强度 Strength 相性的强度分为高或低 0 参数等于1或0,可能会是个布尔型变量
1为强、0为弱

命格

角色的天赋,一个角色可能拥有多个命格。

名称 内部命名 期望效果 默认值/初始值 期望定位
命格 Fate 角色的天赋,一个角色可能有多个命格 / /
命格_命格效果 FateEffect 命格的具体效果,一个命格恒定对应1个效果 / 例如“造成木属性伤害提升20%”这样的效果

结算公式

最终伤害 = (相性区 * 基础值) * (1 + 增伤区 + 易伤区 - 伤害减免区) * 先攻区 * 韧性区 * 特殊乘区 + 固定值;

相性区

相性的强弱和有无对应不同的伤害系数。

涉及到浮点数时,采用向下取整的原则。

类型 强相性 弱相性 无相性
受到对应属性伤害 50% 100% 130%

一个强火相的角色受到【50】点火属性伤害,则在仅计算相性区时,该角色受到的伤害为【50 * 50% = 25】点火属性伤害。

一个无火相的角色受到【50】点火属性伤害,则在仅计算相性区时,该角色受到的伤害为【50 * 130% = 65】点火属性伤害。

一个无火相的角色受到【66】点火属性伤害,则在仅计算相性区时,该角色受到的伤害为【66 * 130% = 85.8】点火属性伤害。但由于向下取整,该角色受到【85】点火属性伤害。

基础值

基础值等于Damege的数值。

增伤区、易伤区、伤害减免区

增伤区使用“造成……伤害提升……”字眼;

易伤区使用“受到……伤害提升……”字眼;

伤害减免区使用“受到……伤害降低……”字眼;

这三个数值均为浮点数,伤害减免更常见于防御技能上。

举例来说,如【造成 木属性 伤害提升 20%】或者【受到 伤害降低 50%】。

先攻区

造成先攻的条件如下:

  1. 攻击方和受攻击方的<技能>均未结算
  2. 攻击方未结算<技能>的<前摇>数值小于受攻击方未结算<技能>的<前摇>数值

举例来说:

陈听枫 对 三文鱼 使用 流年不利(前摇2)

三文鱼 对 陈听枫 使用 咸鱼突刺(前摇4)

则 陈听枫 对 三文鱼 造成先攻

陈听枫 对 三文鱼 使用 流年不利(前摇2)

三文鱼 使用 防御(前摇0)

则 陈听枫 不对 三文鱼 造成先攻

陈听枫 对 三文鱼 使用 凶星坐命(瞬发,前摇-1)

三文鱼 使用 防御(前摇0)

则 陈听枫 对 三文鱼 造成先攻

先攻时,造成伤害乘以先攻伤害倍率、强化技能效果,并对受攻击方造成硬直。在技能设计表中,先攻效果和伤害倍率如下划线部分所示:

技能名 技能修饰文本 技能定位 描述文本
常态效果 先攻效果
技能前摇 4 造成硬直 0
技能伤害 1 先攻伤害倍率 150%
技能属性 NULL
技能冷却 1
技能效果 描述文本 先攻强化效果 描述文本
资源名称 文件名 动画目的 描述文本

韧性区

如果受攻击角色存在韧性,使用韧性结算规则。目的是让玩家冒险谋取更大的伤害减免效果。

韧性区包含<韧性减伤>和<破韧>两部分,<韧性减伤>固定为75%,<破韧>则根据技能而定。

韧性区的数值和等于(<韧性减伤>+<破韧>),即<破韧>+75%.

举例来说:

情形1:角色拥有100HP,5韧性,受到20点无属性伤害

角色受到20*75%=15点伤害

结算完毕后,角色剩余90HP,0韧性

情形2:角色拥有100HP,20韧性,受到20点无属性伤害

角色受到20*75%=15点伤害

结算完毕后,角色剩余100HP,5韧性

情形3:角色拥有100HP,20韧性,受到20点无属性伤害,伤害拥有50%破韧

角色受到20*(50%+75%)=25点伤害

结算完毕后,角色剩余95HP,0韧性

特殊乘区

不在上述表述范围内即视作特殊乘区,多为特殊的技能效果。

固定值

仅在部分道具/特殊命格作用下才会存在这个区间。

一般的表现形式为“造成伤害时,额外追加5点伤害”

战斗过程

战斗流程

瞬发与防御

这里以某一个回合内各节点为例

游戏阶段

将战斗内容根据剧情和关卡设计,分成N(N≥3)个相对阶段。目前暂定N为6。

每个阶段对应一个固定难度数值,实操时在10%的上下区间内浮动。我们将这一数值称为【难度乘子】。

若某一阶段的难度为10,则该阶段的具体数值将在9~11的区间,BOSS战则为12。

难度曲线

设第一阶段难度乘子为10,则得到各阶段对应数据如下。

阶段 1 2 3 4 5 6
难度乘子 10 14 17 20 24 30
成长 / 4 3 3 4 6
等级 1 2~3 4~5 6 7~8 9~10
以HP为例 50 70 90 100 120 150

对应图表

其他的数值大体上遵照难度曲线展开。

期望造伤

一场战斗的期望回合数在3~5较为合适,BOSS战则可以延长至至多12个回合。

因此,我们将某一技能的造伤能力设置为,仅凭【白值+命格】,在5次攻击后,可以击败同阶段参考HP的角色。

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2023-2024 TWFish
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信