Aller au contenu


Réparer Blancherive


  • Veuillez vous connecter pour répondre
11 réponses à ce sujet

#1 Spitoven

Spitoven

Posté 24 septembre 2012 - 20:26

Bonjour.

Je cherche le moyen de réparer Blancherive à la fin de la guerre civile (comme ça, ça ne se fait pas en un jour). J'ai réussi à trouver que pour ce faire il fallait exécuter la commande suivante sur la console : " fc90b.disable fc90c.enable ". Aucun mod (même anglophone) à ce jour ne propose d'autre solution, étant donné que toucher aux quêtes liées à la guerre civile est un véritable casse-tête.

J'ai donc tâché de résoudre le problème à l'aide de mon arme de prédilection : l'event ondeath, en profitant du fait que certains acteurs auxquels attacher le script correspondant marquent justement la fin du conflit par leur décès (si vous voyez de qui je veux parler).

Fort de cet espoir, je suis allé chercher à quoi ces mystérieux "fc90b" et "fc90c" pouvaient bien correspondre. Je n'ai pas eu à fouiller Blancherive bien longtemps pour m'apercevoir qu'il s'agissait de deux XMarker (WorldObject de type Static), respectivement référencés "CWWhiterunIntEnableOnly" et "CWWhiterunIntDisableOnly".

Il ne me restait donc plus qu'à créer mon script, ce que j'ai fait. Mais comme d'habitude, c'est toujours au moment fatidique de la compilation que ça coince :

Citation

Scriptname WhiterunRepairScript extends ObjectReference Hidden

Objectreference property CWWhiterunIntDisableOnly auto
Objectreference property CWWhiterunIntEnableOnly auto

Event OnDeath(Actor Killer)
CWWhiterunIntEnableOnly.disable
CWWhiterunIntDisableOnly.enable
EndEvent

Citation

Starting 1 compile threads for 1 files...
Compiling "WhiterunRepairScript"...
e:\program files\steam\steamapps\common\skyrim\Data\Scripts\Source\temp\WhiterunRepairScript.psc(7,41): disable is not a property on script objectreference or one of its parents
e:\program files\steam\steamapps\common\skyrim\Data\Scripts\Source\temp\WhiterunRepairScript.psc(8,42): enable is not a property on script objectreference or one of its parents
No output generated for WhiterunRepairScript, compilation failed.

Batch compile of 1 files finished. 0 succeeded, 1 failed.
Failed on WhiterunRepairScript

Apparemment ce n'est pas exactement la bonne méthode. Je suis pourtant si près du but ! :help: :please:
Image IPB

#2 Gérauld

Gérauld

Posté 25 septembre 2012 - 18:19

Après un rapide coup d'oeil, il semble qu'il manque les parenthèses après disable et enable...
Cela devrait être disable() et enable() .

EDIT : A vérifier en cas de non fonctionnement du script : si tu attache le script sur un actor et que tu utilises l'event ondeath(), il faudra peut-être modifier la première ligne en mettant "extends actor" au lieu de "extends objectreference hidden".

Modifié par Gérauld, 25 septembre 2012 - 18:21.

L'ours blanc est l'un des plus grands carnivores de Nirn. Les poils du pelage sont translucides et creux. C'est la réfraction de la lumière visible sur la surface interne des poils creux et incolores qui les fait paraître blancs. Cette particularité lui permet de se camoufler dans son environnement de neige et de glace, afin de mieux surprendre ses proies. Ce plantigrade vit exclusivement en Bordeciel et sur l'île de Solstheim.

#3 Spitoven

Spitoven

Posté 25 septembre 2012 - 19:38

Ah oui suis-je bête. J'ai encore recopié la formulation type console sans réfléchir. Décidément la syntaxe informatique et moi ça fait 10 :agedor:

Maintenant ça marche. Merci Géraud ! :D


EDIT : Alors en fait non, le script se compile correctement, le debug confirme qu'il s'exécute mais Blancherive n'est pas réparée :(

Modifié par Spitoven, 25 septembre 2012 - 20:09.

Image IPB

#4 Gérauld

