Jump to content
Sign in to follow this  
Zululu

Engineering problem

Recommended Posts

Hello to the entire community of cncnz. I'm Zululu and i'm quite new to the world of C&C Generals modding. I can do some stuff, like creazting new unit and weapons. I wanted to improve my skill and i recently decided to work on a personal (mod, just for training, I don't really know if i'm ever gonna publish it).

 

I just started to modify the USA faction: i'm working on their infantry now. I wanted to add a new unit, the Engineer: he's supposed to work pretty much as the Soviet combat engineer (i dont know the unit name in english), exept for the bunker building and the fact that he's armed with a shotgun.

 

So, in my concept, he should come with the capture building ability already unlocked. For that reason i created a new SpecialPower, called SpecialAbilityEngeneeringCaptureBuilding, and a dedicated CommandButton, the Command_AmericaEngineerCaptureBuilding. The problem is that the Engineer in-game has the ability unlocked but he cant use it! It's selectable but he can't select the target.

 

Can any body give me any suggestion? i'm gonna post the codes down belov

 

UNIT CODE:

  ; *** ART Parameters ***

  SelectPortrait          = AmericaEngineer
  ButtonImage            = AmericaEngineer
  
  UpgradeCameo1 = Upgrade_AmericaAdvancedTraining
  UpgradeCameo2 = Upgrade_AmericaChemicalSuits
  ;UpgradeCameo3 = NONE
  ;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


    ; --- 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


    ; ------- 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:Engineer
  Side                = America
  EditorSorting       = INFANTRY
  TransportSlotCount  = 1                 ;how many "slots" we take in a transport (0 == not transportable)
  
  WeaponSet
    Conditions = None 
    Weapon = PRIMARY RangerAdvancedCombatRifle
  End
  ArmorSet
    Conditions      = None
    Armor           = HumanArmor
    DamageFX        = InfantryDamageFX
  End
  ArmorSet
    Conditions            = PLAYER_UPGRADE
    Armor                 = ChemSuitHumanArmor
    DamageFX              = None
  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          = AmericaInfantryEngineerCommandSet


  ; *** AUDIO Parameters ***
  VoiceSelect = RangerVoiceSelect
  VoiceMove = RangerVoiceMove
  VoiceGuard = RangerVoiceMove
  VoiceAttack = RangerVoiceAttack
  VoiceFear = RangerVoiceFear
  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 = SpecialAbility ModuleTag_04
    SpecialPowerTemplate = SpecialAbilityEngineerCaptureBuilding
    UpdateModuleStartsAttack = Yes
    InitiateSound         = RangerVoiceClearBuilding
  End


  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


; --- begin Death modules ---
  Behavior = SlowDeathBehavior ModuleTag_Death01
    DeathTypes          = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA -POISONED_GAMMA
    SinkDelay           = 3000
    SinkRate            = 0.5     ; in Dist/Sec
    DestructionDelay    = 8000
    FX                  = INITIAL FX_RangerDie
  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_RangerDie
    FlingForce          = 8
    FlingForceVariance  = 3
    FlingPitch          = 60
    FlingPitchVariance  = 10
  End
  Behavior = SlowDeathBehavior ModuleTag_Death04
    DeathTypes          = NONE +BURNED
    DestructionDelay    = 0
    FX                  = INITIAL FX_DieByFireUSA
    OCL                 = INITIAL OCL_FlamingInfantry
  End
  Behavior = SlowDeathBehavior ModuleTag_Death05
    DeathTypes          = NONE +POISONED
    DestructionDelay    = 0
    FX                  = INITIAL FX_DieByToxinUSA
    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_DieByToxinUSA
    OCL                 = INITIAL OCL_ToxicInfantryBeta ;you'll have to create this OCL and make it use the blue guys instead of green ones
  End


  Behavior = SlowDeathBehavior ModuleTag_Death07
    DeathTypes          = NONE +POISONED_GAMMA
    DestructionDelay    = 0
    FX                  = INITIAL FX_DieByToxinUSA
    OCL                 = INITIAL OCL_ToxicInfantryGamma
  End
