logo   login
right
Home Forums Downloads Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Forum Info
Forum Members: 18,643
Total Threads: 8,744
Posts: 95,520

Administrators:
DeeZire, Redemption

There are currently 19 users online.
Partner Links

Free Credit Repair

Learn the Ticket Broker Secrets
Advertisements


Generals & Zero Hour Editing Discuss any modding related issues to do with Generals and Zero Hour here.

Reply
 
LinkBack Thread Tools
Old 02-28-2003, 04:04 PM   #11 (permalink)
Senior Member
 
Join Date: Jan 2003
Location: Santa Barbara
Posts: 107
Send a message via ICQ to Chronosfera Send a message via AIM to Chronosfera
Default

Are the upgrade cameos really for cameos? Coz I thought they're defined somewhere else already. Maybe it is what upgrades are available for that unit? I don' know, just guessing.

Also can someone look into the condition states available for locomotors besides normal, normal_upgraded and some weird aircraft/ mob ones. I wish to add something in Blitzkrieg like when an infantry switches/ is upgraded to carrying a heavier weapon it walks slower.
Chronosfera is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-01-2003, 07:01 PM   #12 (permalink)
Member
 
Join Date: Feb 2003
Location: not really shure
Posts: 74
Send a message via ICQ to kornlord283 Send a message via AIM to kornlord283 Send a message via MSN to kornlord283
Default

hmm... well, I havent found a solution to that yet, but there might be a way to circumvent it

what I will try to figure out is if when you make the infantry switch to its heavier weapon, the unit will make a new infantry, but the old one will die. So, the new infantry will have the heavier weapon and be slower. You can then tell the new infatnry to switch to the lighter weapon by using code that kills the new infantry and creates the old one.

(dont worry if your confused)
kornlord283 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-02-2003, 03:43 AM   #13 (permalink)
Senior Member
 
Join Date: Dec 2002
Location: New Zealand
Posts: 148
Send a message via ICQ to Sleipnir
Default

Quote:
Originally Posted by Chronosfera
I wish to add something in Blitzkrieg like when an infantry switches/ is upgraded to carrying a heavier weapon it walks slower.
Look at how the nuklear tanks upgrade works, just make the upgrade that triggers the heavier weapon trigger the code that switches to the alternate locometer..... its pretty much exactly the same as what you want to do as far as i can see
Sleipnir is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-02-2003, 04:24 AM   #14 (permalink)
Administrator
 
DeeZire's Avatar
 
Join Date: Dec 2002
Posts: 1,913
Send a message via ICQ to DeeZire
Default

Chrono, the Locomotor conditions are all in the INI files. FYI, they are;-

SET_NORMAL
SET_NORMAL_UPGRADED
SET_FREEFALL
SET_WANDER
SET_PANIC
SET_TAXIIING
SET_SUPERSONIC
SET_SLUGGISH
__________________
DeeZire is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-02-2003, 08:31 PM   #15 (permalink)
Member
 
Join Date: Feb 2003
Location: not really shure
Posts: 74
Send a message via ICQ to kornlord283 Send a message via AIM to kornlord283 Send a message via MSN to kornlord283
Default

I will look for a solution to the locomotor switching.

Meanwhile, here is the American Ranger in FactionUnit.ini
Quote:
Object AmericaInfantryRanger

; *** ART Parameters ***
SelectPortrait = SARanger_L
ButtonImage = SARanger

UpgradeCameo1 = Upgrade_AmericaRangerFlashBangGrenade
UpgradeCameo2 = Upgrade_AmericaAdvancedTraining
UpgradeCameo3 = Upgrade_InfantryCaptureBuilding
;UpgradeCameo4 = NONE
;UpgradeCameo5 = NONE

Draw = W3DModelDraw ModuleTag_01

OkToChangeModelColor = Yes

; this says "we don't use these condition states at all, so completely
; ignore them for purposes of matchmaking"... this is useful to help
; reduce the number of AliasConditionState clauses you must add in
; order to avoid ambiguity in some cases.
IgnoreConditionStates = PREATTACK_A FIRING_A BETWEEN_FIRING_SHOTS_A RELOADING_A

; --- Idle
DefaultConditionState
Model = AIRngr_SKN
IdleAnimation = AIRngr_SKL.AIRngr_STA 0 35
IdleAnimation = AIRngr_SKL.AIRngr_IDA
IdleAnimation = AIRngr_SKL.AIRngr_IDB
AnimationMode = ONCE
WeaponFireFXBone = PRIMARY Muzzle
WeaponMuzzleFlash = PRIMARY MuzzleFX
WeaponFireFXBone = SECONDARY Muzzle
WeaponLaunchBone = SECONDARY Muzzle
TransitionKey = TRANS_Stand

End

ConditionState = REALLYDAMAGED
IdleAnimation = AIRngr_SKL.AIRngr_STB 0 35
IdleAnimation = AIRngr_SKL.AIRngr_IDC
IdleAnimation = AIRngr_SKL.AIRngr_IDD
AnimationMode = ONCE
TransitionKey = TRANS_StandInjured
End

