View Single Post
Old 07-07-2006, 03:42 PM   #16 (permalink)
SmokeyDaBear
Senior Member
 
Join Date: Apr 2005
Location: Gamers Heaven
Posts: 781
Send a message via AIM to SmokeyDaBear Send a message via MSN to SmokeyDaBear Send a message via Yahoo to SmokeyDaBear
Default

Ok...here is the B2...lets say we want to it go from the air force general to America on generals...

Code:
;------------------------------------------------------------------------------
Object AirF_AmericaJetB3  

  ; *** ART Parameters ***
  Draw = W3DModelDraw ModuleTag_01
    DefaultConditionState
      Model = AVB3bmbr
      ParticleSysBone = Engine01 JetBlackTrailThin
      ParticleSysBone = Engine02 JetBlackTrailThin
      ParticleSysBone = WingTip01 JetContrailThin
      ParticleSysBone = WingTip02 JetContrailThin
      ParticleSysBone = WingTip03 JetContrailThin
      ParticleSysBone = WingTip04 JetContrailThin
    End
    ConditionState = DAMAGED
      Model = AVB3bmbr_D
      ParticleSysBone = Smoke01 JetFireLarge
      ParticleSysBone = Smoke02 JetFireLarge
      ParticleSysBone = Engine01 JetBlackTrailThin
      ParticleSysBone = Engine02 JetBlackTrailThin
      ParticleSysBone = Engine03 JetBlackTrailThin
      ParticleSysBone = Engine04 JetBlackTrailThin
      ParticleSysBone = Smoke01 JetSmokeLarge
      ParticleSysBone = Smoke02 JetSmokeLarge
    End
    ConditionState = REALLYDAMAGED
      Model = AVB3bmbr_D
      ParticleSysBone = Smoke01 JetFireLarge
      ParticleSysBone = Smoke02 JetFireLarge
      ParticleSysBone = Engine01 JetBlackTrailThin
      ParticleSysBone = Engine02 JetBlackTrailThin
      ParticleSysBone = Engine03 JetBlackTrailThin
      ParticleSysBone = Engine04 JetBlackTrailThin
      ParticleSysBone = Smoke01 JetSmokeLarge
      ParticleSysBone = Smoke02 JetSmokeLarge
    End
    ConditionState = RUBBLE
      Model = AVB3bmbr_D1
      ParticleSysBone = Smoke01 JetFireLarge
      ParticleSysBone = Smoke02 JetFireLarge
      ParticleSysBone = Smoke01 JetSmokeLarge
      ParticleSysBone = Smoke02 JetSmokeLarge
    End
    OkToChangeModelColor = Yes
  End
  
;  Draw = W3DModelDraw ModuleTag_02
;    DefaultConditionState
;      Model           = AVB3bmbr_A2K
;    End
;    ConditionState = DOOR_1_OPENING
;      Animation       = AVB3bmbr_A2K.AVB3bmbr_A2
;      AnimationMode   = ONCE
;      Flags           = START_FRAME_FIRST MAINTAIN_FRAME_ACROSS_STATES
;    End
;    ConditionState = DOOR_1_CLOSING
;      Animation       = AVB3bmbr_A2K.AVB3bmbr_A2
;      AnimationMode   = ONCE_BACKWARDS
;      Flags           = START_FRAME_LAST MAINTAIN_FRAME_ACROSS_STATES
;    End