; --- end Death modules ---


  Behavior = SquishCollide ModuleTag_12
    ;nothing
  End
  Behavior                = ArmorUpgrade ModuleTag_Armor01
    TriggeredBy           = Upgrade_AmericaChemicalSuits
  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


  Behavior = LockWeaponCreate ModuleTag_21
    SlotToLock = PRIMARY ; Prevents indeterminate state plus two unpickable weapons equaling no attack.
  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


COMMANDBUTTON CODE:


; Unit commands -----------------------------------------------------------------------------------
CommandButton Command_AmericaEngineerCaptureBuilding
  Command                 = SPECIAL_POWER 
  SpecialPower            = SpecialAbilityRangerCaptureBuilding
  Options                 = OK_FOR_MULTI_SELECT NEED_TARGET_ENEMY_OBJECT NEED_TARGET_NEUTRAL_OBJECT 
  TextLabel               = CONTROLBAR:CaptureBuilding
  ButtonImage             = SSCaptureBuilding
  CursorName              = CaptureBuilding
  InvalidCursorName       = GenericInvalid
  ButtonBorderType        = ACTION ; Identifier for the User as to what kind of button this is
  DescriptLabel           = CONTROLBAR:ToolTipUSARangerCaptureBuilding
End

SPECIAL POWER CODE:

;-----------------------------------------------------------------------------
;The engineer captures control of a building.
;Author: ZULULU-- December 2015
;-----------------------------------------------------------------------------
SpecialPower SpecialAbilityEngineerCaptureBuilding
  Enum              = SPECIAL_INFANTRY_CAPTURE_BUILDING
  ReloadTime        = 15000 ; in milliseconds
  PublicTimer       = No
End
 COMMANDSET CODE:


CommandSet AmericaInfantryRangerCommandSet
  1  = Command_AmericaRangerCaptureBuilding
  2  = Command_AmericaRangerSwitchToMachineGun
  4  = Command_AmericaRangerSwitchToFlagBangGrenades
  11 = Command_AttackMove
  13 = Command_Guard
  14 = Command_Stop
I' ve searched in every forum but i've found nothing useful. If theri is already a topic for this argument, i'm sorry if i missed it and i will be glad if you could redirect me on it. Did i miss some animation work?(Which i can't do actually since i'm unable to run gmax) Or is any script editing needed?

 

