Aller au contenu


Quand Ça Veut Pas, Ça Veut Pas

Problème(s) de compilation

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

#1 Spitoven

Spitoven

Posté 27 septembre 2012 - 18:04

Bon, je crois que ce sujet va me servir à regrouper tous mes échecs de scripting simples (et ceux des autres noobs en la matière si le cœur leur en dit, je ne suis pas territorial).

Alors, cette fois il s'agit de tuer l'interlocuteur à la fin d'un dialogue, et ça donne :

Citation

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname BigFootSuicide Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
Kill(akSpeakerRef)
;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

Quest Property DialogueFollower Auto  

Citation

Starting 1 compile threads for 1 files...
Compiling "BigFootSuicide"...
e:\program files\steam\steamapps\common\skyrim\Data\Scripts\Source emp\BigFootSuicide.psc(9,0): Kill is not a function or does not exist
No output generated for BigFootSuicide, compilation failed.

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

Je commence à avoir suffisamment d'expérience dans l'échec de compilation pour imaginer que c'est sans doute la fonction "kill" qui ne peut pas être utilisée telle quelle dans un script de dialogue. Mais entre ça et trouver la solution, il y a un Royaume d'Oblivion.

Toute aide bienvenue, merci d'avance. Et désolé pour mon ton désabusé :(

Modifié par Spitoven, 27 septembre 2012 - 18:05.

Image IPB

#2 Nehluxhes

Nehluxhes

    Les mots s'arrêtent à TABRONEH.


Posté 27 septembre 2012 - 18:26

La fonction 'Kill' n'existe que pour un actor, comme tu l'utilise là c'est sur le type TopicInfo où elle n'existe pas.
La syntaxe correcte serait akSpeaker.Kill() (et éventuellement un paramètre qui est censé indiqué qui tue l'acteur, c'est dans doute utilisé pour gérer le système de crime du jeu mais dans ton cas je ne pense pas que ce soit utile)

Je te conseille si ce n'est déjà fait de rajouter cette page dans tes favoris, tu as toutes les commandes de scripts existantes, leur utilisation et sur quel type d'objet elles sont disponibles. ;)

#3 Spitoven

Spitoven

Posté 27 septembre 2012 - 19:25

C'est fou quand même ces fonctions qui ne s'emploient pas de la même manière selon l'attribution du script. Je ne vois vraiment pas à quoi ça sert de procéder de cette façon :|

Merci beaucoup en tout cas ! A présent ça fonctionne...presque. Il y a juste qu'il ne meurt pas, il tombe au sol pour reprendre son souffle. Et pourtant il n'est ni Essential ni Protected :shock:

Modifié par Spitoven, 27 septembre 2012 - 19:25.

Image IPB

#4 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 28 septembre 2012 - 21:49

*Hum* tu prends les choses à l'envers... Skyrim est basée sur le paradigme objet, en clair, ça permet de créer les choses d'une façon plus proche de la réalité, à savoir que chaque chose dans le jeu (les personnages, les statics, les containers, les lumières, les sorts et même les textures sets) est un objet et il peut "effectuer des actions".

ainsi, pour prendre l'exemple de l'objet "actor", il possède plusieurs actions à sa disposition (on parle de méthodes de la classe Actor) parmi lesquelles : resurrect, killl, getav, setav, forceav... Qui sont définies juste pour lui.

il existe aussi une "hiérarchie" dans les objets (on parle de classes mères et de classes filles), on va du plus général au plus particulier. exemple : Object -> Item -> weapon ou Object -> Actors -> Actor. Ainsi, une méthode définie pour la classe item se retrouvera sur les objets armor, weapon, soulgem, book... mais pas sur les pnjs qui eux, découlent de la classe Actor et inversement.

Donc, tout ça pour te dire que ce n'est pas bizarre, c'est juste... qu'on ne t'avait pas expliqué... j'espère que c'est désormais un peu plus clair pour toi, même si je conçois que ça peut paraitre étrange de dire que mourir est une des actions à la disposition des acteurs du jeu...
"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...

#5 Spitoven

Spitoven

Posté 29 septembre 2012 - 01:32

D'accord, mais dans la mesure où le contenu d'un script ne s'applique pas nécessairement uniquement à l'objet auquel il est attaché, je trouve ce choix un peu trop restrictif à mon goût.

Sur ce, problème réglé en adaptant ce que je voulais faire au fait que le troll ne meurt pas, à défaut de réussir à le tuer.


Problématique suivante : Quelqu'un aurait-il réussit à trouver quel est le script qui détruit le bastion des vigiles dans Dawnguard ? J'aimerais bien le reconstruire...

Modifié par Spitoven, 29 septembre 2012 - 01:33.

Image IPB

#6 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 29 septembre 2012 - 01:41

T'as rien lu ou j'ai expliqué comme un manche ? si tu veux affecter autre chose que l'objet attaché, il suffit de faire <référence>.méthode(paramètres) au lieu de simplement méthode(paramètres) et c'est tout, rien de plus simple... enfin, il faut tout de même penser à déclarer ta référence mais ça, c'est évident non ? ^^

pour ce qui est du bastion des vigiles, ils en ont reconstruit un autre, qui a un nom plus classe, tu devrais plutôt tabler sur celui là...
"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...

#7 Spitoven

Spitoven

Posté 29 septembre 2012 - 01:47

 Aurix, le 29 septembre 2012 - 01:41, dit :

pour ce qui est du bastion des vigiles, ils en ont reconstruit un autre, qui a un nom plus classe, tu devrais plutôt tabler sur celui là...

Ah bon ? Où ça ?
Image IPB

#8 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 29 septembre 2012 - 18:53

fouille au sud de faillaise
"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...

#9 Spitoven

