Jump to content


Photo

Archer unit short viw


  • Please log in to reply
1 reply to this topic

#1 under-mountain

under-mountain
  • New Members
  • 66 posts

Posted 29 September 2009 - 06:36 PM

My new archer unit has a very short view ;). Please tell me how do i fix it .Thanks :p
CODE

Object DwarvenCrossbow
; *** ART Parameters ***

; This is required for garrisoned objects - please put in all objects.
ButtonImage = HPBlack_B
SelectPortrait = HPBlack_B

UpgradeCameo1 = Upgrade_FireArrows

Scale = 0.8

Draw = W3DHordeModelDraw ModuleTag_01

StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD

; specify options for static LODs
LodOptions = LOW
AllowMultipleModels = ALLOW_MULTIPLE_MODELS_LOW
MaxRandomTextures = MAX_RANDOM_TEXTURES_LOW
MaxRandomAnimations = MAX_RANDOM_ANIMATIONS_LOW
MaxAnimFrameDelta = MAX_ANIM_FRAME_DELTA_LOW
End

LodOptions = MEDIUM
AllowMultipleModels = ALLOW_MULTIPLE_MODELS_MED
MaxRandomTextures = MAX_RANDOM_TEXTURES_MED
MaxRandomAnimations = MAX_RANDOM_ANIMATIONS_MED
MaxAnimFrameDelta = MAX_ANIM_FRAME_DELTA_MED
End

LodOptions = HIGH
AllowMultipleModels = ALLOW_MULTIPLE_MODELS_HIGH
MaxRandomTextures = MAX_RANDOM_TEXTURES_HIGH
MaxRandomAnimations = MAX_RANDOM_ANIMATIONS_HIGH
MaxAnimFrameDelta = MAX_ANIM_FRAME_DELTA_HIGH
End
; --------- With Bow ------------

DefaultModelConditionState
Model = ducrosssuperr
Skeleton = IUCrsbowmn_SKL
WeaponLaunchBone = PRIMARY B_CRSBOW
WeaponLaunchBone = SECONDARY ARROWNOCK ; when upgraded to flaming arrow
WeaponLaunchBone = TERTIARY B_CRSBOW
End

;-------- Default Idle animations -------
IdleAnimationState
StateName = STATE_Idle
Animation = IDLB
AnimationName = IUCrsbowmn_IDLB
AnimationMode = ONCE
AnimationPriority = 14
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = M_ROHAN_YEOMAN_BUILDTIME
End
;*** Repeat IDLB because animation priorities will not choose same animation twice so it can alternate between first two mostly.
Animation = IDLB
AnimationName = IUCrsbowmn_IDLB
AnimationMode = ONCE
AnimationPriority = 14
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
;Animation = IDLC
; AnimationName = IUCrsbowmn_IDLC does not blend well with the other anims.
; AnimationMode = ONCE
; AnimationPriority = 4
; AnimationSpeedFactorRange = 0.8 1.2
; AnimationBlendTime = 15
;End
Animation = IDLD
AnimationName = IUCrsbowmn_IDLD
AnimationMode = ONCE
AnimationPriority = 4
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
Animation = IDLE
AnimationName = IUCrsbowmn_IDLE
AnimationMode = ONCE
AnimationPriority = 4
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
Animation = IDLF
AnimationName = IUCrsbowmn_IDLF
AnimationMode = ONCE
AnimationPriority = 4
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
Animation = IDLI
AnimationName = IUCrsbowmn_IDLI
AnimationMode = ONCE
AnimationPriority = 1
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
End

;----------- Flying through air -------

AnimationState = PASSENGER
Animation = Wiggling
AnimationName = IUCrsbowmn_FLLA
AnimationMode = LOOP
End
End


AnimationState = THROWN_PROJECTILE
Animation = FLYA
AnimationName = IUCrsbowmn_FLYA
AnimationMode = LOOP
End
End

AnimationState = FREEFALL
Animation = Wiggling
AnimationName = IUCrsbowmn_FLYA
AnimationMode = LOOP
AnimationSpeedFactorRange = 0.5 0.5
AnimationBlendTime = 5
End
End

AnimationState = STUNNED_FLAILING
Animation = StunFlail
AnimationName = IUCrsbowmn_FLYA
AnimationMode = LOOP
AnimationSpeedFactorRange = 0.4 0.6
End
End

;----------- Dying -------

