Aller au contenu


Vendeur De Clé


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

#1 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 17:30

Salut !

Je reprends le modding depuis peu, et j'ai fait une espèce de compilation comprenant plusieurs mods disponibles sur wiwland (nota. Repaire et A good place to stay) ainsi que des mods que j'ai faits moi-même. j'ai ajouté des maisons sympa, et pour que ça soit pas trop bidon, j'ai créé des clefs qui coûtent très cher, l'objectif étant que, pour entrer dans la maison dont la porte est "locked" à 0, il faut en avoir la clé. J'ai donc pendu ces clefs sur le mur chez l'ami Arrile, et l'ai défini comme propriétaire de celles-ci. J'ai bien vérifié qu'il vendait tous les types d'objets, et comme il est verrouillé dans les TESCS, je l'ai déverrouillé, au cas où.

En dépit de tout çà, quand je lui parle, les clefs ne sont pas proposées parmi les items qu'il vend. Je n'ai pas essayé de les mettre dans son inventaire, mais je sais que les commerçants peuvent vendre tout objet leur appartenant, par exemple Arrile, qui vend des casques stockés dans sa cave.

Une idée ?
Au pire, si c'est impossible, je mettrai la main dans le cambouis avec des "choice" qui enlèvent des sous et ajoutent les clés.
Merci d'avance sleeping.gif

Modifié par Kessiah Krorgh, 27 janvier 2010 - 17:32.

Bonne journée

#2 Kira

Kira

    Top-modeleuse...


Posté 27 janvier 2010 - 18:55

Bonjour Kessiah Krorgh....

As-tu essayé de mettre les clés dans un coffret déclaré lui-même propriété d'Arrile?...

Pour ma part, si je souhaite exposer des objets proposés à la vente, je les mets dans un coffre appartenant au vendeur et j'expose des faux objets, statics ou activateurs...

En fait, je ne sais pas vraiment si le jeu arrive à gérer correctement le fait de vendre des objets laissés à l'extérieur...
Tout n'est qu'illusion... Surtout le fait de le penser.....
Image IPB
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)

#3 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 18:56

Pas bête... Je fais le test immédiatement, et j'up pour dire çà.

[UP] Non, marche pas. J'ai mis les clés dans son petit coffre, toujours rien. J'ai réglé la valeur des clefs à 300 pour le moment, mais je me suis aperçu en passant le curseur sur les clefs (in game) que ni valeur ni poids n'étaient affichés; du coup je me demande si les clés sont des items vendables... J'essaie de regarder çà.

En attendant, je me suis penché sur l'autre option. J'ai construit l'architecture du dialogue comme présenté sur les captures disponibles ICI, mais à chaque fois Arrile me renvoie la réponse "Vous n'avez pas assez de blé". Quand je supprime les deux réponses "pas assez de blé", le choice m'est proposé en boucle.

J'arrive vraiment pas à comprendre.

Modifié par Kessiah Krorgh, 27 janvier 2010 - 19:13.

Bonne journée

#4 Kira

Kira

    Top-modeleuse...


Posté 27 janvier 2010 - 19:53

Coucou Kessiah Krorgh, c'est encore moi...

N'ayant jamais essayé moi-même de vendre une clé, je suis allée voir dans le Tescs si elles avaient une particularité, et il semblerait qu'il y ait trois choses qui les différencient des autres objets dans le Tescs, et une dans le jeu...

-Dans le Tescs, toutes les clés ont un nom qui commence par "key" et un poids de 0, et elles coutent toutes 300 Po...

-Dans le jeu, les clés sont invendables aux marchands...

Donc, il faudrait peut-être essayer de leur adjoindre un poids, de 0,1 par exemple, et voir si cela change quelque chose...
Tout n'est qu'illusion... Surtout le fait de le penser.....
Image IPB
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)

#5 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 21:57

Bon, ben rien ne marche côté vente. Je crois que les clés ne sont tout simplement pas des items vendables. Mais je viens d'avoir une idée : Je vais baser ma clé sur une fourchette. Ca se vend, çà, les fourchettes. Non mais.

[UP] Bon, ça marche. Comme il n'y a aucune différence entre une assiette qui pèse 0.2, qui a une texture de clé et qui coûte 5000 autre que le préfixe, je crois que tout simplement les items dont l'ID commence par "key_" sont retirés des propositions de vente par le jeu. Mes clefs s'appelleront donc "cle_kessiah" et "cle_hoyliara",et le tour est joué.

