Vous n'êtes pas connecté. Connectez-vous ou enregistrez-vous

Les bases des événements. [Part 1/2]

Aller en bas  Message [Page 1 sur 1]

Aurusse

avatar
Administrateur
Administrateur
Bonjour à toutes et tous.

Dans ce guide, je vous apprendrai tout les moyens mis à votre disposition pour faire vos événements.
C'est à dire que vous apprendrez l'utilité des switchs et variables, des explications sur chaque fonction actuellement disponible ainsi que les divers moyens de lancer un événement.
Vous apprendrez dans un autre guide comment créer des événements et la logique à suivre.


Les variables.

Il existe actuellement 2 variables. Les variables dites "locales" et les variables "serveurs". Elles ont toutes deux le même but: enregistrer une valeur/nombre.
Vous me demanderez certainement pourquoi il existe 2 variables pour cela et à quoi cela sert d'enregistrer un nombre ?

Je vais d'abord répondre à la première question: "pourquoi il existe 2 variables":
Les variables serveurs sont les mêmes pour tout le monde alors que les variables locales sont propres à chaque joueur.
Autrement dit, si la 1ère variable du serveur contient le nombre "7", tout le monde verra cette variable contenir le nombre "7".
Alors que si un joueur "A" a sa première variable locale à "5", un joueur B n'aura pas sa première variable locale à "5" mais peut être "3"; cela dépendra des actions du joueur qui l'auront conduit à avoir ce nombre.

Maintenant, la seconde question: "à quoi cela sert d'enregistrer un nombre":
Cela permet d'enregistrer l'avancement/l'état d'un joueur ou de tout les joueurs au cours d'un événement.
L'exemple basique est l'avancement du joueur dans une quête, nous utiliserons donc une variable locale comme suit:
si la variable est à 0, le joueur n'a pas encore commencé la quête X... si la variable est à 1, le joueur a commencé la quête X mais ne l'a pas encore terminée... si la variable est à 2, le joueur a fini la quête X et ne peut plus la refaire.

Ainsi vous pouvez voir que chaque nombre vaut un stade que "J'AI" déterminé. Vous pouvez à votre tour choisir ce  que vaut le nombre lorsque vous utiliserez une variable.
Je viens de vous donner un exemple pour une variable locale, voici un exemple pour une variable serveur:
Imaginons qu'il y a une invasion de rat dans un village et qu'il y a une récompense de 15 pièces d'or chaque fois que 10 rats sont tués (peu importe par qui). Chaque fois qu'un joueur tuera un rat, une variable serveur sera augmentée de 1; une fois arrivée à 10, le joueur qui aura tué le 10ème rat recevra 15 pièces d'or et la variable sera remise à 0. (Ainsi la boucle est bouclée).

Cela peut vous sembler difficile de vous y retrouver lorsque vous aurez une dizaine de variables. Mais heureusement pour vous, vous pouvez choisir un nom à donner à chaque variable. Je vous conseil donc vivement de donner des noms explicite à chaque fois que vous utiliserez une variable afin de vous y retrouver simplement sans avoir besoin de 20 min pour vous rappeler à quoi correspond telle ou telle variable.

En bref:
Une variable sert à enregistrer un nombre.
Une "variable serveur" contient une information pour tout les joueurs.
Une "variable locale", peut aussi être nommée "variable joueur", contient une information propre à chaque joueur.


Les switchs.

Cela va être beaucoup plus court à expliquer que les variables.
En effet, les switchs sont comme les "variables locales" (donc propre à chaque joueur) mais ne peuvent contenir que 2 "états": 0 (alias "Faux") ou 1 (alias "Vrai").
Voici un exemple d'utilisation: Un téléporteur ne peut fonctionner seulement si le joueur à le premier switch est sur "1" mais par défaut il est sur "0". Le joueur devra par exemple parler à un garde qui mettra le switch sur "1".
Dès lors le joueur pourra utiliser le téléporteur jusqu'à ce qu'une action fasse changer le switch à "0".


Vous l'aurez compris, il est parfois plus simple d'utiliser un switch qu'une variable local. Libre à vous de choisir ce qui vous convient le mieux.


Les fonctions.

Je vais citer ici chaque fonction avec une brève explication ainsi qu'un exemple d'utilisation.
astuce: si vous cherchez une fonction en particulier, sachez que je les cites par ordre d'apparition, de haut en bas et de gauche à droite. Vous pouvez aussi faire une recherche sur votre navigateur (CTRL+F).



[Communication]
/!\ Pour les fonctions "Dialogue basique", "Dialogue et Choix", "Bulle de Dialogue" et "Envoyer Message", vous pouvez afficher :
- le pseudo du joueur via la commande "/joueur".
- La variable serveur XXXX via la commande "/vsXXXX".
- La variable locale XXXX via la commande "/vlXXXX".
- Le switch local XXXX via la commande "/slXXXX".
- L'objet XXXX via la commande "/oXXXX".
- Le sort XXXX via la commande "/sXXXX".