AnimationState = DYING BURNINGDEATH
Animation
AnimationName = IUCrsbowmn_DIEA
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation
AnimationName = IUCrsbowmn_DIEB
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation
AnimationName = IUCrsbowmn_DIEC
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation
AnimationName = IUCrsbowmn_DIED
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation
AnimationName = IUCrsbowmn_DIEE
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation
AnimationName = IUCrsbowmn_DIEF
AnimationMode = ONCE
AnimationBlendTime = 10
End
End
AnimationState = DYING SPLATTED
Animation = Fire
AnimationName = IUCrsbowmn_LNDA
AnimationMode = ONCE
AnimationSpeedFactorRange = 0.7 1.3
End
EnteringStateFX = FX_SoldierHitGround
End

AnimationState = DYING AFLAME
Animation = Fire
AnimationName = GUArcher_MFDA
AnimationSpeedFactorRange = 0.9 1.1
End
End

AnimationState = DYING
Animation = Dying_1
AnimationName = IUCrsbowmn_DIEA
AnimationMode = ONCE
End
Animation = Dying_2
AnimationName = IUCrsbowmn_DIEB
AnimationMode = ONCE
End
Animation = Dying_3
AnimationName = IUCrsbowmn_DIEC
AnimationMode = ONCE
End
Animation = Dying_4
AnimationName = IUCrsbowmn_DIED
AnimationMode = ONCE
End
Animation = Dying_5
AnimationName = IUCrsbowmn_DIEE
AnimationMode = ONCE
End
Animation = Dying_2
AnimationName = IUCrsbowmn_DIEF
AnimationMode = ONCE
End
End

AnimationState = BURNINGDEATH
Animation
AnimationName = IUCrsbowmn_MFDA
AnimationMode = LOOP
Distance = 75
End
End

AnimationState = PARALYZED
Animation
AnimationName = IUCrsbowmn_IDLA
AnimationMode = LOOP
End
End

;---------- Stunned on ground -------

AnimationState = STUNNED_STANDING_UP
Animation = GTPA
AnimationName = IUCrsbowmn_GTPA
AnimationMode = ONCE
AnimationSpeedFactorRange = 1.5 1.5
End
End

AnimationState = STUNNED
Animation = LNDA
AnimationName = IUCrsbowmn_LNDA
AnimationMode = ONCE
End
End


;----------- Climbing -------

AnimationState = MOVING CLIMBING BACKING_UP
Animation = Climbing_Down
AnimationName = IUCrsbowmn_CLMA
AnimationMode = LOOP_BACKWARDS
AnimationSpeedFactorRange = 2.0 2.0
End
End

AnimationState = MOVING CLIMBING
Animation = Climbing_Up
AnimationName = IUCrsbowmn_CLMA
AnimationMode = LOOP
AnimationSpeedFactorRange = 2.0 2.0
End
End

; --------- Click and Hit Reactions ------------
; AnimationState = HIT_REACTION HIT_LEVEL_1
; Animation = Hit_Level_1_a
; AnimationName = IUCrsbowmn_HITA
; AnimationMode = ONCE
; End
; Animation = Hit_Level_1_b
; AnimationName = IUCrsbowmn_HITB
; AnimationMode = ONCE
; End
; End

; AnimationState = HIT_REACTION HIT_LEVEL_2
; Animation = Hit_Level_2_a
; AnimationName = IUCrsbowmn_HITE
; AnimationMode = ONCE
; End
; End

;;========= TERROR
AnimationState = MOVING EMOTION_TERROR EMOTION_LOOK_TO_SKY
Animation = TerrorFromTheSky
AnimationName = IUCrsbowmn_RUND
AnimationMode = LOOP
End
End

AnimationState = MOVING EMOTION_TERROR
; Animation = Moving
; AnimationName = IUCrsbowmn_RUNC
; AnimationMode = LOOP
; End
Animation = RUND
AnimationName = IUCrsbowmn_RUND
AnimationMode = LOOP
End
Flags = RANDOMSTART
ParticleSysBone = None InfantryDustTrails
End

;;========= BACKING UP

; frightened walking backwards (about to get smashed)
AnimationState = MOVING BACKING_UP
Animation = Backing_Up
AnimationName = IUCrsbowmn_BAKA
AnimationMode = LOOP
End
End

;;========= MOVING

AnimationState = MOVING
Animation = Moving
AnimationName = IUCrsbowmn_RUNA
AnimationMode = LOOP
End
Animation = Moving_2
AnimationName = IUCrsbowmn_RUNB
AnimationMode = LOOP
End
Flags = RANDOMSTART
ParticleSysBone = None InfantryDustTrails
End