Gérauld

Posté 26 septembre 2012 - 06:30

C'est donc que ce ne sont pas les bons objets qui sont sélectionnés ou que l'event ne déclenche pas. Essaie de mettre la ligne :
debug.notification("Je tente la réparation")
après la ligne event pour voir si l'event se lance bien.
Dans le cas où ça ne se lance pas, fait la modif d'extends du post précédent (extends actor).
Je n'ai pas le CK sous les yeux mais, il suffirait de faire l'inverse du script de la guerre civile qui casse tout pour tout remettre bien et réparer la ville...
L'ours blanc est l'un des plus grands carnivores de Nirn. Les poils du pelage sont translucides et creux. C'est la réfraction de la lumière visible sur la surface interne des poils creux et incolores qui les fait paraître blancs. Cette particularité lui permet de se camoufler dans son environnement de neige et de glace, afin de mieux surprendre ses proies. Ce plantigrade vit exclusivement en Bordeciel et sur l'île de Solstheim.

#5 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 26 septembre 2012 - 08:58

etant donné qu'il n'y a pas qu'un seul truc à disable, je dirais que les devs ont fait un petit script sur l'objet... donc, soit regarde sur l'objet si il n'a pas un script avec un event onDisable (si ça existe... je suis en cours là), soit essaye de trouver tous les objets et tu les disable/enable à la main...

en règle generale, souviens toi que les commandes magiques n'existent pas, le plus souvent, soit c'est un racourci crado, fait par flemme, soit c'est vraiment un coup de chance...
"You are the best Septim that's ever ruled. Well, except for that Martin fellow, but he turned into a dragon god, and that's hardly sporting... You know, I was there for that whole sordid affair. Marvelous time! Butterflies, blood, a Fox, a severed head... Oh, and the cheese! To die for."

Shéogorath - Prince de la folie

Vrai Grand Moddeur et FPIA à ses heures...

#6 Spitoven

Spitoven

Posté 26 septembre 2012 - 09:19

Voir le messageGérauld, le 26 septembre 2012 - 06:30, dit :

C'est donc que ce ne sont pas les bons objets qui sont sélectionnés ou que l'event ne déclenche pas. Essaie de mettre la ligne :
debug.notification("Je tente la réparation")
après la ligne event pour voir si l'event se lance bien.

Oui, je l'ai déjà fait et ça s'affiche. Donc ça ne vient pas de là :(


Voir le messageGérauld, le 26 septembre 2012 - 06:30, dit :

Je n'ai pas le CK sous les yeux mais, il suffirait de faire l'inverse du script de la guerre civile qui casse tout pour tout remettre bien et réparer la ville...

Le problème, c'est que les quêtes de la guerre civile, sauf votre respect, c'est le bordel mon général. Ce n'est pas une quête réelle par quête affichée en jeu comme on pourrait s'y attendre, mais toute une palanquée de quêtes qui fonctionnent les unes avec les autres, entremêlées, en synergie ou en parallèle, et qui, en plus, ne correspondent pas chacune à une mission dans le jeu mais à plusieurs, car elles se relancent en changeant de nom (il y a des balises à cet effet) pour les missions similaires. Qui plus est, vu la pauvreté des scripts sources que j'ai regardé, je pense qu'elles font appel à des scripts extérieurs. Bref, tout ça va bien au-delà de ma compétence, et mêmes les modeurs anglophones, malgré leurs gros effectifs, n'ont pas encore réussi à s'en dépatouiller, sinon par une commande console :icon8:

Mais si tu as le courage de te pencher sur la situation, je pense que plus d'un t'en sera reconnaissant. Un mod qui répare Blancherive ferait certainement plaisir à tout le monde :)


Voir le messageAurix, le 26 septembre 2012 - 08:58, dit :

etant donné qu'il n'y a pas qu'un seul truc à disable, je dirais que les devs ont fait un petit script sur l'objet... donc, soit regarde sur l'objet si il n'a pas un script avec un event onDisable (si ça existe... je suis en cours là), soit essaye de trouver tous les objets et tu les disable/enable à la main...