En revanche, si tu as une idée (ou qui que ce soit d'autre) pour le système via le dialogue, je suis intéressé.

[UP 2] Ben voilà que ça marche plus... Je laisse tomber le coup du type qui vend les clés. Je vais utiliser la fonction dialogue, mais ça marche toujours pas (cf plus haut). Si quelqu'un a une idée...

Modifié par Kessiah Krorgh, 27 janvier 2010 - 22:19.

Bonne journée

#6 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 27 janvier 2010 - 22:27

Bonsoir!

En fait, le préfixe KEY n'y est pour rien. Un misc item est considéré comme clé à partir du moment où une porte l'utilise en tant que clé. C'est surement ainsi que le sort "Détection de clés" différencie les clés des autres misc items.

pour le dialogue, vérifie que les deux réponses du choice sont placées AVANT la question. Vérifie également que les conditions sont bien remplies.

Modifié par Von Zeeple, 27 janvier 2010 - 22:30.

Le Steampunk, c'est bon, mangez en  !

#7 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 22:57

J'ai vérifié, vérifié et re revérifié. J'ai mis un lien avec les images, si tu les prends, peut-être que tu verras mieux de quoi il s'agit ? De plus, mon choice a 3 réponses. Qu'est-ce que tu entends par placés AVANT ? En-dessous ou au-dessus ?
Bonne journée

#8 elendell

elendell

    Mécano Dell'Arte


Posté 27 janvier 2010 - 23:08

Bonsoir,

Je m'étais posé les mêmes questions en travaillant sur "Trousseaux et Clés".

Ce qui fait d'un objet une clé est exactement ce que dit Von Zeeple et uniquement ça (pour la détection également).

La solution est toute simple :

Il faut faire 2 clefs, une fausse et une vrai, rigoureusement identiques. Seule la vrai est attribuée comme clef dans la fiche de la serrure. La fausse est à mettre en vente et comme ce n'est pas une clef, elle sera bien en vente.

Il faut mettre ce script (ou un similaire) en local à la fausse clef :

begin ChangeClef_Local

if ( Player->GetItemCount FausseClef >= 1 )
	if ( ScriptRunning, ChangeClef_Global == 0 )
		StartScript ChangeClef_Global
	endif
endif

end

Il faut également faire le script global suivant (ou similaire) :

begin ChangeClef_Global

if ( MenuMode == 1 ); pour que le changement ne soit pas indiqué
	Return
endif

if ( Player->GetItemCount FausseClef >= 1 )
	Player->RemoveItem FausseClef, 1
	Player->AddItem VraiClef, 1
else
	StopScript ChangeClef_Global
endif

end

En faisant comme ça, on ne peut par contre pas revendre la clef. Si on veut avoir cette possibilité supplémentaire, il faut ajouter des instructions aux scripts.

#9 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 23:12

Oulà, j'ai pas encore touché au scripting, et j'aimerais pour le moment me contenter de ce que je sais faire ^^ J'ai préféré laisser tomber le coup du vendeur de clefs.
Tu n'aurais pas plutôt une idée de la manière dont je peux mener mon dialogue (cf plus haut) ?

Modifié par Kessiah Krorgh, 27 janvier 2010 - 23:13.

Bonne journée

#10 elendell

elendell

    Mécano Dell'Arte


Posté 27 janvier 2010 - 23:26

Voir le messageKessiah Krorgh, le 27.01.2010 à 23:26, dit :

Oulà, j'ai pas encore touché au scripting, et j'aimerais pour le moment me contenter de ce que je sais faire ^^ J'ai préféré laisser tomber le coup du vendeur de clefs.
Tu n'aurais pas plutôt une idée de la manière dont je peux mener mon dialogue (cf plus haut) ?
Heu... Les scripts sont tout prêts là. Il suffit juste de changer "FausseClef" par l'ID de la fausse clef et VraiClef" par l'ID de la vrai clef.
Effectivement, tu aurais peut-être quelques petites surprises mais très facilement surmontables.

Mais c'est toi qui voit. Pour les dialogues, d'autres t'aideront certainement. Ce n'est pas que je ne veuille pas te répondre mais je n'ai pas le temps maintenant. Bonne continuation.

#11 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 27 janvier 2010 - 23:28

Le problème dans ton dialogue vient du "Gold_100". L'item Gold_100 représente un tas de 100 pièces d'or. Donc en fait, ton prix est de 100x5000 !
Remplace l'item "Gold_100" par "Gold_001", qui est conventionnellement utilisé pour ajouter/enlever de l'or au PJ. N'oublie pas de modifier cela également dans les conditions du dialogue.
Le Steampunk, c'est bon, mangez en  !

#12 Kessiah Krorgh

Kessiah Krorgh

Posté 27 janvier 2010 - 23:47

Aaaaaahhhh, en effet, ! Merci beaucoup ! Je teste direct tout de suite !
Bonne journée

#13 Kira

Kira

    Top-modeleuse...


Posté 28 janvier 2010 - 03:23

Coucou...
Désolée de repasser un peu après la bataille, mais si tu veux que la clé soit en vente chez un marchand, la solution la plus simple est de faire un misc_item en forme de clé et de scripter la porte pour qu'elle ne s'ouvre que si tu as cette clé en ta possession...
Si ça t'intéresse, j'ai retrouvé un script destiné à cet usage qui traîne dans mon disque dur, je te le fais passer...

begin "k_outdoor"

	 if ( MenuMode == 1 )
			 return
	 endif

	   if ( OnActivate == 1 )
			   if ( Player->GetItemCount "k_main_key" > 0 )
							Activate
					 else
			   MessageBox "Vous esperiez vraiment entrer sans la clé?"
			endif
		endif
  end

Ce script est à mettre sur la porte du coté extérieur... Et il gardera la porte fermée à toute personne qui ne possède pas la clé, alors, comme je suis assez distraite, j'ai rattaché cet autre script sur la porte du coté intérieur...

begin "k_exit_door"
   
	 if ( MenuMode == 1 )
			 return
	 endif

	   if ( OnActivate == 1 )
			   if ( Player->GetItemCount "k_main_key" > 0 )
							Activate
					 else
			   MessageBox "N'oubliez pas votre clé!"
			endif
		endif
end

afin de me rappeler à l'ordre si je sors en ayant oublié de prendre ma clé... Je dois avouer que cette précaution m'a déjà évité plusieurs fois de devoir dormir dehors...

Ce n'est pas la solution la plus intelligente qui soit, mais elle a l'avantage d'être simple et de marcher correctement...

Si tu veux l'utiliser, il te suffira de changer le nom des scripts et de remplacer "k_main_key" par l'id de ta propre clé....
Tout n'est qu'illusion... Surtout le fait de le penser.....
Image IPB
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)