;------- Old Style Archery --------------------------------------------
;Note: Crossbow animations are not appropriate for using the new animation system.
; The ready state is actually an aiming pose and they just simply shoot while
; firing. The reloading state simply continues the firing state.

AnimationState = PREATTACK_A
Animation = IDLA
AnimationName = IUCrsbowmn_IDLA
AnimationMode = ONCE
UseWeaponTiming = Yes
AnimationBlendTime = 8
End
End
AnimationState = FIRING_OR_RELOADING_A
StateName = STATE_Firing
Animation = ATKA
AnimationName = IUCrsbowmn_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
AnimationBlendTime = 0
End
FrameForPristineBonePositions = 0
End

AnimationState = PREATTACK_C
Animation = IDLA
AnimationName = IUCrsbowmn_IDLA
AnimationMode = ONCE
UseWeaponTiming = Yes
AnimationBlendTime = 8
End
End
AnimationState = FIRING_OR_RELOADING_C
StateName = STATE_Firing
Animation = ATKA
AnimationName = IUCrsbowmn_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
AnimationBlendTime = 0
End
FrameForPristineBonePositions = 0
End


;-emotions--
; Must go before selected so we don't become unafraid.
AnimationState = EMOTION_AFRAID UNCONTROLLABLE
Animation = FERA
AnimationName = IUCrsbowmn_FERA
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = EMOTION_UNCONTROLLABLY_AFRAID
Animation = FERA
AnimationName = IUCrsbowmn_FERA
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = ATTACKING
Animation = IdleAttackComesFrom
AnimationName = IUCrsbowmn_IDLA
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = ENGAGED SELECTED
Animation = ALERT_1
AnimationName = IUCrsbowmn_IDLA
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = RAISING_FLAG
Animation
AnimationName = IUCrsbowmn_CHRA
AnimationMode = ONCE
AnimationSpeedFactorRange = 0.9 1.1
End
Animation = CHRB
AnimationName = IUCrsbowmn_CHRB
AnimationMode = ONCE
AnimationSpeedFactorRange = 0.9 1.1
End
Flags = RESTART_ANIM_WHEN_COMPLETE
End

AnimationState = SELECTED
Animation = ATNB
AnimationName = IUCrsbowmn_ATNB
AnimationMode = LOOP
AnimationBlendTime = 20
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = EMOTION_AFRAID
Animation = FERA
AnimationName = IUCrsbowmn_FERA
AnimationMode = LOOP
End
Flags = RANDOMSTART
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = EMOTION_TAUNTING
Animation = TNTA
AnimationName = IUCrsbowmn_TNTA
AnimationSpeedFactorRange = 0.8 1.2
AnimationMode = ONCE
End
Animation = TNTB
AnimationName = IUCrsbowmn_TNTB
AnimationSpeedFactorRange = 0.8 1.2
AnimationMode = ONCE
End
Flags = RANDOMSTART RESTART_ANIM_WHEN_COMPLETE
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

;----------- pointing emotion ----------
; idles thrown in to break up the monotony
AnimationState = EMOTION_POINTING
Animation = Pointing1
AnimationName = IUCrsbowmn_PNTA
AnimationMode = ONCE
AnimationPriority = 10
End
Animation = IDLD
AnimationName = IUCrsbowmn_IDLD
AnimationMode = ONCE
AnimationPriority = 2
AnimationSpeedFactorRange = 0.8 1.2
End
Animation = Pointing1
AnimationName = IUCrsbowmn_PNTB
AnimationMode = ONCE
AnimationPriority = 8
End
Animation = IDLE
AnimationName = IUCrsbowmn_IDLE
AnimationMode = ONCE
AnimationPriority = 1
AnimationSpeedFactorRange = 0.8 1.2
AnimationPriority = 4
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
Flags = RESTART_ANIM_WHEN_COMPLETE
End

AnimationState = EMOTION_CELEBRATING
Animation = CHRA
AnimationName = IUCrsbowmn_CHRA
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation = CHRB
AnimationName = IUCrsbowmn_CHRB
AnimationMode = ONCE
AnimationBlendTime = 10
End
Animation = TNTA
AnimationName = IUCrsbowmn_TNTA
AnimationMode = ONCE
AnimationBlendTime = 10
End
Flags = RANDOMSTART RESTART_ANIM_WHEN_COMPLETE
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = EMOTION_ALERT
Animation = ALERT
AnimationName = IUCrsbowmn_IDLA
AnimationMode = LOOP
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_Firing" then CurDrawableAllowToContinue() return end
EndScript
End

