Yayo01, on 13 May 2006, 22:21, said:
What the heck....heres a crappy tut xD
First off , Define a Stungun in Weapon.ini. After that, Give that weapon to the infantry, truck, blegh you want to have the POW Ability
(look code below on how a stun gun code looks like)
The "EXTRA_2" DeathType must be defined on the infantry's Death Code, On the first slowdeath module. You must add *-EXTRA_2 so it will not trigger the *argghh* voice when killed, Instead it will trigger its own voice you defined on its own SDB module.
You must add a new death module that uses the *EXTRA_2* death type in the deathtype field of the module
*this is the actual module that triggers the POW thing*
Now you must create the OCL defined on the death module
In OCL.ini (AKA, ObjectCreationList.ini) =
Now after that, The thing will create a "surrendered" infantry when shotted by a weapon using the *EXTRA_2* deathtype. But, The object must now be defined in crate.ini
In Crate.INI, You must crate data of the surrendered infantry crate
EG:
In the CrateObject, You must make the crate of the surrendered guy using his/her surrendered anims which you can find in W3DZH.big.
If you want it to be targetable so the enemy can't pick it up, Then you must define the *FORCEATTACKABLE * kindof in the kindof field of the object
and if you want it to be runned over by a tank or light vehicle....you must add this module =
This Module will allow the thing to be crushed, If the object has a BOAT kindof, The object will just pick it up. He can't crush it because its defined on the * RequiredKindOf* field in the SalvageCrateCollide module...
Thats all....I think :dizz:
If this thing fucked your ZH, Then Sorry for my crappy tutorial.
sorry if this tut is a mess xD if someone wants to fix something here....go ahead

First off , Define a Stungun in Weapon.ini. After that, Give that weapon to the infantry, truck, blegh you want to have the POW Ability
(look code below on how a stun gun code looks like)
Weapon StunGun
PrimaryDamage = 100.0;define a lower number here.. EG: 30 if you want the object last 3 or so shots befor surrenderin'
PrimaryDamageRadius = 0.0;must be zero
AttackRange = 70.0;how far can the gun be fired?
DamageType = SURRENDER;allows you to use the VoiceSubue Field of the Objects
UnitSpecificSounds
DeathType = EXTRA_2
WeaponSpeed = 999999.0
ProjectileObject = NONE
FireSound = *entry from SoundEffects.ini
RadiusDamageAffects = ENEMIES;should be enemies only...
DelayBetweenShots = 5000
ClipSize = 0
ClipReloadTime = 0;;if you want to make the weapon have a slow reload rate then...define how many Millisecs here...1000 is 1 sec btw;)
End
The "EXTRA_2" DeathType must be defined on the infantry's Death Code, On the first slowdeath module. You must add *-EXTRA_2 so it will not trigger the *argghh* voice when killed, Instead it will trigger its own voice you defined on its own SDB module.
Behavior = SlowDeathBehavior ModuleTag_Death01
DeathTypes = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA -POISONED_GAMMA -EXTRA_2
SinkDelay = 3000
SinkRate = 0.5
DestructionDelay = 8000
FX = INITIAL FX_Argghhh!!
End
You must add a new death module that uses the *EXTRA_2* death type in the deathtype field of the module
*this is the actual module that triggers the POW thing*
Behavior = SlowDeathBehavior ModuleTag_XX;[XX] can be anything..
DeathTypes = NONE +EXTRA_2
DestructionDelay = 0;this should be zero if you want the object appear immediatly
FX = INITIAL FX_SomeoneSurrendering;voice of the infantry surrender..if u want,Must be defined in FXLIST.ini
OCL = INITIAL OCL_InfantrySurrender; this will create a *surrendered* Crate, defined in OCL.ini
End
Now you must create the OCL defined on the death module
In OCL.ini (AKA, ObjectCreationList.ini) =
ObjectCreationList OCL_InfantrySurrender;can be changed to what ever u want
CreateObject
ObjectNames = SurrenderedGuy
Offset = X:0 Y:0 Z:0
Count = 1
Disposition = SEND_IT_FLYING
DispositionIntensity = 0.1
End
End
Now after that, The thing will create a "surrendered" infantry when shotted by a weapon using the *EXTRA_2* deathtype. But, The object must now be defined in crate.ini
In Crate.INI, You must crate data of the surrendered infantry crate
EG:
CrateData *can be any name, without spaces, EG: PimpMyAssCrateData*
CreationChance = 1.0; this should be one
CrateObject = SurrenderedGuyCrate 1.0
OwnedByMaker = Yes
End
In the CrateObject, You must make the crate of the surrendered guy using his/her surrendered anims which you can find in W3DZH.big.
Object SurrenderedGuyCrate;the name must match the Cratedata field...
Draw = W3DModelDraw ModuleTag_01
OkToChangeModelColor = Yes
DefaultConditionState
Model = model name;AIRNGR_SKN
Animation = model name ;The surrendering anims can be found in Generals or ZH.
AnimationMode = MANUAL ;can be ONCE, MANUAL Will do for now.
Flags = START_FRAME_LAST;can me removed, your choice.
WeaponFireFXBone = PRIMARY Muzzle ;must be defined like in the orig infantry.
WeaponMuzzleFlash = PRIMARY MuzzleFX;what comment above me said.
End
End
EditorSorting = MISC_MAN_MADE
KindOf = PARACHUTABLE SELECTABLE
Behavior = SalvageCrateCollide ModuleTag_02
ForbidOwnerPlayer = Yes;should be yes
RequiredKindOf = BOAT ; the BOAT kindof must be putted on the POW Truck..so the truck is the only object that can pick it up...
ExecuteFX = "entry from FXList.ini"; If u want to spice it, You could make a fxlist that triggers a soundfx.. So when a pow truck picks up the "dude". He will laugh to death or something.
LevelChance = 0% ;must be 0 so you can always get the "surrendered dude" and nothing else.
WeaponChance = 0% ;must be 0 *what comment above said*
MoneyChance = 100%
MinMoney = 500 ;change the value of the crate if u want
MaxMoney = 1000 ;change the value of the crate if u want
End
;If you want to make the object stays longer, you must change the fields below.
Behavior = DeletionUpdate ModuleTag_03
MinLifetime = 30000;just bored so me add numb to it xD
MaxLifetime = 35000;ditto
End
Geometry = CYLINDER
GeometryMajorRadius = 10.0
GeometryMinorRadius = 10.0
GeometryHeight = 12.0
GeometryIsSmall = Yes
Shadow = SHADOW_DECAL
ShadowSizeX = 14
ShadowSizeY = 14
ShadowTexture = ShadowI
End
If you want it to be targetable so the enemy can't pick it up, Then you must define the *FORCEATTACKABLE * kindof in the kindof field of the object
and if you want it to be runned over by a tank or light vehicle....you must add this module =
Behavior = SquishCollide ModuleTag_XD
End
This Module will allow the thing to be crushed, If the object has a BOAT kindof, The object will just pick it up. He can't crush it because its defined on the * RequiredKindOf* field in the SalvageCrateCollide module...
Thats all....I think :dizz:
If this thing fucked your ZH, Then Sorry for my crappy tutorial.

sorry if this tut is a mess xD if someone wants to fix something here....go ahead