- Dialogue basique: vous permet d'afficher un dialogue avec le sprite du joueur ou le sprite que vous souhaitez.
ex: Vous pouvez ainsi faire parler un PNJ et afficher le sprite du PNJ

- Dialogue et Choix: vous permet d'afficher un dialogue avec plusieurs choix de réponses. Chaque réponse permet d'aller à une ligne de l'événement.
ex: le dialogue et choix se situe à la ligne 1 et demande si le joueur veut connaitre son nom. Les réponses proposées sont "oui" et "non". Si le joueur répond "oui", on va à la ligne 2 où se trouve un dialogue lui donnant son nom; si le joueur répond "non", on va à la ligne 3 où se trouve la fonction "quitter cette événement".

- Bulle de Dialogue: vous permet d'afficher une bulle de dialogue avec le texte souhaité sur le joueur ou sur le PNJ de votre choix.
ex: Vous pouvez ainsi faire apparaître une bulle avec le texte suivante "Bonjour" à un garde chaque fois que le  joueur lui parle.

- Envoyer un Message: vous permet d'envoyer un message dans la couleur de votre choix au joueur/à tout les joueurs sur la carte/à tout les joueurs sur le serveur.
ex: Vous pouvez ainsi envoyer un message à tout les joueurs sur le serveur quand un joueur rejoint le serveur.

- Ouvrir la banque: vous permet d'ouvrir la banque du joueur au joueur.
ex: Vous pouvez ainsi faire un PNJ banquier qui ouvre la banque du joueur chaque fois qu'on lui parle.

- Ouvrir Magasin: vous permet d'ouvrir le magasin de votre choix au joueur.
ex: Vous pouvez ainsi faire un PNJ marchand qui ouvre le magasin de votre choix.


[Sons / GFX]


- Jouer Animation: vous permet de jouer l'animation de votre choix aux coordonnées X,Y de votre choix.
ex: Vous pouvez ainsi faire péter une animation "feux d'artifice" lorsque le joueur interagi avec une boite de feux d'artifice.

- Jouer un Effet Sonore: vous permet de jouer un effet sonore.
ex: Vous pouvez ainsi jouer le sons d'une porte qui s'ouvre chaque fois que le joueur passe une certaine porte.

- Jouer une Musique: vous permet de jouer une musique.
ex: Vous pouvez ainsi jouer une musique lorsque le joueur interagi avec un piano.

- Changer de Calendrier: vous permet de changer le calendrier pour le joueur seulement (le calendrier reviens à la normal en changeant de Carte).
ex: Le joueur boit une potion de mauvaise qualité, l'objet charge un calendrier qui met du brouillard rose.


[Programmation]

- Branche Conditionnelle: vous permet d'aller à une ligne si la variable locale/switch local/variable serveur/le niveau/l'heure/le jour est plus petit/plus grand/strictement plus petit/strictement plus grand égale/différent de la valeur choisie ou si le joueur possède tel objet, est telle classe ou connais tel sort. Dans tout les cas contraire, l’événement ira à la ligne négative.
En gros, si la condition que vous choisissez est respectée, le GoTo positif s’enclenche sinon c'est le GoTo négatif qui s’enclenche.
La branche conditionnelle est l'une des (si pas la) plus importante des fonctions.
ex: Vous souhaitez afficher un message au joueur de niveau 7 et plus. Il vous suffit de mettre une branche conditionnelle avec "Niveau est..." supérieur ou égal à 7, et mettre la ligne 2 si le résultat est positif et la ligne 3 si le résultat est négatif. À la ligne 2 vous mettez  le message et à la ligne 3 vous mettez "quitter cette événement".

- Changer un Switch local: vous permet de modifier le switch local du joueur en 1 ou 0.
ex: cf l'explication sur le switch pour un exemple.

- Changer une Variable Locale: vous permet de mettre une valeur précise ou d'ajouter/soustraire une certaine valeur à la valeur actuelle. Vous pouvez aussi ajuster une valeur aléatoire entre un X et un Y de votre choix à la variable locale du joueur.
ex: cf l'explication sur les variables pour un exemple.

- Changer une Variable Serveur: vous permet de mettre une valeur précise ou d'ajouter/soustraire une certaine valeur à la valeur actuelle de la variable serveur de votre choix.
ex: cf l'explication sur les variables pour un exemple.

- Attendre: vous permet de faire patienter l'événement durant 1 à 10 sec avant de passer à la suite.
ex: vous avez plusieurs paroles à faire dire à un même PNJ en bulle de dialogue. Faite apparaître la 1ère bulle puis attendre 5sec puis faite apparaître la 2ème bulle.

- GoTo: vous permet, une fois l'événement arriver à cette ligne, d'aller à la ligne de votre choix.
ex: une fois un texte dis, après une succession de texte, vous pouvez ainsi retourner où vous souhaitez, même au début de l'événement.