TransitionState = TRANS_Stand TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_SA2SB
AnimationMode = ONCE
End

; --- attacking (Machine Gun)
ConditionState = USING_WEAPON_A
Animation = AIRngr_SKL.AIRngr_ATA
AnimationMode = LOOP
TransitionKey = TRANS_FiringA
End

ConditionState = USING_WEAPON_A REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATA2
AnimationMode = LOOP
TransitionKey = TRANS_FiringAInjured
End

TransitionState = TRANS_FiringA TRANS_FiringAInjured
Animation = AIRngr_SKL.AIRngr_A2WAA
AnimationMode = ONCE
End

TransitionState = TRANS_Stand TRANS_FiringA
Animation = AIRngr_SKL.AIRngr_ATAST
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringA TRANS_Stand
Animation = AIRngr_SKL.AIRngr_ATAED
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_StandInjured TRANS_FiringAInjured
Animation = AIRngr_SKL.AIRngr_S2WAA
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringAInjured TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_WAA2S
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_Stand TRANS_Move
Animation = AIRngr_SKL.AIRngr_STA2RNA
AnimationMode = ONCE
End

; --- attacking (Grenade Launcher)
ConditionState = PREATTACK_B
Animation = AIRngr_SKL.AIRngr_ATBA
AnimationMode = ONCE
TransitionKey = TRANS_FiringB
End
AliasConditionState = PREATTACK_B MOVING
AliasConditionState = PREATTACK_B FIRING_B
AliasConditionState = PREATTACK_B BETWEEN_FIRING_SHOTS_B

ConditionState = FIRING_B
Animation = AIRngr_SKL.AIRngr_ATBB
AnimationMode = ONCE
TransitionKey = TRANS_FiringB
End

ConditionState = BETWEEN_FIRING_SHOTS_B
Animation = AIRngr_SKL.AIRngr_ATBB
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = TRANS_FiringB
WaitForStateToFinishIfPossible = TRANS_FiringB
End
AliasConditionState = RELOADING_B

TransitionState = TRANS_Stand TRANS_FiringB
Animation = AIRngr_SKL.AIRngr_ATBST1
AnimationMode = ONCE
End

TransitionState = TRANS_FiringB TRANS_Stand
Animation = AIRngr_SKL.AIRngr_ATBST2
AnimationMode = ONCE
End

ConditionState = PREATTACK_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2A
AnimationMode = ONCE
TransitionKey = TRANS_FiringBInjured
End
AliasConditionState = PREATTACK_B MOVING REALLYDAMAGED
AliasConditionState = PREATTACK_B FIRING_B REALLYDAMAGED
AliasConditionState = PREATTACK_B BETWEEN_FIRING_SHOTS_B REALLYDAMAGED

ConditionState = FIRING_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2B
AnimationMode = ONCE
TransitionKey = TRANS_FiringBInjured
End

ConditionState = BETWEEN_FIRING_SHOTS_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2B
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = TRANS_FiringBInjured
WaitForStateToFinishIfPossible = TRANS_FiringBInjured
End
AliasConditionState = RELOADING_B REALLYDAMAGED

TransitionState = TRANS_StandInjured TRANS_FiringBInjured
Animation = AIRngr_SKL.AIRngr_ATB2ST1
AnimationMode = ONCE
End

TransitionState = TRANS_FiringBInjured TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_ATB2ST2
AnimationMode = ONCE
End

; -- cross-attack transitions

TransitionState = TRANS_FiringA TRANS_FiringB
Animation = AIRngr_SKL.AIRngr_ATA2AB
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringB TRANS_FiringA
Animation = AIRngr_SKL.AIRngr_ATA2AB
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 4 4
End


; --- moving
ConditionState = MOVING
Animation = AIRngr_SKL.AIRngr_RNA 30
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = TRANS_Move
ParticleSysBone = None InfantryDustTrails
End
AliasConditionState = MOVING ATTACKING

ConditionState = MOVING REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_RNB 30
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = TRANS_Move
End
AliasConditionState = MOVING REALLYDAMAGED ATTACKING

; --- dying anims
ConditionState = DYING
Animation = AIRngr_SKL.AIRngr_DTA
Animation = AIRngr_SKL.AIRngr_DTB
AnimationMode = ONCE
TransitionKey = None
End

TransitionState = TRANS_Dying TRANS_Flailing
Animation = AIRngr_SKL.AIRngr_ADTF1
AnimationMode = ONCE
End

ConditionState = DYING EXPLODED_FLAILING
Animation = AIRngr_SKL.AIRngr_ADTF2
AnimationMode = LOOP
TransitionKey = TRANS_Flailing
End

ConditionState = DYING EXPLODED_BOUNCING
Animation = AIRngr_SKL.AIRngr_ADTF3
AnimationMode = ONCE
TransitionKey = None
End
AliasConditionState = DYING SPLATTED

; --- cheering
ConditionState = SPECIAL_CHEERING
Animation = AIRngr_SKL.AIRngr_CHA
AnimationMode = LOOP
End

