Petites précisions avant de commencer : C'est des codes pour l'avenement du roi sorcier, certain pourrait marcher sur le 2 mais c'est pas sur.
Chaque bout de code est indépendant, il est donc possible qu'en additionnant certains quelques probleme peuvent arriver, plus particulierement quand les codes consernent le meme Object , il faudra frifouiller par vous meme pour les additionner. J'utiliserai aussi peut etre les meme nom d'object, d'upgrade, de pouvoir ou de module dans les object dans 2 codes différents .
Parfois l'utilisation de certains bout de codes affectent d'autre parties du jeu donc je le dirait aussi si c'est le cas (en particulier pour les commandbuttons)
J'ai essayé de mettre quelque anotation dans les codes pour vous y retrouver, car ce qui compte c'est de comprendre comment fonctionne l'ini et non les touche ctrl , c et v de votre clavier.
Si il y a une erreur (c'est possible), des questions a poser ou des amélioration sur les codes que je met, allez dans la discution sur l'ini je pence qu'on va créer un topic expres (et evitez si possible les mp, faut en faire profiter a tout le monde

)
Pour dévoiler le code il suffit d'appuyer sur spoiler
Rogash : 2 nouveaux pouvoirsAjoute 2 nouveaux pouvoirs a rogash :
au niveau 1, un charisme (+50% degat +50 armure +200% experience + un gros effet bleu) pour tout type de troll à coté de Rogash
et au niveau 5, une invocation de 3 bataillons de trolls des neiges avec un temps de vie
| Spoiler: |
| | | Code: | ; création du bataillon de troll des neiges avec un temps de vie
ChildObject AngmarSnowTroll_Invoque AngmarSnowTroll
IsTrainable = No CommandPoints = 0 EquivalentTo = AngmarSnowTroll
AddModule Behavior = LifetimeUpdate ModuleTag_LifetimeUpdate MinLifetime = 90000 MaxLifetime = 90000 DeathType = FADED End End
AddModule Behavior = SlowDeathBehavior ModuleTag_FadeDeath DeathTypes = NONE +FADED FadeDelay = 0 FadeTime = 2000 DestructionDelay = 2000 DeathFlags = DEATH_2 FX = INITIAL FX_RohirrimAlliesUnsummon End End
End
CommandSet AngmarSnowTrollHordeCommandSet2 1 = Command_ToggleStance 2 = Command_AngmarTrollChargeAttack 12 = Command_CaptureBuilding 13 = Command_AttackMove 14 = Command_Stop 16 = Command_SetStanceBattle 17 = Command_SetStanceAggressive 18 = Command_SetStanceHoldGround End
ChildObject AngmarSnowTrollHorde_Invoque AngmarSnowTrollHorde
IsTrainable = No CommandPoints = 0 CommandSet = AngmarSnowTrollHordeCommandSet2 EquivalentTo = AngmarSnowTrollHorde KindOf = SUMMONED SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAVALRY HORDE MELEE_HORDE ARMY_SUMMARY LARGE_RECTANGLE_PATHFIND TROLL
AddModule Behavior = HorseHordeContain ModuleTag_HordeContain FrontAngle = 270 FlankedDelay = 2000 ObjectStatusOfContained = InitialPayload = AngmarSnowTroll_Invoque 6 Slots = 6 PassengerFilter = NONE +CAVALRY ShowPips = No RandomOffset = X:2 y:3 MeleeBehavior = Amoeba End ThisFormationIsTheMainFormation = Yes RankInfo = RankNumber:1 UnitType:AngmarSnowTroll_Invoque Position:X:30 Y:-25 Position:X:30 Y:0 Position:X:30 Y:25 Position:X:0 Y:-25 Position:X:0 Y:0 Position:X:0 Y:25 RanksToReleaseWhenAttacking = 1 MeleeAttackLeashDistance = 1 End End
AddModule Behavior = ExperienceLevelCreate ModuleTag_MPLevelBonus LevelToGrant = 2 MPOnly = No End End
AddModule Behavior = LifetimeUpdate ModuleTag_LifetimeUpdate MinLifetime = 90000 MaxLifetime = 90000 DeathType = FADED End End
End
; l'invocation
ObjectCreationList OCL_AngmarSnowTrollHorde CreateObject ObjectNames = AngmarSnowTrollHorde_Invoque Count = 3 FadeIn = Yes FadeTime = 2000 IgnoreCommandPointLimit = Yes Disposition = SPAWN_AROUND DispositionAngle = 120 ;SpawnAround uses this as the arc between guys DispositionIntensity = 250 ; and this for distance from center End End
; le specialpower
SpecialPower InvocationDeTrollsDesNeiges Enum = SPECIAL_SPELL_BOOK_MEN_OF_DALE_ALLIES ReloadTime = 300000 RadiusCursorRadius = 80.0 Flags = LIMIT_DISTANCE NO_FORBIDDEN_OBJECTS MaxCastRange = 200 ForbiddenObjectFilter = NO_SUMMON_NEAR_OBJECT_FILTER ForbiddenObjectRange = 60.0 InitiateAtLocationSound = TrollVoiceSelect End
; Les boutons utilisé pour les pouvoirs
CommandButton Command_EarnurFakeLeadershipButton Command = SPECIAL_POWER SpecialPower = SpecialAbilityFakeLeadership Options = NONPRESSABLE TextLabel = BANNERUI:Trolls ButtonImage = HSFaramirLeadership RadiusCursorType = TrainingRadiusCursor ;Upgrade = Upgrade_AragornLeadership ButtonBorderType = ACTION DescriptLabel = CONTROLBAR:ToolTipCreateAHeroLeadership_Palantir InPalantir = Yes End
CommandButton Command_ConstructSnowTrollFromDefectedLair Command = SPECIAL_POWER Object = None SpecialPower = InvocationDeTrollsDesNeiges Options = NEED_TARGET_POS CONTEXTMODE_COMMAND RadiusCursorType = SummonOrcsRadiusCursor TextLabel = CONTROLBAR:TooltipSoSSummonAllies_Level2 ButtonImage = KUSnowTrollIcon ButtonBorderType = ACTION DescriptLabel = BANNERUI:AngmarSnowTrolls Radial = No InPalantir = Yes End
; les fx + les atributemodifier du charisme FXParticleSystem BonusTroll System Priority = ALWAYS_RENDER ParticleName = EXHPbibi.tga Lifetime = 20 20 SystemLifetime = 80 SortLevel = 1 Size = 25 30 BurstDelay = 5 5 BurstCount = 1 1 End Color = DefaultColor Color2 = R:100 G:120 B:150 5 Color3 = R:0 G:0 B:0 20 Color4 = R:32 G:32 B:32 0 End Update = DefaultUpdate SizeRate = 1 1 SizeRateDamping = 1 1 AngleZ = 0 7 AngularDamping = 1 1 AngularDampingXY = 1 1 End Physics = DefaultPhysics Gravity = -0.01 VelocityDamping = 1 1 End EmissionVelocity = OutwardEmissionVelocity End EmissionVolume = CylinderEmissionVolume Offset = X:0 Y:0 Z:15 End Draw = DefaultDraw End End
FXList FX_CharismeTroll ParticleSystem Name = BonusTroll AttachToObject = Yes End End
ModifierList CharismeTroll Category = LEADERSHIP Modifier = EXPERIENCE 200% Modifier = ARMOR 50% Modifier = DAMAGE_MULT 150% Duration = 3000 FX = FX_CharismeTroll ReplaceInCategoryIfLongest = Yes IgnoreIfAnticategoryActive = Yes End
; le nouveau command set de Rogash
CommandSet AngmarRogashCommandSet2 1 = Command_ToggleStance 2 = Command_RogashDominateTroll 3 = Command_EarnurFakeLeadershipButton 4 = Command_RogashLeap 5 = Command_ConstructSnowTrollFromDefectedLair 6 = Command_SpecialAbilityRageoftheNorth 12 = Command_CaptureBuilding 13 = Command_AttackMove 14 = Command_Stop 16 = Command_SetStanceBattle 17 = Command_SetStanceAggressive 18 = Command_SetStanceHoldGround End
; La star, Rogash
Object AngmarRogash
CommandSet = AngmarRogashCommandSet2
;;;;;;;;;;;;;;;;;;;;;;; pouvoir charisme ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Le module du charisme en lui meme, ; aucun module qui débloque le bouton car le pouvoir est deja au niveau 1
AddModule Behavior = AttributeModifierAuraUpdate ModuleTag_Charisme StartsActive = Yes BonusName = CharismeTroll RefreshDelay = 2000 Range = 200 AntiCategory = BUFF ObjectFilter = NONE +TROLL -HERO End End
;;;;;;;;;;;;;;;;;;; pouvoir invocation de troll ;;;;;;;;;;;;;;;;;;;
; Le Module qui débloque le bouton
AddModule Behavior = UnpauseSpecialPowerUpgrade ModuleTag_InvocDeTrolls SpecialPowerTemplate = InvocationDeTrollsDesNeiges TriggeredBy = Upgrade_GimliSlayerTrigger End End
; Le Module du pouvoir
AddModule Behavior = OCLSpecialPower ModuleTag_OCLInvocDeTrolls SpecialPowerTemplate = InvocationDeTrollsDesNeiges OCL = OCL_AngmarSnowTrollHorde CreateLocation = CREATE_AT_LOCATION StartsPaused = Yes End End
End |
|
Les problemes : - J'utilise un bouton de Earnur un héro non disponible si par hasard vous l'avez sur votre carte son charisme aura un texte incohérent.
- J'utilise un bouton de l'antre a troll des neiges si vous en avez mis une sur votre carte mieux vaux la retirer car si un joueur qui la controle tente d'utiliser le pouvoir, ca fera surement un bug
- J'ai peut etre un peu forcé sur le fx du charisme des troll (trop de bleu), mais en tout cas il est classe.
Gandalf : plus d'éclair au pouvoir épée éclair
Le pouvoir épée éclair envoit 5 eclairs à la fois, avec 50 éclairs au total
| Spoiler: |
| | | Code: | Object GondorGandalf
ReplaceModule ModuleTag_12 Behavior = ArrowStormUpdate ModuleTag_12x SpecialPowerTemplate = SpecialAbilityLightningSword StartAbilityRange = 275.0 UnpackingVariation = 1 UnpackTime = 2500 ; Pull out arrow PreparationTime = 1 ; Quick shot PersistentPrepTime = 500 ; looping the quick shot PackTime = 1500 ; back to idle
ApproachRequiresLOS = Yes AwardXPForTriggering = 0 ActiveLoopSound = GandalfLightningLoop
WeaponTemplate = GandalfLightningSwordBlastWeapon TargetRadius = 120 ShotsPerTarget = 1 ShotsPerBurst = 5 ; nombre d'éclairs par tirs MaxShots = 50 ; nombre d'éclairs total End End
End | |
Balrog : Feux du destin a la place des postures
Ca remplace le choix des posture par le pouvoir de sauron ( la grosse boule de feu qui tombe du ciel )
| Spoiler: |
| | | Code: | CommandSet BalrogCommandSet2 ; le nouveau commandset 1 = Command_SpecialAbilityIgnite 2 = Command_SpecialAbilityFireWhip 3 = Command_SpecialAbilityBalrogScream 4 = Command_SpecialAbilityBalrogBreath 5 = Command_SpecialAbilityBalrogWings 6 = Command_FiresOfDoom 13 = Command_AttackMove 14 = Command_Stop 16 = Command_SetStanceBattle 17 = Command_SetStanceAggressive 18 = Command_SetStanceHoldGround End
Object MordorBalrog
CommandSet = BalrogCommandSet2
; les 2 modules pour le pouvoir AddModule Behavior = SpecialPowerModule ModuleTag_FiresOfDoom SpecialPowerTemplate = FiresOfDoomSpecialPower UpdateModuleStartsAttack = Yes StartsPaused = No End End
AddModule Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_FiresOfDoomUpdate SpecialPowerTemplate = FiresOfDoomSpecialPower WhichSpecialWeapon = 3 SkipContinue = Yes UnpackTime = 900 PreparationTime = 1 PersistentPrepTime = 1500 PackTime = 1100 FreezeAfterTriggerDuration = 2500 AwardXPForTriggering = 0 StartAbilityRange = 300.0 MustFinishAbility = Yes SpecialWeapon = SauronFiresOfDoomWeapon End End
End |
|
Le probleme : pas d'animation sur le balrog quand il utilise le pouvoir (car il fallait recopier tout le draw ce qui prennait trop de place), si vous voulez qu'il fasse un truc pendant le lancement du pouvoir il faudra faire ReplaceModule sur le draw du balrog et y ajouter l'animation pour.
Balrog : l'ajouter en héro
C'est un nouveau balrog qui est recrutable dans la forteresse et qui est revivable. N'oubliez pas de l'ajouter à la liste des héros de la faction que vous voulez de playertemplate.ini
| Spoiler: |
| |
| Code: | // on crée un Object qui part du balrog invoqué
ChildObject MordorBalrog2 MordorBalrog
// prix et temps de construction BuildCost = 10000 BuildTime = 300 ; en secondes
EquivalentTo = MordorBalrog KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK NO_FREEWILL_ENTER PATH_THROUGH_INFANTRY SCARY BIG_MONSTER CAN_ATTACK_WALLS
// le texte quand on le recrute ou quand on le fait revivre RecruitText = CONTROLBAR:SummonBalrog ReviveText = CONTROLBAR:SummonBalrog
// on vire le module de vie de l'ancien balrog et on en met un nouveau // je n'ai pas fait de ReplaceModule car avant c'etait un ActiveBody // maintenant c'est un RespawnBody pour pouvoir le faire revivre // car ReplaceModule ne fonctionne que si c'est les meme type de module RemoveModule ModuleTag_02 AddModule Body = RespawnBody ModuleTag_02x MaxHealth = BALROG_HEALTH PermanentlyKilledByFilter = NONE End End
// on ajoute un module pour qu'il puisse etre réappelé à la forteresse // je n'ai pas mis de fx mais vous pouvez en mettre pour les voix AddModule Behavior = RespawnUpdate ModuleTag_RespawnUpdate DeathAnim = DEATH_1 ; anim quand il meurt // DeathFX = Nom d'un FXList a jouer quand il meurt RespawnAnim = SPECIAL_WEAPON_ONE ; l'anim quand il revient // RespawnFX = Nom d'un FXList a jouer quand il revient AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP ; dans une forteresse ButtonImage = HIBalrog_res ; l'image du balrog en bleue RespawnRules = AutoSpawn:No Cost:8000 Time:300 Health:100% End End
// on vire le module du temps de vie RemoveModule ModuleTag_LifetimeUpdate
End
// ne n'oubliez pas d'ajouter MordorBalrog2 dans la liste des héros recrutable // dans la factions de votre choix visible dans playertemplate.ini |
|
Le problème : comme c'est dans un map.ini on ne peut pas lui attribuer d'experienceLevel ce qui fait qu'il apparaitra au niveau 0, de plus je n'ai pas mis de voix quand il apparaissait mais vous pouvez facilement les ajouter.