Changer les relations entre les factions

Users who are viewing this thread

Amrac

Recruit
Salut,
Je joue à SOD version undead avec une invasion le jour 1, c'est tout simplement excellent mais une chose vient gacher ce beau tableau de massacre en tout genre:
Les factions on tendance à faire la paix avec les morts vivants, dans mon cas les Rhoboks sont presque mort, les swadian et les khergits mal au point. (Ils ont tout les deux perdus 50% de leur territoire).

Et voila que les Nords s'allient aux morts-vivant (Laissant sans défense les Rhoboks et Swadian mourrant de la région), puis les Swadian font la paix. Laissant les rhoboks et Khergit seuls :/

Perso, j'aimerais qu'ils soient égaux face à l'invasion. J'aimerais donc pouvoir forcer la guerre. Le problème c'est que j'ai beau fouiller le forum et les scripts, je trouve pas de solution :-/
 
Deux cas de figures :

1) Tu as pu obtenir les sources du mod.
Dans ce cas, rien de plus facile. Enfin, façon de parler, car si tu n'y connais (encore) rien au fonctionnement du Module System, tu risque de galérer un moment.
Mais, avec un peu de persévérance et une utilisation maniaque de la fonction de recherche du forum, il y a moyen de changer un trigger ou deux, quelques lignes dans quelques scripts, voire de bidouiller une variable qui pourrais t'arranger.

2) Tu n'as pas les sources du mod.
Là, ça se complique. Il faudrait que tu modifie directement les fichiers texte du mod.
Autant te dire que si l'on cherche une variable ou un bout de ligne de script à modifier, c'est déjà assez complexe. Car tout ou presque est sous forme de nombres et fait pour être compris par le moteur du jeu, pas par un humain.


Le cas qui te préoccupe demanderais énormément de travail sans le Module System de SoD. Et d'après ce que je sais, il n'est pas public...
 
Mega grosse galère, mais j'ai réussi.

Le délire, c'est que je joue à un mod (Undead Version) d'un mod (SOD). J'ai réussi à mettre la main sur les sources de SOD, mais pas de la version modifié Undead Version.

J'explique le principes pour les autres qui auraient le même problème:
Il faut suivre les tutos de fabrication de Mod présent sur le forum Français pour installer le fameux Module System et savoir comment compiler les scripts (en gros double click sur "build_module").
L'idéal est d'avoir les sources du mod, dans ce cas rien de plus facile il suffit d'ouvrir "module_factions" pour voir a quoi correspondent les factions (exemple: "kingdom_1" =  "Kingdom of Swadia")

Ensuite, ouvrez module_script et trouvé une fonction sympa qu'on peut déclencher facilement, perso je me suis basé sur
"game_event_party_encounter", qui est une fonction qui se déclenche à chaque fois qu'on rencontre quelqu'un/quelque chose. L'intérêt est de pouvoir tester très facilement en jeu.
Dans cette fonction, au début, ajoutez les déclarations de relations que vous voulez en suivant cette exemple:
(call_script,
"script_diplomacy_start_peace_between_kingdoms",
"fac_kingdom_3",
"fac_kingdom_4",1),
Remplacez les numéro des kingdom par ceux que vous souhaitez (cf module_faction), pour déclarer la guerre c'est exactement pareil (Remplacez "peace" par "war" dans le nom de la fonction). Ne touchez pas au 1 à la fin.

Si vous aviez les sources, compilez, assurez vous que les fichiers vont au bon endroit (cf module_info), lancez le jeu et testé. Si tout à marché, dès que vous faites une rencontre vous aurez la signature de tout les traités de paix/guerre voulut. Ensuite, vous pouvez retirer l'ajout de code de la même manière que vous l'avez ajouter.

Si vous n'aviez pas les sources, c'est carrément galère. Après avoir compilé, vous devrez ouvrir le fichier compilé "script" et cherchez la ligne "game_event_party_encounter", copiez cette ligne ainsi que celle qui est en dessous et remplacez la dans le même fichier script du mod auquel vous jouez. Priez pour que cette fonction ne fut pas modifié par le mod (car autrement vous écrasez les modifs, ce qui peu planter), lancez le jeu, testez, si ça marche, sauvegardez et remettez l'ancienne version.

Si vous êtes motivé vous pouvez détruire la fonction "script_randomly_start_war_peace" dans le fichier module_script, je propose de simplement la vidée de son contenu afin qu'elle ne fasse plus rien. Mais perso, je n'est pas testé (J'ai passé trop d'heures sur ce problème de brun ... :p)

Perso ça a changé complètement ma partie, je joue avec la undead invasion au jour 1, et avant que je puisse donné la raison aux rois des différents royaumes pour qu'ils s'allient contre les morts vivants, ceux ci avaient déjà détruit les rhoboks, 98% des swadians, les 3/4 des kerghit et ils étaient entrain d'avaler les vaegirs. Pendant ce temps, les Nords envoyez des party de 500 soldats sur les swadian/vaegir histoire de bien leur enfoncer la tête dans la boue.


Maintenant ils s'entraident contre les morts-vivants, l'invasion est bloquée, les armées morts-vivants sont passé de 40 à 10 alors que celles des autres royaumes passent pour la plus part de 0 à 10. Biensure, j'en profite pour faire un carnage et j'ai déjà remplie deux prisons avec les Lord necromancien :smile:

Je me demande presque ce que donnerait une telle invasion si les royaumes s'allier dès le début plutôt que de s'épuiser mutuellement, peu être que les morts-vivants auraient du mal à prendre les 2/3 de caladria :razz:

Si vous avez quelques questions, n'hésitez pas!
 
Back
Top Bottom