ConditionState = SPECIAL_CHEERING REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_CHB
AnimationMode = LOOP
End

; ----- PARACHUTING ANIMATIONS
ConditionState = FREEFALL
Animation = AIRngr_SKL.AIRngr_PFL
AnimationMode = LOOP
TransitionKey = TRANS_Falling
End
AliasConditionState = FREEFALL REALLYDAMAGED
AliasConditionState = FREEFALL DYING
ConditionState = PARACHUTING
Animation = AIRngr_SKL.AIRngr_PHG
AnimationMode = LOOP
Flags = PRISTINE_BONE_POS_IN_FINAL_FRAME ; our bone positions should come from the last frame, rather than the first
TransitionKey = TRANS_Chute
End
AliasConditionState = PARACHUTING REALLYDAMAGED
AliasConditionState = PARACHUTING DYING
TransitionState = TRANS_Falling TRANS_Chute
Animation = AIRngr_SKL.AIRngr_POP
AnimationMode = ONCE
Flags = PRISTINE_BONE_POS_IN_FINAL_FRAME ; our bone positions should come from the last frame, rather than the first
End
TransitionState = TRANS_Chute TRANS_Stand
Animation = AIRngr_SKL.AIRngr_PTD
AnimationMode = ONCE
End
TransitionState = TRANS_Chute TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_PTD
AnimationMode = ONCE
End

; ----- SURRENDER ANIMATIONS
; surrender is cut. sorry. (srj)
; ConditionState = SURRENDER
; Animation = AIRngr_SKL.AIRngr_SST
; AnimationMode = ONCE
; TransitionKey = TRANS_SurrenderKneeling
; End
; AliasConditionState = SURRENDER REALLYDAMAGED
; ConditionState = SURRENDER MOVING
; Animation = AIRngr_SKL.AIRngr_SWKB
; AnimationMode = ONCE
; TransitionKey = TRANS_SurrenderMoving
; End
; AliasConditionState = SURRENDER MOVING REALLYDAMAGED
; TransitionState = TRANS_Stand TRANS_SurrenderKneeling
; Animation = AIRngr_SKL.AIRngr_SUR
; AnimationMode = ONCE
; End

; ------- Bldg-capture

ConditionState = UNPACKING
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP1
AnimationMode = ONCE
End
AliasConditionState = UNPACKING REALLYDAMAGED


ConditionState = RAISING_FLAG
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP2
AnimationMode = ONCE
TransitionKey = TRANS_Raising
End
AliasConditionState = RAISING_FLAG REALLYDAMAGED

ConditionState = PACKING
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP1
AnimationMode = ONCE_BACKWARDS
Flags = START_FRAME_LAST
TransitionKey = TRANS_Packing
End
AliasConditionState = PACKING REALLYDAMAGED

TransitionState = TRANS_Raising TRANS_Packing
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP2
AnimationMode = ONCE_BACKWARDS
Flags = START_FRAME_LAST
End

; --- RAPPELLING ANIMATIONS
ConditionState = RAPPELLING
Animation = AIRngr_SKL.AIRngr_RPL1 ;30
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = TRANS_Rappelling
End
AliasConditionState = MOVING RAPPELLING

TransitionState = TRANS_Rappelling TRANS_Stand
Animation = AIRngr_SKL.AIRngr_RPL2
AnimationMode = ONCE
End

TransitionState = TRANS_Rappelling TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_RPL2
AnimationMode = ONCE
End

End

; ***DESIGN parameters ***
DisplayName = OBJECT:Ranger
Side = America
EditorSorting = INFANTRY
TransportSlotCount = 1 ;how many "slots" we take in a transport (0 == not transportable)

WeaponSet
Conditions = None
Weapon = PRIMARY RangerAdvancedCombatRifle
End
WeaponSet
Conditions = PLAYER_UPGRADE
Weapon = PRIMARY RangerAdvancedCombatRifle
Weapon = SECONDARY RangerFlashBangGrenadeWeapon
AutoChooseSources = PRIMARY FROM_SCRIPT FROM_AI
AutoChooseSources = SECONDARY FROM_SCRIPT FROM_AI
End
ArmorSet
Conditions = None
Armor = HumanArmor
DamageFX = InfantryDamageFX
End

VisionRange = 100
ShroudClearingRange = 400
Prerequisites
Object = AmericaBarracks
End
BuildCost = 225
BuildTime = 5.0 ;in seconds

ExperienceValue = 20 20 40 60 ;Experience point value at each level
ExperienceRequired = 0 40 60 120 ;Experience points needed to gain each level
IsTrainable = Yes ;Can gain experience
CrushableLevel = 0 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles
CommandSet = AmericaInfantryRangerCommandSet

; *** AUDIO Parameters ***
VoiceSelect = RangerVoiceSelect
VoiceMove = RangerVoiceMove
VoiceGuard = RangerVoiceMove
VoiceAttack = RangerVoiceAttack
SoundDie = RangerVoiceDie
VoiceFear = RangerVoiceFear
; surrender is cut. sorry. (srj)
; VoiceSurrender = RangerVoiceSurrender
VoiceTaskComplete = RangerVoiceCaptureComplete

