如何复刻侧舷齐射技能
本帖最后由 mrf 于 2021-7-11 11:56 编辑在护卫舰的protoy里,有一个关于侧舷齐射的定义:
<protoaction>
<name>BroadsideAttack</name>
<damage>55.000000</damage>
<damagetype>Siege</damagetype>
<maxrange>38.000000</maxrange>
<rof>0.050000</rof>
<damagecap>80.000000</damagecap>
<damagebonus type="Ship">2.000000</damagebonus>
<damagearea>1.000000</damagearea>
<damageflags>GAIAEnemy</damageflags>
</protoaction>
这里的rof是0.05。
在tactics里面,rof变成了3:<action>
<name stringid="38123">BroadsideAttack</name>
<type>BroadsideAttack</type>
<attackaction>1</attackaction>
<rangedlogic>1</rangedlogic>
<anim>Idle</anim>
<idleanim>Idle</idleanim>
<projectile>Cannonball</projectile>
<numberprojectiles>1</numberprojectiles>
<impacteffect>effects\impacts\cannon</impacteffect>
<accuracy>1.0</accuracy>
<maxheight>0</maxheight>
<accuracyreductionfactor>0.01</accuracyreductionfactor>
<aimbonus>5</aimbonus>
<rof>3</rof>
<rate type="All">1.0 </rate>
<areasortmode>Directional</areasortmode>
<targetground>1</targetground>
<basedamagecap>1</basedamagecap>
</action>
在powers.xml中,是这样定义的:
<power name="PowerBroadside" type="UnitAction">
<displaynameid>32910</displaynameid>
<rolloverid>32911</rolloverid>
<icon>resources\images\icons\command\mode_broadside.png</icon>
<minimapeventtime sendalertto="player">1</minimapeventtime>
<activetime>5</activetime>
<radius>10.0</radius>
<placement forceonmap="1" enemy="" allowgaia="">unit</placement>
<abstractattacktargettype>LogicalTypeRangedUnitsAttack</abstractattacktargettype>
<unitaction>BroadsideAttack</unitaction>
</power>
这里activetime是5,如果这代表着作用时间,那么侧舷齐射应该会发射5/0.05=100枚炮弹,但是这个显然是不现实的,伤害过于恐怖(55*100=5500,对船8000)。所以我想知道这里面的语句都是什么作用。
另外,在frigate.xml中,并没有任何开火声音的定义,那开炮时的声音又是怎么来的呀……我一看art文件就头疼……望大神不吝赐教{:7_265:}
如果是作用到普通攻击,应该不可能 这与特定骨骼名称和主程序设定有关,
一般的侧伭船只,3次或6次攻击算一次完整的action,齐射技能就是调用一次该action,rof为0.05所以会以极短时间连射6发,完成这个action
你如果要给其他单位齐射技能,要确保有特定的骨骼,骨骼名见gallon等船只 建筑,船只的开火效果无需特殊设置,主程序有默认的,大概还是与特定骨骼有关 pdz38 发表于 2021-7-25 09:54
建筑,船只的开火效果无需特殊设置,主程序有默认的,大概还是与特定骨骼有关 ...
跟骨骼有关应该没错,比如海贼帆船添加侧舷齐射后,只能开两炮
页:
[1]