Also i apologize for my terrible english and my forum/topic editing error(i'm quit a noob). If i've done any mistake i'll be glad if you can point them out and help me to correct them.

 

Many thanks. Zululu.

Edited by Sonic

Share this post


Link to post

Not sure what you are trying to do tbh. You seem to use the ranger commandset but dont add a commandbutton to it.

 

Command_AmericaEngineerCaptureBuilding needs to be added to the ranger commandset..if that is indeed the commandset you are using for your engineer unit else add that to its commandset.

 

CommandSet AmericaInfantryRangerCommandSet   ; change into AmericaEngineerCommandSet and add this to CommandSet          = AmericaInfantryEngineerCommandSet under DESIGN
  1  = Command_AmericaRangerCaptureBuilding ; change into this Command_AmericaEngineerCaptureBuilding
  2  = Command_AmericaRangerSwitchToMachineGun
  4  = Command_AmericaRangerSwitchToFlagBangGrenades
  11 = Command_AttackMove
  13 = Command_Guard
  14 = Command_Stop
End
 

 

 

 

You created a specialpower trigger in the unit doesnt trigger anything :

 

 

Behavior = SpecialAbility ModuleTag_04
    SpecialPowerTemplate = SpecialAbilityEngineerCaptureBuilding
    UpdateModuleStartsAttack = Yes   ; ON switch
    InitiateSound         = RangerVoiceClearBuilding
  End
 

This is basicly nothing more then a ON switch...you need to connect this with a WIRE to the LAMP:

 

 

Behavior = SpecialAbilityUpdate ModuleTag_19
    SpecialPowerTemplate  = SpecialAbilityRangerCaptureBuilding  ; WIRE change into SpecialAbilityEngineerCaptureBuilding 
    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
 

and this should make the lamp turn on if all goes well.

 

or are you trying to copy the existing ranger coding? Not sure if you made a new unit or just duplicated the ranger. In theory you could just reuse the existig ranger specialpower and commands if you wanted.

Edited by Ravendark
  • Upvote 1

Share this post


Link to post

Thank you sir for help. I noticed that i posted the wrong CommandSet. I had already created the propper command set for the enginner.

This one here:

 

CommandSet AmericaInfantryEngineerCommandSet
1 = Command_AmericaEngineerCaptureBuilding
11 = Command_AttackMove
13 = Command_Guard
14 = Command_Stop
End
I've done all what you sed and now the unit code look like this:
;------------------------------------------------------------------------------
Object AmericaInfantryEngineer
; *** ART Parameters ***
SelectPortrait = AmericaEngineer
ButtonImage = AmericaEngineer
UpgradeCameo1 = Upgrade_AmericaAdvancedTraining
UpgradeCameo2 = Upgrade_AmericaChemicalSuits
;UpgradeCameo3 = NONE
;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 = US_RNGR5
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
; -- 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
; ------- 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:Engineer
Side = America
EditorSorting = INFANTRY
TransportSlotCount = 1 ;how many "slots" we take in a transport (0 == not transportable)
WeaponSet
Conditions = None
Weapon = PRIMARY EngineerShotGun
End
ArmorSet
Conditions = None
Armor = HumanArmor
DamageFX = InfantryDamageFX
End
ArmorSet
Conditions = PLAYER_UPGRADE
Armor = ChemSuitHumanArmor
DamageFX = None
End
VisionRange = 100
ShroudClearingRange = 400
Prerequisites
Object = AmericaBarracks
End
BuildCost = 300
BuildTime = 8.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 = AmericaInfantryEngineerCommandSet
; *** AUDIO Parameters ***
VoiceSelect = RangerVoiceSelect
VoiceMove = RangerVoiceMove
VoiceGuard = RangerVoiceMove
VoiceAttack = RangerVoiceAttack
VoiceFear = RangerVoiceFear
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 = 150.0
InitialHealth = 150.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
; --- begin Death modules ---
Behavior = SlowDeathBehavior ModuleTag_Death01
DeathTypes = ALL -CRUSHED -SPLATTED -EXPLODED -BURNED -POISONED -POISONED_BETA -POISONED_GAMMA
SinkDelay = 3000
SinkRate = 0.5 ; in Dist/Sec
DestructionDelay = 8000
FX = INITIAL FX_RangerDie
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_RangerDie
FlingForce = 8
FlingForceVariance = 3
FlingPitch = 60
FlingPitchVariance = 10
End
Behavior = SlowDeathBehavior ModuleTag_Death04
DeathTypes = NONE +BURNED
DestructionDelay = 0
FX = INITIAL FX_DieByFireUSA
OCL = INITIAL OCL_FlamingInfantry
End
Behavior = SlowDeathBehavior ModuleTag_Death05
DeathTypes = NONE +POISONED
DestructionDelay = 0
FX = INITIAL FX_DieByToxinUSA
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_DieByToxinUSA
OCL = INITIAL OCL_ToxicInfantryBeta ;you'll have to create this OCL and make it use the blue guys instead of green ones
End
Behavior = SlowDeathBehavior ModuleTag_Death07
DeathTypes = NONE +POISONED_GAMMA
DestructionDelay = 0
FX = INITIAL FX_DieByToxinUSA
OCL = INITIAL OCL_ToxicInfantryGamma
End
; --- end Death modules ---
Behavior = SquishCollide ModuleTag_12
;nothing
End
Behavior = ArmorUpgrade ModuleTag_Armor01
TriggeredBy = Upgrade_AmericaChemicalSuits
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 = SpecialAbilityEngineerCaptureBuilding
UpdateModuleStartsAttack = Yes ; ON switch
InitiateSound = RangerVoiceCapture
End
Behavior = SpecialAbilityUpdate ModuleTag_19
SpecialPowerTemplate = SpecialAbilityEngineerCaptureBuilding
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 = LockWeaponCreate ModuleTag_21
SlotToLock = PRIMARY ; Prevents indeterminate state plus two unpickable weapons equaling no attack.
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
The US_RNGR5 model is from namman2.
In the beginning it didn't wor but that was for the fact that i was still using the wrong CommandButton Code:

; Unit commands -----------------------------------------------------------------------------------
CommandButton Command_AmericaEngineerCaptureBuilding
Command = SPECIAL_POWER
SpecialPower =
SpecialAbilityRangerCaptureBuilding; this was the main cause of trouble
Options = OK_FOR_MULTI_SELECT NEED_TARGET_ENEMY_OBJECT NEED_TARGET_NEUTRAL_OBJECT
TextLabel = CONTROLBAR:CaptureBuilding
ButtonImage = SSCaptureBuilding
CursorName = CaptureBuilding
InvalidCursorName = GenericInvalid
ButtonBorderType = ACTION ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipUSARangerCaptureBuilding
End
Now it looks like:
CommandButton Command_AmericaEngineerCaptureBuilding
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityEngineerCaptureBuilding
Options = OK_FOR_MULTI_SELECT NEED_TARGET_ENEMY_OBJECT NEED_TARGET_NEUTRAL_OBJECT
TextLabel = CONTROLBAR:CaptureBuilding
ButtonImage = SSCaptureBuilding
CursorName = CaptureBuilding
InvalidCursorName = GenericInvalid
ButtonBorderType = ACTION ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipUSARangerCaptureBuilding
End
I didn't reaused the SpecialAbilityRangerCaptureBuilding because it need an upgrade and my engineer was supposed to have it as is basic ability, somewhat close to the classic C&C enginers.
Now it work really well. Can i ask what was unclear about the post? I will try to explain better. Also i'll may end up with other question in close future, so i was thinking to change the topic title with my mod title. Should i do it? Also any other suggestion for code posted above? Like cleaning eventual unecessary code lines...
Thak you again. Sorry for my bad English. Zululu.

Share this post


Link to post

The thing that was unclear was that you basicly posted a hybrid of your engineercpture and the rangercapture, so i wasnt sure you wanted a whole new commandset +sp etc or if you where re using the ranger stuff. But that is sorted now.

  • Upvote 1

Share this post


Link to post

I've another question for modding: i would like to use a different tech sistem in my modification. At least for vanilla factions. It's inspired by the game "Act of War": basically, in that game USA faction update his tech level developing every time a more advanced "Defcon Level", kinda like what you do in Age of Empires with the various ages.

 

Is it possible to do that in Generals? And if possible, did somebody already done something similar?

 

EDIT: i got also a little problem. I just re added the AmericaDetentionCamp as a building. I wanted it to be a tech for the Defcon 2 level and i transfered some uppgrade from other buildings in it but when i click on their icons, the uprede doesn't start.

 

Here the codes:

 

BUILDING CODE:

Object AmericaDetentionCamp
; *** ART Parameters ***
SelectPortrait = SAPrison_L
ButtonImage = SAPrison
Draw = W3DModelDraw ModuleTag_01
ExtraPublicBone = PRISONYARD
OkToChangeModelColor = Yes
; day ****************************************
ConditionState = NONE
Model = ABPrison
Animation = ABPrison.ABPrison
AnimationMode = LOOP
End
ConditionState = DAMAGED
Model = ABPrison_D
Animation = ABPrison_D.ABPrison_D
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
End
ConditionState = REALLYDAMAGED RUBBLE
Model = ABPrison_E
Animation = ABPrison_E.ABPrison_E
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke07 SmolderingSmoke
ParticleSysBone = Smoke08 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
ParticleSysBone = Smoke07 SmolderingFire
ParticleSysBone = Smoke08 SmolderingFire
End
; night ***************************************
ConditionState = NIGHT
Model = ABPrison_N
Animation = ABPrison_N.ABPrison_N
AnimationMode = LOOP
End
ConditionState = DAMAGED NIGHT
Model = ABPrison_DN
Animation = ABPrison_DN.ABPrison_DN
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
End
ConditionState = REALLYDAMAGED RUBBLE NIGHT
Model = ABPrison_EN
Animation = ABPrison_EN.ABPrison_EN
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke07 SmolderingSmoke
ParticleSysBone = Smoke08 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
ParticleSysBone = Smoke07 SmolderingFire
ParticleSysBone = Smoke08 SmolderingFire
End
; day snow ****************************************
ConditionState = SNOW
Model = ABPrison_S
Animation = ABPrison_S.ABPrison_S
AnimationMode = LOOP
End
ConditionState = DAMAGED SNOW
Model = ABPrison_DS
Animation = ABPrison_DS.ABPrison_DS
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
End
ConditionState = REALLYDAMAGED RUBBLE SNOW
Model = ABPrison_ES
Animation = ABPrison_ES.ABPrison_ES
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke07 SmolderingSmoke
ParticleSysBone = Smoke08 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
ParticleSysBone = Smoke07 SmolderingFire
ParticleSysBone = Smoke08 SmolderingFire
End
; night snow ***************************************
ConditionState = NIGHT SNOW
Model = ABPrison_NS
Animation = ABPrison_NS.ABPrison_NS
AnimationMode = LOOP
End
ConditionState = DAMAGED NIGHT SNOW
Model = ABPrison_DNS
Animation = ABPrison_DNS.ABPrison_DNS
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
End
ConditionState = REALLYDAMAGED RUBBLE NIGHT SNOW
Model = ABPrison_ENS
Animation = ABPrison_ENS.ABPrison_ENS
AnimationMode = LOOP
ParticleSysBone = Smoke01 SmolderingSmoke
ParticleSysBone = Smoke02 SmolderingSmoke
ParticleSysBone = Smoke03 SmolderingSmoke
ParticleSysBone = Smoke04 SmolderingSmoke
ParticleSysBone = Smoke05 SmolderingSmoke
ParticleSysBone = Smoke06 SmolderingSmoke
ParticleSysBone = Smoke07 SmolderingSmoke
ParticleSysBone = Smoke08 SmolderingSmoke
ParticleSysBone = Smoke01 SmolderingFire
ParticleSysBone = Smoke02 SmolderingFire
ParticleSysBone = Smoke03 SmolderingFire
ParticleSysBone = Smoke04 SmolderingFire
ParticleSysBone = Smoke05 SmolderingFire
ParticleSysBone = Smoke06 SmolderingFire
ParticleSysBone = Smoke07 SmolderingFire
ParticleSysBone = Smoke08 SmolderingFire
End
;**************************************************************************************************************************
;This block handles every possible case with construction process, selling process, awaiting construction, and sold states
;for this draw module
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison
Animation = ABPrison.ABPrison
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED DAMAGED
Model = ABPrison_D
Animation = ABPrison_D.ABPrison_D
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED REALLYDAMAGED
Model = ABPrison_E
Animation = ABPrison_E.ABPrison_E
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT
Model = ABPrison_N
Animation = ABPrison_N.ABPrison_N
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT DAMAGED
Model = ABPrison_DN
Animation = ABPrison_DN.ABPrison_DN
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT REALLYDAMAGED
Model = ABPrison_EN
Animation = ABPrison_EN.ABPrison_EN
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED SNOW
Model = ABPrison_S
Animation = ABPrison_S.ABPrison_S
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED SNOW DAMAGED
Model = ABPrison_DS
Animation = ABPrison_DS.ABPrison_DS
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED SNOW REALLYDAMAGED
Model = ABPrison_ES
Animation = ABPrison_ES.ABPrison_ES
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT SNOW
Model = ABPrison_NS
Animation = ABPrison_NS.ABPrison_NS
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT SNOW DAMAGED
Model = ABPrison_DNS
Animation = ABPrison_DNS.ABPrison_DNS
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED NIGHT SNOW REALLYDAMAGED
Model = ABPrison_ENS
Animation = ABPrison_ENS.ABPrison_ENS
AnimationMode = LOOP
Flags = ADJUST_HEIGHT_BY_CONSTRUCTION_PERCENT
End
ConditionState = AWAITING_CONSTRUCTION
Model = NONE
End
AliasConditionState = AWAITING_CONSTRUCTION DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT
AliasConditionState = AWAITING_CONSTRUCTION NIGHT DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION SNOW
AliasConditionState = AWAITING_CONSTRUCTION SNOW DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION SNOW REALLYDAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW DAMAGED
AliasConditionState = AWAITING_CONSTRUCTION NIGHT SNOW REALLYDAMAGED
AliasConditionState = SOLD
AliasConditionState = SOLD DAMAGED
AliasConditionState = SOLD REALLYDAMAGED
AliasConditionState = SOLD NIGHT
AliasConditionState = SOLD NIGHT DAMAGED
AliasConditionState = SOLD NIGHT REALLYDAMAGED
AliasConditionState = SOLD SNOW
AliasConditionState = SOLD SNOW DAMAGED
AliasConditionState = SOLD SNOW REALLYDAMAGED
AliasConditionState = SOLD NIGHT SNOW
AliasConditionState = SOLD NIGHT SNOW DAMAGED
AliasConditionState = SOLD NIGHT SNOW REALLYDAMAGED
;**************************************************************************************************************************
End
; ------------ construction-zone fence -----------------
Draw = W3DModelDraw ModuleTag_02
AnimationsRequirePower = No
DefaultConditionState
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A4
Animation = ABPrison_A4.ABPrison_A4
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_DAY
ParticleSysBone = SmokeS01 SmokeBuildingSmall
ParticleSysBone = SparksS01 LiveWireSparks02
End
ConditionState = NIGHT AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A4N
Animation = ABPrison_A4N.ABPrison_A4N
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_NIGHT
ParticleSysBone = SmokeS01 SmokeBuildingSmall
ParticleSysBone = SparksS01 LiveWireSparks02
End
ConditionState = SNOW AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A4S
Animation = ABPrison_A4S.ABPrison_A4S
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_SNOW
ParticleSysBone = SmokeS01 SmokeBuildingSmall
ParticleSysBone = SparksS01 LiveWireSparks02
End
ConditionState = SNOW NIGHT AWAITING_CONSTRUCTION PARTIALLY_CONSTRUCTED ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A4SN
Animation = ABPrison_A4SN.ABPrison_A4SN
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_SNOWNIGHT
ParticleSysBone = SmokeS01 SmokeBuildingSmall
ParticleSysBone = SparksS01 LiveWireSparks02
End
TransitionState = DOWN_DEFAULT UP_DAY
Model = ABPrison_A4
Animation = ABPrison_A4.ABPrison_A4
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_NIGHT
Model = ABPrison_A4N
Animation = ABPrison_A4N.ABPrison_A4N
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOW
Model = ABPrison_A4S
Animation = ABPrison_A4S.ABPrison_A4S
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOWNIGHT
Model = ABPrison_A4SN
Animation = ABPrison_A4SN.ABPrison_A4SN
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = UP_DAY DOWN_DEFAULT
Model = ABPrison_A4
Animation = ABPrison_A4.ABPrison_A4
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_NIGHT DOWN_DEFAULT
Model = ABPrison_A4N
Animation = ABPrison_A4N.ABPrison_A4N
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOW DOWN_DEFAULT
Model = ABPrison_A4S
Animation = ABPrison_A4S.ABPrison_A4S
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOWNIGHT DOWN_DEFAULT
Model = ABPrison_A4SN
Animation = ABPrison_A4SN.ABPrison_A4SN
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
End
; ------------ under-construction scaffolding -----------------
Draw = W3DModelDraw ModuleTag_03
AnimationsRequirePower = No
MinLODRequired = MEDIUM
DefaultConditionState
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = PARTIALLY_CONSTRUCTED
Model = ABPrison_A6
Animation = ABPrison_A6.ABPrison_A6
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_DAY
ParticleSysBone = Sparks01 BuildUpBlueSpark
ParticleSysBone = Sparks02 BuildUpBlueSpark
ParticleSysBone = Sparks03 BuildUpBlueSpark
ParticleSysBone = Sparks04 BuildUpBlueSpark
ParticleSysBone = Sparks05 BuildUpBlueSpark
ParticleSysBone = Sparks06 BuildUpBlueSpark
End
ConditionState = NIGHT PARTIALLY_CONSTRUCTED
Model = ABPrison_A6N
Animation = ABPrison_A6N.ABPrison_A6N
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_NIGHT
ParticleSysBone = Sparks01 BuildUpBlueSpark
ParticleSysBone = Sparks02 BuildUpBlueSpark
ParticleSysBone = Sparks03 BuildUpBlueSpark
ParticleSysBone = Sparks04 BuildUpBlueSpark
ParticleSysBone = Sparks05 BuildUpBlueSpark
ParticleSysBone = Sparks06 BuildUpBlueSpark
End
ConditionState = SNOW PARTIALLY_CONSTRUCTED
Model = ABPrison_A6S
Animation = ABPrison_A6S.ABPrison_A6S
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_SNOW
ParticleSysBone = Sparks01 BuildUpBlueSpark
ParticleSysBone = Sparks02 BuildUpBlueSpark
ParticleSysBone = Sparks03 BuildUpBlueSpark
ParticleSysBone = Sparks04 BuildUpBlueSpark
ParticleSysBone = Sparks05 BuildUpBlueSpark
ParticleSysBone = Sparks06 BuildUpBlueSpark
End
ConditionState = SNOW NIGHT PARTIALLY_CONSTRUCTED
Model = ABPrison_A6SN
Animation = ABPrison_A6SN.ABPrison_A6SN
AnimationMode = MANUAL
Flags = START_FRAME_LAST
TransitionKey = UP_SNOWNIGHT
ParticleSysBone = Sparks01 BuildUpBlueSpark
ParticleSysBone = Sparks02 BuildUpBlueSpark
ParticleSysBone = Sparks03 BuildUpBlueSpark
ParticleSysBone = Sparks04 BuildUpBlueSpark
ParticleSysBone = Sparks05 BuildUpBlueSpark
ParticleSysBone = Sparks06 BuildUpBlueSpark
End
TransitionState = DOWN_DEFAULT UP_DAY
Model = ABPrison_A6
Animation = ABPrison_A6.ABPrison_A6
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_NIGHT
Model = ABPrison_A6N
Animation = ABPrison_A6N.ABPrison_A6N
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOW
Model = ABPrison_A6S
Animation = ABPrison_A6S.ABPrison_A6S
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOWNIGHT
Model = ABPrison_A6SN
Animation = ABPrison_A6SN.ABPrison_A6SN
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = UP_DAY DOWN_DEFAULT
Model = ABPrison_A6
Animation = ABPrison_A6.ABPrison_A6
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_NIGHT DOWN_DEFAULT
Model = ABPrison_A6N
Animation = ABPrison_A6N.ABPrison_A6N
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOW DOWN_DEFAULT
Model = ABPrison_A6S
Animation = ABPrison_A6S.ABPrison_A6S
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOWNIGHT DOWN_DEFAULT
Model = ABPrison_A6SN
Animation = ABPrison_A6SN.ABPrison_A6SN
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
End
; ------------ being-constructed crane -----------------
Draw = W3DModelDraw ModuleTag_04
AnimationsRequirePower = No
DefaultConditionState
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SNOW NIGHT
Model = None
TransitionKey = DOWN_DEFAULT
End
ConditionState = SOLD
Model = NONE
End
ConditionState = ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A5
Animation = ABPrison_A5.ABPrison_A5
AnimationMode = LOOP
TransitionKey = UP_DAY
End
ConditionState = NIGHT ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A5N
Animation = ABPrison_A5N.ABPrison_A5N
AnimationMode = LOOP
TransitionKey = UP_NIGHT
End
ConditionState = SNOW ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A5S
Animation = ABPrison_A5S.ABPrison_A5S
AnimationMode = LOOP
TransitionKey = UP_SNOW
End
ConditionState = SNOW NIGHT ACTIVELY_BEING_CONSTRUCTED
Model = ABPrison_A5SN
Animation = ABPrison_A5SN.ABPrison_A5SN
AnimationMode = LOOP
TransitionKey = UP_SNOWNIGHT
End
TransitionState = DOWN_DEFAULT UP_DAY
Model = ABPrison_AB
Animation = ABPrison_AB.ABPrison_AB
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_NIGHT
Model = ABPrison_ABN
Animation = ABPrison_ABN.ABPrison_ABN
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOW
Model = ABPrison_ABS
Animation = ABPrison_ABS.ABPrison_ABS
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = DOWN_DEFAULT UP_SNOWNIGHT
Model = ABPrison_ABSN
Animation = ABPrison_ABSN.ABPrison_ABSN
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.0 1.0
Flags = START_FRAME_FIRST
End
TransitionState = UP_DAY DOWN_DEFAULT
Model = ABPrison_AB
Animation = ABPrison_AB.ABPrison_AB
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_NIGHT DOWN_DEFAULT
Model = ABPrison_ABN
Animation = ABPrison_ABN.ABPrison_ABN
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOW DOWN_DEFAULT
Model = ABPrison_ABS
Animation = ABPrison_ABS.ABPrison_ABS
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
TransitionState = UP_SNOWNIGHT DOWN_DEFAULT
Model = ABPrison_ABSN
Animation = ABPrison_ABSN.ABPrison_ABSN
AnimationMode = ONCE_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0 ; play teardown animations more quickly
Flags = START_FRAME_LAST
End
End
PlacementViewAngle = -45
; ***DESIGN parameters ***
DisplayName = OBJECT:DetentionCamp
Side = America
EditorSorting = STRUCTURE
Prerequisites
Object = AmericaPowerPlant
End
BuildCost = 1000
BuildTime = 30.0 ; in seconds
EnergyProduction = 0
VisionRange = 200.0 ; Shroud clearing distance
ShroudClearingRange = 200
ArmorSet
Conditions = None
Armor = StructureArmor
DamageFX = StructureDamageFXNoShake
End
CommandSet = AmericaDetentionCampCommandSet
ExperienceValue = 100 100 100 100 ; Experience point value at each level
; *** AUDIO Parameters ***
VoiceSelect = DetentionCampSelect
SoundOnDamaged = BuildingDamagedStateLight
SoundOnReallyDamaged = BuildingDestroy
UnitSpecificSounds
UnderConstruction = UnderConstructionLoop
End
; *** ENGINEERING Parameters ***
RadarPriority = STRUCTURE
KindOf = PRELOAD STRUCTURE SELECTABLE IMMOBILE SCORE CAPTURABLE FS_TECHNOLOGY MP_COUNT_FOR_VICTORY
Body = StructureBody ModuleTag_05
MaxHealth = 2000.0
InitialHealth = 2000.0
End
Behavior = BaseRegenerateUpdate ModuleTag_08
;<NO DATA>
End
Behavior = DestroyDie ModuleTag_10
;<NO DATA>
End
Behavior = CreateObjectDie ModuleTag_12
CreationList = OCL_ABPowerPlantExplode
End
Behavior = CreateObjectDie ModuleTag_13
CreationList = OCL_AmericanRangerDebris08
ExemptStatus = UNDER_CONSTRUCTION
End
Behavior = FXListDie ModuleTag_14
DeathFX = FX_StructureMediumDeath
End
Behavior = SpyVisionSpecialPower ModuleTag_15
SpecialPowerTemplate = SuperweaponCIAIntelligence
BaseDuration = 30000 ;in milliseconds
BonusDurationPerCaptured = 10000 ;in milliseconds
MaxDuration = 240000 ;in milliseconds
End
Behavior = SpyVisionUpdate ModuleTag_16
;<NO DATA>
End
Behavior = FlammableUpdate ModuleTag_18
AflameDuration = 5000 ; If I catch fire, I'll burn for this long...
AflameDamageAmount = 5 ; taking this much damage...
AflameDamageDelay = 500 ; this often.
End
Behavior = TransitionDamageFX ModuleTag_19
;-------------DESIGNED FOR MEDIUM SIZED FACTION BUILDING TRANSITIONS-------------------
DamagedParticleSystem1 = Bone:None RandomBone:No PSys:StructureTransitionMediumSmoke
;---------------------------------------------------------------------------------------
ReallyDamagedParticleSystem1 = Bone:None RandomBone:No PSys:StructureTransitionMediumSmoke
ReallyDamagedParticleSystem2 = Bone:None RandomBone:No PSys:StructureTransitionMediumExplosion
ReallyDamagedParticleSystem3 = Bone:None RandomBone:No PSys:StructureTransitionMediumShockwave
End
Geometry = BOX
GeometryMajorRadius = 49.0
GeometryMinorRadius = 63.0
GeometryHeight = 35.0
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
BuildCompletion = PLACED_BY_PLAYER
End
COMMANDSET CODE:
CommandSet AmericaDetentionCampCommandSet
1 = Command_Upgrade_AmericaExo
2 = Command_UpgradeAmericaDroneArmor
3 = Command_UpgradeAmericaSupplyLines
4 = Command_UpgradeAmericaSentryDroneGun
14 = Command_Sell
End
Thanks for help and sorry for eventual errors. Zululu.
Edited by Zululu

Share this post


Link to post

You actually didn't need to copy the special power as the upgrade needed is set in the SpecialAbility behavior with the line "StartsPaused = Yes" removing that would have had the intentioned effect (and removing the UnpauseSpecialPowerUpgrade behavior as it isn't needed anymore)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×