UnitSpecificSounds
VoiceEnter = RangerVoiceMove
VoiceEnterHostile = RangerVoiceMove
VoiceGarrison = RangerVoiceGarrison
VoiceCreate = RangerVoiceCreate
VoiceSubdue = RangerVoiceSubdue
VoiceClearBuilding = RangerVoiceClearBuilding
VoiceGetHealed = RangerVoiceMove
VoicePrimaryWeaponMode = RangerVoiceModeGun
VoiceSecondaryWeaponMode = RangerVoiceModeFlashBang
End

UnitSpecificFX
; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs
CombatDropKillFX = FX_RangerCombatDropKill
End

; *** ENGINEERING Parameters ***
RadarPriority = UNIT
KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS INFANTRY CAN_RAPPEL SCORE

Behavior = CommandButtonHuntUpdate ModuleTag_02
End

Body = ActiveBody ModuleTag_03
MaxHealth = 180.0
InitialHealth = 180.0
End

Behavior = ExperienceScalarUpgrade ModuleTag_04
TriggeredBy = Upgrade_AmericaAdvancedTraining
AddXPScalar = 1.0 ;Increases experience gained by an additional 100%
End

Behavior = AutoFindHealingUpdate ModuleTag_05 ; This update will have the unit go to a healing station if injured. jba
ScanRate = 1000 ; once a second.
ScanRange = 300 ;
NeverHeal = 0.85 ; don't heal if we are > 85% healthy.
AlwaysHeal = 0.25 ; if we get below 25%, find healing right away.
End

Behavior = AIUpdateInterface ModuleTag_06
AutoAcquireEnemiesWhenIdle = Yes
End
Locomotor = SET_NORMAL BasicHumanLocomotor

Behavior = PhysicsBehavior ModuleTag_07
Mass = 5.0
End

Behavior = ProductionUpdate ModuleTag_08
; nothing
End

Behavior = CommandButtonHuntUpdate ModuleTag_09 ; allows use of command button hunt script with this unit.
End

Behavior = WeaponSetUpgrade ModuleTag_10
TriggeredBy = Upgrade_AmericaRangerFlashBangGrenade
End


; --- begin Death modules ---
Behavior = SlowDeathBehavior ModuleTag_Death01
DeathTypes = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDie
End
Behavior = SlowDeathBehavior ModuleTag_Death02
DeathTypes = NONE +CRUSHED +SPLATTED
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDieCrushed
End
Behavior = SlowDeathBehavior ModuleTag_Death03
DeathTypes = NONE +EXPLODED
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDie
FlingForce = 8
FlingForceVariance = 3
FlingPitch = 60
FlingPitchVariance = 10
End
Behavior = SlowDeathBehavior ModuleTag_Death04
DeathTypes = NONE +BURNED
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_FlamingInfantry
End
Behavior = SlowDeathBehavior ModuleTag_Death05
DeathTypes = NONE +POISONED
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_ToxicInfantry
End

Behavior = SlowDeathBehavior ModuleTag_Death06 ; don't forget to give it a new, unique module tag
DeathTypes = NONE +POISONED_BETA
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_ToxicInfantryBeta ;you'll have to create this OCL and make it use the blue guys instead of green ones
End
; --- end Death modules ---

Behavior = SquishCollide ModuleTag_12
;nothing
End

Behavior = PoisonedBehavior ModuleTag_17
PoisonDamageInterval = 100 ; Every this many msec I will retake the poison damage dealt me...
PoisonDuration = 3000 ; ... for this long after last hit by poison damage
End

Behavior = SpecialAbility ModuleTag_18
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
UpdateModuleStartsAttack = Yes
StartsPaused = Yes ; Unpaused by upgrade module
InitiateSound = RangerVoiceCapture
End
Behavior = SpecialAbilityUpdate ModuleTag_19
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
StartAbilityRange = 5.0
UnpackTime = 3000 ; (changing this will scale anim speed)
PreparationTime = 20000 ; time to complete hack once prepared (changing this will scale anim speed)
PackTime = 2000 ; (changing this will scale anim speed)
DoCaptureFX = Yes
AwardXPForTriggering = 15
;SkillPointsForTriggering = ??? -- Dustin, fill me out if you want different balance values.
End

Behavior = UnpauseSpecialPowerUpgrade ModuleTag_20
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
TriggeredBy = Upgrade_InfantryCaptureBuilding
End


Geometry = CYLINDER
GeometryMajorRadius = 7.0
GeometryMinorRadius = 7.0
GeometryHeight = 13.0

GeometryIsSmall = Yes
Shadow = SHADOW_DECAL
ShadowSizeX = 14;
ShadowSizeY = 14;
ShadowTexture = ShadowI;
BuildCompletion = APPEARS_AT_RALLY_POINT

End

;------------------------------------------------------------------------------
Object CINE_AmericaInfantryRanger

; *** ART Parameters ***
SelectPortrait = SARanger_L
ButtonImage = SARanger