AnimationState = WEAPONSET_PLAYER_UPGRADE
StateName = STATE_Idle
Animation = IDLE
AnimationName = IUCrsbowmn_IDLA
AnimationMode = ONCE
AnimationPriority = 20
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
Animation = IDLF
AnimationName = IUCrsbowmn_IDLB
AnimationMode = ONCE
AnimationPriority = 20
AnimationSpeedFactorRange = 0.8 1.2
AnimationBlendTime = 15
End
Flags = RESTART_ANIM_WHEN_COMPLETE
End

AnimationState = WAR_CHANT
Animation = ALERT
AnimationName = IUCrsbowmn_IDLA
AnimationMode = LOOP
End
BeginScript
CurDrawableSetTransitionAnimState("theRealWarChant")
EndScript
End

TransitionState = theRealWarChant
Animation = Chant
AnimationName = IUCrsbowmn_CHRA
AnimationMode = ONCE
End
Animation = Chant2
AnimationName = IUCrsbowmn_CHRB
AnimationMode = ONCE
End
End

End

#include "..\..\..\includes\StunDrawModuleSmall.inc"

; ***DESIGN parameters ***
Side = Dwarves
EditorSorting = UNIT
ThreatLevel = 1.0
ThingClass = HORDE_UNIT
EmotionRange = 240
CommandPoints = 4
TransportSlotCount = M_TRANSPORTSLOTCOUNT_UNIT

WeaponSet
Conditions = None
Weapon = PRIMARY IsengardArcherBow
Weapon = SECONDARY IsengardArcherBow
Weapon = TERTIARY IsengardArcherBowBombard

AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI
AutoChooseSources = TERTIARY FROM_PLAYER FROM_SCRIPT ; Not AI.
End

ArmorSet
Conditions = None
Armor = GInfantryArmor
DamageFX = NormalDamageFX
End
ArmorSet
Conditions = PLAYER_UPGRADE
Armor = GInfantryHeavyArmor
DamageFX = NormalDamageFX
End

; This is required so that the build phase lasts as long as the anim.
BuildFadeInOnCreateTime = 0 ;1.5 ;temporarily set to 0

CommandSet DwarvenCrossbowHordeCommandSet

ShroudClearingRange = M_SHROUD_CLEAR_STANDARD
VisionRange = M_ISENGARD_URUKCROSSBOW_VISION_RANGE

VisionSide = 35%
VisionRear = 25%
MaxVisionBonusPercent = 300%
VisionBonusTestRadius = 200
VisionBonusPercentPerFoot = 1.0% ;2.0%

BountyValue = M_ISENGARD_URUKCROSSBOW_BOUNTY_VALUE
DisplayName = OBJECT:DwarvenCrossbowHorde
CrushableLevel = 0 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles
CrusherLevel = 0 ;What can I crush?: 0 = small animals, 1 = infantry, 2 = trees, 3 = vehicles
CrushRevengeWeapon = RangedInfantryCrushRevenge


; *** AUDIO Parameters ***;

;VoiceAmbushed = DwarfAxeThrowerVoiceAmbushed
VoiceAttack = DwarfAxeThrowerVoiceAttack
VoiceAttackCharge = DwarfAxeThrowerVoiceAttackCharge
VoiceAttackMachine = DwarfAxeThrowerVoiceAttack
VoiceAttackStructure = DwarfAxeThrowerVoiceAttackBuilding
VoiceCreated = DwarfAxeThrowerVoiceSalute
VoiceFullyCreated = DwarfAxeThrowerVoiceSalute
VoiceGuard = DwarfAxeThrowerVoiceMove
VoiceMove = DwarfAxeThrowerVoiceMove
VoiceMoveToCamp = DwarfAxeThrowerVoiceMoveCamp
VoiceMoveToHigherGround = DwarfAxeThrowerVoiceMoveHighGround
VoiceMoveWhileAttacking = DwarfAxeThrowerVoiceDisengage
VoicePriority = 49
VoiceRetreatToCastle = DwarfAxeThrowerVoiceRetreat
VoiceSelect = DwarfAxeThrowerVoiceSelectMS
VoiceSelectBattle = DwarfAxeThrowerVoiceSelectBattle

MinZIncreaseForVoiceMoveToHigherGround = 45

VoiceEnterStateAttack = DwarfAxeThrowerVoiceEnterStateAttack
VoiceEnterStateAttackCharge = DwarfAxeThrowerVoiceEnterStateAttackCharge
VoiceEnterStateAttackMachine = DwarfAxeThrowerVoiceEnterStateAttackBuilding
VoiceEnterStateAttackStructure = DwarfAxeThrowerVoiceEnterStateAttackBuilding
VoiceEnterStateMove = DwarfAxeThrowerVoiceEnterStateMove
VoiceEnterStateMoveToCamp = DwarfAxeThrowerVoiceEnterStateMoveCamp
VoiceEnterStateMoveToHigherGround = DwarfAxeThrowerVoiceEnterStateMoveHighGround
VoiceEnterStateMoveWhileAttacking = DwarfAxeThrowerVoiceEnterStateDisengage
VoiceEnterStateRetreatToCastle = DwarfAxeThrowerVoiceEnterStateRetreat

SoundImpact = ImpactHorse

UnitSpecificSounds
VoiceGarrison = DwarfAxeThrowerVoiceMoveGarrison
VoiceEnterUnitElvenTransportShip = DwarfAxeThrowerVoiceMoveShip
VoiceInitiateCaptureBuilding = DwarfAxeThrowerVoiceCaptureBuilding
;VoiceEnterStateInitiateCaptureBuilding =
End

CrowdResponseKey = Dwarf

Behavior = LargeGroupAudioUpdate ModuleTag_LGAU
Key = Humanoid_Male Dwarf Dwarf_Male Dwarf_AxeThrower
End

#include "..\..\..\includes\StandardUnitEvaEvents.inc"

ClientBehavior = ModelConditionAudioLoopClientBehavior ModuleTag_foo
ModelCondition = Required:EMOTION_CELEBRATING Excluded:DYING ENGAGED Sound:EmotionDwarfCompilationVoxCheerSinglesLoop ;MOVING ATTACKING
ModelCondition = Required:EMOTION_POINTING Excluded:DYING ENGAGED Sound:EmotionDwarfCompilationVoxTauntSinglesLoop ;MOVING ATTACKING
ModelCondition = Required:EMOTION_TAUNTING Excluded:DYING ENGAGED Sound:EmotionDwarfCompilationVoxTauntSinglesLoop ;MOVING ATTACKING
ModelCondition = Required:RAISING_FLAG Excluded:DYING ENGAGED Sound:EmotionDwarfCompilationVoxTauntSinglesLoop
End

ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
MaxUpdateRangeCap = 800
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_DIEA Frames:23
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_DIEB Frames:29
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_DIEC Frames:76
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_DIED Frames:38
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_DIEE Frames:57
AnimationSound = Sound:BodyFallGeneric1 Animation:IUCrsbowmn_SKL.IUCrsbowmn_LNDA Frames:4
End


; *** ENGINEERING Parameters ***

RadarPriority = UNIT
KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER CAN_USE_SIEGE_TOWER SCORE THROWN_OBJECT ARCHER ATTACK_NEEDS_LINE_OF_SIGHT GRAB_AND_DROP

Body = ActiveBody ModuleTag_02
CheerRadius = M_EMOTION_CHEER_RADIUS
MaxHealth = M_DWARVEN_AXETHROWER_HEALTH ;BALANCE Isengard Crossbowman Health
MaxHealthDamaged = M_DWARVEN_AXETHROWER_HEALTH_DAMAGED
BurningDeathBehavior = Yes
BurningDeathFX = FX_InfantryBurningFlame
CheerRadius = M_EMOTION_CHEER_RADIUS
End

; Fire arrow upgrade
Behavior = WeaponSetUpgrade ModuleTag_WeaponSetUpgradeTag
TriggeredBy = Upgrade_DwarvenFireArrows
End

Behavior = SubObjectsUpgrade FireArrows_Upgrade
TriggeredBy = Upgrade_DwarvenFireArrows
ShowSubObjects = FireArowTip ArrowNock
HideSubObjects = arrow
End

;Heavy Armor
Behavior = ArmorUpgrade ArmorUpgradeModuleTag
TriggeredBy = Upgrade_DwarvenMithrilMail
ArmorSetFlag = PLAYER_UPGRADE
End

Behavior = SubObjectsUpgrade Armor_Upgrade
TriggeredBy = Upgrade_DwarvenMithrilMail
RecolorHouse = Yes
End