- Quitter cette Événement: vous permet de mettre fin à l'événement.
ex: dans une quête, après avoir donné l'objectif, le mieux est de quitter l'événement pour ne pas poursuivre et directement donner la récompense.

- Quitter si en cour d'utilisation: vous permet de quitter cet événement si un autre joueur utilise déjà cet événement.
ex: Si l'événement fait apparaître un boss, il serait dommage qu'un joueur fasse réapparaître le boss alors que ce dernier n'est pas encore mort.

- Démarrer Evenement: vous permet de lancer un événement X au joueur, à tout les joueurs sur la carte ou à tout les joueurs sur le serveur.
ex: Un boss meurt, vous pouvez lancer une récompense à tout les joueurs sur la carte.


[Joueur]

- Immobiliser Joueur: vous permet d'immobiliser ou de libérer le joueur. NB: à la fin de l'événement le joueur sera automatiquement libéré.
ex: le joueur est immobile le temps qu'une animation se fasse en entier.

- Glissade: vous permet de déplacer le joueur vers le haut/bas/gauche/droite d'une case.
ex: vous pouvez forcer le joueur en l'immobilisant à suivre un chemin précis.

- Changer Sprite: vous permet de changer le sprite du joueur.
ex: vous pouvez ainsi faire prendre au joueur la forme d'un arbre si vous voulez.
Mais attention, n'oublier pas les paperdolls !

- Changer Niveau: vous permet d'ajuster le niveau du joueur ou d'ajouter/soustraire X niveau au joueur.
ex: le joueur fini une quête spéciale qui lui donne automatiquement 2 niveau.

- Changer EXP: vous permet d'ajuster l'expérience du joueur ou d'ajouter/soustraire X expérience au joueur.
ex: le joueur fini une quête spéciale qui lui donne automatiquement 500 exp.

- Changer Classe: vous permet de changer la classe du joueur.
ex: le joueur fini un enseignement de ninja qui lui donne la classe de ninja.

- Changer si Assassin: vous permet de mettre/enlever un joueur en mode assassin.
ex: le joueur tue un pnj censé être gentil, il devient assassin.

- Changer Objet(s): vous permet d'ajuster le montant d'un certain objet X ou d'ajouter/soustraire Y montant d'un certain objet X.
ex: le joueur fini une quête, on lui donne 25 pièces d'or.

- Changer Sort: vous permet d'apprendre/oublier un sort au joueur.
ex: le joueur parle au grand sage qui lui apprend un sort X méga puissant.

- Téléportation: vous permet de téléporter le joueur sur la carte C aux coordonnées X,Y.
ex: le joueur tue un PNJ, il est ensuite téléporter sur la carte des récompenses.

- Changer le Niveau d'Accès: vous permet de changer le niveau d'admin du joueur.


[SandBox]

- Créer un SandBox: vous permet d'ajouter un événement ou une ressource sur la carte active aux coordonnées X,Y ou sur une autre carte C de coordonnées X,Y.
ex: l'événement crée une ressource "Arbre magique" aux coordonnées choisies pour que le joueur puisse récolter sur cet arbre.

- Supprimer un SandBox: vous permet de supprimer ce sandbox, un sandbox sur la carte active aux coordonnées X,Y ou sur une autre Carte C de coordonnées X,Y ou supprime toutes les sandbox événements, sandbox téléportation ou encore sandbox ressources sur la carte active ou sur la carte C.
ex: un interrupteur supprime toutes les sandbox ressources sur la carte.


[Environnement]

- Spawn / Despawn PNJ: vous permet de faire apparaître ou disparaître le PNJ X.
ex: Le joueur marche sur un fil qui enclenche l'apparition d'une araignée.

- Déplacer un PNJ: vous permet de déplacer le PNJ X vers le haut/bas/gauche/droite.
ex: idéal pour une cinématique où vous faites apparaître un pnj, le déplacer, le faite parler, puis le faire disparaître.

- Changer le Sprite de l'Événement: vous permet de modifier la planche active du sprite de l'événement.
ex: le sprite est une porte fermée sur la planche 1 et ouvert sur la planche 2. Le joueur actionne la porte, s'il a une clef, la porte s'ouvre et le joueur peut passer.
attention: inutile s'il s'agit d'une animation

- Ouvrir/Fermer Événement: vous permet de traverser/bloquer un événement normalement non traversable aux coordonnées X,Y pour le joueur/tout les joueurs sur la carte ou tout les joueurs sur le serveur.
ex: l'accès à la porte est fermé grâce à un événement posé là. L'événement est traversable pour tout les joueurs sur la carte une fois qu'une personne actionne le bouton.



Comment déclencher des Événements:

Cf le guide fait par Mogui. La partie 2/2 est en cours de rédaction (15/05/14)

Voir le profil de l'utilisateur

Revenir en haut  Message [Page 1 sur 1]

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum