La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 19/04/2025 21:08:03


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Djezebel
Héros
Inscrit le: 29 Sep 2005
Messages: 252
Répondre en citant
Posté le : 22/11/2005 18:51:12 Sujet du message : [Question] Arène dans une ville

Bonjour à tous (et en particulier à Black Knight qui a été attiré par le titre)

J'aimerai utiliser dans le tileset de base de la ville la partie "arène" (zone 3x3) et qu'il y ait dedans ces évènements :

Tout autour, j'aimerai poster des PNJ qui acclameraient au moment du combat.

Un PNJ "Monsieur Loyal" permettrait au joueur soit d'affronter un autre joueur, soit d'affronter un monstre (de son niveau, inférieur ou supérieur).
Une fois que le joueur accepte, il se retrouve dans l'arène et doit combattre... ou mourir.

Le "problème" c'est qu'il ne faudrait pas que la créature s'attaque aux PNJs et vice versa.
Autre idée : il ne faut pas non plus que pendant le combat les joueurs puissent entrer dans l'arène.

Des idées sur comment procéder ? Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 22/11/2005 22:42:50 Sujet du message :

Pour que les créatures n'attaquent pas les PNJ, je crois que tu peux gérer ça par l'éditeur de faction, soit tu crèes des créatures spéciales pour l'arène et tu les mets dands une faction amicale avec la faction de base "populace", soit tu fais l'inverse, tu crèes une faction de PNJ pour les spectateur amicale avec la faction "hostile" (et les autres aussi en passant Wink)

Pour interdire l'accès à d'autres joueurs dans l'arène, essaye avec des triggers sur les accès, j'ai ça comme idée.

Le plus dur, c'est à mon avis de virer les joueurs qui s'y trouveraient avant, je crois que c'est possible en faisant un autre trigger dans l'arène, il y a une commande qui permet de retrouver les objets présents dedans, après tu les vires.

(la commande c'est un truc comme GetFirstPersistantObject(), enfin il y a persitant dedans cherche avec ça), je sais pas comment ça marche du tout... avec une boucle je crois (ils utilisent la fonction dans XP1 pour trouver les portes dans les endroit ou tu peux dormir quand les portes sont fermées si tu veux chercher un exemple).

Enfin c'est que des pistes, mais si ça peut aider.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Black Knight
Grand Maître Chanteur du Conseil
Inscrit le: 27 Oct 2005
Messages: 1031
Localisation: Fin fond du trou du cul du monde
Répondre en citant
Posté le : 23/11/2005 14:45:55 Sujet du message :

C'est simple d'évite a ce que un autre joueurs évite d'allé sur l'arene, si celle la est deja "possede". Il suffit de faire dans un dialogue, mettre une variable a 1, et de retire la variable des que le PJ sort d'un declencheur qui se trouverais dans la zone "arene". Aussi il ne faut pas mettre un trigger qui empeche d'entrer, car il y a plusieurs facon de passe un declencheur. Donc tu mets des barrieres a la place Very Happy. Si tu veut que je te fasse le script (qui est simple) pour évite d'entrer dans la zone tu me le dit Very Happy



Citation :
Bonjour à tous (et en particulier à Black Knight qui a été attiré par le titre)
Je comprend pas lol...
_________________
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Djezebel
Héros
Inscrit le: 29 Sep 2005
Messages: 252
Répondre en citant
Posté le : 23/11/2005 15:21:19 Sujet du message :

L'idée de mettre une variable à 1 est sympa, c'est ce que j'ai commencé à faire.

- Le PNJ (monsieur Loyal) demande au joueur s'il veut entrer dans l'arène.
Si le joueur dit "oui", il a une variable = 1

Sur le sol de l'arène, il y a un trigger.
Quand il le passe, il y a la création d'un objet (une barrière) pour l'empêcher de sortir (mouahaha) et une créature qui spawn.

A ce sujet, y a-t-il moyen de faire apparaitre la créature en fonction du niveau du joueur ? Ou d'avoir une créature "type" et la modifier par un script en fonction de l'adversaire ?

Une fois la créature tuée, la barrière s'enlève et la variable = 2.

Autre question : y aurait-il moyen que Monsieur Loyal demande à un joueur s'il désire affronter une créature ou un autre joueur et dans ce dernier cas, qu'un autre joueur se présente pour affronter le premier ?

PS Black Knight : Tu commences toujours tes posts par "Je fais un module arène" Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Black Knight
Grand Maître Chanteur du Conseil
Inscrit le: 27 Oct 2005
Messages: 1031
Localisation: Fin fond du trou du cul du monde
Répondre en citant
Posté le : 23/11/2005 17:17:49 Sujet du message :

Hmmm je ne comprend pas, pourquoi mettre une barriere des que le joueur demende d'entrée dans l'arene et aussi pourquoi mettre la variable a 2 quand c'est fini ? C'est mieu de la mettre a 0 je pense. Sinon pour mettre un joueur il faudrais mettre une variable a 1 (une autre) et faire un LocalObject (GetModule bien sur) du premier joueur qui demende d'entre. Apres tu met un phrase "Je suis le deuxieme adversaire" si la variable est a 1 et tu teleporte le LocalObject, et le deuxieme qui parle

NWScript :
void main()
{
SetLocalInt(GetModule(), "AreneUtilise", 1);//Ici la variable qui dit que l'arene ne peut pas etre utilise, je pense qu'il faudrais la mettre que si le joueur decide de fighter un vrais joueur.
SetLocalObject(GetModule(), "JoueurAttente", oPC);//Ici c'est le joueur qui demende un autre adversaire, on le met dans une variable qui nous donnera la possibilite de le teleporte.
SetLocalInt(GetModule(), "AttenteDeuxiemeAdversaire", 1);//Ici c'est la variable pour actionner la phrase qui par exemple dira "Etes vous l'adversaire attendue". Donc faudra une condition dans la phrase
SetLocalInt(oPC, "EnAttente", 1);//Ici c'est pour empeche le joueur en attente de reparle au Garde d'arene, car si il dit "oui je suis l'adversaire attendue", il vas y avoir leger comflit lol
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


NWScript :
void main()
{
AssignCommand(oPC, ActionJumpToLocation(GetLocation(GetWaypointByTag("Arene"))));//Ici on teleporte l'adversaire demende
AssignCommand(GetLocalObject(GetModule(), "JoueurAttente"), ActionJumpToLocation(GetLocation(GetWaypointByTag("Arene"))));//Ici on teleporte l'adversaire en attente grace au LocalObject
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.


Voila le premiere est script est a mettre dans une Action d'une phrase, par exemple, si le joueur dit "Je veut combattre un autre joueur". Le deuxieme script est a mettre dans la phrase "oui" si il y a un deuxieme joueur qui parle au garde d'arene. Aussi il ne faut pas oublier les condition sinons sa vas foiré.
Si tu veut plus d'aide tell-me !
_________________
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Montrer les messages depuis :
Page 1 sur 1 ¤


Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 43.838ms