Behavior = AIUpdateInterface ModuleTag_03
AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS
CanAttackWhileContained = Yes
AILuaEventsList = GondorFighterFunctions
MaxCowerTime = 5000
MinCowerTime = 3000
AttackPriority = AttackPriority_Infantry
BurningDeathTime = M_BURNINGDEATH_DURATION_INFANTRY
End

LocomotorSet
Locomotor = HumanLocomotor
Condition = SET_NORMAL
Speed = M_NORMAL_GOOD_INFANTRY_MEMBER_SPEED
End

LocomotorSet
Locomotor = BurningDeathLocomotorInfantry
Condition = SET_BURNINGDEATH
Speed = M_BURNINGDEATH_WANDERSPEED_INFANTRY
End

Behavior = PhysicsBehavior ModuleTag_04
GravityMult = 1.0
ShockStandingTime = 1200 ;msec
End

Behavior = SlowDeathBehavior ModuleTag_05
DeathTypes = ALL -KNOCKBACK
SinkDelay = 3000
SinkRate = 1.40 ; in Dist/Sec
DestructionDelay = 8000
Sound = INITIAL DwarfGenericVoiceDie ;UrukCrossbowmanVoiceDie
End

Behavior = SquishCollide ModuleTag_06
;nothing
End

Behavior = SlowDeathBehavior ModuleTag_07
; Same as normal death, but no sound (sound already played by SoundImpact = ... )
DeathTypes = NONE +KNOCKBACK
SinkDelay = 3000
SinkRate = 1.40 ; in Dist/Sec
DestructionDelay = 8000
Sound = INITIAL DwarfGenericVoiceDie
End

; IsengardUrukCrossbow
Behavior = HordeMemberCollide ModuleTag_HMC
;nothing
End

Behavior = BezierProjectileBehavior ModuleTag_08 ; Module starts asleep, and wakes up when thrown.
;
FirstHeight = 24 ; Height of Bezier control points above highest intervening terrain
SecondHeight = 24
FirstPercentIndent = 30% ; Percentage of shot distance control points are placed
SecondPercentIndent = 70%
TumbleRandomly = Yes

CrushStyle = Yes ; I don't detonate, I just hit
DieOnImpact = Yes
BounceCount = 1 ; When I hit the ground, I'll arc again
BounceDistance = 40 ; this far
BounceFirstHeight = 24 ; Height of Bezier control points above highest intervening terrain
BounceSecondHeight = 24
BounceFirstPercentIndent = 20% ; Percentage of shot distance control points are placed
BounceSecondPercentIndent = 80%

GroundHitFX = FX_ThrownRockGroundHit
GroundBounceFX = FX_ThrownRockBounceHit
End

Geometry = CYLINDER
GeometryMajorRadius = 8.0
GeometryMinorRadius = 8.0
GeometryHeight = 19.2
GeometryIsSmall = Yes
Shadow = SHADOW_DECAL
ShadowSizeX = 19;
ShadowSizeY = 19;
ShadowTexture = ShadowI;
End


; =============== HORDE ==================

Object DwarvenCrossbowHorde

; This is required for garrisoned objects - please put in all objects.
ButtonImage = WOR_UrukCrossbowmen
SelectPortrait = UPDwarf_Crossbow

Draw = W3DScriptedModelDraw ModuleTag_W3DModelDraw
DependencySharedModelFlags = EMOTION_ALERT EMOTION_MORALE_HIGH EMOTION_MORALE_LOW EMOTION_AFRAID EMOTION_COWER SELECTED EMOTION_TERROR EMOTION_LOOK_TO_SKY
DefaultModelConditionState
Model = None ;InvisHrdeTmp
End
ModelConditionState = HORDE_EMPTY
Model = None
End
ModelConditionState = WORLD_BUILDER
Model = HordeMarkIUArc
End
End

Side = Dwarves
EditorSorting = UNIT
EmotionRange = 240
DisplayName = OBJECT:DwarvenCrossbowHorde
DisplayNameStrategic = CONTROLBAR:LW_Unit_DwarvenCrossbowHorde
DescriptionStrategic = CONTROLBAR:LW_ToolTip_DwarvenCrossbowHorde

WeaponSet
Conditions = None
Weapon = PRIMARY IsengardArcherHordeRangeFinder
Weapon = TERTIARY IsengardArcherHordeRangeFinderBombard
AutoChooseSources = TERTIARY FROM_PLAYER FROM_SCRIPT ; Not AI.
End