#14 Kessiah Krorgh

Kessiah Krorgh

Posté 28 janvier 2010 - 03:29

C'est gentil, merci :wacko:

Celà dit, j'ai laissé tomber pour le moment le coup du vendeur de clefs, parce que je ne sais pas scripter, et que ça m'ennuie un peu d'écrire des trucs que je ne comprends pas. Dans l'absolu, je l'aurais fait, mais j'ai la ferme intention de m'initier au scripting sous peu, donc ça patientera jusque là. En attendant, dialogues ^^
La solution de Von Zeeple m'a -en théorie, j'ai fait la correction mais pas testé- débloqué sur ce point. Je taggerai "résolu" quand j'aurai fait le test. Merci encore de vos réponses, ce topic reste dans un coin de mon cerveau :green:
Bonne journée

#15 elendell

elendell

    Mécano Dell'Arte


Posté 28 janvier 2010 - 05:02

Hello !

@ Kessiah Krorgh : Je poste à nouveau non pas pour revenir à la charge sur les scripts, car j'ai bien compris ton choix mais pour d'éventuels futurs lecteurs qui voudraient faire comme ton idée initiale (clef en vente) et qui correspond au titre de ce sujet.  :wacko:


Les scripts de Kira sont effectivement une autre solution valable pour permettre une vente de clef. Le choix des scripts sera donc en fonction de l'effet recherché, qui sera différent suivant si l'on utilise les scripts proposés par Kira ou ceux que j'ai postés plus haut.

Dans les deux cas, on utilise une fausse clef pour qu'elle puisse être en vente chez un marchand et cette clef permettra bien d'ouvrir la ou les serrures.

Dans le premier cas, la fausse clef est remplacée par la vrai au moment de l'achat, de manière invisible pour le joueur. C'est la fausse clef qui est "scriptée" (+ un script global qui se lance temporairement au moment de l'achat).
Conséquences :
- La clef ne peut pas être revendue par la suite
- La serrure peut être ouverte sans la clef par un sort ou un crochet, comme toutes les serrures non "scriptées" du jeu
- Une fois la serrure ouverte, il n'y a plus besoin d'avoir la clef sur soi
- Les deux scripts suffisent quelque soit le nombre de serrures que la clef est sensée ouvrir

Dans le deuxième cas, la fausse clef n'est pas remplacée par une autre mais peu importe pour le joueur qui voit de toute manière une clef. C'est la serrure qui est "scriptée".
Conséquences :
- La clef peut être revendue par la suite
- La serrure ne peut pas être ouverte sans la clef, ni par un sort, ni en la crochetant
- Il faut toujours avoir la clef sur soi quand on veut ouvrir la serrure
- Il faut mettre un script à chaque serrure que la même clef est sensée ouvrir

Le choix dépend donc de l'objectif recherché.  :green:




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

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