InfDeath: Difference between revisions
Rewriting per executable |
m LaserFence What kind of warhead does it use to kill infantry? |
||
(7 intermediate revisions by 6 users not shown) | |||
Line 8: | Line 8: | ||
|ts=yes | |ts=yes | ||
|fs=yes | |fs=yes | ||
| | |hp=yes | ||
|ra2=yes | |ra2=yes | ||
|yr=yes | |yr=yes | ||
| | |ares=yes | ||
}} | }} | ||
{{ | {{f|InfDeath}} is used on a [[Warhead]] to specify the [[animation]] to play when an [[InfantryType]] is killed by it. | ||
There are two exceptions: | There are two exceptions: | ||
* If the killed InfantryType has {{ | * If the killed InfantryType has {{f|NotHuman|yes|link}} set, it will always use {{f|Die1|link}} sub-sequences instead. | ||
* If it has animations specified by {{ | ** Since Phobos Build#22, {{tt|NotHuman.DeathSequence}} has allowed users to choose which {{tt|DieX}} sequence to use, rather than being limited to just the first one. | ||
* If it has animations specified by {{f|DeathAnims|link}}, these will override ''all'' other default death animations. | |||
** This is actually the {{f|DeathAnims|link}} list on Infantry overriding the objects each {{tt|InfDeath}} value defaults to using. | |||
*** See the {{f|DeathAnims|List of Animations|link}} page for details on how it works. | |||
==Accepted values== | ==Accepted values== | ||
Line 40: | Line 43: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|In {{Ra}}, twirly death (small arms); afterwards, {{ | |In {{Ra}}, twirly death (small arms); afterwards, {{f|Die1|link}} sub-sequence of the killed infantry | ||
|style="text-align:center;"|{{N}} | |style="text-align:center;"|{{N}} | ||
|- | |- | ||
Line 48: | Line 51: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|In | |In {{Ra}}, explosion death (high explosive); afterwards, {{f|Die2|link}} sub-sequence of the killed infantry | ||
|style="text-align:center;"|{{N}} | |style="text-align:center;"|{{N}} | ||
|- | |- | ||
Line 56: | Line 59: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|In | |In {{Ra}}, flying death (armor piercing); afterwards, animation specified by {{f|InfantryExplode|link}} | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 64: | Line 67: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|In | |In {{Ra}}, burn death (flames); afterwards, animation specified by {{f|FlamingInfantry|link}} | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 72: | Line 75: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|In | |In {{Ra}}, electro death; afterwards, animation listed second in the [{{f|Animations|link}}] array (regardless of numeration),<br>Ares permits the use of {{f|InfantryElectrocuted|link}} for specific designation | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 80: | Line 83: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|Animation specified by {{ | |Animation specified by {{f|InfantryHeadPop|link}} | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 88: | Line 91: | ||
|[[Image:Game_ra2_yes.png]] | |[[Image:Game_ra2_yes.png]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|Animation specified by {{ | |Animation specified by {{f|InfantryNuked|link}} | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 96: | Line 99: | ||
| | | | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|Animation specified by {{ | |Animation specified by {{f|InfantryVirus|link}} | ||
|style="text-align:center;"|{{Y}} {{co|'''Player'''|green}} | |style="text-align:center;"|{{Y}} {{co|'''Player'''|green}} | ||
|- | |- | ||
Line 104: | Line 107: | ||
| | | | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|Animation specified by {{ | |Animation specified by {{f|InfantryMutate|link}} | ||
|style="text-align:center;"|{{Y}} {{co|'''Player'''|green}} | |style="text-align:center;"|{{Y}} {{co|'''Player'''|green}} | ||
|- | |- | ||
Line 112: | Line 115: | ||
| | | | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|Animation specified by {{ | |Animation specified by {{f|InfantryBrute|link}} | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|- | |- | ||
Line 120: | Line 123: | ||
|[[Image:Question.gif]] | |[[Image:Question.gif]] | ||
|[[Image:Game_yr_yes.png]] | |[[Image:Game_yr_yes.png]] | ||
|No generic animation - must fill the {{ | |No generic animation - must fill the {{f|DeathAnims|link}} array on the infantry that should have a special anim here. Otherwise there is no animation, just disappearance. | ||
|style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | |style="text-align:center;"|{{Y}} {{co|Neutral|grey}} | ||
|} | |} | ||
{{Bugs}} | {{Bugs}} | ||
If the target infantry is using the {{f|Paradrop|link}} sequence, then enforce the behavior of {{f|InfDeath|3}}. | |||
If the kill comes from a {{f|LaserFence|link}} type building, then enforce the behavior of {{f|InfDeath|5}}.<br>[!] I tried changing the '''InfDeath=5''' of all the warheads in the game to see the new results, and the result is that infantry killed by {{f|LaserFence|link}} always uses the animation caused by '''InfDeath=5''', even if the [[InfDeath]] on the warhead is not '''5'''([[Testid123]]). | |||
=== #8 === | === #8 === | ||
InfDeath 8 (Virus death) assumes the animation for it has a {{ | {{f|InfDeath|8}} (Virus death) assumes the animation for it has a {{f|SpawnsParticle|link}} set and will always try to spawn a particle - you can't make it skip this part. SpawnsParticle has a volatile default value, which means forgetting to set it to a valid particle on this animation will cause an IE or erratic behaviour. | ||
Additionally, inflicting this on a {{f|NotHuman|yes|link}} (this effect does happen even though NotHuman should prevent it) or an airborne object spawns just one particle from SpawnsParticle, as opposed to normal behaviour (which is to spawn {{f|NumParticles|link}}). | |||
=== #9 === | === #9 === | ||
InfDeath 9 (Genetic Mutator death) is hardcoded not to deal any damage to infantry that are not firmly on the ground (paratroopers), as well as not to play its animation if affecting an airborne object. In these cases, for lethal shots (which don't really happen given that damage isn't dealt, but that's how the game is coded) sub-sequence Die2 is forced instead. | {{f|InfDeath|9}} (Genetic Mutator death) is hardcoded not to deal any damage to infantry that are not firmly on the ground (paratroopers), as well as not to play its animation if affecting an airborne object. In these cases, for lethal shots (which don't really happen given that damage isn't dealt, but that's how the game is coded) sub-sequence Die2 is forced instead. | ||
=== All spawn-capable except #9 === | === All spawn-capable except #9 === | ||
These animations do not remap to firing | These animations do not remap to firing house colours, only #9 does. | ||
*If you override the default list with {{f|DeathAnims|link}}, they will always remap to the victim's house. | |||
==Spawning== | ==Spawning== | ||
In {{Yr}}, these death animations can be made to spawn a player-owned [[InfantryType]] via the [[MakeInfantry]] logic: | In {{Yr}}, these death animations can be made to spawn a player-owned [[InfantryType]] via the [[MakeInfantry]] logic: | ||
* {{ | * {{f|InfDeath|8}}, {{tt|InfantryVirus}}, can be displayed in the unit palette if {{f|AltPalette|yes|link}}, however remappable colors will not acquire the correct player colour. | ||
* {{f|InfDeath|9}}, {{tt|InfantryMutate}}, is [[hardcoded]] to use the unit palette and will be remapped to the correct player colour. | |||
All other {{f|InfDeath}} animations, besides those that are part of an infantry {{f|Sequence|link}}, can be made to spawn a neutral-owned InfantryType. These can be displayed in the unit palette if {{f|AltPalette|yes|link}}, however remappable colors will not acquire the correct player colour. | |||
==See also== | |||
[[DeathAnims]] | |||
[[MakeInfantry]] | |||
[[InfantryElectrocuted]] | |||
[[LaserFence]] | |||
[[Paradrop]] |
Latest revision as of 15:46, 14 March 2025
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Flag: | InfDeath |
File(s): | rules(md).ini |
Values: | Unsigned integers: All non-negative whole numbers from 0 to either 32767, 2147483647 or 4294967295. (Limited to: 0 through 10) |
Default: | 0 |
Applicable to: | Warheads |
InfDeath is used on a Warhead to specify the animation to play when an InfantryType is killed by it.
There are two exceptions:
- If the killed InfantryType has NotHuman=yes set, it will always use Die1 sub-sequences instead.
- Since Phobos Build#22, NotHuman.DeathSequence has allowed users to choose which DieX sequence to use, rather than being limited to just the first one.
- If it has animations specified by DeathAnims, these will override all other default death animations.
- This is actually the DeathAnims list on Infantry overriding the objects each InfDeath value defaults to using.
- See the DeathAnims=List of Animations page for details on how it works.
- This is actually the DeathAnims list on Infantry overriding the objects each InfDeath value defaults to using.
Accepted values
Value | Game Availability | Animation | Spawning?↓ | |||
---|---|---|---|---|---|---|
0
|
![]() |
![]() |
![]() |
![]() |
none | ![]() |
1
|
![]() |
![]() |
![]() |
![]() |
In Red Alert, twirly death (small arms); afterwards, Die1 sub-sequence of the killed infantry | ![]() |
2
|
![]() |
![]() |
![]() |
![]() |
In Red Alert, explosion death (high explosive); afterwards, Die2 sub-sequence of the killed infantry | ![]() |
3
|
![]() |
![]() |
![]() |
![]() |
In Red Alert, flying death (armor piercing); afterwards, animation specified by InfantryExplode | ![]() |
4
|
![]() |
![]() |
![]() |
![]() |
In Red Alert, burn death (flames); afterwards, animation specified by FlamingInfantry | ![]() |
5
|
![]() |
![]() |
![]() |
![]() |
In Red Alert, electro death; afterwards, animation listed second in the [Animations] array (regardless of numeration), Ares permits the use of InfantryElectrocuted for specific designation |
![]() |
6
|
![]() |
![]() |
Animation specified by InfantryHeadPop | ![]() | ||
7
|
![]() |
![]() |
Animation specified by InfantryNuked | ![]() | ||
8
|
![]() |
Animation specified by InfantryVirus | ![]() | |||
9
|
![]() |
Animation specified by InfantryMutate | ![]() | |||
10
|
![]() |
Animation specified by InfantryBrute | ![]() | |||
11+
|
![]() |
![]() |
![]() |
![]() |
No generic animation - must fill the DeathAnims array on the infantry that should have a special anim here. Otherwise there is no animation, just disappearance. | ![]() |
Bugs/Side-Effects/Unexpected Limitations
If the target infantry is using the Paradrop sequence, then enforce the behavior of InfDeath=3.
If the kill comes from a LaserFence type building, then enforce the behavior of InfDeath=5.
[!] I tried changing the InfDeath=5 of all the warheads in the game to see the new results, and the result is that infantry killed by LaserFence always uses the animation caused by InfDeath=5, even if the InfDeath on the warhead is not 5(Testid123).
#8
InfDeath=8 (Virus death) assumes the animation for it has a SpawnsParticle set and will always try to spawn a particle - you can't make it skip this part. SpawnsParticle has a volatile default value, which means forgetting to set it to a valid particle on this animation will cause an IE or erratic behaviour.
Additionally, inflicting this on a NotHuman=yes (this effect does happen even though NotHuman should prevent it) or an airborne object spawns just one particle from SpawnsParticle, as opposed to normal behaviour (which is to spawn NumParticles).
#9
InfDeath=9 (Genetic Mutator death) is hardcoded not to deal any damage to infantry that are not firmly on the ground (paratroopers), as well as not to play its animation if affecting an airborne object. In these cases, for lethal shots (which don't really happen given that damage isn't dealt, but that's how the game is coded) sub-sequence Die2 is forced instead.
All spawn-capable except #9
These animations do not remap to firing house colours, only #9 does.
- If you override the default list with DeathAnims, they will always remap to the victim's house.
Spawning
In Yuri's Revenge, these death animations can be made to spawn a player-owned InfantryType via the MakeInfantry logic:
- InfDeath=8, InfantryVirus, can be displayed in the unit palette if AltPalette=yes, however remappable colors will not acquire the correct player colour.
- InfDeath=9, InfantryMutate, is hardcoded to use the unit palette and will be remapped to the correct player colour.
All other InfDeath animations, besides those that are part of an infantry Sequence, can be made to spawn a neutral-owned InfantryType. These can be displayed in the unit palette if AltPalette=yes, however remappable colors will not acquire the correct player colour.