en règle generale, souviens toi que les commandes magiques n'existent pas, le plus souvent, soit c'est un racourci crado, fait par flemme, soit c'est vraiment un coup de chance...

Alors je dois avoir de la chance, car figure-toi que j'ai vérifié ingame et c'est bien un marqueur à disable et un autre à enable, et ça fonctionne parfaitement...depuis la console, avec "fc90b" et "fc90c". Pas depuis mon script :(
Image IPB

#7 Gérauld

Gérauld

Posté 26 septembre 2012 - 16:54

Tu as rempli les propriétés? (en double-cliquant sur le script en en faisant auto-fill si les noms sont les bons...).
L'ours blanc est l'un des plus grands carnivores de Nirn. Les poils du pelage sont translucides et creux. C'est la réfraction de la lumière visible sur la surface interne des poils creux et incolores qui les fait paraître blancs. Cette particularité lui permet de se camoufler dans son environnement de neige et de glace, afin de mieux surprendre ses proies. Ce plantigrade vit exclusivement en Bordeciel et sur l'île de Solstheim.

#8 Spitoven

Spitoven

Posté 26 septembre 2012 - 18:55

Oui.
Image IPB

#9 Spitoven

Spitoven

Posté 26 décembre 2012 - 14:53

Je me suis repenché sur le problème, j'ai remis le script tel qu'il était dans sa première version corrigée par Gérauld, et à présent ça fonctionne... Bref, sûrement un bug du CK qui a été corrigé depuis.

Affaire réglée, merci de votre aide ;)
Image IPB

#10 HawkFest

HawkFest

Posté 19 janvier 2013 - 20:25

Cool, quand est-ce qu'on pourra profiter de ton mod?

Modifié par HawkFest, 19 janvier 2013 - 20:26.


#11 Spitoven

Spitoven

Posté 28 janvier 2013 - 23:05

Si tu cherches juste à réparer Blancherive, il te suffit de composer ce script :

Citation

Scriptname WhiterunRepairScript extends ObjectReference Hidden

objectreference property CWWhiterunIntDisableOnly auto
objectreference property CWWhiterunIntEnableOnly auto

Event OnDeath(Actor Killer)
CWWhiterunIntEnableOnly.Disable()
CWWhiterunIntDisableOnly.Enable()
EndEvent

...et de l'ajouter, par exemple, aux acteurs Tullius et Ulfric. Tu peux aussi changer l'extends et placer le script ailleurs, si tu préfères ne pas toucher aux acteurs.

En ce qui concerne mon mod, il s'agit d'un mod assez énorme, et je serai très content si j'arrive à terminer la partie hors-quêtes d'ici un an.
En attendant, je mettrai peut-être une version "work in progress" en ligne, mais je déconseille vivement de sauvegarder une partie avec le mod activé, premièrement parce qu'il n'aura pas été testé (et j'ai déjà quelques bugs à l'affiche), et deuxièmement parce qu'il a une fâcheuse tendance à ne pas se mettre à jour correctement dans les sauvegardes qui l'ont déjà connu.
Image IPB

#12 HawkFest

HawkFest

Posté 31 janvier 2013 - 18:55

Merci pour le script! J'imagine qu'il suffit de le "greffer" à des alias de quête ciblant les PNJ Ulfric et Tullius. Faudrait-il ajouter une vérification (if-then-sinon) à savoir qui a gagné la guerre civile? En fait je ne connais pas le contexte d'utilisation de ces deux objets (des marqueurs j'imagine) CWWhiterunIntEnableOnly et CWWhiterunIntDisableOnly que je n'ai pas trouvés dans la fenêtre d'objets du CK. Aussi sont-ils déclarés tels des "property" du script, alors je me demande... Oh en passant, étant donné que tu te donnes un an, me permettrais-tu d'utiliser ta trouvaille de script dans une version ultérieure de mon propre mod (qui modifie quelque peu les pourtours de Doucebrise)? Je te mentionnerai dans les "crédits et collabos" si tu le permets.

Modifié par HawkFest, 31 janvier 2013 - 19:25.





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)