BuildCost = 350
BuildTime = M_ROHAN_YEOMAN_BUILDTIME

VisionRange = M_ISENGARD_URUKCROSSBOW_HORDE_VISION_RANGE
ShroudClearingRange = M_ISENGARD_URUKCROSSBOW_SHROUD_RANGE

VisionSide = 50%
VisionRear = 25%

MaxVisionBonusPercent = 300%
VisionBonusTestRadius = 200
VisionBonusPercentPerFoot = 1.0%


CrushableLevel = 0 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles
CrusherLevel = 0 ;What can I crush?: 0 = small animals, 1 = infantry, 2 = trees, 3 = vehicles
UseCrushAttack = No ;Archer hordes cannot crush or Bombard will not work
CommandPoints = 60


CommandSet = DwarvenCrossbowHordeCommandSet

FormationWidth = 2 ; Width it occupies in formations. Current choices are 1 or 2.
FormationDepth = 2 ; Depth it occupies in formations. Current choices are 1 or 2.

TransportSlotCount = TRANSPORTSLOTCOUNT_LARGE_HORDE
KindOf = SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT INFANTRY HORDE MELEE_HORDE NOTIFY_OF_PREATTACK ARMY_SUMMARY LARGE_RECTANGLE_PATHFIND ARCHER;;UNATTACKABLE

ThreatLevel = M_ISENGARD_URUKCROSSBOW_HORDE_THREAT

ThreatBreakdown IsengardUrukCrossbowHorde_DetailedThreat
AIKindOf = ARCHER
End

#include "..\..\..\includes\StandardHordeEvaEvents.inc"

Body = ImmortalBody ModuleTag_ImmortalBody
MaxHealth = 1
End

Behavior = StancesBehavior ModuleTag_StancesBehavior
StanceTemplate = ArcherHorde
End



Behavior = HordeAIUpdate ModuleTag_HordeAIUpdate
AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS
MoodAttackCheckRate = 500
MaxCowerTime = 5000
MinCowerTime = 3000
CanAttackWhileContained = Yes ; Can fire out of garrisoned building
AILuaEventsList = InfantryFunctions
AttackPriority = AttackPriority_Infantry
End


Behavior = HordeContain ModuleTag_HordeContain
FrontAngle = 270
FlankedDelay = 2000
ObjectStatusOfContained =
InitialPayload = IsengardUrukCrossbow 10
Slots = 10
PassengerFilter = NONE +INFANTRY
ShowPips = No
ThisFormationIsTheMainFormation = Yes ;Used to determine which armorset to use (and anything else we want!)

MeleeBehavior = Amoeba
End

; Banner Carrier info
BannerCarriersAllowed = DwarvenBanner ; types of units that are allowed as banner carriers
BannerCarrierPosition = UnitType:DwarvenGuardian Pos:X:70.0 Y:0.0 ; (DEFAULT) position of banner carrier

; Positions for 5
RankInfo = RankNumber:1 UnitType:DwarvenCrossbow Position:X:50 Y:0 Position:X:50 Y:20 Position:X:50 Y:-20 Position:X:50 Y:40 Position:X:50 Y:-40
RankInfo = RankNumber:2 UnitType:DwarvenCrossbow Position:X:30 Y:0 Leader 1 0 Position:X:30 Y:20 Leader 1 1 Position:X:30 Y:-20 Leader 1 2 Position:X:30 Y:40 Leader 1 3 Position:X:30 Y:-40 Leader 1 4
;RankInfo = RankNumber:3 UnitType:DwarvenCrossbow Position:X:10 Y:0 Leader 2 0 Position:X:10 Y:20 Leader 2 1 Position:X:10 Y:-20 Leader 2 2 Position:X:10 Y:40 Leader 2 3 Position:X:10 Y:-40 Leader 2 4

RanksToReleaseWhenAttacking = 1 2 3

MeleeAttackLeashDistance = 25; How far the hordes can move from the center of the horde when melee attacking.
; Example of Eva event for horde death
;EvaEventLastMemberDeath = ArchersDie ; Play this Eva event when the last member dies
End

Behavior = PhysicsBehavior ModuleTag_PhysicsBehavior
GravityMult = 1.0
End