UpgradeCameo1 = Upgrade_AmericaRangerFlashBangGrenade
UpgradeCameo2 = Upgrade_AmericaAdvancedTraining
;UpgradeCameo3 = NONE
;UpgradeCameo4 = NONE
;UpgradeCameo5 = NONE

Draw = W3DModelDraw ModuleTag_01
OkToChangeModelColor = Yes

; --- Idle
DefaultConditionState
Model = AIRngr_SKN
IdleAnimation = AIRngr_SKL.AIRngr_STA 0 35
IdleAnimation = AIRngr_SKL.AIRngr_IDA
IdleAnimation = AIRngr_SKL.AIRngr_IDB
AnimationMode = ONCE
WeaponFireFXBone = PRIMARY Muzzle
WeaponMuzzleFlash = PRIMARY MuzzleFX
WeaponFireFXBone = SECONDARY Muzzle
WeaponLaunchBone = SECONDARY Muzzle
TransitionKey = TRANS_Stand
End

ConditionState = REALLYDAMAGED
IdleAnimation = AIRngr_SKL.AIRngr_STB 0 35
IdleAnimation = AIRngr_SKL.AIRngr_IDC
IdleAnimation = AIRngr_SKL.AIRngr_IDD
AnimationMode = ONCE
TransitionKey = TRANS_StandInjured
End

TransitionState = TRANS_Stand TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_SA2SB
AnimationMode = ONCE
End

; --- attacking (Machine Gun)
ConditionState = FIRING_A
Animation = AIRngr_SKL.AIRngr_ATA
AnimationMode = LOOP
TransitionKey = TRANS_FiringA
End
AliasConditionState = BETWEEN_FIRING_SHOTS_A
AliasConditionState = RELOADING_A

ConditionState = FIRING_A REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATA2
AnimationMode = LOOP
TransitionKey = TRANS_FiringAInjured
End
AliasConditionState = BETWEEN_FIRING_SHOTS_A REALLYDAMAGED
AliasConditionState = RELOADING_A REALLYDAMAGED
AliasConditionState = MOVING FIRING_A
AliasConditionState = MOVING BETWEEN_FIRING_SHOTS_A
AliasConditionState = MOVING RELOADING_A

TransitionState = TRANS_FiringA TRANS_FiringAInjured
Animation = AIRngr_SKL.AIRngr_A2WAA
AnimationMode = ONCE
End

TransitionState = TRANS_Stand TRANS_FiringA
Animation = AIRngr_SKL.AIRngr_ATAST
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringA TRANS_Stand
Animation = AIRngr_SKL.AIRngr_ATAED
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_StandInjured TRANS_FiringAInjured
Animation = AIRngr_SKL.AIRngr_S2WAA
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringAInjured TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_WAA2S
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

; --- attacking (Grenade Launcher)
ConditionState = PREATTACK_B
Animation = AIRngr_SKL.AIRngr_ATBA
AnimationMode = ONCE
TransitionKey = TRANS_FiringB
End
AliasConditionState = PREATTACK_B MOVING
AliasConditionState = PREATTACK_B FIRING_B
AliasConditionState = PREATTACK_B BETWEEN_FIRING_SHOTS_B

ConditionState = FIRING_B
Animation = AIRngr_SKL.AIRngr_ATBB
AnimationMode = ONCE

TransitionKey = TRANS_FiringB
End

ConditionState = BETWEEN_FIRING_SHOTS_B
Animation = AIRngr_SKL.AIRngr_ATBB
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = TRANS_FiringB
WaitForStateToFinishIfPossible = TRANS_FiringB
End
AliasConditionState = RELOADING_B

TransitionState = TRANS_Stand TRANS_FiringB
Animation = AIRngr_SKL.AIRngr_ATBST1
AnimationMode = ONCE
End

TransitionState = TRANS_FiringB TRANS_Stand
Animation = AIRngr_SKL.AIRngr_ATBST2
AnimationMode = ONCE
End

ConditionState = PREATTACK_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2A
AnimationMode = ONCE
TransitionKey = TRANS_FiringBInjured
End
AliasConditionState = PREATTACK_B MOVING REALLYDAMAGED
AliasConditionState = PREATTACK_B FIRING_B REALLYDAMAGED
AliasConditionState = PREATTACK_B BETWEEN_FIRING_SHOTS_B REALLYDAMAGED

ConditionState = FIRING_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2B
AnimationMode = ONCE
TransitionKey = TRANS_FiringBInjured
End

ConditionState = BETWEEN_FIRING_SHOTS_B REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_ATB2B
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = TRANS_FiringBInjured
WaitForStateToFinishIfPossible = TRANS_FiringBInjured
End
AliasConditionState = RELOADING_B REALLYDAMAGED

TransitionState = TRANS_StandInjured TRANS_FiringBInjured
Animation = AIRngr_SKL.AIRngr_ATB2ST1
AnimationMode = ONCE
End

TransitionState = TRANS_FiringBInjured TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_ATB2ST2
AnimationMode = ONCE
End

; -- cross-attack transitions