;    ConditionState = REALLYDAMAGED
;      Model           = AVB3bmbr_A2DU
;      Animation       = AVB3bmbr_A2K.AVB3bmbr_A2
;      AnimationMode   = MANUAL
;      Flags           = START_FRAME_FIRST MAINTAIN_FRAME_ACROSS_STATES
;    End
;    ConditionState = DOOR_1_OPENING REALLYDAMAGED
;      Model           = AVB3bmbr_A2DU
;      Animation       = AVB3bmbr_A2K.AVB3bmbr_A2
;      AnimationMode   = ONCE
;      Flags           = START_FRAME_FIRST MAINTAIN_FRAME_ACROSS_STATES
;    End
;    ConditionState = DOOR_1_CLOSING REALLYDAMAGED
;      Model           = AVB3bmbr_A2DU
;      Animation       = AVB3bmbr_A2K.AVB3bmbr_A2
;      AnimationMode   = ONCE_BACKWARDS
;      Flags           = START_FRAME_LAST MAINTAIN_FRAME_ACROSS_STATES
;    End
;  End

  ; ***DESIGN parameters ***
  DisplayName         = OBJECT:B52
  EditorSorting       = VEHICLE
  Side                = AmericaAirForceGeneral
  TransportSlotCount  = 0                 ;how many "slots" we take in a transport (0 == not transportable)
  VisionRange         = 0.0 
  ArmorSet
    Conditions      = None
    Armor           = AirplaneArmor
    DamageFX        = TankDamageFX
  End
  ArmorSet
    Conditions            = PLAYER_UPGRADE 
    Armor                 = CountermeasuresAirplaneArmor 
    DamageFX              = None 
  End 
  CommandSet        = Command_ScriptedTransportDrops

  Prerequisites
    Object = AirF_AmericaStrategyCenter 
  End

  ; *** AUDIO Parameters ***
  SoundAmbient = B3BomberAmbientLoop
  SoundAmbientRubble    = NoSound

  ; *** ENGINEERING Parameters ***
  RadarPriority = UNIT
  KindOf = PRELOAD CAN_CAST_REFLECTIONS CAN_ATTACK  VEHICLE SCORE TRANSPORT AIRCRAFT IGNORED_IN_GUI EMP_HARDENED [color=red][DEL]
  Body = ActiveBody ModuleTag_03
    MaxHealth       = 1000.0
    InitialHealth   = 1000.0
  End

  ExperienceValue     = 50 50 50 50  ; Experience point value at each level

  ;SCRIPTED SUPPORT: These special powers are triggered directly 
  ;from the transport without creating a transport. This is done 
  ;via new code support and CreateLocation USE_OWNER_OBJECT -- 
  ;which also prevents creating the payload transport.
  Behavior    = OCLSpecialPower ModuleTag_04
    SpecialPowerTemplate = SuperweaponDaisyCutter  ;@@KRIS@@
    OCL                  = SUPERWEAPON_DaisyCutter
    CreateLocation       = USE_OWNER_OBJECT
    ScriptedSpecialPowerOnly = Yes
  End
  Behavior    = OCLSpecialPower ModuleTag_05
    SpecialPowerTemplate = SuperweaponMOAB  ;@@KRIS@@
    OCL                  = SUPERWEAPON_MOAB
    CreateLocation       = USE_OWNER_OBJECT
    ScriptedSpecialPowerOnly = Yes
  End
    
  Behavior = PhysicsBehavior ModuleTag_07
    Mass = 500.0
  End

  Behavior = DeliverPayloadAIUpdate ModuleTag_08
    DoorDelay         = 500
    MaxAttempts       = 4
    DropOffset        = X:0 Y:0 Z:-10
    DropDelay         = 300     ; time in between each item dropped (if more than one)
    PutInContainer    = AmericaParachute
    DeliveryDistance  = 150
  End
  Locomotor = SET_NORMAL B3Locomotor

  Behavior = TransportContain ModuleTag_09
    Slots                       = 100                     ; hey, it's a BIG transport
    ScatterNearbyOnExit         = No
    OrientLikeContainerOnExit   = Yes
    KeepContainerVelocityOnExit = Yes
    ExitPitchRate               = 30
    ExitBone                    = WeaponA01
    AllowInsideKindOf           = INFANTRY VEHICLE PROJECTILE DOZER PARACHUTABLE
    DoorOpenTime                = 0                ; this prevents the Contain module from messing with the doors, since we want DeliverPayload to handle 'em
    NumberOfExitPaths           = 0
    DestroyRidersWhoAreNotFreeToExit = Yes  ; 'destroy' as opposed to 'kill'
  End
    
  Behavior                          = JetSlowDeathBehavior ModuleTag_10
    DestructionDelay                = 2000 
    RollRate                        = 0.0
    RollRateDelta                   = 100%      ;each frame, rollrate = rollrate * rollrateDelta
    PitchRate                       = 0
    FallHowFast                     = 25.0%    ;Bigger is faster (can be over 100%,it's a fraction of gravity)
    FXInitialDeath                  = FX_JetBigDeathInitial
    OCLInitialDeath                 = OCL_AmericaJetCargoDeathStart
    DelaySecondaryFromInitialDeath  = 2000       ; in milliseconds     This guy won't hit the ground, so this time equals the above time
    OCLSecondary                    = OCL_AmericaJetCargoHulkDeath
    FXSecondary                     = FX_BigPlaneDeath
;   FXFinalBlowUp                   = FX_JetDeathFinalBlowUp
;   OCLFinalBlowUp                  = OCL_AuroraDeathFinalBlowUp
;   DeathLoopSound                  = MICAL NEEDS TO MAKE ME
  End

  Behavior = TransitionDamageFX ModuleTag_11
    DamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
    ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
  End

  Behavior                = ArmorUpgrade ModuleTag_Armor01
    TriggeredBy           = Upgrade_AmericaCountermeasures
  End

  Behavior                = CountermeasuresBehavior ModuleTag_12
    TriggeredBy           = Upgrade_AmericaCountermeasures
    FlareTemplateName     = CountermeasureFlare
    FlareBoneBaseName     = Flare ; Name of the base flare bone (Flare01, Flare02, Flare03)
    VolleySize            = 4     ; Number of flares launched per volley (requires bones)
    VolleyArcAngle        = 90.0  ; Max angle of flare relative to forward direction (with VolleySize of 1, flare will always goes straight back).
    VolleyVelocityFactor  = 2.0   ; Shoots out flares at a stronger velocity with a higher value.
    DelayBetweenVolleys   = 1000  ; Time between flare volleys
    NumberOfVolleys       = 5     ; Number of times the volleys will fire before reloading
    ReloadTime            = 0  ; After all volleys launched, then reloading must occur. If 0, then reloading occurs at airstrip only.
    EvasionRate           = 30%   ; With active flares, the specified percentage will be diverted.
    ReactionLaunchLatency = 100   ; Reaction between getting shot at and the firing of the first volley of countermeasures.
    MissileDecoyDelay     = 200   ; A reported missile that has been determined to hit a decoy will wait this long before acquiring countermeasures.
  End

  Behavior = PointDefenseLaserUpdate ModuleTag_Laser_One
    WeaponTemplate        = AirF_PointDefenseLaser
    PrimaryTargetTypes    = BALLISTIC_MISSILE SMALL_MISSILE
    ScanRate              = 0
    ScanRange             = 200.0
    PredictTargetVelocityFactor = 1.0
  End

  Geometry = Box
  GeometryIsSmall = No
  GeometryMajorRadius = 60.0
  GeometryMinorRadius = 10.0
  GeometryHeight = 10.0
  Shadow = SHADOW_VOLUME
  ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length

End
but the thing is you need to delete or switch some things to make it playable on generals...So what you do is, copy the code of something close to it... or something along the family... for instance, if you wanted to add the king raptor, just copy the raptors code and change the parameters a bit to fit general's needs... in this example i chose the B52 since both the B2 and B52 are not supposed to be selected, and huge bombers, and drop bombs via command...


Object AmericaJetB2
; *** ART Parameters ***
Draw = W3DModelDraw ModuleTag_01
DefaultConditionState
Model = AVB3bmbr
ParticleSysBone = Engine01 JetBlackTrailThin
ParticleSysBone = Engine02 JetBlackTrailThin
ParticleSysBone = Engine03 JetBlackTrailThin
ParticleSysBone = Engine04 JetBlackTrailThin
ParticleSysBone = WingTip01 JetContrailThin
ParticleSysBone = WingTip02 JetContrailThin
End
ConditionState = DAMAGED
Model = AVB3bmbr_D
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke02 JetFireLarge
ParticleSysBone = Engine01 JetBlackTrailThin
ParticleSysBone = Engine02 JetBlackTrailThin
ParticleSysBone = Engine03 JetBlackTrailThin
ParticleSysBone = Engine04 JetBlackTrailThin
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke02 JetSmokeLarge
End
ConditionState = REALLYDAMAGED
Model = AVB3bmbr_D
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke02 JetFireLarge
ParticleSysBone = Engine01 JetBlackTrailThin
ParticleSysBone = Engine02 JetBlackTrailThin
ParticleSysBone = Engine03 JetBlackTrailThin
ParticleSysBone = Engine04 JetBlackTrailThin
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke02 JetSmokeLarge
End
ConditionState = RUBBLE
Model = AVB3bmbr_D1
ParticleSysBone = Smoke01 JetFireLarge
ParticleSysBone = Smoke02 JetFireLarge
ParticleSysBone = Smoke01 JetSmokeLarge
ParticleSysBone = Smoke02 JetSmokeLarge
End
OkToChangeModelColor = Yes
End

; ***DESIGN parameters ***
DisplayName = OBJECT:B52
EditorSorting = VEHICLE
Side = America
TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable)
VisionRange = 0.0
ArmorSet
Conditions = None
Armor = AirplaneArmor
DamageFX = TankDamageFX
End
CommandSet = Command_ScriptedTransportDrops