Behavior = EmotionTrackerUpdate Module_EmotionTracker
TauntAndPointDistance = M_INFANTRY_TAUNT_POINT_RADIUS ; max distance to taunted/pointed objet
TauntAndPointUpdateDelay = 1000 ; how often scan (milliseconds)
TauntAndPointExcluded = NONE
AfraidOf = M_EMOTION_AFRAIDOF_OBJECTFILTER
AlwaysAfraidOf = M_EMOTION_ALWAYS_AFRAIDOF_OBJECTFILTER
PointAt = M_EMOTION_POINTAT_OBJECTFILTER
HeroScanDistance = 150
FearScanDistance = M_ARCHER_FEAR_SCAN_RADIUS ;250

AddEmotion = Terror_Base
AddEmotion = Doom_Base
AddEmotion = BraceForBeingCrushed_Base
AddEmotion = UncontrollableFear_Base_Evil
AddEmotion = FearIdle_Base
AddEmotion = FearBusy_Base
AddEmotion = Point_Base
AddEmotion = Taunt_Base
AddEmotion = CheerIdle_Base
AddEmotion = CheerBusy_Base
AddEmotion = HeroCheerIdle_Base
AddEmotion = HeroCheerBusy_Base
AddEmotion = Alert_Base
End

LocomotorSet
Locomotor = NormalRangedHordeLocomotor
Condition = SET_NORMAL
Speed = M_NORMAL_GOOD_INFANTRY_HORDE_SPEED
End

Behavior = ProductionUpdate ProductionUpdateModuleTag
GiveNoXP = Yes
End

Behavior = LevelUpUpgrade ModuleTag_BasicTraining
TriggeredBy = Upgrade_DwarvenBasicTraining
LevelsToGain = 1
LevelCap = 2
End

Behavior = StatusBitsUpgrade ModuleTag_ProductionLegality
TriggeredBy = Upgrade_DwarvenFireArrows
End

Behavior = StatusBitsUpgrade ModuleTag_ProductionLegality2
TriggeredBy = Upgrade_DwarvenMithrilMail
End

Behavior = PickupStuffUpdate ModuleTag_PickupStuffUpdate
SkirmishAIOnly = Yes
StuffToPickUp = NONE +CRATE
ScanRange = 200
ScanIntervalSeconds = 0.5
End

#include "..\..\..\includes\CaptureBuilding.inc"
;///////////////////
; AISpecialPowers
;///////////////////

Behavior = AISpecialPowerUpdate IsengardUrukCrossbowHordeCaptureBuildingAI
CommandButtonName = Command_CaptureBuilding
SpecialPowerAIType = AI_SPECIAL_POWER_CAPTURE_BUILDING
End

Geometry = BOX
GeometryMajorRadius = 30.0
GeometryMinorRadius = 45.0
GeometryHeight = 20.0
GeometryIsSmall = No


// *** AUTO RESOLVE DATA ***
;AutoResolveUnitType = AutoResolveUnit_Archer
;AutoResolveCombatChain = AutoResolve_ArcherCombatChain

;AutoResolveBody = AutoResolve_DwarvenCrossbowHordeBody

;AutoResolveArmor
; RequiredUpgrades = Upgrade_DwarvenMithrilMail
; Armor = AutoResolve_DwarvenAxeThrowerHeavyArmor
;End

;AutoResolveArmor
; ExcludedUpgrades = Upgrade_DwarvenMithrilMail
; Armor = AutoResolve_DwarvenAxeThrowerArmor
;End

;AutoResolveWeapon
; RequiredUpgrades = Upgrade_DwarvenFireArrows
; Weapon = AutoResolve_DwarvenMenOfDaleUpgradedWeapon
;End

;AutoResolveWeapon
; ExcludedUpgrades = Upgrade_DwarvenFireArrows
; Weapon = AutoResolve_DwarvenMenOfDaleWeapon
;End

;WorldMapArmoryUpgradesAllowed = Upgrade_DwarvenBasicTraining Upgrade_DwarvenFireArrows Upgrade_DwarvenMithrilMail
End

The horde codes are in here as well.

#2 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,852 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 29 September 2009 - 06:38 PM

ShroudClearingRange = M_SHROUD_CLEAR_STANDARD 
 VisionRange = M_ISENGARD_URUKCROSSBOW_VISION_RANGE
VisionSide = 35%	VisionRear = 25%
	MaxVisionBonusPercent = 300%
	VisionBonusTestRadius = 200
	VisionBonusPercentPerFoot = 1.0%;2.0%
Change those things in both objects, horde and unit ;)
Ridder Geel




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users