TransitionState = TRANS_FiringA TRANS_FiringB
Animation = AIRngr_SKL.AIRngr_ATA2AB
AnimationMode = ONCE
AnimationSpeedFactorRange = 4 4
End

TransitionState = TRANS_FiringB TRANS_FiringA
Animation = AIRngr_SKL.AIRngr_ATA2AB
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 4 4
End


; --- moving
ConditionState = MOVING
Animation = AIRngr_SKL.AIRngr_RNA 40
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = None
ParticleSysBone = None InfantryDustTrails
End

ConditionState = MOVING REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_RNB 30
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = None
End

; --- dying anims
ConditionState = DYING
Animation = AIRngr_SKL.AIRngr_DTA
Animation = AIRngr_SKL.AIRngr_DTB
AnimationMode = ONCE
TransitionKey = None
End

TransitionState = TRANS_Dying TRANS_Flailing
Animation = AIRngr_SKL.AIRngr_ADTF1
AnimationMode = ONCE
End

ConditionState = DYING EXPLODED_FLAILING
Animation = AIRngr_SKL.AIRngr_ADTF2
AnimationMode = LOOP
TransitionKey = TRANS_Flailing
End

ConditionState = DYING EXPLODED_BOUNCING
Animation = AIRngr_SKL.AIRngr_ADTF3
AnimationMode = ONCE
TransitionKey = None
End
AliasConditionState = DYING SPLATTED

; --- cheering
ConditionState = SPECIAL_CHEERING
Animation = AIRngr_SKL.AIRngr_CHA
AnimationMode = LOOP
End

ConditionState = SPECIAL_CHEERING REALLYDAMAGED
Animation = AIRngr_SKL.AIRngr_CHB
AnimationMode = LOOP
End

; ----- PARACHUTING ANIMATIONS
ConditionState = FREEFALL
Animation = AIRngr_SKL.AIRngr_PFL
AnimationMode = LOOP
TransitionKey = TRANS_Falling
End
AliasConditionState = FREEFALL REALLYDAMAGED
AliasConditionState = FREEFALL DYING
ConditionState = PARACHUTING
Animation = AIRngr_SKL.AIRngr_PHG
AnimationMode = LOOP
Flags = PRISTINE_BONE_POS_IN_FINAL_FRAME ; our bone positions should come from the last frame, rather than the first
TransitionKey = TRANS_Chute
End
AliasConditionState = PARACHUTING REALLYDAMAGED
AliasConditionState = PARACHUTING DYING
TransitionState = TRANS_Falling TRANS_Chute
Animation = AIRngr_SKL.AIRngr_POP
AnimationMode = ONCE
Flags = PRISTINE_BONE_POS_IN_FINAL_FRAME ; our bone positions should come from the last frame, rather than the first
End
TransitionState = TRANS_Chute TRANS_Stand
Animation = AIRngr_SKL.AIRngr_PTD
AnimationMode = ONCE
End
TransitionState = TRANS_Chute TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_PTD
AnimationMode = ONCE
End

; ----- SURRENDER ANIMATIONS
; surrender is cut. sorry. (srj)
; ConditionState = SURRENDER
; Animation = AIRngr_SKL.AIRngr_SST
; AnimationMode = ONCE
; TransitionKey = TRANS_SurrenderKneeling
; End
; AliasConditionState = SURRENDER REALLYDAMAGED
; ConditionState = SURRENDER MOVING
; Animation = AIRngr_SKL.AIRngr_SWKB
; AnimationMode = ONCE
; TransitionKey = TRANS_SurrenderMoving
; End
; AliasConditionState = SURRENDER MOVING REALLYDAMAGED
; TransitionState = TRANS_Stand TRANS_SurrenderKneeling
; Animation = AIRngr_SKL.AIRngr_SUR
; AnimationMode = ONCE
; End

; ------- Bldg-capture

ConditionState = UNPACKING
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP1
AnimationMode = ONCE
End
AliasConditionState = UNPACKING REALLYDAMAGED


ConditionState = RAISING_FLAG
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP2
AnimationMode = ONCE
TransitionKey = TRANS_Raising
End
AliasConditionState = RAISING_FLAG REALLYDAMAGED

ConditionState = PACKING
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP1
AnimationMode = ONCE_BACKWARDS
Flags = START_FRAME_LAST
TransitionKey = TRANS_Packing
End
AliasConditionState = PACKING REALLYDAMAGED

TransitionState = TRANS_Raising TRANS_Packing
Model = AIRngr_F_SKN
Animation = AIRngr_F_SKL.AIRngr_F_FDP2
AnimationMode = ONCE_BACKWARDS
Flags = START_FRAME_LAST
End

; --- RAPPELLING ANIMATIONS
ConditionState = RAPPELLING
Animation = AIRngr_SKL.AIRngr_RPL1 ;30
AnimationMode = LOOP
Flags = RANDOMSTART
TransitionKey = TRANS_Rappelling
End
AliasConditionState = MOVING RAPPELLING

TransitionState = TRANS_Rappelling TRANS_Stand
Animation = AIRngr_SKL.AIRngr_RPL2
AnimationMode = ONCE
End

