XIII
07-05-2012, 07:30 AM
So I just recently noticed that Scout actually has an after cast animation after firing his ultimate ability.
This is the original ability.entity inside his ability_04 folder.
<?xml version="1.0" encoding="UTF-8"?><ability
name="Ability_Scout4"
icon="icon.tga"
statuseffecttooltip="State_Scout_Ability4_Slow"
anim="ability_4channel"
casttime="300"
castactiontime="300"
channeltime="2250,1750,1250"
maxlevel="3"
requiredlevel="6,11,16"
actiontype="target_entity"
casteffecttype="SuperiorMagic"
targetscheme="nonboss_organic_enemy_units"
ischanneling="true"
deferchannelcost="true"
deferchannelimpact="true"
manacost="125,175,250"
cooldowntime="50000,40000,30000"
range="1500,2000,2500"
showareacast="true"
areacastmaterial="/shared/materials/area_cast_indicator_spokes.material"
>
<onchannelstart>
<applystate name="State_Scout_Ability4" target="target_entity" duration="2250,1750,1250" />
<applystate name="Self_State_Scout_Ability4" target="source_entity" ischannel="true"/>
<spawnunit name="Gadget_Scout_Ability4" target="target_entity" bind="target_entity" pushentity="true" ischannel="true" />
<setproxy entity="this_entity" target="stack_entity" />
</onchannelstart>
<onchannelframe>
<distance />
<compare a="result" b="1800,2300,2800" op="gt">
<breakchannel />
</compare>
</onchannelframe>
<onchannelbreak>
<kill target="this_proxy_entity" source="" />
</onchannelbreak>
<onchannelend>
<spawnprojectile name="Projectile_Scout_Ability4" source="source_entity" offset="0 0 80" target="target_entity" noresponse="true" />
<playeffect effect="effects/fire.effect" source="source_entity"/>
<expirestate name="State_Scout_Ability1" target="source_entity" />
<kill target="this_proxy_entity" source="" />
</onchannelend>
<onimpact />
<modifier key="Alt2" modpriority="1"
icon="/heroes/scout/alt2/ability_04/icon.tga"
>
<onchannelstart>
<applystate name="State_Scout_Ability4_Alt2" target="target_entity" duration="2250,1750,1250" />
<applystate name="Self_State_Scout_Ability4_Alt2" target="source_entity" ischannel="true"/>
<spawnunit name="Gadget_Scout_Ability4" target="target_entity" bind="target_entity" pushentity="true" ischannel="true" />
<setproxy entity="this_entity" target="stack_entity" />
</onchannelstart>
<onchannelframe>
<distance />
<compare a="result" b="1800,2300,2800" op="gt">
<breakchannel />
</compare>
</onchannelframe>
<onchannelbreak>
<kill target="this_proxy_entity" source="" />
</onchannelbreak>
<onchannelend>
<spawnprojectile name="Projectile_Scout_Ability4_Alt2" source="source_entity" offset="20 110 80" target="target_entity" noresponse="true" />
<playeffect effect="effects/fire_alt2.effect" source="source_entity"/>
<expirestate name="State_Scout_Ability1" target="source_entity" />
<kill target="this_proxy_entity" source="" />
</onchannelend>
<onimpact />
</modifier>
</ability>
By adding this line of code
<playanim name="ability_4fire" variations="0" target="source_entity" />
inside the onchannelend tag, he will play his recoil animation after releasing his projectile.
At the moment, after he casts his ult, he just stands there for a moment without doing anything before he attacks his target. I guess it was forgotten when they were coding his skill since it doesn't nerf him with it there, the animation can always be cancelled when forcing an attack/move order which is still needed in order to stop his idle time.
Anyway, fixing this makes better use of his quick idle time. For those alt avatars of his who do not have the animation, it will not affect them and will just skip playing the animation.
This is the original ability.entity inside his ability_04 folder.
<?xml version="1.0" encoding="UTF-8"?><ability
name="Ability_Scout4"
icon="icon.tga"
statuseffecttooltip="State_Scout_Ability4_Slow"
anim="ability_4channel"
casttime="300"
castactiontime="300"
channeltime="2250,1750,1250"
maxlevel="3"
requiredlevel="6,11,16"
actiontype="target_entity"
casteffecttype="SuperiorMagic"
targetscheme="nonboss_organic_enemy_units"
ischanneling="true"
deferchannelcost="true"
deferchannelimpact="true"
manacost="125,175,250"
cooldowntime="50000,40000,30000"
range="1500,2000,2500"
showareacast="true"
areacastmaterial="/shared/materials/area_cast_indicator_spokes.material"
>
<onchannelstart>
<applystate name="State_Scout_Ability4" target="target_entity" duration="2250,1750,1250" />
<applystate name="Self_State_Scout_Ability4" target="source_entity" ischannel="true"/>
<spawnunit name="Gadget_Scout_Ability4" target="target_entity" bind="target_entity" pushentity="true" ischannel="true" />
<setproxy entity="this_entity" target="stack_entity" />
</onchannelstart>
<onchannelframe>
<distance />
<compare a="result" b="1800,2300,2800" op="gt">
<breakchannel />
</compare>
</onchannelframe>
<onchannelbreak>
<kill target="this_proxy_entity" source="" />
</onchannelbreak>
<onchannelend>
<spawnprojectile name="Projectile_Scout_Ability4" source="source_entity" offset="0 0 80" target="target_entity" noresponse="true" />
<playeffect effect="effects/fire.effect" source="source_entity"/>
<expirestate name="State_Scout_Ability1" target="source_entity" />
<kill target="this_proxy_entity" source="" />
</onchannelend>
<onimpact />
<modifier key="Alt2" modpriority="1"
icon="/heroes/scout/alt2/ability_04/icon.tga"
>
<onchannelstart>
<applystate name="State_Scout_Ability4_Alt2" target="target_entity" duration="2250,1750,1250" />
<applystate name="Self_State_Scout_Ability4_Alt2" target="source_entity" ischannel="true"/>
<spawnunit name="Gadget_Scout_Ability4" target="target_entity" bind="target_entity" pushentity="true" ischannel="true" />
<setproxy entity="this_entity" target="stack_entity" />
</onchannelstart>
<onchannelframe>
<distance />
<compare a="result" b="1800,2300,2800" op="gt">
<breakchannel />
</compare>
</onchannelframe>
<onchannelbreak>
<kill target="this_proxy_entity" source="" />
</onchannelbreak>
<onchannelend>
<spawnprojectile name="Projectile_Scout_Ability4_Alt2" source="source_entity" offset="20 110 80" target="target_entity" noresponse="true" />
<playeffect effect="effects/fire_alt2.effect" source="source_entity"/>
<expirestate name="State_Scout_Ability1" target="source_entity" />
<kill target="this_proxy_entity" source="" />
</onchannelend>
<onimpact />
</modifier>
</ability>
By adding this line of code
<playanim name="ability_4fire" variations="0" target="source_entity" />
inside the onchannelend tag, he will play his recoil animation after releasing his projectile.
At the moment, after he casts his ult, he just stands there for a moment without doing anything before he attacks his target. I guess it was forgotten when they were coding his skill since it doesn't nerf him with it there, the animation can always be cancelled when forcing an attack/move order which is still needed in order to stop his idle time.
Anyway, fixing this makes better use of his quick idle time. For those alt avatars of his who do not have the animation, it will not affect them and will just skip playing the animation.