Mutation: Difference between revisions
Line 10: | Line 10: | ||
Later, we will refer to this list by an index number.<br> | Later, we will refer to this list by an index number.<br> | ||
For example: | For example: | ||
AnimToInfantry=BRUTE, | AnimToInfantry=BRUTE,NEWUNIT,GHOST | ||
Then; | Then; | ||
BRUTE=0, NEWUNIT=1, GHOST=2 | BRUTE=0, NEWUNIT=1, GHOST=2 |
Revision as of 23:46, 26 December 2006
Mutation is the effect caused by the Yuri Superweapon, the Genetic Mutator. In game, the superweapon changes any normal infantry in its radius of effect (which is the largest of the minor superweapons) into Brutes, which are somewhat modelled in the Incredible Hulk. Code wise, the effect is created by the use of the Template:TTL tag on the death animation the superweapon uses to kill its targets.
MakeInfantry (tutorial by Marshall)
1. You can have only one* InfantryType that isn't neutral that has been created from MakeInfantry logic. But you can have any number of InfantryTypes that are neutral.
The place that determines the InfantryType(s) created from MakeInfantry logic is in the [[[:Template:TTL]]] section of rulesmd.ini
AnimToInfantry=BRUTE
That flag accepts a comma seperated list of infantry types. You can change/add whatever infantry types you like.
Later, we will refer to this list by an index number.
For example:
AnimToInfantry=BRUTE,NEWUNIT,GHOST
Then;
BRUTE=0, NEWUNIT=1, GHOST=2
2. To make the MakeInfantry unit player-owned, you must use Template:TTL on the weapon's Template:TTL.
Template:TTL and Template:TTL are used by the Genetic Mutator Superweapon and have no bearing on this logic.
The animation used by InfDeath 9 is determined by the global flag Template:TTL
You can change that animation to something else (but remember to parse any new animation in the [[[:Template:TTL]]] list).
3. In artmd.ini, find [GENDEATH]
The key part of this animation is the flag MakeInfantry=0
Use this flag on your animation and set it to the index number of the infantry type from Template:TTL.
Note: You can create neutral infantry by not using an Template:TTL weapon (this includes using an animation that is not caused by a weapon:
E.G. Giving [E1] the flag DeathAnims=GENDEAT2 and [GENDEAT2] MakeInfantry=0 would cause the GI to turn into a neutral Brute when the GI dies.
i.e. You can create multiple weapons that result in the same effect as the Genetic Mutator as long as they all use InfDeath=9, resulting in a player-owned Brute by default.
Applications:
You could have a GM superweapon, a mutation point-sniper, and an area effect mutation with them all resulting in Brutes or an other infantry of your choice. You could also use the animation to generate neutral infantry opponents from any event that generates an animtion such as crate pickups or a building anim.
Important note about mutation weapons: Do not use an area effect weapon if paratroopers are not immune to it - it will cause an Internal Error if a falling paratrooper is killed by an area effect mutation weapon (point based mutation deaths seem to be okay and just result in the paratrooper exploding).
The GM superweapon seems to have special coding to prevent it causing an error however.
You can have a different player-owned infantry type in different game modes. But only ever one player-owned infantry type in each game mode.
Now that you have read and understood the above, I can provide one last bit of information:
You can actually have a second infantry-type that isn't neutral!
To make the second mutated unit player-owned, you must use InfDeath=8 on the weapon's warhead.
The animation used by InfDeath 8 is determined by the global flag Template:TTL
The only difference between InfDeath 8 and InfDeath 9 is that InfDeath 8's animation will not use the remapable player colours.
[When genetically mutated, the animation that creates the Brute will display the Brute in the player colours of the player the Brute will soon belong to before the Brute is actually created. With InfDeath 8 this doesn't happen and the remapable colours remain red.]
So, InfDeath 8 can create a fully functional player owned infantry with remapped colours. Only the 'conversion animation' isn't rempabale.
InfDeath 8 uses the animation palette by default, unlike InfDeath 9 which uses the unit palette.
Setting Template:TTL on InfDeath 8's animation has a strange result: The animation works fine and is drawn in the unit palette, however the remappable colours are remapped to the wrong side! I was Purple. My opponent was Green, the remappable parts of the animation were Orange! You can use AltPalette=yes if you want, just don't use the remappable colours.
I have not tested all the other InfDeaths, but the ones I have tested will only yield neutral infantry. Given the comments in the rulesmd.ini file, it is safe to assume that only InfDeaths 8 and 9 can be made to work.
Finally, an important note about InfDeath 9:
The animation associated with this InfDeath MUST HAVE a MakeInfantry=X line.
- [Actually, it doesn't have to have a MakeInfantry=X line IF it has instead a Next= line so that the last animation of a sequence of animations invoked by InfDeath 9 does have a MakeInfantry=X line.]
If it doesn't, then the animation will not play at all. You cannot convert InfDeath 9 into a non-mutation InfDeath.
InfDeath 9 is hardcoded to use the unit palette instead of the animation palette for the animation.
InfDeath 8 obviously doesn't have the above attributes.
Note: If you are using a version of the RockPatch earlier than version 1.08, the above also applies to InfDeaths 11-100 (the NewInfMutations). However, in addition: ALL mutation InfDeaths (9, 11-100) must result in a MakeInfantry call, otherwise NONE of the mutation InfDeaths will work and may even cause Internal Errors.
If you are using RockPatch 1.08 or higher, a new InfDeath system has been implemented which auto-detects Mutation/non-Mutation InfDeaths and so this is not an issue (see the RockPatch InfDeath tutorial for more information). However, even in RockPatch 1.08 and higher, InfDeath 9 must always result in a MakeInfantry call.