; *** AUDIO Parameters ***
SoundAmbient = B52AmbientLoop
SoundAmbientRubble = NoSound

; *** ENGINEERING Parameters ***
RadarPriority = UNIT
KindOf = PRELOAD CAN_CAST_REFLECTIONS CAN_ATTACK VEHICLE SCORE TRANSPORT AIRCRAFT IGNORED_IN_GUI
Body = ActiveBody ModuleTag_03
MaxHealth = 1000.0
InitialHealth = 1000.0
End

ExperienceValue = 50 50 50 50 ; Experience point value at each level

;SCRIPTED SUPPORT: These special powers are triggered directly
;from the transport without creating a transport. This is done
;via new code support and CreateLocation USE_OWNER_OBJECT --
;which also prevents creating the payload transport.
Behavior = OCLSpecialPower ModuleTag_04
SpecialPowerTemplate = SuperweaponDaisyCutter ;@@KRIS@@
OCL = SUPERWEAPON_DaisyCutter
CreateLocation = USE_OWNER_OBJECT
End
Behavior = OCLSpecialPower ModuleTag_05
SpecialPowerTemplate = SuperweaponParadropAmerica
UpgradeOCL = SCIENCE_Paradrop3 SUPERWEAPON_Paradrop3
UpgradeOCL = SCIENCE_Paradrop2 SUPERWEAPON_Paradrop2
OCL = SUPERWEAPON_Paradrop1
CreateLocation = USE_OWNER_OBJECT
End
Behavior = OCLSpecialPower ModuleTag_06
SpecialPowerTemplate = SuperweaponCarpetBomb
OCL = SUPERWEAPON_CarpetBomb
CreateLocation = USE_OWNER_OBJECT
End