Spitoven

Posté 30 septembre 2012 - 18:10

 Aurix, le 29 septembre 2012 - 18:53, dit :

fouille au sud de faillaise

Non mais la Garde de l'aube, c'est pas les vigiles... Moi je veux un bastion pour les vigiles.
Image IPB

#10 MagikMike

MagikMike

    Crétins de bugs !


Posté 01 octobre 2012 - 18:14

Ceci est un message général pour expliquer un peu l'objet :)

Pour ceux qui on du mal avec l'object, en général j'explique par l'exemple

J'ai un object de type Chat... C'est la Classe Chat
Avec des Propriétés : age, taille, poid, race, nom, couleur du pelage

Par sécurité, on ne peut parfois pas modifier certaines propriétés directement. Il existe donc des méthodes pour les modifier et les lire
Exemple : Monchat.GetAge

et des Méthodes : Ronronne(), Miaule(), Griffe(), Dort(), Chasse_les_Souris(), etc...

Attention : c'est un TYPE d'objet, pas l'objet lui-même.

Chaque félin crée est une référence différente de la Classe Chat..

La "classe" c'est un petit peu comme un modèle d'objet..


Pour la hierarchie :
  • L’objet « chien » est une sorte d’objet « mammifère »
  • L’objet « » est une sorte d’objet « animal »
  • L’objet « animal » est une sorte d’objet « être vivant »
Si tu a un objet de type Chien, tu peut l'utiliser comme si c'était un objet de type "être vivant" ou "mammifère": il  "hérite" des propriétés et des méthodes des types d'objets "parents"..

Par contre, et la on est plus concret , si dans un script tu met

Object MonObjet

SI TOI tu sais que ton object c'est un Actor (par exemple), le COMPILATEUR LUI ne le sais pas.
Tu ne pourra pas compiler un

MonObjet.SetAv ....

... car SetAv est une méthode réservé aux Actors je crois.....

Il faut donc "caster" ton objet , c'est à dire "dire au compilateur qu'il doit considérer temporairement que MonObjet est un Actor"

MonObjet.AsActor.SetAv...

ou quelque chose dans le style....

Désolé pour le pavé, je suis un peu HS...
PNOG
PNOS

On a toujours besoin d'un petit PNO chez soi (merci Neluche)

#11 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 01 octobre 2012 - 19:10

non, t'es dans la suite de mon explication, avec tous les termes techniques, c'est tout... (je les avais volontairement omis...)

une correction toutefois dans la méthode de cast puisque beaucoup sont adeptes du copié collé :

(MonObject as Actor).SetActorValue("Health",42)

pour ce qui est des vigiles, je parlais du "cristal de stendarr", nommé "Stendarr Beacon" en VO, situé un peu avant la frontière avec morrowind...

Modifié par Aurix, 01 octobre 2012 - 19:11.

"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...

#12 Spitoven

Spitoven

Posté 02 octobre 2012 - 11:13

 Aurix, le 01 octobre 2012 - 19:10, dit :

pour ce qui est des vigiles, je parlais du "cristal de stendarr", nommé "Stendarr Beacon" en VO, situé un peu avant la frontière avec morrowind...

Ah bon ? Il a été ajouté par Dawnguard ? Mais il est tout nain, c'est juste une tourelle... Ça ne remplace pas le bastion :(
Image IPB

#13 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 02 octobre 2012 - 13:21

non, il n'a pas été ajouté par Dawnguard... par contre, c'est bien aussi grand que l'autre... et sincèrement, ce sont des blaireaux, ils ne servent pas à grand chose...
"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...

#14 Spitoven

Spitoven

Posté 02 octobre 2012 - 14:46

 Aurix, le 02 octobre 2012 - 13:21, dit :

non, il n'a pas été ajouté par Dawnguard... par contre, c'est bien aussi grand que l'autre... et sincèrement, ce sont des blaireaux, ils ne servent pas à grand chose...

Je suis d'accord, mais ça ne m'empêche pas de vouloir reconstruire leur bastion...
Image IPB

#15 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 02 octobre 2012 - 22:40

Leur "bastion", c'était pas une petite chaumière minable dans un coin paumé ? Si jamais tu fais un mod pour sa reconstruction, fais en un vrai bastion, un truc qui en jette...

Sur ce, on s'est vraiment écartés du sujet pour le coup...

Modifié par Aurix, 02 octobre 2012 - 22:40.

"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...

#16 Spitoven

Spitoven

Posté 03 octobre 2012 - 13:44

 Aurix, le 02 octobre 2012 - 22:40, dit :

Leur "bastion", c'était pas une petite chaumière minable dans un coin paumé ? Si jamais tu fais un mod pour sa reconstruction, fais en un vrai bastion, un truc qui en jette...

Mais je n'ai pas non plus envie de faire un bastion qui en jette pour des "blaireaux"... Comme je l'ai dit, je veux juste le faire redevenir comme il était avant :)

Modifié par Spitoven, 03 octobre 2012 - 13:44.

Image IPB

#17 Aurix

Aurix

    La Bidouille ou un truc comme ça


Posté 05 octobre 2012 - 12:48

espèce d'elfe... le changement, c'est bien des fois...
"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...

#18 Spitoven

Spitoven

Posté 26 décembre 2012 - 14:57

Bon, depuis le temps, de l'eau a coulé sous les ponts et les scripts de Dawnguard doivent avoir commencé à être bien connus des moddeurs. Mais pour ma part, je n'ai toujours pas trouvé le script qui cause la destruction du bastion des vigiles, et donc je ne vois toujours pas comment le reconstruire. Quelqu'un a-t-il une idée sur la question ?

Modifié par Spitoven, 26 décembre 2012 - 21:28.

Image IPB




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

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