TransitionState = TRANS_Rappelling TRANS_StandInjured
Animation = AIRngr_SKL.AIRngr_RPL2
AnimationMode = ONCE
End

End

; ***DESIGN parameters ***
DisplayName = OBJECT:Ranger
Side = America
EditorSorting = INFANTRY
TransportSlotCount = 1 ;how many "slots" we take in a transport (0 == not transportable)

WeaponSet
Conditions = None
Weapon = PRIMARY CINE_RangerAdvancedCombatRifle
End
WeaponSet
Conditions = PLAYER_UPGRADE
Weapon = PRIMARY RangerAdvancedCombatRifle
Weapon = SECONDARY RangerFlashBangGrenadeWeapon
AutoChooseSources = PRIMARY FROM_SCRIPT FROM_AI
AutoChooseSources = SECONDARY FROM_SCRIPT FROM_AI
End
ArmorSet
Conditions = None
Armor = HumanArmor
DamageFX = InfantryDamageFX
End

VisionRange = 100
ShroudClearingRange = 400
Prerequisites
Object = AmericaBarracks
End
BuildCost = 225
BuildTime = 5.0 ;in seconds

ExperienceValue = 20 20 40 60 ;Experience point value at each level
ExperienceRequired = 0 20 40 60 120 ;Experience points needed to gain each level
IsTrainable = Yes ;Can gain experience
CrushableLevel = 0 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles
CommandSet = AmericaInfantryRangerCommandSet

; *** AUDIO Parameters ***
VoiceSelect = RangerVoiceSelect
VoiceMove = RangerVoiceMove
VoiceGuard = RangerVoiceMove
VoiceAttack = RangerVoiceAttack
SoundDie = RangerVoiceDie
VoiceFear = RangerVoiceFear
; surrender is cut. sorry. (srj)
; VoiceSurrender = RangerVoiceSurrender
VoiceTaskComplete = RangerVoiceCaptureComplete

UnitSpecificSounds
VoiceEnter = RangerVoiceMove
VoiceEnterHostile = RangerVoiceMove
VoiceGarrison = RangerVoiceGarrison
VoiceCreate = RangerVoiceCreate
VoiceSubdue = RangerVoiceSubdue
VoiceClearBuilding = RangerVoiceClearBuilding
VoiceGetHealed = RangerVoiceMove
End

UnitSpecificFX
; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs
CombatDropKillFX = FX_RangerCombatDropKill
End

; *** ENGINEERING Parameters ***
RadarPriority = UNIT
KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS INFANTRY CAN_RAPPEL SCORE

Behavior = CommandButtonHuntUpdate ModuleTag_02
End

Body = ActiveBody ModuleTag_03
MaxHealth = 180.0
InitialHealth = 180.0
End

Behavior = ExperienceScalarUpgrade ModuleTag_04
TriggeredBy = Upgrade_AmericaAdvancedTraining
AddXPScalar = 1.0 ;Increases experience gained by an additional 100%
End

Behavior = AutoFindHealingUpdate ModuleTag_05 ; This update will have the unit go to a healing station if injured. jba
ScanRate = 1000 ; once a second.
ScanRange = 300 ;
NeverHeal = 0.85 ; don't heal if we are > 85% healthy.
AlwaysHeal = 0.25 ; if we get below 25%, find healing right away.
End

Behavior = AIUpdateInterface ModuleTag_06
AutoAcquireEnemiesWhenIdle = Yes
End
Locomotor = SET_NORMAL BasicHumanLocomotor

Behavior = PhysicsBehavior ModuleTag_07
Mass = 5.0
End

Behavior = ProductionUpdate ModuleTag_08
; nothing
End

Behavior = CommandButtonHuntUpdate ModuleTag_09 ; allows use of command button hunt script with this unit.
End

Behavior = WeaponSetUpgrade ModuleTag_10
TriggeredBy = Upgrade_AmericaRangerFlashBangGrenade
End


; --- begin Death modules ---
Behavior = SlowDeathBehavior ModuleTag_Death01
DeathTypes = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDie
End
Behavior = SlowDeathBehavior ModuleTag_Death02
DeathTypes = NONE +CRUSHED +SPLATTED
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDieCrushed
End
Behavior = SlowDeathBehavior ModuleTag_Death03
DeathTypes = NONE +EXPLODED
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_GIDie
FlingForce = 8
FlingForceVariance = 3
FlingPitch = 60
FlingPitchVariance = 10
End
Behavior = SlowDeathBehavior ModuleTag_Death04
DeathTypes = NONE +BURNED
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_FlamingInfantry
End
Behavior = SlowDeathBehavior ModuleTag_Death05
DeathTypes = NONE +POISONED
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_ToxicInfantry
End

Behavior = SlowDeathBehavior ModuleTag_Death06 ; don't forget to give it a new, unique module tag
DeathTypes = NONE +POISONED_BETA
DestructionDelay = 0
FX = INITIAL FX_GIDie
OCL = INITIAL OCL_ToxicInfantryBeta ;you'll have to create this OCL and make it use the blue guys instead of green ones
End
; --- end Death modules ---

