动作文件表-地面
常规轻重击 [攻击键]
- BFCO_Attack1.hkx ~ BFCO_Attack20.hkx
- BFCO_PowerAttack1.hkx ~ BFCO_PowerAttack20.hkx
空中攻击 [跳跃+攻击键]
- BFCO_JumpAttack.hkx
- BFCO_JumpAttackPower.hkx
冲刺攻击 [冲刺/旋风冲刺+攻击键]
- BFCO_SprintAttack.hkx
- BFCO_SprintAttackPower.hkx
特殊攻击 [格挡键+攻击键]
- BFCO_SpecialAttack.hkx
- BFCO_SpecialAttackPower.hkx
方向重击 [方向键+攻击键]
- BFCO_PowerAttackA.hkx(前)
- BFCO_PowerAttackB.hkx(后)
- BFCO_PowerAttackL.hkx(左)
- BFCO_PowerAttackR.hkx(右)
强力重击 [MCM热键 /或/ 常规轻重击+互动键]
格挡盾击 [格挡+攻击键]
- BFCO_BlockBash.hkx(武器轻)
- BFCO_BlockPowerBash.hkx(武器重)
- BFCO_ShdBash.hkx(盾牌轻)
- BFCO_ShdPowerBash.hkx(盾牌重)
动作文件表-水下
常规轻重击 [攻击键]
- BFCO_SwimAttack1.hkx
- BFCO_SwimAttack2.hkx
- BFCO_SwimAttack3.hkx
- BFCO_SwimAttackPower.hkx
动作注释表-地面
通用派生注释(适用所有地面攻击动作)
- PIE.@SGVF|BFCO_AttackSpeed|1.0 (*可选,调整动画攻速)
- BFCO_NextIsAttack1 (定义下次轻击,首次定义需在第0秒)
- BFCO_NextIsPowerAttack2 (定义下次重击,首次定义需在第0秒)
- BFCO_NextWinStart (打开轻击派生窗口)
- BFCO_NextPowerWinStart (打开重击派生窗口)
- BFCO_DIY_EndLoop (结束派生窗口)
- BFCO_DIY_recovery (打开后摇恢复窗口,允许按方向键取消后摇)
与Animaiton Motion Fix的联动注释(适用所有地面攻击动作,注释优先级高于AMF的ini设置)
- AMF_ForceMoveMagstimStart (打开强制吸附窗口,启用位移吸附直到窗口结束或本次动作结束)
- AMF_ForceMoveMagstimClose (结束强制吸附窗口,窗口结束后由ini设置接管)
- AMF_ForbidMoveMagstimStart (打开禁止吸附窗口,禁用位移吸附直到窗口结束或本次动作结束)
- AMF_ForbidMoveMagstimClose (结束禁止吸附窗口,窗口结束后由ini设置接管)
BFCO自3.0.0提供了蓄力机制为动作DIY增加更多可能性,需要动手能力
动作文件表
- 蓄力姿势:任意bfco方向和常规重击动作均可被改装为蓄力姿态(BFCO_PowerAttack1.hkx~BFCO_PowerAttack20.hkx、BFCO_PowerAttackA/B/L/R.hkx)
- 蓄力斩击1:BFCO_PowerAttack_Charge1.hkx
- 蓄力斩击2:BFCO_PowerAttack_Charge2.hkx
- 蓄力斩击3:BFCO_PowerAttack_Charge3.hkx
动作注释表
蓄力姿态注释
- BFCO_DIY_EndLoop (设在第0秒,标记禁用常规)
- BFCO_ChargeStageStart (设在第0秒,标记该动作为蓄力姿势)
- BFCO_ChargeStage1 (最短蓄力时间,此刻之后松开攻击键=派生斩击1;提前松开会强制蓄力到此刻)
- BFCO_ChargeStage2 (此刻之后松开攻击键=派生斩击2)
- BFCO_ChargeStage3 (最长蓄力时间,此刻自动派生斩击3)
蓄力斩击注释
- 使用通用派生注释
- 如需修改斩击伤害,可使用精准注释:Collision_Add.DamageMult(1.0)
如何创建蓄力攻击
1.创建姿势:
创建一个蓄力姿势hkx,命名为BFCO_*Power*.hkx (例如BFCO_PowerAttackA.hkx) ,这将决定蓄力攻击动触发方式和attackData。之后编辑你的BFCO_*Power*.hkx,写入蓄力姿态注释
2.创建斩击:
创建3个攻击hkx,命名为BFCO_PowerAttack_Charge1~3.hkx, 分别对应3段蓄力斩击,可填写通用派生注释
附:NPC蓄力攻击规则
npc也能够使用蓄力攻击,但只会执行最低蓄力等级
npc若要使用高阶蓄力,只需单独分配蓄力姿势,并删除低阶段注释(如下):
0.000000 BFCO_DIY_EndLoop
0.000000 BFCO_ChargeStageStart
1.500000 BFCO_ChargeStage3
实例下载:BFCO – 蓄力攻击示范动作.zip(内附txt版注释;其中p1作为蓄力姿势,斩击1正常伤害,斩击2和3通过精准注释增加了伤害倍数)
BFCO自3.2.1提供行为变量BFCO_iAttackVariants为动作DIY增加更多可能性,需要动手能力
变量说明
属性:BFCO_iAttackVariants数值类型为int,默认值0,在每次攻击结束恢复至idle状态时重置为默认
用法:动画作者使用注释 PIE.@SGVI|BFCO_iAttackVariants|1 或脚本命令临时更改其数值,通过oar为不同的BFCO_iAttackVariants值分发动画组(参考scar的SCAR_AttackVariants变量)
OAR条件示范:
{
"condition": "CompareValues",
"requiredVersion": "1.0.0.0",
"Value A": {
"graphVariable": "BFCO_iAttackVariants",
"graphVariableType": "Int"
},
"Comparison": "==",
"Value B": {
"value": 1.0
}
}
脚本示范:使用SetAnimationVariableInt命令更改BFCO_iAttackVariants值,然后播放动作
#1
Event OnEffectStart(Actor akTarget, Actor akCaster)
akCaster.SetAnimationVariableInt("BFCO_iAttackVariants", 88)
akCaster.PlayIdle(xxx)
endEvent
#2
Event OnEffectStart(Actor akTarget, Actor akCaster)
akCaster.SetAnimationVariableInt("BFCO_iAttackVariants", 88)
akCaster.PlayIdle(xxx)
Utility.Wait(0.1)
akCaster.SetAnimationVariableInt("BFCO_iAttackVariants", 0)
endEvent
两种示例效果相同,区别是#2会在发挥作用后立刻主动复位BFCO_iAttackVariants值,而#1没有主动复位,直到后续连招结束才会自然复位
实例下载:BFCO – 攻击变体示范动作.zip(借助行为变量一套动作配置了多个强力重击派生,内附简易说明)
杂项设定
硬直相关:硬直期间攻击可快速结束硬直,减少动作变形(只对原版玩家硬直有效)
龙吼相关:龙吼后摇允许派生常规攻击动作(以及环战技动作),旋风冲刺龙吼可以直接派生冲刺轻重击
格挡规则:默认为格挡随时能取消攻击,也可以在安装时选择切换为类似原版的规则(攻击前摇可以立刻格挡,攻击后摇按住格挡键会在恢复帧[BFCO_DIY_recovery]进入格挡)
MCM菜单
BFCO的mcm菜单提供了配置额外重击热键、开关方向重击、一键连续轻击等大幅改变操作体验的功能,在游戏内查看每种功能的详细说明
BFCO-方向重击注解
在mcm配置重击热键,可使bfco同时支持两种意义的方向重击操作:
A.真方向重击
触发方式:WASD+攻击键长按
动作文件:BFCO_PowerAttackA/B/L/R.hkx
备注:对应原版方向重击,为原生兼容原版技能树和任意技能树模组(不能改变触发方式,可以在mcm禁用)
B.伪方向重击(需要dTry’s Key Utils和支持的动作包)
触发方式:WASD+重击热键(如果在mcm配置重击热键)
动作文件:BFCO_PowerAttack1.hkx
备注:本质是站定重击,为兼容直接从MCO转换的动作(所有从MCO转换的方向重击都属于伪方向重击)
- 如果在mcm禁用真方向重击,则两种触发方式都触发伪方向重击
- 如果在mcm禁用真方向重击且不配置重击热键,则WASD+攻击键长按可触发伪方向重击