home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar 2006 April
/
Gamestar_83_2006-04_dvd.iso
/
Dema
/
lotrbfme2_demo.exe
/
INI.big
/
data_ini_object_evilfaction_structures_isengard_campsandcastles.ini
< prev
next >
Wrap
Text File
|
2006-01-31
|
34KB
|
1,107 lines
;----------------------------------- IsengardCitadel -------------------------------------------------------
Object IsengardCampKeep
SelectPortrait = BPICamp
; *** ART Parameters ***
Draw = W3DScriptedModelDraw ModuleTag_Draw
OkToChangeModelColor = Yes
UseStandardModelNames = Yes
DefaultModelConditionState
Model = IBCCenter
ParticleSysBone = smokebone01 furnaceSparks
; ParticleSysBone = smokebone02 furnaceSmoke
; ParticleSysBone = glowbone01 TorchGlow
; ParticleSysBone = glowbone02 TorchGlow
; ParticleSysBone = glowbone03 TorchGlow
; ParticleSysBone = glowbone04 TorchGlow
End
ModelConditionState = WORLD_BUILDER
Model = IBCCenterW
End
IdleAnimationState
End
;------------Build Up States
ModelConditionState = ACTIVELY_BEING_CONSTRUCTED
Model = IBCCenter_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = ACTIVELY_BEING_CONSTRUCTED
Animation
AnimationName = IBCCenter_A.IBCCenter_A
AnimationMode = MANUAL
End
StateName = BeingConstructed
BeginScript
;CurDrawableHideSubObject("FIRE02")
CurDrawablePlaySound("GondorBarracksBeginConstruction")
CurDrawablePlaySound("BuildingTopple")
EndScript
End
;------------Build Up States
ModelConditionState = BASE_BUILD
Model = IBCCenter_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = BASE_BUILD
Animation
AnimationName = IBCCenter_A.IBCCenter_A
AnimationMode = ONCE
AnimationBlendTime = 0
AnimationSpeedFactorRange = 2.0 2.0 ; 300 frame anim, but need to shrink down to 5 seconds
End
BeginScript
CurDrawablePlaySound("DebrisDust")
CurDrawablePlaySound("GondorBarracksBeginConstruction")
CurDrawablePlaySound("BuildingTopple")
EndScript
End
ModelConditionState = JUST_BUILT
Model = IBCCenter_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = JUST_BUILT
Animation
AnimationName = IBCCenter_A.IBCCenter_A
AnimationMode = MANUAL
AnimationBlendTime = 0
End
Flags = START_FRAME_FIRST
;BeginScript
; CurDrawablePlaySound("DebrisDust")
; CurDrawableHideSubObject("FIRE02")
;EndScript
End
ModelConditionState = DAMAGED
Model = IBCCenter_D1
ParticleSysBone Smokebone01 TrebuchetImpactSplinters
; ParticleSysBone Smokebone02 furnaceSmoke
End
AnimationState = DAMAGED
EnteringStateFX = FX_BuildingDamaged
End
ModelConditionState = REALLYDAMAGED
Model = IBCCenter_D2
ParticleSysBone Smokebone01 TrebuchetImpactSplinters
; ParticleSysBone Smokebone02 furnaceSmoke
End
AnimationState = REALLYDAMAGED
EnteringStateFX = FX_BuildingReallyDamaged
End
ModelConditionState = RUBBLE
Model = IBCCenter_D2
ParticleSysBone Smokebone01 Explosion3
ParticleSysBone Smokebone02 Explosion5
End
AnimationState = RUBBLE
;EnteringStateFX = FX_IsengardCitadelDie ;added to trigger BuildingSink audio but already being triggered in StructureCollapseUpdate module
End
ModelConditionState = POST_RUBBLE
Model = GBGenRubble
ParticleSysBone NONE SmokeBuildingMediumRubble
End
AnimationState = POST_RUBBLE
End
ModelConditionState = POST_COLLAPSE
Model = GBGenRubble
ParticleSysBone NONE SmokeBuildingMediumRubble
End
AnimationState = POST_COLLAPSE
End
End
; *** AUDIO Parameters ***
VoiceSelect = IsengardCitadelSelect
SoundOnDamaged = BuildingLightDamageStone
SoundOnReallyDamaged = BuildingHeavyDamageStone
VoiceSelectUnderConstruction = BuildingEvilVoiceSelectUnderConstruction
UnitSpecificSounds
UnderConstruction = BuildingBigConstructionLoop ; Built first time
; UnderRepairFromDamage = NoSound ; Repaired No animation on the building, so don't bother playing sound
UnderRepairFromRubble = BuildingBigConstructionLoop ; Repaired from completely destroyed (not used???)
End
EvaEventDieOwner = CitadelDie
; ***DESIGN parameters ***
#include "..\..\..\Includes\StandardBuildingEvaEvents.inc"
DisplayName = OBJECT:IsengardCampKeep
Side = Isengard
EditorSorting = STRUCTURE
ThreatLevel = 1.0
BuildCost = 1000
BuildTime = 30.0 ; in seconds
CommandSet = IsengardCampKeepCommandSet
ArmorSet
Conditions = None
Armor = CitadelArmor
DamageFX = None
End
CampnessValue = CAMPNESS_FORTRESS
; *** ENGINEERING Parameters ***
KindOf = VITAL_FOR_BASE_SURVIVAL STRUCTURE SELECTABLE IMMOBILE CASTLE_KEEP MP_COUNT_FOR_VICTORY FS_FACTORY AUTO_RALLYPOINT MADE_OF_WOOD SCORE
RadarPriority = STRUCTURE
KeepSelectableWhenDead = Yes
Body = ActiveBody ModuleTag_02
MaxHealth = ISGENARD_CENTRAL_CAMP_KEEP_HEALTH
End
Behavior = GettingBuiltBehavior ModuleTag_04
SelfBuildingLoop = BuildingBigConstructionLoop ; Only played if we DON'T spawn a worker
SelfRepairFromDamageLoop = NoSound ; This doesn't cause an animation, so don't bother playing a sound
SelfRepairFromRubbleLoop = BuildingBigConstructionLoop
End
Behavior = CastleMemberBehavior ModuleTag_CMB
BeingBuiltSound = BuildingBigConstructionLoop
End
Behavior = AutoDepositUpdate AutoDepositModuleTag
DepositTiming = GENERIC_KEEP_MONEY_TIME ; in milliseconds
DepositAmount = GENERIC_KEEP_MONEY_AMOUNT ; cash amount to deposit every DepositTiming
InitialCaptureBonus = 0 ; no initial bonus
End
;-----------------------------------------------
;Used for hero revival and initial construction
Behavior = ProductionUpdate ProductionUpdateModuleTag
; nothing, but is required if we have any Object-level Upgrades!
End
Behavior = QueueProductionExitUpdate ModuleTag_QueuePEU
UnitCreatePoint = X:0.0 Y:-20.0 Z:0.0
NaturalRallyPoint = X:28.8 Y:-80.0 Z:0.0;NaturalRallyPointX must always match GeometryMajorRadius!
ExitDelay = 300 ;Handles delays between units if multiple produced at a time. (like Generals Redguard coming out 2 at a time)
End
;-----------------------------------------------
; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
; never truly destroyed, even when reduced to zero health. Also note that garrisonable
; buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = KeepObjectDie ModuleTag_IWantRubble
End
Behavior = StructureCollapseUpdate ModuleTag_06
MinCollapseDelay = 000
MaxCollapseDelay = 000
CollapseDamping = .5
MaxShudder = 0.6
MinBurstDelay = 250
MaxBurstDelay = 800
BigBurstFrequency = 4
FXList = INITIAL FX_StructureMediumCollapse
End
Behavior = RubbleRiseUpdate ModuleTag_07
MinRubbleRiseDelay = 000
MaxRubbleRiseDelay = 000
;RubbleRiseDamping = .5
RubbleHeight = 4.0
MaxShudder = 0.6
MinBurstDelay = 250
MaxBurstDelay = 800
BigBurstFrequency = 4
FXList = INITIAL FX_StructureMediumPostCollapse ;FX_StructureMediumCollapse
End
Geometry = BOX
GeometryMajorRadius = 15.0
GeometryMinorRadius = 15.0
GeometryHeight = 148.0
AdditionalGeometry = BOX
GeometryMajorRadius = 35.0
GeometryMinorRadius = 33.0
GeometryHeight = 30.0
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
GeometryContactPoint = X:0.115 Y:0 Z:150.622 Swoop
GeometryContactPoint = X:0 Y:0 Z:0
End
;------------------------------------------------------------------------------------------
Object IsengardEconomyKeep
SelectPortrait = BPIOrthancTower
; *** ART Parameters ***
Draw = W3DScriptedModelDraw ModuleTag_Draw
OkToChangeModelColor = Yes
UseStandardModelNames = Yes
DefaultModelConditionState
Model = IBTent2
End
AnimationState = NONE
Animation = IBTent2
AnimationName = IBTent2.IBTent2
AnimationMode = LOOP
End
End
ModelConditionState = RUBBLE
Model = IBTent2
ParticleSysBone SmokeLarge01 SmokeBuildingLarge
End
AnimationState = RUBBLE
End
ModelConditionState = POST_RUBBLE
Model = None
ParticleSysBone NONE SmokeBuildingMediumRubble
End
AnimationState = POST_RUBBLE
End
ModelConditionState = POST_COLLAPSE
Model = None
ParticleSysBone NONE SmokeBuildingMediumRubble
End
AnimationState = POST_COLLAPSE
End
End
; *** AUDIO Parameters ***
#include "..\..\..\Includes\StandardBuildingEvaEvents.inc"
SoundOnDamaged = BuildingLightDamageStone
SoundOnReallyDamaged = BuildingHeavyDamageStone
VoiceSelectUnderConstruction = BuildingEvilVoiceSelectUnderConstruction
UnitSpecificSounds
UnderConstruction = BuildingConstructionLoop ; Built first time
; UnderRepairFromDamage = NoSound ; Repaired No animation on the building, so don't bother playing sound
UnderRepairFromRubble = BuildingConstructionLoop ; Repaired from completely destroyed (not used???)
End
CampnessValue = CAMPNESS_RESOURCE_BUILDING ; ????
; ***DESIGN parameters ***
DisplayName = OBJECT:IsengardCampKeep
Side = Isengard
EditorSorting = STRUCTURE
ThreatLevel = 1.0
;BuildCost = 500
;BuildTime = 10.0 ; in seconds
ArmorSet
Conditions = None
Armor = NoArmor
DamageFX = None
End
; *** ENGINEERING Parameters ***
KindOf = STRUCTURE SELECTABLE IMMOBILE CASTLE_KEEP MP_COUNT_FOR_VICTORY MADE_OF_WOOD
RadarPriority = STRUCTURE
Body = ActiveBody ModuleTag_02
MaxHealth = 2000.0
End
Behavior = GettingBuiltBehavior ModuleTag_04
WorkerName = MordorWorkerNoSelect
SpawnTimer = 120
RebuildWhenDead = Yes
End
Behavior = CastleMemberBehavior ModuleTag_CMB
BeingBuiltSound = BuildingBigConstructionLoop
End
; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
; never truly destroyed, even when reduced to zero health. Also note that garrisonable
; buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = SlowDeathBehavior ModuleTag_SlowDeathWithoutRubble
DestructionDelay = 4000
End
Behavior = StructureCollapseUpdate ModuleTag_06
MinCollapseDelay = 000
MaxCollapseDelay = 000
CollapseDamping = .5
MaxShudder = 0.6
MinBurstDelay = 250
MaxBurstDelay = 800
BigBurstFrequency = 4
FXList = INITIAL FX_StructureMediumCollapse
End
Geometry = CYLINDER
GeometryMajorRadius = 50.0
GeometryMinorRadius = 0
GeometryHeight = 31.0
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
End
;------------------------------------------------------------------------------
Object IBCastleFloor
; *** ART Parameters ***
Draw = W3DFloorDraw ModuleTag_01
StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
ModelName = IBCastFloor
ForceToBack = Yes
End
Draw = W3DScriptedModelDraw ModuleTag_Draw2
DefaultModelConditionState
Model = OBBFoundationX
End
ModelConditionState = WORLD_BUILDER
Model = IBSizeTemplate
End
End
; *** AUDIO Parameters ***
VoiceSelect = Gui_PlotSelect
; ***DESIGN parameters ***
DisplayName = OBJECT:IBCastFloor
Side = Isengard
EditorSorting = STRUCTURE
; Browser = CINEMATICS UNIT
ArmorSet
Conditions = None
Armor = NoArmor
DamageFX = None
End
; *** ENGINEERING Parameters ***
KindOf = STRUCTURE IMMOBILE NO_COLLIDE UNATTACKABLE INERT
RadarPriority = NOT_ON_RADAR
Body = ImmortalBody ModuleTag_03
MaxHealth = 2000.0
End
; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
; never truly destroyed, even when reduced to zero health. Also note that garrisonable
; buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = SlowDeathBehavior ModuleTag_SlowDeathWithoutRubble
DestructionDelay = 1000
End
Geometry = BOX
GeometryMajorRadius = 0.8
GeometryMinorRadius = 0.8
GeometryHeight = 0.8
GeometryIsSmall = Yes
;GeometryRotationAnchorOffset = X:1037.871 Y:0
Shadow = SHADOW_VOLUME
End
;------------------------------------------------------------------------------
Object IBCampFloor
; *** ART Parameters ***
Draw = W3DFloorDraw ModuleTag_01
StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
ModelName = IBCampFloor
ForceToBack = Yes
End
; *** AUDIO Parameters ***
; ***DESIGN parameters ***
DisplayName = OBJECT:IBCampFloor
Side = Isengard
EditorSorting = STRUCTURE
; Browser = CINEMATICS UNIT
ArmorSet
Conditions = None
Armor = NoArmor
DamageFX = None
End
; *** ENGINEERING Parameters ***
KindOf = STRUCTURE IMMOBILE NO_COLLIDE UNATTACKABLE INERT
RadarPriority = NOT_ON_RADAR
Body = ImmortalBody ModuleTag_03
MaxHealth = 2000.0
End
; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
; never truly destroyed, even when reduced to zero health. Also note that garrisonable
; buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = SlowDeathBehavior ModuleTag_SlowDeathWithoutRubble
DestructionDelay = 1000
End
Geometry = BOX
GeometryMajorRadius = 0.8
GeometryMinorRadius = 0.8
GeometryHeight = 0.8
GeometryIsSmall = Yes
;GeometryRotationAnchorOffset = X:1037.871 Y:0
Shadow = SHADOW_VOLUME
End
;------------------------------------------------------------------------------
;Isengard Building Foundation -- the area where faction Isengard buildings can be built on
Object IsengardBuildingFoundation
SelectPortrait = BPICamp_Plot
; *** ART Parameters ***
Draw = W3DScriptedModelDraw ModuleTag_Draw2
DefaultModelConditionState
Model = OBBFoundationX
End
ModelConditionState = WORLD_BUILDER
Model = MBSizeTemplate
End
End
Draw = W3DFloorDraw ModuleTag_Draw
ModelName = IBFoundationX
End
;PlacementViewAngle = 0
; ***DESIGN parameters ***
DisplayName = OBJECT:IsengardBuildingFoundation
Side = Isengard
EditorSorting = STRUCTURE
ThreatLevel = 1.0
BuildCost = 1
BuildTime = 5.0 ; in seconds
VisionRange = 160.0 ; Shroud clearing distance
ShroudClearingRange = 161
CommandSet = IsengardFoundationCommandSet
; *** AUDIO Parameters ***
VoiceSelect = Gui_PlotSelect
; *** ENGINEERING Parameters ***
RadarPriority = STRUCTURE
KindOf = STRUCTURE SELECTABLE IMMOBILE BASE_FOUNDATION UNATTACKABLE MP_COUNT_FOR_VICTORY NO_COLLIDE DO_NOT_CLASSIFY
Behavior = FoundationAIUpdate ModuleTag_foundationAI
End
Behavior = CastleMemberBehavior ModuleTag_CMB
End
Body = ImmortalBody ModuleTag_05
MaxHealth = 15000.0
End
Geometry = BOX
GeometryMajorRadius = 24.0
GeometryMinorRadius = 24.0
GeometryHeight = 0.8
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
BuildCompletion = PLACED_BY_PLAYER
End
;Isengard Base Defence Foundation -- the area where faction rohan buildings can be built on
Object IsengardBaseDefenceFoundation
SelectPortrait = BPICamp_Plot
; *** ART Parameters ***
Scale = 0.7
Draw = W3DScriptedModelDraw ModuleTag_Draw2
DefaultModelConditionState
Model = OBBFoundationX
End
ModelConditionState = WORLD_BUILDER
Model = IBBtlTwrM
End
End
Draw = W3DFloorDraw ModuleTag_Draw
ModelName = IBFoundationM
End
;PlacementViewAngle = 0
; ***DESIGN parameters ***
DisplayName = OBJECT:IsengardBaseDefenseFoundation
Side = Mordor
EditorSorting = STRUCTURE
ThreatLevel = 1.0
BuildCost = 1
BuildTime = 5.0 ; in seconds
VisionRange = 160.0 ; Shroud clearing distance
ShroudClearingRange = 160
CommandSet = IsengardBaseDefenceFoundationCommandSet
; *** AUDIO Parameters ***
VoiceSelect = Gui_PlotSelect
; *** ENGINEERING Parameters ***
RadarPriority = STRUCTURE
KindOf = STRUCTURE SELECTABLE IMMOBILE BASE_FOUNDATION BASE_DEFENSE_FOUNDATION UNATTACKABLE MP_COUNT_FOR_VICTORY NO_COLLIDE DO_NOT_CLASSIFY
Behavior = FoundationAIUpdate ModuleTag_foundationAI
End
Behavior = CastleMemberBehavior ModuleTag_CMB
End
Body = ImmortalBody ModuleTag_05
MaxHealth = 15000.0
End
Geometry = BOX
GeometryMajorRadius = 24.0
GeometryMinorRadius = 24.0
GeometryHeight = 0.8
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
BuildCompletion = PLACED_BY_PLAYER
End
;------------------------------------------------------------------------------------------
Object IsengardCastleBaseKeep
SelectPortrait = BPIOrthancTower
ButtonImage = BIWatchTower
; *** ART Parameters ***
Draw = W3DScriptedModelDraw ModuleTag_Draw
OkToChangeModelColor = Yes
UseStandardModelNames = Yes
DefaultModelConditionState
Model = IB_Orthanc
End
;------------Build Up States
ModelConditionState = ACTIVELY_BEING_CONSTRUCTED PARTIALLY_CONSTRUCTED
Model = IB_Orthanc_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = ACTIVELY_BEING_CONSTRUCTED
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = MANUAL
End
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
;------------Build Up States
ModelConditionState = BASE_BUILD
Model = IB_Orthanc_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = BASE_BUILD
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = ONCE
AnimationBlendTime = 0
AnimationSpeedFactorRange = 2.0 2.0 ; 300 frame anim, but need to shrink down to 5 seconds
End
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
AnimationState = JUST_BUILT
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = MANUAL
AnimationBlendTime = 0
End
Flags = START_FRAME_FIRST
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
ModelConditionState = DAMAGED
Model = IB_Orthanc_D1
End
AnimationState = DAMAGED
EnteringStateFX = FX_BuildingDamaged
End
ModelConditionState = REALLYDAMAGED
Model = IB_Orthanc_D2
; ParticleSysBone NONE furnaceSmoke
End
AnimationState = REALLYDAMAGED
Animation = ReallyDamagedanimation
AnimationName = IB_Orthanc_D2.IB_Orthanc_D2
AnimationMode = ONCE
End
EnteringStateFX = FX_BuildingReallyDamaged
End
ModelConditionState = RUBBLE
Model = IB_Orthanc_D3
ParticleSysBone FXbone01 BaradDurDust01 FollowBone:yes
ParticleSysBone FXbone02 BaradDurDust01 FollowBone:yes
ParticleSysBone NONE ExplosiveMineSmoke02
End
AnimationState = RUBBLE
Animation = Death
AnimationName = IB_Orthanc_D3.IB_Orthanc_D3
AnimationMode = ONCE
End
; EnteringStateFX = FX_RohanWallRubble
End
ModelConditionState = POST_RUBBLE
Model = None
End
ModelConditionState = POST_COLLAPSE
Model = None
End
End
; *** AUDIO Parameters ***
SoundOnDamaged = BuildingLightDamageStone
SoundOnReallyDamaged = BuildingHeavyDamageStone
VoiceSelectUnderConstruction = BuildingEvilVoiceSelectUnderConstruction
UnitSpecificSounds
UnderConstruction = BuildingBigConstructionLoop ; Built first time
; UnderRepairFromDamage = NoSound ; Repaired No animation on the building, so don't bother playing sound
UnderRepairFromRubble = BuildingBigConstructionLoop ; Repaired from completely destroyed (not used???)
End
; ***DESIGN parameters ***
DisplayName = OBJECT:IsengardCastleBaseKeep
Side = Isengard
EditorSorting = STRUCTURE
ThreatLevel = 1.0
;BuildCost = 500
;BuildTime = 10.0 ; in seconds
VisionRange = 160.0 ; Shroud clearing distance
ShroudClearingRange = 161
CommandSet = GenericKeepCommandSet
HealthBoxHeightOffset = -200
ArmorSet
Conditions = None
Armor = StructureArmor
DamageFX = OrthancDamageFX
End
; *** ENGINEERING Parameters ***
KindOf = PRELOAD STRUCTURE IMMOBILE SCORE NEED_BASE_FOUNDATION CASTLE_KEEP NOT_AUTOACQUIRABLE FS_FACTORY AUTO_RALLYPOINT SELECTABLE MADE_OF_METAL
RadarPriority = STRUCTURE
Body = ActiveBody ModuleTag_02
MaxHealth = 4000.0
End
Behavior = GettingBuiltBehavior ModuleTag_04
WorkerName = MordorWorkerNoSelect
SpawnTimer = 120
RebuildWhenDead = Yes
End
Behavior = CastleMemberBehavior ModuleTag_CMB
BeingBuiltSound = BuildingBigConstructionLoop
End
;-----------------------------------------------
;Used for hero revival and initial construction
Behavior = ProductionUpdate ProductionUpdateModuleTag
; nothing, but is required if we have any Object-level Upgrades!
End
Behavior = QueueProductionExitUpdate ModuleTag_QueuePEU
UnitCreatePoint = X:0.0 Y:-20.0 Z:0.0
NaturalRallyPoint = X:28.8 Y:-80.0 Z:0.0;NaturalRallyPointX must always match GeometryMajorRadius!
ExitDelay = 300 ;Handles delays between units if multiple produced at a time. (like Generals Redguard coming out 2 at a time)
End
;-----------------------------------------------
; Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
; never truly destroyed, even when reduced to zero health. Also note that garrisonable
; buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = KeepObjectDie ModuleTag_IWantRubble
End
; Behavior = StructureCollapseUpdate ModuleTag_06
; MinCollapseDelay = 000
; MaxCollapseDelay = 000
; CollapseDamping = .5
; MaxShudder = 0.6
; MinBurstDelay = 250
; MaxBurstDelay = 800
; BigBurstFrequency = 4
; FXList = INITIAL FX_StructureMediumCollapse
; End
Behavior = RubbleRiseUpdate ModuleTag_07
MinRubbleRiseDelay = 000
MaxRubbleRiseDelay = 000
;RubbleRiseDamping = .5
RubbleHeight = 4.0
MaxShudder = 0.6
MinBurstDelay = 250
MaxBurstDelay = 800
BigBurstFrequency = 4
FXList = INITIAL FX_StructureMediumCollapse
End
Geometry = CYLINDER
GeometryMajorRadius = 42.6
GeometryMinorRadius = 0
GeometryHeight = 65.2
AdditionalGeometry = CYLINDER
GeometryMajorRadius = 22.6
GeometryMinorRadius = 0
GeometryHeight = 265.2
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
AttackContactPoint = X:0 Y:0 Z:262
AttackContactPoint = X:0 Y:0 Z:0
End
;------------------------------------------------------------------------------------------
Object WOR_IsengardCastleBaseKeep
SelectPortrait = BPIOrthancTower
ButtonImage = BIWatchTower
; *** ART Parameters ***
Draw = W3DScriptedModelDraw ModuleTag_Draw
OkToChangeModelColor = Yes
UseStandardModelNames = Yes
DefaultModelConditionState
Model = IB_Orthanc
End
;------------Build Up States
ModelConditionState = ACTIVELY_BEING_CONSTRUCTED PARTIALLY_CONSTRUCTED
Model = IB_Orthanc_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = ACTIVELY_BEING_CONSTRUCTED
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = MANUAL
End
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
;------------Build Up States
ModelConditionState = BASE_BUILD
Model = IB_Orthanc_A
; ParticleSysBone = NONE BuildingDoughnutCloud
ParticleSysBone = NONE BuildingContructDust
End
AnimationState = BASE_BUILD
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = ONCE
AnimationBlendTime = 0
AnimationSpeedFactorRange = 2.0 2.0 ; 300 frame anim, but need to shrink down to 5 seconds
End
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
AnimationState = JUST_BUILT
Animation
AnimationName = IB_Orthanc_A.IB_Orthanc_A
AnimationMode = MANUAL
AnimationBlendTime = 0
End
Flags = START_FRAME_FIRST
BeginScript
; CurDrawableHideSubObject("FIRE02")
EndScript
End
ModelConditionState = DAMAGED
Model = IB_Orthanc_D1
End
AnimationState = DAMAGED
EnteringStateFX = FX_BuildingDamaged
End
ModelConditionState = REALLYDAMAGED
Model = IB_Orthanc_D2
; ParticleSysBone NONE furnaceSmoke
End
AnimationState = REALLYDAMAGED
Animation = ReallyDamagedanimation
AnimationName = IB_Orthanc_D2.IB_Orthanc_D2
AnimationMode = ONCE
End
EnteringStateFX = FX_BuildingReallyDamaged
End
ModelConditionState = RUBBLE
Model = IB_Orthanc_D3
ParticleSysBone FXbone02 BaradDurDust01 FollowBone:yes
ParticleSysBone NONE CastleExplosion
End
AnimationState = RUBBLE
Animation = Death
AnimationName = IB_Orthanc_D3.IB_Orthanc_D3
AnimationMode = ONCE
End
EnteringStateFX = FX_StructureMediumCollapse
End
ModelConditionState = POST_RUBBLE
Model = IB_Orthanc_R
End
ModelConditionState = POST_COLLAPSE
Model = IB_Orthanc_R
End
End
; *** AUDIO Parameters ***
#include "..\..\..\Includes\StandardBuildingEvaEvents.inc"
SoundOnDamaged = BuildingLightDamageStone
SoundOnReallyDamaged = BuildingHeavyDamageStone
VoiceSelectUnderConstruction = BuildingEvilVoiceSelectUnderConstruction
VoiceSelect = IsengardFortressSelect
UnitSpecificSounds
UnderConstruction = BuildingBigConstructionLoop // Built first time
//UnderRepairFromDamage = NoSound // Repaired No animation on the building, so don't bother playing sound
UnderRepairFromRubble = BuildingBigConstructionLoop // Repaired from completely destroyed (not used???)
End
; ***DESIGN parameters ***
DisplayName = OBJECT:IsengardCastleBaseKeep
Side = WOR
EditorSorting = STRUCTURE
ThreatLevel = 1.0
BuildCost = 5000
BuildTime = 120.0 ; in seconds
VisionRange = 400 ; 160.0
ShroudClearingRange = 800 ; 161
ArmorSet
Conditions = None
Armor = FortressArmor
DamageFX = OrthancDamageFX
End
CommandSet = GenericKeepCommandSet
HealthBoxHeightOffset = -200
; *** ENGINEERING Parameters ***
KindOf = VITAL_FOR_BASE_SURVIVAL PRELOAD SELECTABLE STRUCTURE IMMOBILE SCORE CASTLE_KEEP MP_COUNT_FOR_VICTORY CAN_ATTACK FS_FACTORY AUTO_RALLYPOINT DOZER_FACTORY NEVER_CULL_FOR_MP COMMANDCENTER DONT_HIDE_IF_FOGGED ; MADE_OF_METAL NEED_BASE_FOUNDATION
RadarPriority = STRUCTURE
KeepSelectableWhenDead = Yes
//Commandset upgrades based on faction. This is so the building will produce the proper units when necessary
Behavior = CommandSetUpgrade ModuleTag_CommandSetMen
TriggeredBy = Upgrade_MenFaction
CommandSet = MenMonumentFortressRebuildCommandSet
End
Behavior = CommandSetUpgrade ModuleTag_CommandSetElven
TriggeredBy = Upgrade_ElfFaction
CommandSet = ElvenMonumentFortressRebuildCommandSet
End
Behavior = CommandSetUpgrade ModuleTag_CommandSetDwarven
TriggeredBy = Upgrade_DwarfFaction
CommandSet = DwarvenMonumentFortressRebuildCommandSet
End
Behavior = CommandSetUpgrade ModuleTag_CommandSetMordor
TriggeredBy = Upgrade_MordorFaction
CommandSet = MordorMonumentFortressRebuildCommandSet
End
Behavior = CommandSetUpgrade ModuleTag_CommandSetIsengard
TriggeredBy = Upgrade_IsengardFaction
CommandSet = IsengardMonumentFortressRebuildCommandSet
End
Behavior = CommandSetUpgrade ModuleTag_CommandSetWild
TriggeredBy = Upgrade_WildFaction
CommandSet = WildMonumentFortressRebuildCommandSet
End
//End Commandset upgrades
//-----------------------------------------------
//Used for hero revival and initial construction
Behavior = ProductionUpdate ProductionUpdateModuleTag
// nothing, but is required if we have any Object-level Upgrades!
End
Behavior = QueueProductionExitUpdate ModuleTag_QueuePEU
UnitCreatePoint = X:0.0 Y:-0.0 Z:0.0
NaturalRallyPoint = X:50.0 Y:-60.0 Z:0.0 ; NaturalRallyPointX must always match GeometryMajorRadius!
ExitDelay = 300 ; Handles delays between units if multiple produced at a time.
AllowAirborneCreation = Yes
End
;-----------------------------------------------
Behavior = GettingBuiltBehavior GetBuiltBehaviorTag
SelfBuildingLoop = BuildingBigConstructionLoop ; Only played if we DON'T spawn a worker
SelfRepairFromDamageLoop = NoSound ; This doesn't cause an animation, so don't bother playing a sound
SelfRepairFromRubbleLoop = BuildingBigConstructionLoop
SpawnTimer = -1.0 ; Negative means no 'autoheal'
RebuildTimeSeconds = 120
End
Behavior = CastleMemberBehavior ModuleTag_CMB
BeingBuiltSound = BuildingBigConstructionLoop
End
; Behavior = BuildingBehavior BuildingModuleTag
; NightWindowName = GBWORKSHOPN
; FireWindowName = WINDOW_F01
; GlowWindowName = WINDOW_G01
; FireName = FIRE01
; End
Body = ActiveBody ModuleTag_02
MaxHealth = MONUMENT_FORTRESS_HEALTH
MaxHealthDamaged = MONUMENT_FORTRESS_HEALTH_DAMAGED
MaxHealthReallyDamaged = MONUMENT_FORTRESS_HEALT_REALLY_DAMAGED
End
// Note that structures with "RUBBLE" states should not use DestroyDie; such buildings are
// never truly destroyed, even when reduced to zero health. Also note that garrisonable
// buildings automatically stick around because GarrisonContain has it's own DieModule
Behavior = KeepObjectDie ModuleTag_IWantRubble
End
;//Money Maker
Behavior = AutoDepositUpdate AutoDepositModuleTag
DepositTiming = GENERIC_KEEP_MONEY_TIME
DepositAmount = GENERIC_KEEP_MONEY_AMOUNT
InitialCaptureBonus = 0 // no initial bonus
End
Behavior = TerrainResourceBehavior ModuleTag_NewMoneyDeadSpot
Radius = GENERIC_KEEP_MONEY_RANGE ;// How far we try to claim ground
MaxIncome = 0 ;// If we were to get all we wanted, how much we would earn. Linear slope to 0 at 0% claim
IncomeInterval = 999999 ;// How often (in msec) we give that much money
HighPriority = Yes ;// A high priority claim gets to pretend it was there first.
Visible = No ;// Don't show decal when a resource building is selected.
End
Behavior = CitadelSlaughterHordeContain ModuleTag_SlaughterMe
PassengerFilter = GENERIC_FACTION_SLAUGHTERABLE
ObjectStatusOfContained = UNSELECTABLE ENCLOSED
CashBackPercent = 200%
ContainMax = 99 // give it a huge capacity, just in case player sends his whole army in at once
AllowEnemiesInside = No
AllowAlliesInside = No
AllowNeutralInside = No
AllowOwnPlayerInsideOverride = Yes
EnterSound = MordorSlaughterhouseEnterSound
EntryOffset = X:50.0 Y:-60.0 Z:0.0
EntryPosition = X:0.0 Y:0.0 Z:0.0
ExitOffset = X:50.0 Y:-60.0 Z:0.0
StatusForRingEntry = HOLDING_THE_RING
UpgradeForRingEntry = Upgrade_RingHero Upgrade_FortressRingHero
ObjectToDestroyForRingEntry = NONE +TheDroppedRing
FXForRingEntry = FX_OneRingFlare
End
#include "..\..\..\FortressRingFunc.inc"
Geometry = CYLINDER
GeometryMajorRadius = 42.6
GeometryMinorRadius = 0
GeometryHeight = 65.2
AdditionalGeometry = CYLINDER
GeometryMajorRadius = 22.6
GeometryMinorRadius = 0
GeometryHeight = 265.2
GeometryIsSmall = No
Shadow = SHADOW_VOLUME
AttackContactPoint = X:0 Y:0 Z:262
AttackContactPoint = X:0 Y:0 Z:0
End