Avant tout, une astuce importante : Si vous voulez qu'un pouvoir ou même tout les pouvoirs d'un de vos heros soit accessible des le depart, sans passer de niveau, allez dans la fiche du personnage voulu puis chercher les StartsPaused = Yes dans les fiches de pouvoirs de la categorie *** ENGINEERING Parameters *** [toujours dans le fichier Ini du personnage (CTRL+F pour activer la fonction rechercher)] et modifier ces fameux StartsPaused = Yes par StartsPaused = NoPour activer la fonction rechercher dans le NotePad ou Autres : Faites CTRL + F
Rajouter un Pouvoir du Palentir a un Heros de Base de A à Z (Sauron/ Aragorn etc ...) SANS upgrade ou avec acces direct au pouvoir voulu :
Voila il y a quelques jours j'ai chercher comment rajouter un pouvoir du palentir/Etoile du soir a un heros Lambda, en l'occurence Sauron, personnage que je prendrais pour exemple ici.
Je me suis rendu compte que les sujets en parlant n'etaient pas forcement precis et faisaient souvent refernce a des topics ou tuto plus ancien, voir inexistant dans la fonction rechercher.
Je decide donc de me mettre au tuto pour vous proposer quelquechose de concis et precis.
Alors deja desole pour les fautes, je ne suis pas doue en ortographe, sur ce j'espere que le topic vous paraitra suffisament simple et detaille tout en etant pleinement efficace .
Cette Methode marche pour tout les pouvoirs : Invocations, Sante et autres evenements surnaturelle (Tremblement de terre, Avalanche etc...)Legende :
En
Rouge : A Supprimer
En
Bleu : A Rajouter
En
Vert : A Modifier
En
Violet : Informations importantes qui ne doivent être inclus dans les fichiers texte
Etape 0 Explications :
Avant tout des explications s'imposent pour savoir ou vous allez mettre les pieds (non,non, ne fuyez pas).
Pour donner un pouvoir du Palantir/Etoile du Soirée à un heros, il faut avant tout comprendre certaine choses.
En effet avant toute chose un pouvoir, bien que incruste dans le jeu et son SpellBook (comprendre son Palentir) n'est pas fait pour etre un pouvoir d'heros, sauf exeption comme pour l'armée des morts d'Aragorn ou la pluie de feu de Sauron.
Ainsi en 1ere etape il faut aller dans Ini//Object//System//System pour aller pecher un OCL ...
L'OCL qu'est ce que c'est ? Eh bien j'en sais pas grand chose, mais c'est extrement important pour bien faire tourner les pouvoirs dans le jeu de base et pour faire tourner aussi vos futurs pouvoirs de SpellBook.
L'OCL ne touche pas que les pouvoirs du Palantir mais aussi les pouvoirs propre aux heros tel que charisme etc..., en effet L'OCL fait tourner tout ça pour le mieux, toutes les données principal de pouvoirs font partie d'un OCL et les OCL se trouvent tous dans System (et dans les fiches de tout les personnages aussi qui ont des pouvoirs, qui dis pouvoirs dans une fiche de heros dis un paragraphe OCL) .
Bref, la suite ! :Ok, ok ... eh bien avant toutes choses il faudra chercher votre pouvoirs dans les OCL du fichier System puis les copier//coller dans la fiche du perso a qui vous voudrez administrer des pouvoirs epiques (ou pas), ainsi que cette phrase magique :
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_(Nom du Pouvoir)
SpecialPowerTemplate = (Nom du Pouvoir)
Pourquoi phrase magique ? Parceque sans celle ci, dites adieu a vos pouvoirs, d'ou viens elle ? Aucune idée, je l'ai piqué, elle marche, c'est nickel, j'aurais bien aimer vous en dire plus, mais moi même n'en sais guere plus ...
Enfin bref, pour la suite c'est simple (ou presque), Copier/Coller/Modifier, dans divers fichiers mais ça je vous l'expliquerais dans ce qui suis ... !
Et si vous voulez comprendre le pourquoi du comment, j'indiquerais tout ce que je sais a la fin de chaque fichier !
C'est pas beau la vie ^^ ?
Pour les Affamés de Connaissances, quels fichiers allons nous trifouiller et Pourquoi ?System.Ini : Je L'explique dans L'OCL qu'est ce que c'est ?
Personnage.Ini : Ici on copie l'OCL du System et on le modifie pour créer son propre nom de pouvoir mais surtout faire en sorte que le personnage en question reconnaisse la commande dans le jeu, de même on peut lui fixer un level d'obtention pour le pouvoir en question !
Special Power.Ini : La on definis le pouvoir en question, son temps de recharge apres utilisation, sa zone d'effet et autres details plus ou moins importants .
CommandButton.Ini : Peut etre la partie la plus importante a mes yeux, ici, on fait en sorte que la commande apparaisse dans le jeu et fonctionne, si celle ci provient du SpellBook ou est un simple pouvoir d'heros, son image et sa descrition dans le jeu, le pouvoir qui lui est attribuer, bref, beaucoup ...!
Command Set.Ini : Le plus simple, mettre simplement le pouvoir dans le palentir du heros, simple mais important
Upgrade.Ini : Comme son nom l'indique ou on créer des Upgrades .
Etape 1 System.Ini (pas d'infos complementaires ici) :
Une nouvelle fois, avant tout, faites bien attention a lire la legende au dessus, histoire de savoir pourquoi toutes ces couleurs, cependant dans un 1er temps ne vous focalisez pas dessus, j'expliquerais tout !
Bon allez, c'est partie, on va chercher son pouvoir dans Ini//Object//System//System, bon perso la je fous un max de pouvoirs a mon Sauron, quoi de mieux qu'une invocation de Guetteur (le gros poulpe)(comme sa même ceux qui n'ont pas L'Add-On auront un pouvoir qu'ils possedent), donc on cherche son nom en anglais (oui la faut chercher), sur ce coup je vous aide, c'est Watcher, paf voici les données obtenu
(Attention, il existe plusieurs fichiers ayant watcher dans leur "composition", ainsi faites bien attention a ce que votre recherche commence bien par "Behavior = OCL"):- Resultat Recherche dans System.Ini:
Behavior = OCLSpecialPower ModuleTag_SummonWatcher
SpecialPowerTemplate = SpellBookWatcherAlly
OCL = OCL_WatcherSummoning
CreateLocation = CREATE_AT_LOCATION
AvailableAtStart = No
RequirementsFilterMPSkirmish = SPELL_BOOK_REQUIREMENTS_FILTER
RequirementsFilterStrategic = SPELL_BOOK_REQUIREMENTS_FILTER_STRATEGIC
End
On copie le bousin et on colle dans :
Etape 2 Personnage.Ini (Ici Sauron) :
Pour le Personnage de Sauron c'est dans Ini//Object//EvilFaction//Units//Mordor//Sauron.
Vous recherchez *** ENGINEERING Parameters ***, descendez un peu jusqu'a trouver un pouvoir puis au dessus de lui, coller ! (la pour l'exemple au dessus de FIRES OF DOOM)
Puis au dessus de Behavior = OCLSpecialPower ModuleTag_SummonWatcher coller ceci :
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_(Nom du Pouvoir)
SpecialPowerTemplate = (Nom du Pouvoir)
Endil faut que sa donne cela :
- Ce que sa doit donner:
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_(Nom du Pouvoir)
SpecialPowerTemplate = (Nom du Pouvoir)
End
Behavior = OCLSpecialPower ModuleTag_SummonWatcher
SpecialPowerTemplate = SpellBookWatcherAlly
OCL = OCL_WatcherSummoning
CreateLocation = CREATE_AT_LOCATION
AvailableAtStart = No
RequirementsFilterMPSkirmish = SPELL_BOOK_REQUIREMENTS_FILTER
RequirementsFilterStrategic = SPELL_BOOK_REQUIREMENTS_FILTER_STRATEGIC
End
La se pose la plus grosse difficulte de l'affaire ... Quel nom donner a votre pouvoir (Auparavant merci de lire l'explication n°7 plus bas avant de vous lancer) ? Ayez, vous avez trouver ? Cool, moi se sera MyKraken, maintenant il faut changer certaines chose :
- Les changements a effectuer:
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_MyKraken
SpecialPowerTemplate = MyKraken
End
Behavior = OCLSpecialPower OCLSpecialPowerMyKraken
SpecialPowerTemplate = MyKraken
OCL = OCL_WatcherSummoning
CreateLocation = CREATE_AT_LOCATION
StartsPaused = No
End
Oula, beaucoup de changements n'est ce pas ? Avant l'explication essayez de preter attention aux modifications apportes avant et apres, pour ce faire la legende de couleur vous aide !
Explications :1) Deja comme vous vous en doutez il a fallu changer les (Noms du pouvoir) par le nom de votre pouvoir pour qu'il n'y est aucun Gamecrash (logique) [si vous voulez connaitre un peu plus de chose sur cette fameuse "Behavior = UnpauseSpecialPowerUpgrade ModuleTag_", lisez ce qui est ecris dans l'etape 0 (a la fin)]
2) Ensuite Behavior = OCLSpecialPower ModuleTag_SummonWatcher s'est changer en :
Behavior = OCLSpecialPower OCLSpecialPowerMyKraken, l'explication est la suivante : SummonWatcher fait directement reference au pouvoir de base deja existant, donc pour creer un nouveau pouvoir sa le fait pas et sa créer du coup des bugs/Gamecrash,du coup on le remplace de preference par le nom du pouvoir .
Quant a remplacer le ModuleTag_ par OCLSpecialPower c'est simplement parcequ'il faut que les noms de fin de l'OCLSpecialPower et de l'UnpauseSpecialPowerUpgrade soit different sinon, une nouvelle fois c'est GameCrash.
3) Pourquoi supprimer AvaibleAtStart et autres RequirementsFilter ? Eh bien pour le simple fait que le jeu crash si vous ne supprimez pas ces lignes, pourquoi ? je ne sais pas (desole) ...
4) Il faut changer la "valeur" des "SpecialPowerTemplate = " par le nom de votre pouvoir car cette ligne a la base fait reference au pouvoir de base, ici en l'occurence le SpellBookWatcherAlly, certes le resultat, au final est le même, mais n'oubliez pas que si vous laisser la valeur deja existente (donc la le SpellBookWatcherAlly) vous faites a un pouvoir du spellbook/Palantir mais s'en faire appel a lui, se qui resulte a une incoherence est donc Gamecrash ... donc pour remedier a ceci vous mettez votre nom de pouvoir (MyKraken pour moi)....
Mais ... Mais ... il n'existe nulle part ce pouvoir ! ... Patience vous allez le créer, deux derniere informations auparavant .
5) Pourquoi avoir rajouter StartsPaused = No ? Eh bien car cela permet de faire en sorte d'apparaitre votre bouton est surtout de le rendre valide sans passer par des upgrades, si vous voulez des upgrades, referez vous a la deuxieme "Grande" partie qui porte le doux noms de : "Rajouter un Pouvoir du Palentir a un Heros de Base de A à Z (Aragorn etc ...) AVEC upgrade", mais avant de passer a cette etape, finissons d'abord tout ça !
6) Parfois il faudra que vous rajoutiez ces deux lignes en dessous de StartsPaused pour les pouvoirs d'invocations, j'ai dis parfois pas tout le temps ! (obligatoire pour le Balrog et le Loup des glaces/Esprit du loup
SetModelCondition = ModelConditionState:USER_1
SetModelConditionTime = 8.17) Attention les noms de pouvoirs ne doivent pas avoir de Noms Propres Anglais ou Bilingue comme Sauron, Aragorn ou WitchKing (Et toujours les mots attaches, jamais separe et aussi n'ayant jamais des accents comme éêö etc... inclus dedans, de même bien mettre le debut de mot en majuscule, exemple pas de Mykraken mais MyKraken) vous pouvez par exemple appele un pouvoir PowerOfTheRoiSorcier mais pas PowerofTheWitchKing. Certain reussisse malgres cela (sauf pour les accent ect...) mais pour moi sa ne marche pas, donc vous voila prevenu !Passons maintenant a l'etape 3 ....
Etape 3 SpecialPower.Ini :
Bon allez, c'est partie, on va créer son pouvoir dans Ini//SpecialPower, une nouvelle fois chercher le pouvoir de base en anglais, utiliser Watcher dans le cas present !
Une nouvelle fois beaucoup de reponses, ainsi chercher bien la partie qui commence par "SpecialPower SpellBook".En suivant bien mes instructions vous avez du tomber sur cela :
- Resultat recherche:
SpecialPower SpellBookWatcherAlly
Enum = SPECIAL_SPELL_BOOK_WATCHER_ALLY
Flags = WATER_OK NO_FORBIDDEN_OBJECTS RESPECT_RECHARGE_TIME_DISCOUNT
ReloadTime = (?) Valeur deja definis a la base
RadiusCursorRadius = 90.0
RequiredSciences = SCIENCE_WatcherAlly
ViewObjectDuration = 5000
ViewObjectRange = 100
ForbiddenObjectFilter = NO_SUMMON_NEAR_OBJECT_FILTER
ForbiddenObjectRange = 90.0
End
Copier puis coller le resultat tout en bas, les modifications commencent !
Voici le resultat que vous devez obtenir :
- Ce que sa doit donner:
SpecialPower MyKraken
Enum = SPECIAL_SPELL_BOOK_WATCHER_ALLY
Flags = WATER_OK
ReloadTime = 0
RadiusCursorRadius = 90.0
ViewObjectDuration = 5000
ViewObjectRange = 100
ForbiddenObjectFilter = NO_SUMMON_NEAR_OBJECT_FILTER
ForbiddenObjectRange = 90.0
MaxCastRange = 666
End
Explications :1) Changer le nom de base du Spellbook par celui de votre pouvoir, je ne pense pas avoir besoin d'expliquer mais au cas ou, c'est une nouvelle fois une histoire de "liaison" de fichier [raccord avec votre pouvoir inscris dans VotrePersonnage.Ini (ici Sauron.Ini)]
2) Changer la Valeur du Flags de Base par "WATER_OK" de faire marcher vos pouvoirs même sur l'eau (ce qui n'est generalement pas le cas a la base de certain pouvoirs), j'ai supprimer "NO_FORBIDDEN_OBJECTS" car même en l'ayant supprimer je n'ai vu aucun changement, a vous de voir si vous preferez quand même le garder .
Parfois, il y a ecris RESPECT_RECHARGE_TIME_DISCOUNT, supprimer le Absolument pour ne pas avoir a attendre avant de réutiliser le pouvoir3) Le ReloadTime est le temps que met votre pouvoir a se recharger apres utilisation, changeur la valeur d'inscrite par 0 pour pouvoir l'utiliser sans limite ou inscriver une autre valeur,
valeur calculer en milliseconds (1 seconde = 1000 milliseconds)
4) Required Sciences doit etre supprimer sinon le jeu voudra le Spell_Book pour être utiliser, hors on veut que ce soit un SpecialPower et non un pouvoir du Palantir donc GameCrash si vous ne supprimez pas !
5) MaxCastRange est en fait le champ d'actions du pouvoir, en clair si vous mettez 999999999, votre pouvoir pourra etre utiliser n'importe ou sur la carte . (en tout cas pour les avalanches et autres, faudra voir pour les invocations)
Passons à l'Etape Suivante ....
Etape 4 CommandButton.Ini :
Go dans Ini//CommandButton, vous connaissez la chanson, cherchez Watcher, une nouvelle fois multiples resultats,
le bon commence forcement par CommandButton Command_SpellBook, ainsi voici le bon resultat :
- Le bon Resultat:
CommandButton Command_SpellBookWatcherAlly
Command = SPELL_BOOK
SpecialPower = SpellBookWatcherAlly
Options = NEED_TARGET_POS
TextLabel = CONTROLBAR:SummonWatcher
ButtonImage = SBEvil_SummonWatcher ;Needs replacement
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:TooltipSummonWatcher
RadiusCursorType = SummonWatcherRadiusCursor
CursorName = AttackObj
InvalidCursorName = GenericInvalid
End
Copier et Coller au dessus de "Create A Hero Start", voici les modifications a effectuer :
- Les bonnes modifs:
CommandButton Command_MyKraken
Command = SPECIAL_POWER
SpecialPower = MyKraken
Options = NEED_TARGET_POS
TextLabel = CONTROLBAR:SummonWatcher
ButtonImage = SBEvil_SummonWatcher ;Needs replacement
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:TooltipSummonWatcher
RadiusCursorType = SummonWatcherRadiusCursor
CursorName = AttackObj
InvalidCursorName = GenericInvalid
InPalantir = Yes
Radial = No
End
Explications :1)
Avant tout ne modifier que le nom de pouvoir apres Command_ Sinon c'est le Gamecrash assure.Comme vous vous en doutez il faut modifier le nom du pouvoir de base par le votre, pourquoi ? Si vous vous le demandez c'est que vous n'avez pas lu ce que j'ai marquer avant, mais bon, au risque de me repeter, cela fait appel au pouvoir baser dans le Spellbook alors qu'on cherche a le creer en pouvoir special.
2)
La Modif extremement importante : Changer SPELL_BOOK par SPECIAL_POWER (bien en majuscule surtout), c'est comme ça qu'on transforme notre pouvoir de Spellbook en pouvoir de Heros !
3) Comme pour le reste changer le Special Power de base par celui qu'on a créer precedemment, que le jeu comprenne ou se trouve desormais notre pouvoir !
4) Ajouter InPalantir = Yes pour que cela apparaisse dans le Palantir du heros (si vous ne mettez pas cette ligne ou changer la valeur par no, votre pouvoir n'apparaitra pas dans le palantir. Sauf si vous changez la valeur de la ligne suivante Radial : No par Yes, a ce moment le jeu vous fait apparaitre le pouvoir en plein sur le heros, du coupo a la place de voir votre heros vous verrez son pouvoir ... pas top pour la visbilite et le plaisir), ainsi mettez InPalantir = Yes pour l'appartion de votre pouvoir dans le commandset et mettez Radial = No pour ne pas créez de conflit avec InPalantir mais surtout pour que le pouvoir ne se situe pas en plein dans le visage de votre heros ! ^^
Etape 5 CommandSet . Ini :
La fin, enfin, voici un command set de base :
- commandset de base de Sauron:
CommandSet SauronCommandSet
1 = Command_ToggleStance
2 = Command_SpecialAbilityTerribleFury
3 = Command_FiresOfDoom
12 = Command_CaptureBuilding
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
A vous de choisir, soit dans le cas actuel vous rajouter une nouvelle commande comme ci :
- 1ere possibilite:
CommandSet SauronCommandSet
1 = Command_ToggleStance
2 = Command_SpecialAbilityTerribleFury
3 = Command_FiresOfDoom
4 = Command_My Kraken
12 = Command_CaptureBuilding
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
Ou vous modifiez une commande deja existente :
- 2eme possibilite:
CommandSet SauronCommandSet
1 = Command_ToggleStance
2 = Command_SpecialAbilityTerribleFury
3 = Command_MyKraken
12 = Command_CaptureBuilding
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
Voila si vous avez suivis toutes mes instructions, le jeu marche parfaitement, j'ai fait les même commande pour moi en ecrivant ce tuto et sa marche, du coup si Gamecrash il y a, vous avez fais une erreur, relisez bien ...
Et Surtout Attention, parfois le Game Crash viens simplement du fait qu'il manque un End en dessous de la derniere ligne d'une partie, Gaffe !Passons a la Deuxieme grande partie ....