Behavior = PhysicsBehavior ModuleTag_07
Mass = 500.0
End

Behavior = DeliverPayloadAIUpdate ModuleTag_08
DoorDelay = 500
MaxAttempts = 4
DropOffset = X:0 Y:0 Z:-3
DropDelay = 100 ; time in between each item dropped (if more than one)
PutInContainer = AmericaParachute
DeliveryDistance = 100
End
Locomotor = SET_NORMAL B52Locomotor

Behavior = TransportContain ModuleTag_09
Slots = 100 ; hey, it's a BIG transport
ScatterNearbyOnExit = No
OrientLikeContainerOnExit = Yes
KeepContainerVelocityOnExit = Yes
ExitPitchRate = 30
ExitBone = WeaponA01
AllowInsideKindOf = INFANTRY VEHICLE PROJECTILE DOZER PARACHUTABLE
DoorOpenTime = 0 ; this prevents the Contain module from messing with the doors, since we want DeliverPayload to handle 'em
NumberOfExitPaths = 0
DestroyRidersWhoAreNotFreeToExit = Yes ; 'destroy' as opposed to 'kill'
End

Behavior = JetSlowDeathBehavior ModuleTag_10
DestructionDelay = 2000
RollRate = 0.0
RollRateDelta = 100% ;each frame, rollrate = rollrate * rollrateDelta
PitchRate = 0
FallHowFast = 25.0% ;Bigger is faster (can be over 100%,it's a fraction of gravity)
FXInitialDeath = FX_JetBigDeathInitial
OCLInitialDeath = OCL_AmericaJetCargoDeathStart
DelaySecondaryFromInitialDeath = 2000 ; in milliseconds This guy won't hit the ground, so this time equals the above time
OCLSecondary = OCL_AmericaJetCargoHulkDeath
FXSecondary = FX_BigPlaneDeath
; FXFinalBlowUp = FX_JetDeathFinalBlowUp
; OCLFinalBlowUp = OCL_AuroraDeathFinalBlowUp
; DeathLoopSound = MICAL NEEDS TO MAKE ME
End

Behavior = TransitionDamageFX ModuleTag_11
DamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_JetBigDamageTransition
End

Geometry = Box
GeometryIsSmall = No
GeometryMajorRadius = 60.0
GeometryMinorRadius = 10.0
GeometryHeight = 10.0
Shadow = SHADOW_VOLUME
ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length

End


so really, all i had to do was copy the b52's code, paste it, and put the B2's model and model information in the clone b52 code... then you just gotta transfer the b2's model and textures and your done... I also cut out some of that extra filler with the ";'s" but you dont have to do that....
SmokeyDaBear is offline   Reply With Quote