Behavior = SquishCollide ModuleTag_12
;nothing
End

Behavior = PoisonedBehavior ModuleTag_17
PoisonDamageInterval = 100 ; Every this many msec I will retake the poison damage dealt me...
PoisonDuration = 3000 ; ... for this long after last hit by poison damage
End

Behavior = SpecialAbility ModuleTag_18
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
UpdateModuleStartsAttack = Yes
StartsPaused = Yes ; Unpaused by upgrade module
InitiateSound = RangerVoiceCapture
End
Behavior = SpecialAbilityUpdate ModuleTag_19
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
StartAbilityRange = 5.0
UnpackTime = 3000 ; (changing this will scale anim speed)
PreparationTime = 10000 ; time to complete hack once prepared (changing this will scale anim speed)
PackTime = 2000 ; (changing this will scale anim speed)
DoCaptureFX = Yes
End

Behavior = UnpauseSpecialPowerUpgrade ModuleTag_20
SpecialPowerTemplate = SpecialAbilityRangerCaptureBuilding
TriggeredBy = Upgrade_InfantryCaptureBuilding
End


Geometry = CYLINDER
GeometryMajorRadius = 7.0
GeometryMinorRadius = 7.0
GeometryHeight = 13.0

GeometryIsSmall = Yes
Shadow = SHADOW_DECAL
ShadowSizeX = 14;
ShadowSizeY = 14;
ShadowTexture = ShadowI;
BuildCompletion = APPEARS_AT_RALLY_POINT

End
kornlord283 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-02-2003, 09:13 PM   #16 (permalink)
Member
 
Join Date: Feb 2003
Location: not really shure
Posts: 74
Send a message via ICQ to kornlord283 Send a message via AIM to kornlord283 Send a message via MSN to kornlord283
Default

Quote:
People can look it up themselves!
Well, the more I look into this forum, the more I'm seeing that a lot of people just dont try to do something useful, always waiting for someone else to do it, then do it themselves.
kornlord283 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-02-2003, 10:04 PM   #17 (permalink)
Senior Member
 
Join Date: Jan 2003
Location: Santa Barbara
Posts: 107
Send a message via ICQ to Chronosfera Send a message via AIM to Chronosfera
Default

Hmm, why do you want to post the codes here?

Thanks for all who replied, although I still haven't been able to produce what I want. The nuclear tank upgrade is a global player_upgrade thing while the Ranger switch weapon is an individual switch weapon.

If a switch of locomotor through individual switch of weapon looks unlikely maybe I will look into some global upgrade of all units, which might be more probable.
Chronosfera is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-03-2003, 04:35 AM   #18 (permalink)
Senior Member
 
Join Date: Sep 2001
Posts: 734
Send a message via ICQ to Flyby
Default

Chrono,

Why don't you have a closer look at the Aurorabomber ?
Although it is not entirely the same thing you want, it does switch locomotor when using weapons...
Flyby is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-03-2003, 12:53 PM   #19 (permalink)
Senior Member
 
Join Date: Dec 2002
Posts: 1,031
Send a message via ICQ to Phoib Send a message via MSN to Phoib
Default

Kornlord, please remove the codes, as it adds nothing of value to this post.

And Chrono, you have to combine the two upgrades, locomoter and weapons settings.

Hint. For the module that adds the weapon, you could try to add the locomoter?
Phoib is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 03-03-2003, 08:33 PM   #20 (permalink)
Senior Member
 
Join Date: Jan 2003
Location: Santa Barbara
Posts: 107
Send a message via ICQ to Chronosfera Send a message via AIM to Chronosfera
Default

Hmm, I have been working on this, and this is what I got now. (And I have successfully created a mid game crash whenever the infantry with the problem is trained)
I made the locomotor and weapon upgrade modules triggered by the same upgrade, and then that upgrade is only for OBJECT nor PLAYER. Therefore now what I have got is when you trained an infantry, it runs fast but does not have a weapon. When you upgrade them individually to 'arm the weapon', they will be able to fire and their speed will slow down.

Now I am thinking of how to make it return to the original state (no weapon, good speed). Switching weapon like the Ranger didn't work for me because the locomotor and weapon sets upgrade needs to be triggered by an upgrade, not a command (if you make it a command the game crashes when the infantry is trained).

Hmm .. :S
I am looking at some way to remove an upgrade, or to switch back the weapon while changing the locomotor. I might look into the the OCL way (let the created object fires the weapon for you after upgraded), but I don't see how an object can be removed by another upgrade either?
Chronosfera is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
My ChinaTankScorpian Factionunit.ini (model Chrisv80) The_Blind_One Generals & Zero Hour Editing 11 08-27-2003 01:20 AM
A question about the factionunit.ini Etherealsilk Generals & Zero Hour Editing 11 08-17-2003 05:30 PM
need help in factionunit.ini kornlord283 Generals & Zero Hour Editing 8 02-20-2003 05:32 AM


All times are GMT -4. The time now is 08:20 AM.


Design By: Miner Skinz.com
Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.

1 2 3 4 5 6 7 8 9