Le Val de Bise - Module NWN Forum du Val de Bise, module RP de Neverwinter Nights |
|
| [Joueurs] Les chevaux | |
| | Auteur | Message |
---|
Max Satyre avec un éventail et une petite flûte
Nombre de messages : 5094 Age : 37 Habitat : Sanctuaire du Dragon Rouge, à l'auberge de la ceinture qui craque.
| Sujet: [Joueurs] Les chevaux Jeu 31 Déc - 16:45 | |
| Je le redis ici pour que tout le monde vois ^^ Concernant les chevaux: -concernant le prix: un bug réside actuellement, faisant que le prix annoncé est de 100 000 pos mais il nécessite 300 000 pos. Ce bug devrait être corrigé prochainement. -concernant les nouveaux skin: ils ne fonctionne pas, entendez par là que si vous prennez un des nouveaux skin proposé dans l'écurie de Luskan, vous aurez un skin de cheval standart (un des 4 proposés avant) -il semble qu'il faille faire un script spécifique pour chaque skin de chevaux souhaité, il semble donc difficile pour nous sans scripteur confirmé de rajouter des skin. En revanche, ce que je m'engage à faire pour la prochaine MAJ, c'est rassembler l'ensemble des skin des chevaux déjà scriptés sur Luskan (à savoir ceux de Padhiver, Luskan et Lorgol) Voiloux, en vous souhaitant un bon réveillon, à l'année prochaine! | |
| | | Max Satyre avec un éventail et une petite flûte
Nombre de messages : 5094 Age : 37 Habitat : Sanctuaire du Dragon Rouge, à l'auberge de la ceinture qui craque.
| Sujet: Re: [Joueurs] Les chevaux Jeu 31 Déc - 19:02 | |
| Suite à la MAJ d'aujourd'hui, les skin sont corrigés mais beaucoup plus limité. Vous aurez néanmoins le skin choisi lors de l'achat de votre cheval. Le Bug des prix est toujours actif, à savoir que votre cheval coute toujours 300 k et non 100 k | |
| | | Aelthas Eclaireur du flood
Nombre de messages : 16
| Sujet: Re: [Joueurs] Les chevaux Lun 4 Jan - 7:21 | |
| Bon bon bon.... Pour le problème de prix des chevaux, dans la conversation du palefrenier, si c'est bien ainsi que ça fonctionne, lorsque le joueur choisi son cheval, dans "action taken", vous aurez un bout de script qui ressemble ça : - Code:
-
object oPC = GetPCSpeaker();
AssignCommand(oPC, TakeGoldFromCreature(300000, oPC, TRUE)); Il suffit de changer la valeur numérique par le prix désiré et tout devrait fonctionner.... Sinon pour les chevaux de la 1.69, voici un petit manuel utile que vous pourriez utiliser : http://nwvault.ign.com/View.php?view=Scripts.Detail&id=3412Bonne chance | |
| | | Max Satyre avec un éventail et une petite flûte
Nombre de messages : 5094 Age : 37 Habitat : Sanctuaire du Dragon Rouge, à l'auberge de la ceinture qui craque.
| Sujet: Re: [Joueurs] Les chevaux Lun 4 Jan - 14:36 | |
| En fait, le palfrenier ne vend pas les chevaux, il accueil juste. La vente et les script de vente sont sur les chevaux.Voici ce que nous avons:Dialogue du cheval léger :"Ce cheval vous intéresse?" "Oui" "Il coûte 60 000 pièces d'or"=>condition d'execution: dlg_ecurie_test1 - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_test1 //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:34:04 //::////////////////////////////////////////////// int StartingConditional() { // Inspect local variables if(!(GetLocalInt(GetLastSpeaker(), "warhorse") == 1)) { SetLocalInt(GetPCSpeaker(),"warhorse",0); return FALSE; } else { SetLocalInt(GetPCSpeaker(),"warhorse",1); return TRUE; } }
=>Action conséquente: dlg_ecurie_achat - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_achat //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:42:48 //::////////////////////////////////////////////// #include "database_include" void main() { // Remove some gold from the player if((GetLocalInt(GetPCSpeaker(), "warhorse") == 1)) { TakeGoldFromCreature(100000, GetPCSpeaker(), TRUE); } else { TakeGoldFromCreature(60000, GetPCSpeaker(), TRUE); } FloatingTextStringOnCreature("*vient d acheter un cheval!*",GetPCSpeaker(),TRUE); int id_cheval=db_achat_cheval(GetPCSpeaker(),GetLocalString(GetPCSpeaker(),"resref")); object oCheval = CreateObject(OBJECT_TYPE_CREATURE,GetLocalString(GetPCSpeaker(),"resref"), GetLocation(GetNearestObjectByTag("WP_ECURIE",GetPCSpeaker(),1)),FALSE,"cheval_PJ_"+IntToString(id_cheval)); SetName(oCheval, db_name_cheval(id_cheval)); }
"Je veux l'acheter"=>Condition d'éxécution: dlg_ecurie_test2 - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_test2 //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:34:04 //::////////////////////////////////////////////// #include "nw_i0_tool" int StartingConditional() { // Make sure the PC speaker has these items in their inventory if(GetGold(GetPCSpeaker())<60000) return FALSE; return TRUE; }
Action conséquente: dlg_ecurie_achat - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_achat //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:42:48 //::////////////////////////////////////////////// #include "database_include" void main() { // Remove some gold from the player if((GetLocalInt(GetPCSpeaker(), "warhorse") == 1)) { TakeGoldFromCreature(100000, GetPCSpeaker(), TRUE); } else { TakeGoldFromCreature(60000, GetPCSpeaker(), TRUE); } FloatingTextStringOnCreature("*vient d acheter un cheval!*",GetPCSpeaker(),TRUE); int id_cheval=db_achat_cheval(GetPCSpeaker(),GetLocalString(GetPCSpeaker(),"resref")); object oCheval = CreateObject(OBJECT_TYPE_CREATURE,GetLocalString(GetPCSpeaker(),"resref"), GetLocation(GetNearestObjectByTag("WP_ECURIE",GetPCSpeaker(),1)),FALSE,"cheval_PJ_"+IntToString(id_cheval)); SetName(oCheval, db_name_cheval(id_cheval)); }
OU "Il coute 100 000 pièces d'or."*aucun script* "Je veux l'acheter"=>Condition d'execution: dlg_ecurie_test3 - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_test2 //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:34:04 //::////////////////////////////////////////////// #include "nw_i0_tool" int StartingConditional() { // Make sure the PC speaker has these items in their inventory if(GetGold(GetPCSpeaker())<100000) return FALSE; SetLocalString(GetPCSpeaker(),"resref",GetLocalString(OBJECT_SELF,"resref")); return TRUE; }
=> Actions conséquentes: dlg_ecurie_achat - Citation :
- //::///////////////////////////////////////////////
//:: FileName dlg_ecurie_achat //::////////////////////////////////////////////// //::////////////////////////////////////////////// //:: Created By: script Wizard //:: Created On: 01/09/2008 22:42:48 //::////////////////////////////////////////////// #include "database_include" void main() { // Remove some gold from the player if((GetLocalInt(GetPCSpeaker(), "warhorse") == 1)) { TakeGoldFromCreature(100000, GetPCSpeaker(), TRUE); } else { TakeGoldFromCreature(60000, GetPCSpeaker(), TRUE); } FloatingTextStringOnCreature("*vient d acheter un cheval!*",GetPCSpeaker(),TRUE); int id_cheval=db_achat_cheval(GetPCSpeaker(),GetLocalString(GetPCSpeaker(),"resref")); object oCheval = CreateObject(OBJECT_TYPE_CREATURE,GetLocalString(GetPCSpeaker(),"resref"), GetLocation(GetNearestObjectByTag("WP_ECURIE",GetPCSpeaker(),1)),FALSE,"cheval_PJ_"+IntToString(id_cheval)); SetName(oCheval, db_name_cheval(id_cheval)); }
Voilà, donc je ne vois pas où est le problème. Les symptômes sont: "mode dr house"-dialogue cheval: propose 100 000 pos pour tous les chevaux au lieu de 60 000 pour chevaux léger et 100 000 chevaux lourds-script cheval: prend pour tous 300 000 pos (avant prenait 500 000 pour les chevaux lourds, donc y'a bien eu un changement ) Je me demande après si l'importation du module sur le pc serveur importe aussi les script modifiés? (il importe les dialogues mais les scripts...) | |
| | | Velkyor Zoolander
Nombre de messages : 1728 Age : 113 Habitat : Jamais bien loin
| Sujet: Re: [Joueurs] Les chevaux Lun 4 Jan - 16:58 | |
| Ce que je me demande c'est pourquoi il prend 300 000 alors que nulle part on a cette somme d'enregistrée. Ne prendrait-il pas 3 fois 100 000, c'est à dire qu'on aurait une boucle de perte de PO dans toutes les conditions du dialogue ? | |
| | | -renaissance- Conseiller Cthulhu
Nombre de messages : 2924
| Sujet: Re: [Joueurs] Les chevaux Lun 4 Jan - 17:18 | |
| Si mes souvenirs sont bons, mais ça remonte d'un autre côté, le palfrenier demandait bien 500 000Po, il fallait bien avoir 500 000Po pour pouvoir accepter, mais quand on validait l'achat du cheval, il ne nous était pris que 300 000Po.
Sous toutes réserves bien sûr, mais si ça peut vous aiguiller. | |
| | | Max Satyre avec un éventail et une petite flûte
Nombre de messages : 5094 Age : 37 Habitat : Sanctuaire du Dragon Rouge, à l'auberge de la ceinture qui craque.
| Sujet: Re: [Joueurs] Les chevaux Lun 4 Jan - 17:46 | |
| En fait il semblerait qu'il faille changer le script qui est externaliser, seulement nous cherchons comment sauvegarder un script en dehors du module ^^ | |
| | | Invité Invité
| Sujet: Re: [Joueurs] Les chevaux Mar 5 Jan - 11:54 | |
| Il faut écrire le script dans un fichier texte dont l'extension est .nss (Neverwinter Source Script). Il faut compiler le script dans un fichier dont l'extension est .ncs (Neverwinter Compiled Script) à l'aide du compilateur de script qui se trouvait auparavant sur le serveur.
Il faut placer le fichier .ncs dans le répertoire prévu pour l'exécution des scripts (en gros: là ou se trouve tous les autres ncs). Il faut avoir un script interne au module qui comprend la commande "ExecuteScript('Mon script')" qui lancera l'exécution du script externe. Ce dernier point est une généralité, mais il existe des exceptions (script appelé ailleurs que dans un script interne, pour une raison X ou Y. En général cependant, c'est un script interne qui appelle un ou des script(s) externe(s)).
Vu que je ne comprenais pas bien les points précis de ta question, Max, j'ai tout mis ci-dessus ^^. |
| | | Contenu sponsorisé
| Sujet: Re: [Joueurs] Les chevaux | |
| |
| | | | [Joueurs] Les chevaux | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|