Imladris production Le forum français de création de cartes et de mods pour Bataille pour la Terre du Milieu |
| | DwarvenGloin_Temp | |
| | Auteur | Message |
---|
gandalf77 Moddeur confirmé
Nombre de messages : 202 Add-On : Oui Date d'inscription : 09/08/2009
| Sujet: DwarvenGloin_Temp Ven 22 Juil - 16:32 | |
| Slt En faite j'ai remarquer dans le fichier ini de "Gloin" se trouve un autre object qui est "DwarvenGloin_Temp" Le truc est que il ne possède ni animation, ni squelette, ni même une arme... Il a juste un modèle fixe.. J'ai donc essayé de compléter avec les animations et squelette du "vrai" Gloin mais ça ne marche pas.. Donc je sais pas si quelqu'un saurait qu'est ce qu'il faut rajouter pour qu'il soit utilisable, svp? | |
| | | Leithian... Moddeur expert
Nombre de messages : 750 Age : 31 Location : @ Home ! =D Add-On : Quelle question, bien sûr que non ! Date d'inscription : 03/03/2010
| Sujet: Re: DwarvenGloin_Temp Ven 22 Juil - 16:40 | |
| Poste le code de ton fichier on sera plus aptes à comprendre là où ça plante et donc à t'aider Sinon ce que je ferai ça serait de créer un nouveau fichier ini du nom de "DwarvenGloin_Temp.ini", j'y copierai tout le code de l'objet "Gloïn" ( sans la partie de la fin "DwarvenGloin_Temp..." ), puis je remplacerai le nom du model par celui que tu as ( semble-t-il ) dans le morceau de code incomplet de "DwarvenGloin_Temp". Ensuite Changer le nom de l'object, en mettant par exemple "Object DwarvenGloin_Temp", puis je l'ajouterai dans le camp des nains en passant par le playertemplate.ini pour pouvoir le recruter dans le jeu ^^ Mais poste ton code ça vaut mieux on y verra tous plus clair, toi compris | |
| | | gandalf77 Moddeur confirmé
Nombre de messages : 202 Add-On : Oui Date d'inscription : 09/08/2009
| Sujet: Re: DwarvenGloin_Temp Ven 22 Juil - 16:56 | |
| Oui tu as raison lol c'est trop confus sinon alors la c'est le code de "Gloin_Temp" :
Object DwarvenGloin_Temp
; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait. SelectPortrait = HPGloin ; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage. ButtonImage = HIGloin
;ShadowMaxHeight = 999 ;this is causing 2 shadows to be cast when the unit is under a bridge. Taking it out! Draw = W3DScriptedModelDraw ModuleTag_01
OkToChangeModelColor = Yes
StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
;;====================== MODELS ================================================================ DefaultModelConditionState Model = EUDwarfGlo End
;;================== ANIMATIONS =================================================================
;;================== END ANIMATIONS =================================================================
End ; ***DESIGN parameters *** Side = Dwarves EditorSorting = UNIT ThreatLevel = 5.0 TransportSlotCount = TRANSPORTSLOTCOUNT_HERO BuildCost = GLOIN_BUILDCOST BuildTime = GLOIN_BUILDTIME
;//DisplayMeleeDamage = GLOIN_DAMAGE HeroSortOrder = 40 WeaponSet Conditions = None Weapon = PRIMARY GloinAxe End ArmorSet Conditions = None Armor = ToughHeroArmor DamageFX = NormalDamageFX End VisionRange = VISION_STANDARD_MELEE ShroudClearingRange = SHROUD_CLEAR_STANDARD
BountyValue = 30 DisplayName = OBJECT:Gloin RecruitText = CONTROLBAR:GloinRecruit ReviveText = CONTROLBAR:GloinRevive Hotkey = CONTROLBAR:GloinHotkey CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles ; CrusherLevel = 1 CommandSet = GloinCommandSet CommandPoints = 0
; *** AUDIO Parameters ***;
; VoiceAmbushed = GloinVoiceAmbushed ; VoiceAttack = GloinVoiceAttack ; VoiceAttackCharge = GloinVoiceAttackCharge ; VoiceAttackMachine = GloinVoiceAttack ; VoiceAttackStructure = GloinVoiceAttack ; ;VoiceCreated = GloinVoiceSalute ;this conflicts with his respawn dialogue line -- rehooked to spawn FX ; VoiceFear = GloinVoiceHelpMe ; VoiceMove = GloinVoiceMove ; VoiceMoveToCamp = GloinVoiceMove ; VoiceMoveWhileAttacking = GloinVoiceDisengage ; VoicePriority = 67 ; VoiceRetreatToCastle = GloinVoiceRetreat ; VoiceSelect = GloinVoiceSelectMS ; VoiceSelectBattle = GloinVoiceSelectBattle ; VoiceGuard = GloinVoiceMove
SoundImpact = ImpactHorse
; UnitSpecificSounds ; VoiceGarrison = GloinVoiceGarrison ; End
#include "..\..\..\includes\StandardUnitEvaEvents.inc" ; EvaEventDieOwner = GloinDie ;Eva event to trigger on unit's death. NOTICE THAT this is only for permanent deaths
Behavior = LargeGroupAudioUpdate ModuleTag_LGAU ; Tie into LargeGroupAudio system Key = Dwarf Unit Infantry Hero End
ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior MaxUpdateRangeCap = 800 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNA Frames:3 14 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNB Frames:3 12
AnimationSound = Sound:BodyFallSoldier Animation:DUGloin_SKL.DUGloin_LNDA Frames:2
AnimationSound = Sound:BodyFallGenericNoArmor Animation:DUGloin_SKL.DUGloin_DIEA Frames:11 AnimationSound = Sound:BodyFallGenericNoArmor Animation:DUGloin_SKL.DUGloin_DIEC Frames:59 End
; *** ENGINEERING Parameters ***
RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE THROWN_OBJECT HERO ARMY_SUMMARY ATTACK_NEEDS_LINE_OF_SIGHT PathfindDiameter = 40.0 Body = RespawnBody ModuleTag_RespawnBody CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = GLOIN_HEALTH PermanentlyKilledByFilter = NONE ;Who kills me permanently? DodgePercent = 80% End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate DeathAnim = DYING ;Model condition to play when killed-to-respawn DeathFX = FX_GimliDieToRespawn ;FXList to play when killed-to-respawn DeathAnimationTime = 4100 ;How long DeathAnim will take. InitialSpawnFX = FX_GimliInitialSpawn RespawnAnim = LEVELED ;Animation to play when respawning. RespawnFX = FX_GimliRespawn ;FXList to play when respawning. RespawnAnimationTime = 2000 ;Time it takes for respawn to play. AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP ;Respawn at this location -- and at it's exit production point if possible. ButtonImage = HIGloin ;RespawnEntries determine the ruleset for how a character can be revived. Some units may automatically respawn, others ;may require a specific revive action performed on him. You can specify different values for each level... or use Level:Any RespawnRules = AutoSpawn:No Cost:900 Time:90000 Health:100% ;DEFAULT VALUES RespawnEntry = Level:2 Cost:1000 Time:90000 ;For other levels, only override what is different. RespawnEntry = Level:3 Cost:1100 Time:90000 RespawnEntry = Level:4 Cost:1200 Time:90000 RespawnEntry = Level:5 Cost:1300 Time:120000 RespawnEntry = Level:6 Cost:1400 Time:120000 RespawnEntry = Level:7 Cost:1500 Time:120000 RespawnEntry = Level:8 Cost:1600 Time:120000 RespawnEntry = Level:9 Cost:1700 Time:120000 RespawnEntry = Level:10 Cost:1800 Time:120000 End
Behavior = AutoHealBehavior ModuleTag_GloinHealing StartsActive = Yes HealingAmount = HERO_HEAL_AMOUNT HealingDelay = 1000 StartHealingDelay = HERO_HEAL_DELAY HealOnlyIfNotInCombat = Yes End Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS MoodAttackCheckRate = 500 HoldGroundCloseRangeDistance = 60 End
Behavior = AutoAbilityBehavior ModuleTag_AutoAbilityBehavior End
LocomotorSet Locomotor = RohanGimliLocomotor Condition = SET_NORMAL Speed = NORMAL_GOOD_HERO_SPEED End ; Locomotor = SET_WANDER HumanWanderLocomotor
Behavior = PhysicsBehavior ModuleTag_04 GravityMult = 1.0 AllowBouncing = No ShockStunnedTimeLow = 1400 ;msec ShockStunnedTimeHigh = 2400 ;msec ShockStandingTime = 2600 ;msec End Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -KNOCKBACK SinkDelay = 3000 SinkRate = 0.40 ; in Dist/Sec DestructionDelay = 8000 Sound = INITIAL GimliVoiceDie 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 = 0.40 ; in Dist/Sec DestructionDelay = 8000 End
Behavior = BezierProjectileBehavior ModuleTag_08 ; Module starts asleep, and wakes up when thrown. ; To tweak a Bezier path FirstHeight = 50 ; Height of Bezier control points above highest intervening terrain SecondHeight = 20 FirstPercentIndent = 20% ; Percentage of shot distance control points are placed SecondPercentIndent = 70% TumbleRandomly = Yes
CrushStyle = Yes ; I don't detonate, I just hit
BounceCount = 0 ; When I hit the ground, I'll arc again
FinalStuckTime = 1200 ; Can't move for this long afterwards
GroundHitFX = FX_GimliLeapLand GroundHitWeapon = RohanGimliLeapWarhead PreLandingStateTime = 75; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance End
Behavior = EmotionTrackerUpdate Module_EmotionTracker TauntAndPointDistance = 300 ; max distance to taunted/pointed objet TauntAndPointUpdateDelay = 1000 ; how often scan (milliseconds) AddEmotion = Alert_Base End
Behavior = HitReactionBehavior HitReactionBehaviorModuleTag HitReactionLifeTimer1 = 2200 ; level 1 (light damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer2 = 15 ; level 2 (medium damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer3 = 10 ; level 3 (heavy damage) hit reaction animations in frames (5 per sec)
HitReactionThreshold1 = 1.0 ; level 1 (light damage) threshold trigger HitReactionThreshold2 = 2500.0 ; level 2 (medium damage) threshold trigger HitReactionThreshold3 = 5000.0 ; level 3 (heavy damage) threshold trigger End
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SmashEnabler SpecialPowerTemplate = SpecialAbilityGloinSmash TriggeredBy = Upgrade_EnableGloinSmash End Behavior = SpecialPowerModule ModuleTag_SmashStarter SpecialPowerTemplate = SpecialAbilityGloinSmash UpdateModuleStartsAttack = Yes StartsPaused = Yes End Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_SmashWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityGloinSmash WhichSpecialWeapon = 1 SkipContinue = Yes
UnpackTime = 1500 PackTime = 1200 FreezeAfterTriggerDuration = 0 ; Hold AI for this long after we fire. AwardXPForTriggering = 0 SpecialWeapon = GloinSmashWeapon End
Geometry = CYLINDER GeometryMajorRadius = 5.6 GeometryMinorRadius = 5.6 GeometryHeight = 16.0 GeometryIsSmall = Yes
Shadow = SHADOW_DECAL ShadowSizeX = 19; ShadowSizeY = 19; ShadowTexture = ShadowI; End
| |
| | | gandalf77 Moddeur confirmé
Nombre de messages : 202 Add-On : Oui Date d'inscription : 09/08/2009
| Sujet: Re: DwarvenGloin_Temp Ven 22 Juil - 16:59 | |
| Et voici les codes pour le Gloin que j'ai crée (j'avais fait exactement comme tu as dit mais ça n'a pas marché) et j'ai essayé plusieurs fois avec différents squelettes et animations :s
;------------------------------------------------------------------------------ ; ; Gloin.ini ; ;------------------------------------------------------------------------------
Object DwarvenNewGloin ; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait. SelectPortrait = HPGloin ; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage. ButtonImage = HIGloin
;ShadowMaxHeight = 999 ;this is causing 2 shadows to be cast when the unit is under a bridge. Taking it out! Draw = W3DScriptedModelDraw ModuleTag_01
OkToChangeModelColor = Yes
StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
;;====================== MODELS ================================================================ DefaultModelConditionState Model = EUDwarfGlo Skeleton = RUGimli_SKL WeaponLaunchBone = TERTIARY AXE02 End ;;================== ANIMATIONS =================================================================
TransitionState = TRANS_attentionToBored Animation = ATNA AnimationName = DUGloine_ATNA AnimationMode = ONCE AnimationSpeedFactorRange = 1.1 1.1 End End TransitionState = TRANS_boredToAttention Animation = ATNA AnimationName = DUGloine_ATNA AnimationMode = ONCE_BACKWARDS AnimationSpeedFactorRange = 1.1 1.1 End Flags = START_FRAME_LAST End
TransitionState = TRANS_AboutToHitGround_To_Idle Animation = SplashAtEndOfJump AnimationName = RUGimli_LEPC AnimationMode = ONCE ;AnimationBlendTime = 0 End Flags = MAINTAIN_FRAME_ACROSS_STATES End
;;--------------- IDLE STATES ---------------------------------
IdleAnimationState StateName = BORED Animation = IDLB AnimationName = DUGloine_IDLA AnimationMode = ONCE AnimationPriority = 15 End Animation = IDLB AnimationName = DUGloine_IDLB AnimationMode = ONCE AnimationPriority = 5 End Animation = IDLB AnimationName = DUGloine_IDLC AnimationMode = ONCE AnimationPriority = 3 End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "SELECTED" then CurDrawableSetTransitionAnimState("TRANS_attentionToBored") end if Prev == "READY" then CurDrawableSetTransitionAnimState("TRANS_attentionToBored") end EndScript End
; // SLAM AnimationState = SPECIAL_WEAPON_ONE StateName = SPELL Animation AnimationName = RUGimli_ATKA AnimationMode = ONCE End ParticleSysBone = NONE GloinBlastSlam FollowBone:Yes End
// SHAKE FOUNDATION AnimationState = SPECIAL_WEAPON_TWO StateName = SPELL Animation AnimationName = RUGimli_ATKD AnimationMode = ONCE End End
// SHATTERHAMMER AnimationState = SPECIAL_WEAPON_THREE StateName = SPELL Animation AnimationName = DUGloin_JUMP AnimationMode = ONCE End End
;;------------------ MOVING & DYING ---------------------------
;;======= DYING
AnimationState = STUNNED_FLAILING Animation = FLYA AnimationName = RUGimli_FLYA AnimationMode = LOOP AnimationSpeedFactorRange = 0.3 0.5 End Flags = RANDOMSTART End AnimationState = DYING SPLATTED DEATH_1 Animation = LNDB AnimationName = RUGimli_LNDA AnimationMode = ONCE End End
AnimationState = DYING DEATH_1 Animation = DIEA AnimationName = RUGimli_DIEA AnimationMode = ONCE End Animation = DIEC AnimationName = RUGimli_DIEC AnimationMode = ONCE End End
AnimationState = DYING DEATH_2 Animation = FadeOut AnimationName = RUGimli_IDLB AnimationMode = LOOP End End AnimationState = STUNNED_STANDING_UP Animation = GTPA AnimationName = RUGimli_GTPA AnimationMode = ONCE End End AnimationState = STUNNED Animation = LNDA AnimationName = RUGimli_LNDA AnimationMode = ONCE End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
AnimationState = PARALYZED Animation AnimationName = RUGimli_IDLA AnimationMode = LOOP End End
;;======= MOVING AnimationState = MOVING FIRING_OR_PREATTACK_A ShareAnimation = Yes Animation = RunAndFire AnimationName = RUGimli_ATRA AnimationMode = LOOP End Flags = RANDOMSTART End
AnimationState = MOVING ATTACKING Animation = RUNB AnimationName = RUGimli_RUNB AnimationMode = LOOP End Flags = RANDOMSTART ;ParticleSysBone = None InfantryDustTrails BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End AnimationState = MOVING Animation = RUNA AnimationName = RUGimli_RUNA AnimationMode = LOOP
End Flags = RANDOMSTART ;ParticleSysBone = None InfantryDustTrails BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
;;------------------ ATTACKING -------------------------------
AnimationState = FIRING_OR_PREATTACK_B; WEAPONLOCK_SECONDARY Animation = ATKA AnimationName = RUGimli_ATKD AnimationMode = ONCE UseWeaponTiming = Yes End ;ParticleSysBone None MeleeDust BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End AnimationState = FIRING_OR_PREATTACK_A Animation = ATKA AnimationName = RUGimli_ATKA AnimationMode = ONCE UseWeaponTiming = Yes End Animation = ATKB AnimationName = RUGimli_ATKB AnimationMode = ONCE UseWeaponTiming = Yes End Animation = ATKC AnimationName = RUGimli_ATKC AnimationMode = ONCE UseWeaponTiming = Yes End ;ParticleSysBone None MeleeDust BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
;;-------------------- HIT REACTIONS --------------------------
AnimationState = HIT_REACTION Animation = Hit_Level_1_a AnimationName = RUGimli_HITA AnimationMode = ONCE End End ;;------------ EMOTIONS ---------------------------------------
;;====== LEVELED AnimationState = LEVELED ; This state clears itself in 3 seconds Animation = LevelUp AnimationName = RUGimli_CHRB AnimationMode = ONCE End End
;;====== CELEBRATING AnimationState = EMOTION_CELEBRATING Animation = CHRA AnimationName = RUGimli_CHRA AnimationMode = ONCE End Flags = RESTART_ANIM_WHEN_COMPLETE End
;;====== TAUNTING AnimationState = EMOTION_TAUNTING Animation = TNTA AnimationName = RUGimli_TNTA AnimationMode = ONCE End Animation = TNTB AnimationName = RUGimli_TNTB AnimationMode = ONCE End Flags = RESTART_ANIM_WHEN_COMPLETE End AnimationState = EMOTION_ALERT Animation = READY AnimationName = RUGimli_IDLA AnimationMode = LOOP AnimationBlendTime = 15 End BeginScript if Prev == "State_AboutToHitGround" then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle") end EndScript
End AnimationState = RAISING_FLAG Animation = CHRA AnimationName = RUGimli_CHRA AnimationMode = LOOP End End
;;------------------- SELECTED STATES ------------------------- AnimationState = SELECTED StateName = SELECTED SimilarRestart = Yes Animation = ATNB AnimationName = DUGloine_ATNB AnimationMode = LOOP End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "BORED" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end if Prev == "READY" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end if Prev == "SPELL" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end EndScript End End
Draw = W3DScriptedModelDraw Icon ModelConditionState = NONE Model = bbox End End
;;================== END ANIMATIONS =================================================================
#include "..\..\..\includes\StunDrawModuleSmall.inc"
; ***DESIGN parameters *** Side = Dwarves EditorSorting = UNIT ThreatLevel = GLOIN_THREAT_LEVEL TransportSlotCount = TRANSPORTSLOTCOUNT_HERO BuildCost = GLOIN_BUILDCOST BuildTime = GLOIN_BUILDTIME ;ShockwaveResistance = SHOCKWAVE_RESISTANCE_STRONG DisplayMeleeDamage = GLOIN_DAMAGE MaxSimultaneousOfType = 1 HeroSortOrder = 40 Scale = 0.92
WeaponSet Conditions = None Weapon = PRIMARY GloinAxeMod End ArmorSet Conditions = None Armor = EdainWarriorHeroArmor ;GloinArmor DamageFX = NormalDamageFX End
ArmorSet Conditions = PLAYER_UPGRADE Armor = EdainWarriorHeroArmorUpgrade ;GloinMithrilArmor DamageFX = NormalDamageFX End
VisionRange = 200 ;VISION_STANDARD_MELEE ShroudClearingRange = 300 ;SHROUD_CLEAR_HERO MaxVisionBonusPercent = 300% VisionBonusTestRadius = 200 VisionBonusPercentPerFoot = 1.0%
BountyValue = 30 DisplayName = OBJECT:Gloin RecruitText = CONTROLBAR:GloinRecruit ReviveText = CONTROLBAR:GloinRevive Hotkey = CONTROLBAR:GloinHotkey CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles ; CrusherLevel = 1 CommandSet = GloinmodCommandSet CommandPoints = DWARVEN_GLOIN_COMMAND_POINTS
; *** AUTO RESOLVE DATA *** AutoResolveUnitType = AutoResolveUnit_Hero AutoResolveCombatChain = AutoResolve_HeroCombatChain
AutoResolveBody = AutoResolve_GloinBody AutoResolveArmor Armor = AutoResolve_GloinArmor End
AutoResolveWeapon Weapon = AutoResolve_GloinWeapon End ;AutoResolveLeadership = AutoResolve_GloinBonus
; *** AUDIO Parameters ***;
VoiceAttack = GloinVoiceAttack VoiceAttackCharge = GloinVoiceAttackCharge VoiceAttackMachine = GloinVoiceAttack VoiceAttackStructure = GloinVoiceAttackBuilding VoiceFear = GloinVoiceHelpMe VoiceGuard = GloinVoiceMove VoiceMove = GloinVoiceMove VoiceMoveToCamp = GloinVoiceMoveCamp VoiceMoveWhileAttacking = GloinVoiceDisengage VoicePriority = 78 VoiceRetreatToCastle = GloinVoiceRetreat VoiceSelect = GloinVoiceSelectMS VoiceSelectBattle = GloinVoiceSelectBattle
;VoiceEnterStateAttack = GloinVoiceEnterStateAttack ;VoiceEnterStateAttackCharge = GloinVoiceEnterStateAttackCharge ;VoiceEnterStateAttackMachine = GloinVoiceEnterStateAttackBuilding ;VoiceEnterStateAttackStructure = GloinVoiceEnterStateAttackBuilding ;VoiceEnterStateMove = GloinVoiceEnterStateMove ;VoiceEnterStateMoveToCamp = GloinVoiceEnterStateMoveCamp ;VoiceEnterStateMoveWhileAttacking = GloinVoiceEnterStateDisengage ;VoiceEnterStateRetreatToCastle = GloinVoiceEnterStateRetreat
SoundImpact = ImpactHorse
UnitSpecificSounds VoiceGarrison = GloinVoiceMoveGarrison VoiceEnterUnitElvenTransportShip = GloinVoiceMoveShip VoiceInitiateCaptureBuilding = GloinVoiceCaptureBuilding ;VoiceEnterStateInitiateCaptureBuilding = End
#include "..\..\..\includes\StandardUnitEvaEvents.inc" EvaEventDieOwner = GloinDie ;Eva event to trigger on unit's death. NOTICE THAT this is only for permanent deaths
CrowdResponseKey = DwarfHero
Behavior = LargeGroupAudioUpdate ModuleTag_LGAU ; Tie into LargeGroupAudio system Key = Humanoid_Male Dwarf Dwarf_Male Unit Infantry Hero End
ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior MaxUpdateRangeCap = 800 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNA Frames:3 14 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNB Frames:3 12
AnimationSound = Sound:BodyFallSoldier Animation:DUGLOIN_SKL.DUGLOIN_LNDA Frames:7 AnimationSound = Sound:BodyFallSoldier Animation:DUGLOIN_SKL.DUGLOIN_DTHA Frames:55 ;AnimationSound = Sound:AxeDropSoundHere! Animation:DUGLOIN_SKL.DUGLOIN_DTHA Frames:42 ;axe falls AnimationSound = Sound:SwordIntoGroundQuiet Animation:DUGLOIN_SKL.DUGLOIN_SPCA Frames:61 ;striking ground with axe AnimationSound = Sound:SwordIntoGroundQuiet Animation:DUGLOIN_SKL.DUGLOIN_ATKB Frames:38 ;striking ground with axe End
; *** ENGINEERING Parameters ***
RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE THROWN_OBJECT HERO ARMY_SUMMARY ATTACK_NEEDS_LINE_OF_SIGHT HEAVY_MELEE_HITTER PATH_THROUGH_INFANTRY PathfindDiameter = 40.0
Body = RespawnBody ModuleTag_RespawnBody CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = 3600 PermanentlyKilledByFilter = NONE ;Who kills me permanently? DodgePercent = 80% End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate DeathAnim = DYING ;Model condition to play when killed-to-respawn ; DeathFX = FX_GloinDieToRespawn ;FXList to play when killed-to-respawn DeathAnimationTime = 4100 ;How long DeathAnim will take. ; InitialSpawnFX = FX_GloinInitialSpawn RespawnAnim = LEVELED ;Animation to play when respawning. ; RespawnFX = FX_GloinRespawn ;FXList to play when respawning. RespawnAnimationTime = 2000 ;Time it takes for respawn to play. AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP ;Respawn at this location -- and at it's exit production point if possible. ButtonImage = HIGloinNew ;RespawnEntries determine the ruleset for how a character can be revived. Some units may automatically respawn, others ;may require a specific revive action performed on him. You can specify different values for each level... or use Level:Any RespawnRules = AutoSpawn:No Cost:1600 Time:60000 Health:100% ;DEFAULT VALUES; End
Behavior = AutoHealBehavior ModuleTag_GloinHealing StartsActive = Yes HealingAmount = HERO_HEAL_AMOUNT HealingDelay = 1000 StartHealingDelay = HERO_HEAL_DELAY HealOnlyIfNotInCombat = Yes End Behavior = StancesBehavior ModuleTag_StancesBehavior StanceTemplate = Hero End #include "..\..\..\includes\CaptureBuilding.inc" Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS MoodAttackCheckRate = 500 HoldGroundCloseRangeDistance = 60 End
LocomotorSet Locomotor = RohanGimliLocomotor Condition = SET_NORMAL Speed = NORMAL_DWARF_HERO_SPEED End ; Locomotor = SET_WANDER HumanWanderLocomotor
Behavior = PhysicsBehavior ModuleTag_04 GravityMult = 1.0 AllowBouncing = No ShockStunnedTimeLow = 1400 ;msec ShockStunnedTimeHigh = 2400 ;msec ShockStandingTime = 2600 ;msec End Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -KNOCKBACK -FADED SinkDelay = 3000 SinkRate = 0.40 ; in Dist/Sec DestructionDelay = 8000 Sound = INITIAL GloinVoiceDie DeathFlags = DEATH_1 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 = 0.40 ; in Dist/Sec DestructionDelay = 8000 End
Behavior = BezierProjectileBehavior ModuleTag_08 ; Module starts asleep, and wakes up when thrown. ; To tweak a Bezier path FirstHeight = 50 ; Height of Bezier control points above highest intervening terrain SecondHeight = 20 FirstPercentIndent = 20% ; Percentage of shot distance control points are placed SecondPercentIndent = 70% TumbleRandomly = Yes
CrushStyle = Yes ; I don't detonate, I just hit
BounceCount = 0 ; When I hit the ground, I'll arc again
FinalStuckTime = 1200 ; Can't move for this long afterwards
GroundHitFX = FX_GimliLeapLand GroundHitWeapon = RohanGimliLeapWarhead PreLandingStateTime = 75; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance End
Behavior = EmotionTrackerUpdate Module_EmotionTracker TauntAndPointDistance = 300 ; max distance to taunted/pointed objet TauntAndPointUpdateDelay = 1000 ; how often scan (milliseconds) AddEmotion = Doom_Base // AddEmotion = BraceForBeingCrushed_Base // 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 AddEmotion = CheerForAboutToCrush_Base End
Behavior = HitReactionBehavior HitReactionBehaviorModuleTag HitReactionLifeTimer1 = 2200 ; level 1 (light damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer2 = 15 ; level 2 (medium damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer3 = 10 ; level 3 (heavy damage) hit reaction animations in frames (5 per sec)
HitReactionThreshold1 = 1.0 ; level 1 (light damage) threshold trigger HitReactionThreshold2 = 2500.0 ; level 2 (medium damage) threshold trigger HitReactionThreshold3 = 5000.0 ; level 3 (heavy damage) threshold trigger End
;------------------------------------------------- ; Herr vom einsamen Berg ;-------------------------------------------------
Behavior = SpecialPowerModule ModuleTag_TheodenLeadershipUpdate2 SpecialPowerTemplate = SpecialAbilityFakeLeadership2 UpdateModuleStartsAttack = Yes StartsPaused = Yes End
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_TheodenLeadership2 SpecialPowerTemplate = SpecialAbilityFakeLeadership2 TriggeredBy = Upgrade_Level_3 End
Behavior = AttributeModifierAuraUpdate ModuleTag_Leadership2 StartsActive = No BonusName = GloinHerrvomeinsamenBerg TriggeredBy = Upgrade_Level_3 RefreshDelay = 2000 Range = 200 ;AntiCategory = BUFF ObjectFilter = ANY +MACHINE -INFANTRY -CAVALRY -HERO -DOZER -STRUCTURE ALLIES End
;;;; SLAM SPECIAL ABILITY ;;;;;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SlamEnabler SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam TriggeredBy = Upgrade_Level_1 End
Behavior = SpecialPowerModule ModuleTag_SlamStarter SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_SlamWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam SpecialWeapon = DwarvenGloinSlamWeapon WhichSpecialWeapon = 1 ; Corresponds to SPECIAL_WEAPON_ONE StartAbilityRange = 10.0 SkipContinue = Yes UnpackTime = 1000 ; Trigger on frame 30 (of 69) PackTime = 1300 ; Remaining 39 frames (of 69) MustFinishAbility = Yes End Behavior = AutoAbilityBehavior ModuleTag_SlamAutoAbility SpecialAbility = SpecialAbilityDwarvenGloinSlam Query = 1 ANY ENEMIES +STRUCTURE -UNATTACKABLE ; structures as a preference Query = 1 ALL ENEMIES End
;;;; SHAKE FOUNDATION SPECIAL ABILITY ;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_ShakeFoundationEnabler SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation TriggeredBy = Upgrade_Level_6 End
Behavior = SpecialPowerModule ModuleTag_ShakeFoundationStarter SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_ShakeFoundationWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation SpecialWeapon = DwarvenGloinShakeFoundationWeapon WhichSpecialWeapon = 2 ; Corresponds to SPECIAL_WEAPON_TWO StartAbilityRange = 15.0
SkipContinue = Yes UnpackTime = 1400 ; Trigger on frame 42 (of 115) PackTime = 2433 ; Remaining 73 frames (of 115) MustFinishAbility = Yes End Behavior = AutoAbilityBehavior ModuleTag_ShakeFoundationAutoAbility SpecialAbility = SpecialAbilityDwarvenGloinShakeFoundation Query = 1 ANY ENEMIES +STRUCTURE -UNATTACKABLE MaxScanRange = 100 End
;;;; SHATTERHAMMER SPECIAL ABILITY ;;;;;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SmashEnabler SpecialPowerTemplate = SpecialAbilityGloinSmash TriggeredBy = Upgrade_Level_10 End
Behavior = SpecialPowerModule ModuleTag_SmashStarter SpecialPowerTemplate = SpecialAbilityGloinSmash UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_SmashWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityGloinSmash SpecialWeapon = GloinSmashWeaponMod WhichSpecialWeapon = 3 ; Corresponds to SPECIAL_WEAPON_THREE StartAbilityRange = 10.0 SkipContinue = Yes UnpackTime = 2000 ; Trigger on frame 60 (of 100) PackTime = 1333 ; Remaining 40 frames (of 100) MustFinishAbility = Yes End
Behavior = AutoHealBehavior ModuleTag_ElvenGiftHealing StartsActive = No TriggeredBy = Upgrade_ElvenGift HealingAmount = ELVEN_GIFT_REGEN_AMOUNT HealingDelay = ELVEN_GIFT_REGEN_DELAY StartHealingDelay = HERO_HEAL_DELAY HealOnlyIfNotInCombat = Yes End Behavior = ArmorUpgrade ModuleTag_ArmorUpgradeMithril TriggeredBy = Upgrade_DwarvenMithrilMailHeroes ArmorSetFlag = PLAYER_UPGRADE End
Behavior = SubObjectsUpgrade ModuleTag_MithrilSkinwelchsel TriggeredBy = Upgrade_DwarvenMithrilMailHeroes UpgradeTexture = dugloinnew.tga 0 dugloinnew_ha.tga End
Behavior = ProductionUpdate ProductionUpdateModuleTag GiveNoXP = Yes End
;/////////////////// ; AISpecialPowers ;/////////////////// Behavior = AISpecialPowerUpdate SlamAI CommandButtonName = Command_SpecialAbilityDwarvenGloinSlam SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER_STRUCTURES SpecialPowerRange = 200 End Behavior = AISpecialPowerUpdate ShakeFoundationAI CommandButtonName = Command_SpecialAbilityDwarvenGloinShakeFoundation SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER_STRUCTURES SpecialPowerRange = 200 End Behavior = AISpecialPowerUpdate GandalfWordOfPowerAI CommandButtonName = Command_SpecialAbilityGloinSmash SpecialPowerAIType = AI_SPECIAL_POWER_BASIC_SELF_BUFF SpecialPowerRadius = 250 End
Geometry = CYLINDER GeometryMajorRadius = 5.6 GeometryMinorRadius = 5.6 GeometryHeight = 16.0 GeometryIsSmall = Yes
Shadow = SHADOW_DECAL ShadowSizeX = 19; ShadowSizeY = 19; ShadowTexture = ShadowI; End | |
| | | Leithian... Moddeur expert
Nombre de messages : 750 Age : 31 Location : @ Home ! =D Add-On : Quelle question, bien sûr que non ! Date d'inscription : 03/03/2010
| Sujet: Re: DwarvenGloin_Temp Ven 22 Juil - 19:59 | |
| Alors voici les quelques problèmes à corriger ( copies/colle ces fichiers là où il faut ) :
Ton fichier dwarvennewgloin.ini :
- Code:
-
Object DwarvenNewGloin ; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait. SelectPortrait = HPGloin
; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage. ButtonImage = HIGloin
;ShadowMaxHeight = 999 ;this is causing 2 shadows to be cast when the unit is under a bridge. Taking it out! Draw = W3DScriptedModelDraw ModuleTag_01
OkToChangeModelColor = Yes
StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
;;====================== MODELS ================================================================ DefaultModelConditionState Model = EUDwarfGlo Skeleton = RUGimli_SKL WeaponLaunchBone = TERTIARY AXE02 End ;;================== ANIMATIONS =================================================================
TransitionState = TRANS_attentionToBored Animation = ATNA AnimationName = DUGloine_ATNA AnimationMode = ONCE AnimationSpeedFactorRange = 1.1 1.1 End End
TransitionState = TRANS_boredToAttention Animation = ATNA AnimationName = DUGloine_ATNA AnimationMode = ONCE_BACKWARDS AnimationSpeedFactorRange = 1.1 1.1 End Flags = START_FRAME_LAST End
TransitionState = TRANS_AboutToHitGround_To_Idle Animation = SplashAtEndOfJump AnimationName = RUGimli_LEPC AnimationMode = ONCE ;AnimationBlendTime = 0 End Flags = MAINTAIN_FRAME_ACROSS_STATES End
;;--------------- IDLE STATES ---------------------------------
IdleAnimationState StateName = BORED Animation = IDLB AnimationName = DUGloine_IDLA AnimationMode = ONCE AnimationPriority = 15 End Animation = IDLB AnimationName = DUGloine_IDLB AnimationMode = ONCE AnimationPriority = 5 End Animation = IDLB AnimationName = DUGloine_IDLC AnimationMode = ONCE AnimationPriority = 3 End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "SELECTED" then CurDrawableSetTransitionAnimState("TRANS_attentionToBored") end if Prev == "READY" then CurDrawableSetTransitionAnimState("TRANS_attentionToBored") end EndScript End
; // SLAM AnimationState = SPECIAL_WEAPON_ONE StateName = SPELL Animation AnimationName = RUGimli_ATKA AnimationMode = ONCE End ParticleSysBone = NONE GloinBlastSlam FollowBone:Yes End
// SHAKE FOUNDATION AnimationState = SPECIAL_WEAPON_TWO StateName = SPELL Animation AnimationName = RUGimli_ATKD AnimationMode = ONCE End End
// SHATTERHAMMER AnimationState = SPECIAL_WEAPON_THREE StateName = SPELL Animation AnimationName = DUGloin_JUMP AnimationMode = ONCE End End
;;------------------ MOVING & DYING ---------------------------
;;======= DYING
AnimationState = STUNNED_FLAILING Animation = FLYA AnimationName = RUGimli_FLYA AnimationMode = LOOP AnimationSpeedFactorRange = 0.3 0.5 End Flags = RANDOMSTART End
AnimationState = DYING SPLATTED DEATH_1 Animation = LNDB AnimationName = RUGimli_LNDA AnimationMode = ONCE End End
AnimationState = DYING DEATH_1 Animation = DIEA AnimationName = RUGimli_DIEA AnimationMode = ONCE End Animation = DIEC AnimationName = RUGimli_DIEC AnimationMode = ONCE End End
AnimationState = DYING DEATH_2 Animation = FadeOut AnimationName = RUGimli_IDLB AnimationMode = LOOP End End
AnimationState = STUNNED_STANDING_UP Animation = GTPA AnimationName = RUGimli_GTPA AnimationMode = ONCE End End
AnimationState = STUNNED Animation = LNDA AnimationName = RUGimli_LNDA AnimationMode = ONCE End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
AnimationState = PARALYZED Animation AnimationName = RUGimli_IDLA AnimationMode = LOOP End End
;;======= MOVING
AnimationState = MOVING FIRING_OR_PREATTACK_A ShareAnimation = Yes Animation = RunAndFire AnimationName = RUGimli_ATRA AnimationMode = LOOP End Flags = RANDOMSTART End
AnimationState = MOVING ATTACKING Animation = RUNB AnimationName = RUGimli_RUNB AnimationMode = LOOP End Flags = RANDOMSTART ;ParticleSysBone = None InfantryDustTrails BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
AnimationState = MOVING Animation = RUNA AnimationName = RUGimli_RUNA AnimationMode = LOOP
End Flags = RANDOMSTART ;ParticleSysBone = None InfantryDustTrails BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
;;------------------ ATTACKING -------------------------------
AnimationState = FIRING_OR_PREATTACK_B; WEAPONLOCK_SECONDARY Animation = ATKA AnimationName = RUGimli_ATKD AnimationMode = ONCE UseWeaponTiming = Yes End
;ParticleSysBone None MeleeDust BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
AnimationState = FIRING_OR_PREATTACK_A Animation = ATKA AnimationName = RUGimli_ATKA AnimationMode = ONCE UseWeaponTiming = Yes End Animation = ATKB AnimationName = RUGimli_ATKB AnimationMode = ONCE UseWeaponTiming = Yes End Animation = ATKC AnimationName = RUGimli_ATKC AnimationMode = ONCE UseWeaponTiming = Yes End
;ParticleSysBone None MeleeDust BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "DwarfToss" then CurDrawableSetTransitionAnimState("TRANS_EndDwarfToss") end EndScript End
;;-------------------- HIT REACTIONS --------------------------
AnimationState = HIT_REACTION Animation = Hit_Level_1_a AnimationName = RUGimli_HITA AnimationMode = ONCE End End
;;------------ EMOTIONS ---------------------------------------
;;====== LEVELED AnimationState = LEVELED ; This state clears itself in 3 seconds Animation = LevelUp AnimationName = RUGimli_CHRB AnimationMode = ONCE End End
;;====== CELEBRATING AnimationState = EMOTION_CELEBRATING Animation = CHRA AnimationName = RUGimli_CHRA AnimationMode = ONCE End Flags = RESTART_ANIM_WHEN_COMPLETE End
;;====== TAUNTING AnimationState = EMOTION_TAUNTING Animation = TNTA AnimationName = RUGimli_TNTA AnimationMode = ONCE End Animation = TNTB AnimationName = RUGimli_TNTB AnimationMode = ONCE End Flags = RESTART_ANIM_WHEN_COMPLETE End
AnimationState = EMOTION_ALERT Animation = READY AnimationName = RUGimli_IDLA AnimationMode = LOOP AnimationBlendTime = 15 End BeginScript if Prev == "State_AboutToHitGround" then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle") end EndScript
End
AnimationState = RAISING_FLAG Animation = CHRA AnimationName = RUGimli_CHRA AnimationMode = LOOP End End
;;------------------- SELECTED STATES -------------------------
AnimationState = SELECTED StateName = SELECTED SimilarRestart = Yes Animation = ATNB AnimationName = DUGloine_ATNB AnimationMode = LOOP End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "BORED" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end if Prev == "READY" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end if Prev == "SPELL" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end EndScript End
End
Draw = W3DScriptedModelDraw Icon ModelConditionState = NONE Model = bbox End End
;;================== END ANIMATIONS =================================================================
#include "..\..\..\includes\StunDrawModuleSmall.inc"
; ***DESIGN parameters *** Side = Dwarves EditorSorting = UNIT ThreatLevel = GLOIN_THREAT_LEVEL TransportSlotCount = TRANSPORTSLOTCOUNT_HERO BuildCost = GLOIN_BUILDCOST BuildTime = GLOIN_BUILDTIME ;ShockwaveResistance = SHOCKWAVE_RESISTANCE_STRONG DisplayMeleeDamage = GLOIN_DAMAGE MaxSimultaneousOfType = 1 HeroSortOrder = 40 Scale = 0.92
WeaponSet Conditions = None Weapon = PRIMARY GloinAxeMod End
ArmorSet Conditions = None Armor = EdainWarriorHeroArmor ;GloinArmor DamageFX = NormalDamageFX End
ArmorSet Conditions = PLAYER_UPGRADE Armor = EdainWarriorHeroArmorUpgrade ;GloinMithrilArmor DamageFX = NormalDamageFX End
VisionRange = 200 ;VISION_STANDARD_MELEE ShroudClearingRange = 300 ;SHROUD_CLEAR_HERO
MaxVisionBonusPercent = 300% VisionBonusTestRadius = 200 VisionBonusPercentPerFoot = 1.0%
BountyValue = 30 DisplayName = OBJECT:Gloin RecruitText = CONTROLBAR:GloinRecruit ReviveText = CONTROLBAR:GloinRevive Hotkey = CONTROLBAR:GloinHotkey CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles ; CrusherLevel = 1
CommandSet = GloinmodCommandSet CommandPoints = 60
; *** AUTO RESOLVE DATA *** AutoResolveUnitType = AutoResolveUnit_Hero AutoResolveCombatChain = AutoResolve_HeroCombatChain
AutoResolveBody = AutoResolve_GloinBody
AutoResolveArmor Armor = AutoResolve_GloinArmor End
AutoResolveWeapon Weapon = AutoResolve_GloinWeapon End
;AutoResolveLeadership = AutoResolve_GloinBonus
; *** AUDIO Parameters ***;
VoiceAttack = GloinVoiceAttack VoiceAttackCharge = GloinVoiceAttackCharge VoiceAttackMachine = GloinVoiceAttack VoiceAttackStructure = GloinVoiceAttackBuilding VoiceFear = GloinVoiceHelpMe VoiceGuard = GloinVoiceMove VoiceMove = GloinVoiceMove VoiceMoveToCamp = GloinVoiceMoveCamp VoiceMoveWhileAttacking = GloinVoiceDisengage VoicePriority = 78 VoiceRetreatToCastle = GloinVoiceRetreat VoiceSelect = GloinVoiceSelectMS VoiceSelectBattle = GloinVoiceSelectBattle
;VoiceEnterStateAttack = GloinVoiceEnterStateAttack ;VoiceEnterStateAttackCharge = GloinVoiceEnterStateAttackCharge ;VoiceEnterStateAttackMachine = GloinVoiceEnterStateAttackBuilding ;VoiceEnterStateAttackStructure = GloinVoiceEnterStateAttackBuilding ;VoiceEnterStateMove = GloinVoiceEnterStateMove ;VoiceEnterStateMoveToCamp = GloinVoiceEnterStateMoveCamp ;VoiceEnterStateMoveWhileAttacking = GloinVoiceEnterStateDisengage ;VoiceEnterStateRetreatToCastle = GloinVoiceEnterStateRetreat
SoundImpact = ImpactHorse
UnitSpecificSounds VoiceGarrison = GloinVoiceMoveGarrison VoiceEnterUnitElvenTransportShip = GloinVoiceMoveShip VoiceInitiateCaptureBuilding = GloinVoiceCaptureBuilding ;VoiceEnterStateInitiateCaptureBuilding = End
#include "..\..\..\includes\StandardUnitEvaEvents.inc" EvaEventDieOwner = GloinDie ;Eva event to trigger on unit's death. NOTICE THAT this is only for permanent deaths
CrowdResponseKey = DwarfHero
Behavior = LargeGroupAudioUpdate ModuleTag_LGAU ; Tie into LargeGroupAudio system Key = Humanoid_Male Dwarf Dwarf_Male Unit Infantry Hero End
ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior MaxUpdateRangeCap = 800 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNA Frames:3 14 AnimationSound = Sound:FootstepDirtA Animation:DUGloin_SKL.DUGloin_RUNB Frames:3 12
AnimationSound = Sound:BodyFallSoldier Animation:DUGLOIN_SKL.DUGLOIN_LNDA Frames:7 AnimationSound = Sound:BodyFallSoldier Animation:DUGLOIN_SKL.DUGLOIN_DTHA Frames:55 ;AnimationSound = Sound:AxeDropSoundHere! Animation:DUGLOIN_SKL.DUGLOIN_DTHA Frames:42 ;axe falls AnimationSound = Sound:SwordIntoGroundQuiet Animation:DUGLOIN_SKL.DUGLOIN_SPCA Frames:61 ;striking ground with axe AnimationSound = Sound:SwordIntoGroundQuiet Animation:DUGLOIN_SKL.DUGLOIN_ATKB Frames:38 ;striking ground with axe End
; *** ENGINEERING Parameters ***
RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE THROWN_OBJECT HERO ARMY_SUMMARY ATTACK_NEEDS_LINE_OF_SIGHT HEAVY_MELEE_HITTER PATH_THROUGH_INFANTRY PathfindDiameter = 40.0
Body = RespawnBody ModuleTag_RespawnBody CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = 3600 PermanentlyKilledByFilter = NONE ;Who kills me permanently? DodgePercent = 80% End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate DeathAnim = DYING ;Model condition to play when killed-to-respawn ; DeathFX = FX_GloinDieToRespawn ;FXList to play when killed-to-respawn DeathAnimationTime = 4100 ;How long DeathAnim will take. ; InitialSpawnFX = FX_GloinInitialSpawn RespawnAnim = LEVELED ;Animation to play when respawning. ; RespawnFX = FX_GloinRespawn ;FXList to play when respawning. RespawnAnimationTime = 2000 ;Time it takes for respawn to play. AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP ;Respawn at this location -- and at it's exit production point if possible. ButtonImage = HIGloinNew
;RespawnEntries determine the ruleset for how a character can be revived. Some units may automatically respawn, others ;may require a specific revive action performed on him. You can specify different values for each level... or use Level:Any RespawnRules = AutoSpawn:No Cost:1600 Time:60000 Health:100% ;DEFAULT VALUES; End
Behavior = AutoHealBehavior ModuleTag_GloinHealing StartsActive = Yes HealingAmount = HERO_HEAL_AMOUNT HealingDelay = 1000 StartHealingDelay = HERO_HEAL_DELAY HealOnlyIfNotInCombat = Yes End
Behavior = StancesBehavior ModuleTag_StancesBehavior StanceTemplate = Hero End
#include "..\..\..\includes\CaptureBuilding.inc"
Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS MoodAttackCheckRate = 500 HoldGroundCloseRangeDistance = 60 End
LocomotorSet Locomotor = RohanGimliLocomotor Condition = SET_NORMAL Speed = NORMAL_DWARF_HERO_SPEED End ; Locomotor = SET_WANDER HumanWanderLocomotor
Behavior = PhysicsBehavior ModuleTag_04 GravityMult = 1.0 AllowBouncing = No ShockStunnedTimeLow = 1400 ;msec ShockStunnedTimeHigh = 2400 ;msec ShockStandingTime = 2600 ;msec End
Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -KNOCKBACK -FADED SinkDelay = 3000 SinkRate = 0.40 ; in Dist/Sec DestructionDelay = 8000 Sound = INITIAL GloinVoiceDie DeathFlags = DEATH_1 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 = 0.40 ; in Dist/Sec DestructionDelay = 8000 End
Behavior = BezierProjectileBehavior ModuleTag_08 ; Module starts asleep, and wakes up when thrown. ; To tweak a Bezier path FirstHeight = 50 ; Height of Bezier control points above highest intervening terrain SecondHeight = 20 FirstPercentIndent = 20% ; Percentage of shot distance control points are placed SecondPercentIndent = 70% TumbleRandomly = Yes
CrushStyle = Yes ; I don't detonate, I just hit
BounceCount = 0 ; When I hit the ground, I'll arc again
FinalStuckTime = 1200 ; Can't move for this long afterwards
GroundHitFX = FX_GimliLeapLand GroundHitWeapon = RohanGimliLeapWarhead PreLandingStateTime = 75; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance End
Behavior = EmotionTrackerUpdate Module_EmotionTracker TauntAndPointDistance = 300 ; max distance to taunted/pointed objet TauntAndPointUpdateDelay = 1000 ; how often scan (milliseconds)
AddEmotion = Doom_Base // AddEmotion = BraceForBeingCrushed_Base // 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 AddEmotion = CheerForAboutToCrush_Base End
Behavior = HitReactionBehavior HitReactionBehaviorModuleTag HitReactionLifeTimer1 = 2200 ; level 1 (light damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer2 = 15 ; level 2 (medium damage) hit reaction animations in frames (5 per sec) HitReactionLifeTimer3 = 10 ; level 3 (heavy damage) hit reaction animations in frames (5 per sec)
HitReactionThreshold1 = 1.0 ; level 1 (light damage) threshold trigger HitReactionThreshold2 = 2500.0 ; level 2 (medium damage) threshold trigger HitReactionThreshold3 = 5000.0 ; level 3 (heavy damage) threshold trigger End
;------------------------------------------------- ; Herr vom einsamen Berg ;-------------------------------------------------
Behavior = SpecialPowerModule ModuleTag_TheodenLeadershipUpdate2 SpecialPowerTemplate = SpecialAbilityFakeLeadership2 UpdateModuleStartsAttack = Yes StartsPaused = Yes End
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_TheodenLeadership2 SpecialPowerTemplate = SpecialAbilityFakeLeadership2 TriggeredBy = Upgrade_Level_3 End
Behavior = AttributeModifierAuraUpdate ModuleTag_Leadership2 StartsActive = No BonusName = GloinHerrvomeinsamenBerg TriggeredBy = Upgrade_Level_3 RefreshDelay = 2000 Range = 200 ;AntiCategory = BUFF ObjectFilter = ANY +MACHINE -INFANTRY -CAVALRY -HERO -DOZER -STRUCTURE ALLIES End
;;;; SLAM SPECIAL ABILITY ;;;;;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SlamEnabler SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam TriggeredBy = Upgrade_Level_1 End
Behavior = SpecialPowerModule ModuleTag_SlamStarter SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_SlamWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityDwarvenGloinSlam SpecialWeapon = DwarvenGloinSlamWeapon WhichSpecialWeapon = 1 ; Corresponds to SPECIAL_WEAPON_ONE StartAbilityRange = 10.0
SkipContinue = Yes UnpackTime = 1000 ; Trigger on frame 30 (of 69) PackTime = 1300 ; Remaining 39 frames (of 69) MustFinishAbility = Yes End Behavior = AutoAbilityBehavior ModuleTag_SlamAutoAbility SpecialAbility = SpecialAbilityDwarvenGloinSlam Query = 1 ANY ENEMIES +STRUCTURE -UNATTACKABLE ; structures as a preference Query = 1 ALL ENEMIES End
;;;; SHAKE FOUNDATION SPECIAL ABILITY ;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_ShakeFoundationEnabler SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation TriggeredBy = Upgrade_Level_6 End
Behavior = SpecialPowerModule ModuleTag_ShakeFoundationStarter SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_ShakeFoundationWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityDwarvenGloinShakeFoundation SpecialWeapon = DwarvenGloinShakeFoundationWeapon WhichSpecialWeapon = 2 ; Corresponds to SPECIAL_WEAPON_TWO StartAbilityRange = 15.0
SkipContinue = Yes UnpackTime = 1400 ; Trigger on frame 42 (of 115) PackTime = 2433 ; Remaining 73 frames (of 115) MustFinishAbility = Yes End Behavior = AutoAbilityBehavior ModuleTag_ShakeFoundationAutoAbility SpecialAbility = SpecialAbilityDwarvenGloinShakeFoundation Query = 1 ANY ENEMIES +STRUCTURE -UNATTACKABLE MaxScanRange = 100 End
;;;; SHATTERHAMMER SPECIAL ABILITY ;;;;;;;;-------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SmashEnabler SpecialPowerTemplate = SpecialAbilityGloinSmash TriggeredBy = Upgrade_Level_10 End
Behavior = SpecialPowerModule ModuleTag_SmashStarter SpecialPowerTemplate = SpecialAbilityGloinSmash UpdateModuleStartsAttack = Yes StartsPaused = Yes InitiateSound = GloinVoiceGenericSpecialAbility End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_SmashWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityGloinSmash SpecialWeapon = GloinSmashWeaponMod WhichSpecialWeapon = 3 ; Corresponds to SPECIAL_WEAPON_THREE StartAbilityRange = 10.0
SkipContinue = Yes UnpackTime = 2000 ; Trigger on frame 60 (of 100) PackTime = 1333 ; Remaining 40 frames (of 100) MustFinishAbility = Yes End
Behavior = AutoHealBehavior ModuleTag_ElvenGiftHealing StartsActive = No TriggeredBy = Upgrade_ElvenGift HealingAmount = ELVEN_GIFT_REGEN_AMOUNT HealingDelay = ELVEN_GIFT_REGEN_DELAY StartHealingDelay = HERO_HEAL_DELAY HealOnlyIfNotInCombat = Yes End
Behavior = ArmorUpgrade ModuleTag_ArmorUpgradeMithril TriggeredBy = Upgrade_DwarvenMithrilMailHeroes ArmorSetFlag = PLAYER_UPGRADE End
Behavior = SubObjectsUpgrade ModuleTag_MithrilSkinwelchsel TriggeredBy = Upgrade_DwarvenMithrilMailHeroes UpgradeTexture = dugloinnew.tga 0 dugloinnew_ha.tga End
Behavior = ProductionUpdate ProductionUpdateModuleTag GiveNoXP = Yes End
;/////////////////// ; AISpecialPowers ;///////////////////
Behavior = AISpecialPowerUpdate SlamAI CommandButtonName = Command_SpecialAbilityDwarvenGloinSlam SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER_STRUCTURES SpecialPowerRange = 200 End
Behavior = AISpecialPowerUpdate ShakeFoundationAI CommandButtonName = Command_SpecialAbilityDwarvenGloinShakeFoundation SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER_STRUCTURES SpecialPowerRange = 200 End
Behavior = AISpecialPowerUpdate GandalfWordOfPowerAI CommandButtonName = Command_SpecialAbilityGloinSmash SpecialPowerAIType = AI_SPECIAL_POWER_BASIC_SELF_BUFF SpecialPowerRadius = 250 End
Geometry = CYLINDER GeometryMajorRadius = 5.6 GeometryMinorRadius = 5.6 GeometryHeight = 16.0 GeometryIsSmall = Yes
Shadow = SHADOW_DECAL ShadowSizeX = 19; ShadowSizeY = 19; ShadowTexture = ShadowI; End Puis ajoute ces lignes à la fin du fichier "upgrade.ini", juste après les lignes : - Code:
-
Upgrade Upgrade_FireDrakeInferno Type = OBJECT End Ces lignes définissent les upgrades inexistantes demandées dans ton fichier "dwarvennewgloin" :
- Code:
-
Upgrade Upgrade_Level_1 Type = OBJECT End
Upgrade Upgrade_Level_3 Type = OBJECT End
Upgrade Upgrade_Level_6 Type = OBJECT End
Upgrade Upgrade_Level_10 Type = OBJECT End
Upgrade Upgrade_DwarvenMithrilMailHeroes Type = OBJECT End Une fois ceci fait, il faut ajouter ces upgrades au fichier "experiencelevels.ini". -Ouvres donc ce fichier -fais "Ctrl+F" et tape "ExperienceLevel GloinLevel1", puis fais "rechercher" -Tu auras alors plusieurs blocs de code concernant les levels de gloïn.
- Spoiler:
- Code:
-
;----------- GLOIN ------------------ ExperienceLevel GloinLevel1 TargetNames = DwarvenGloin RequiredExperience = 1 ExperienceAward = GLOIN_LVL1_EXP_AWARD Rank = 1 Upgrades = Upgrade_EnableDwarvenGloinSlam SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End End
ExperienceLevel GloinLevel2 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL2_EXP_NEEDED ExperienceAward = GLOIN_LVL2_EXP_AWARD AttributeModifiers = HeroLevelUpDamage1 Rank = 2 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL Upgrades = SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16
MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel3 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL3_EXP_NEEDED ExperienceAward = GLOIN_LVL3_EXP_AWARD AttributeModifiers = HeroLevelUpDamage2 Rank = 3 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16
MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel4 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL4_EXP_NEEDED ExperienceAward = GLOIN_LVL4_EXP_AWARD AttributeModifiers = HeroLevelUpDamage3 Rank = 4 Upgrades = Upgrade_EnableDwarvenGloinShakeFoundation LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel5 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL5_EXP_NEEDED ExperienceAward = GLOIN_LVL5_EXP_AWARD AttributeModifiers = HeroLevelUpDamage4 Rank = 5 Upgrades = LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel6 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL6_EXP_NEEDED ExperienceAward = GLOIN_LVL6_EXP_AWARD AttributeModifiers = HeroLevelUpDamage5 Rank = 6 Upgrades = LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel7 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL7_EXP_NEEDED ExperienceAward = GLOIN_LVL7_EXP_AWARD AttributeModifiers = HeroLevelUpDamage6 Rank = 7 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel8 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL8_EXP_NEEDED ExperienceAward = GLOIN_LVL8_EXP_AWARD AttributeModifiers = HeroLevelUpDamage7 Rank = 8 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel9 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL9_EXP_NEEDED ExperienceAward = GLOIN_LVL9_EXP_AWARD AttributeModifiers = HeroLevelUpDamage8 Rank = 9 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16
MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel GloinLevel10 TargetNames = DwarvenGloin RequiredExperience = GLOIN_LVL10_EXP_NEEDED ExperienceAward = GLOIN_LVL10_EXP_AWARD AttributeModifiers = HeroLevelUpDamage9 Rank = 10 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL Upgrades = Upgrade_EnableGloinSmash SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
-Et là tu as deux solutions : soit tu ajoutes les upgrades aux niveaux correspondants ainsi que le nom de ton hé dans le champ en face de "TargetNames", soit ( plus sûr ) tu créé un nouvel experiencelevel pour ton nouveau héros ( et c'est ce que je vais te montrer )
-------------Comment créer ton experiencelevel-----------
Le bloc de base :
ExperienceLevel TonHeroLevel1 ; c'est le titre de base à repecter, à la place de "TonHero", mets le nom que tu veux de préférence en rapport avec le héros visé TargetNames = TonHero ; ici tu DOIS mettre le nom du héros visé, le nom se trouve au début du fichier visé juste derrière la mention "Object", pour lurtz il s'agirait de "IsengardLurtz" RequiredExperience = 1 ; l'expérience requise pour atteindre ce niveau, ici pour le niveau 1 c'est 1 ExperienceAward = 40 ; c'est l'expérience que gagne ton adversaire en tuant ton héros à ce niveau. Pour rester cohérent, garde à l'esprit que plus un héros est haut level, plus il est fort et donc difficile à tuer et doit en conséquence rapporter plus d'expérience Rank = 1 ; c'est le rang, le level de ton héros qui sera affiché dans le palantir, ici c'est 1 Upgrades = Upgrade_que_tu_as_créé ; ici tu mets le nom de ton upgrade, qui sera donc vallable à partir de ce niveau SelectionDecal ; il est inutile de toucher à ce bloc pour ce que tu veux faire Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End End
Les blocs supérieurs au niveau 1 :
ExperienceLevel TonHeroLevel2 TargetNames = TonHero RequiredExperience = 100 ; ici, tu dois avoir plus d'expérience à amasser qu'au niveau précédent, logique, sinon tu serai directement niveau max dès le début ( et c'est pas intéressant ) ExperienceAward = 60 ; ton héros ayant gagné en puissance grâce à ce qu'on appelle un "attributemodifier" ( qu'on voit juste en-dessous ), il est censé rapporter plus d'expérience à ton adversaire lorsqu'il est tué, logique ! AttributeModifiers = HeroLevelUpDamage1 ; c'est la nouveauté des blocs suivant celui du niveau 1. A chaque niveau, tu peux te servir de ces attributemodifiers pour changer les caractéristiques de ton héros, et ça peut aller très loin...ces attributemodifiers sont tous codés dans le fichier "attributemodifier.ini". Rank = 2 ; changement de niveau affiché au niveau de l'écran LevelUpFx = FX:GandalfLevelUp1FX ; l'effet de passage de niveau, le cône de lumière avec les particules bleues *.* ;LevelUpOCL = OCL_GandalfLevelUp1OCL ; je sais pas ce que c'est mais ça n'empêche en rien de coder de l'experiencelevel Upgrades = Upgrade_que_tu_as_créé ; tu peux mettre une upgrade ou plus dans ce champ, mais tu n'est pas obligé d'en mettre à chaque niveau, contrairement aux attributemodifiers ^^ SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
Et maintenant, le code que tu dois rajouter à la fin du fichier "experriencelevels.ini" pour que tout fonctionne :
- Code:
-
;----------- NEW GLOIN ------------------ ExperienceLevel NewGloinLevel1 TargetNames = DwarvenNewGloin RequiredExperience = 1 ExperienceAward = 35 Rank = 1 Upgrades = Upgrade_Level_1 Upgrade_ElvenGift SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End End
ExperienceLevel NewGloinLevel2 TargetNames = DwarvenNewGloin RequiredExperience = 40 ExperienceAward = 40 AttributeModifiers = HeroLevelUpDamage1 Rank = 2 Upgrade = Upgrade_DwarvenMithrilMailHeroes LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16
MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel3 TargetNames = DwarvenNewGloin RequiredExperience = 80 ExperienceAward = 45 AttributeModifiers = HeroLevelUpDamage2 Rank = 3 Upgrades = Upgrade_Level_3 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16
MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel4 TargetNames = DwarvenNewGloin RequiredExperience = 120 ExperienceAward = 50 AttributeModifiers = HeroLevelUpDamage3 Rank = 4 Upgrades = Upgrade_EnableDwarvenNewGloinShakeFoundation LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel5 TargetNames = DwarvenNewGloin RequiredExperience = 350 ExperienceAward = 60 AttributeModifiers = HeroLevelUpDamage4 Rank = 5 Upgrades = LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel6 TargetNames = DwarvenNewGloin RequiredExperience = 580 ExperienceAward = 75 AttributeModifiers = HeroLevelUpDamage5 Rank = 6 Upgrade = Upgrade_Level_6 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel7 TargetNames = DwarvenNewGloin RequiredExperience = 810 ExperienceAward = 90 AttributeModifiers = HeroLevelUpDamage6 Rank = 7 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel8 TargetNames = DwarvenNewGloin RequiredExperience = 1090 ExperienceAward = 105 AttributeModifiers = HeroLevelUpDamage7 Rank = 8 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel9 TargetNames = DwarvenNewGloin RequiredExperience = 1370 ExperienceAward = 125 AttributeModifiers = HeroLevelUpDamage8 Rank = 9 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16
MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END
ExperienceLevel NewGloinLevel10 TargetNames = DwarvenNewGloin RequiredExperience = 1650 ExperienceAward = 150 AttributeModifiers = HeroLevelUpDamage9 Rank = 10 Upgrade = Upgrade_Level_10 LevelUpFx = FX:GandalfLevelUp1FX ;LevelUpOCL = OCL_GandalfLevelUp1OCL Upgrades = Upgrade_EnableGloinSmash SelectionDecal Texture = decal_hero_good Style = SHADOW_ALPHA_DECAL OpacityMin = 50% OpacityMax = 100% MinRadius = 40 ;16 MaxRadius = 200 ;16 MaxSelectedUnits = 40 ;1 End END Enfin, ajoute ton héros dans le playertemplate des nains ( ou de la faction ou tu veux qu'il soit )
Edit : j'ai esssayé le souci c'est que dans le jeu le héros n'a pas d'anim ou presque pas ( il oscille de bas en haut ), il n'a pas d'image dans le palantir, et il va falloir que tu récupère les pouvoirs du mod d'où tu as pris ce nouveau gloïn ^^ | |
| | | gandalf77 Moddeur confirmé
Nombre de messages : 202 Add-On : Oui Date d'inscription : 09/08/2009
| Sujet: Re: DwarvenGloin_Temp Ven 22 Juil - 23:16 | |
| Ah ben écoute c'est parfait, VRAIMENT MERCI BCP d'avoir pris le temps, sérieux trop nickel tes explications !!! Le truc c'est que j'utilise un Mods c'est pour ça qu'il yavait déjà ces Upgrades et tout en faite c'est juste pour le model le soucis car tout comme toi il se contente de monter et descendre c'est con... Mais finalement ton Tuto est parfait et va m'aider à pouvoir créer tout plein de truc donc merci vraiment !!! Par la même occasion je me permet de te demander justement je veux créer un pouvoir donner à un héros qui consiste à invoquer deux ou trois Balrogs mais je sais pas si je dois partir du "pouvoir d'invocation des Balrogs" présent dans le palentir ou dans le mods (Edain Mods) que j'utilise y'a un pouvoir qui consiste à invoquer des elfes donc je voulais le copier pour invoquer mes balrogs MAIS JE NE SAIS PAS PAR OU COMMENCER, ni QUOI FAIRE ... Voila les codes d'invocation elfiques présent dans l'Ini de "Thranduil_mod" : ;-------------------------------------------------------------------------- ; Die Speere Düsterwalds ;-------------------------------------------------------------------------- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_SummonEnabler SpecialPowerTemplate = SpecialAbilityDieSpeereDüsterwalds TriggeredBy = Upgrade_Level_5 End Behavior = OCLSpecialPower ModuleTag_OCLSpecialPower SpecialPowerTemplate = SpecialAbilityDieSpeereDüsterwalds OCL = OCL_SpawnMirkwoddSpearmenEgg CreateLocation = CREATE_AT_LOCATION TriggerFX = FX_ElvenAlliesSummon StartsPaused = Yes ;SetModelCondition = ModelConditionState:USER_1 ;SetModelConditionTime = 8.1 End | |
| | | Contenu sponsorisé
| Sujet: Re: DwarvenGloin_Temp | |
| |
| | | | DwarvenGloin_Temp | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|