Jump to content
×
×
  • Create New...

[BDD] Créer un trigger


Recommended Posts

  • Modérateur

Bonjour,

 

Comme vous l'aurez sûrement constaté, il y a, un peu partout dans le monde des Douze, des passages de maps qui ne fonctionnent pas.

Voici donc un petit tutoriel sur comment débugger ces passages (autrement appelés triggers ou petits soleils)

Remarque : Il n’est pas possible de le faire avec tous les triggers car certaines maps ne sont pas implantées

 

Etape 1 : Récupérer les informations

 

Pour pouvoir faire fonctionnez les triggers vous avez besoin de plusieurs informations :

 

1.Les ID des maps (celle de départ et celle d’arrivée)

2.Les numéros des cases (celle de départ et celle d’arrivée, celle de départ étant celle avec le soleil)

 

Pour cela il y a plusieurs méthodes :

 

Méthode 1 : la plus difficile et la plus longue (déconseillée)

 

Dans cette méthode, il faut premièrement allez en jeu et repérer les géopositions des maps.

 

Ensuite, il faut aller le ou vous avez mit vos SWF puis lang => swf => et ouvrez maps_fr_360

 

Allez dans l’onglet « Action » de Sothink, faites un control f (pour faire une recherche) et entrez x: LaPremièreCoordonnéeDeLaMap

 

Ensuite faites Find Next jusqu’à trouver la ligne contenant vos deux coordonnées présentées comme ceci : x: X, y: Y ou y: Y, x: X (X et Y représentées les coordonnées de votre map)

 

Arrivé à cette ligne regardez le début vous devez avoir un truc comme ceci : MA.m[6149]

 

Le nombre entre crochet est l’ID de votre map (enfin )

 

Maintenant il faut trouver la case grâce a l’image en pièce jointe (elle n'est pas de moi) :

 

Une fois de plus je déconseille cette méthode qui est très longue, qui peut rater totalement (certaines maps ont la même ID) et surtout imprécise avec les cases.

 

Méthode 2 : plus facile que la précédente

 

Dans cette méthode, tout repose sur vos percos : il vous en faut minimum 2.

 

Le principe est de positionner vos personnages sur les cases voulues : Le premier sur la case de départ et le deuxième sur la case d’arrivée

 

Ensuite, on les déconnecte et on va voir dans la BDD dans la table personnages dans ancestra_static. Là, cherchez les colonnes map et cell en face de vos deux personnages et notez les nombre inscrits, dans un bloc note par exemple.

 

Personnellement, j’organise comme ca :

IdMapDépart NuméroCaseDépart => IdMapArrivée NuméroCaseArrivée

 

Cette méthode est assez longue et en plus il faut retenir quel personnage a été mit sur quelle case (arrivée ou départ)

 

Méthode 3 : la meilleure (pour moi)

 

Dans cette méthode, tout repose sur un menu admin.

 

Ici, tout se passe en jeu pas besoin de déconnecter. Il suffit de se positionner sur la case et de faire shift + clic sur votre personnage.

 

Remarque : Il faut évidemment un menu admin qui donne l’Id de la map et la case sur laquelle on se trouve.

 

Repérer comme cela la case de départ et la case d’arrivée.

 

Méthode 4 : la meilleure si on n'a pas de menu admin

 

Dans cette méthode, il faut utiliser les commandes /mapid et /cellid (dans le chat pas dans la console)

 

/cellid vous indique le numéro de la case sur laquelle vous êtes et /mapid vous indique l'id de la map sur laquelle vous êtes.

 

Repérez avec ces commandes les cases et maps de départ et d'arrivée

 

 

 

Etape 2 : Placer ces informations pour débug le trigger

 

Ici aussi plusieurs méthode mais elles se valent toutes les deux.

 

Méthode 1 : Par BDD

 

Dans cette méthode, il faut aller dans votre BDD et ouvrir la table scripted_cells qui se trouve dans ancestra_static.

 

Créer une nouvelle ligne et entrer comme ceci :

 

•Dans la colonne MapID : l’ID de la map de départ (ex : 8001)

•Dans la colonne CellID : le numéro de la case de départ (ex : 94)

•Dans la colonne ActionID : mettez 0 (= téléportation)

•Dans la colonne EventID : mettez 1

•Dans la colonne ActionsArgs : mettez l’ID de la map d’arrivée, le numéro de la case d’arrivée (ex : 8000,312)

•Dans la colonne Conditions : mettez -1 sauf si vous voulez mettre une conditions mais ça je ne l’expliquerai pas ici (il y a d'ailleurs un tutoriel déjà écrit sur le sujet)

 

Après ca enregistrez et c’est fini.

 

Méthode 2 : Par code

 

Dans cette méthode, on utilise le code suivant : addtrigger

 

Positionnez vous sur la case de départ et tapez comme ceci les informations dans la console :

 

addtrigger 0 ID de la map d’arrivée,numéro de la case d’arrivée -1

 

Soit en reprenant l’example ci-dessus : addtrigger 0 8000,312 -1

 

Vous tapez ca dans la console puis faites enter et voila c'est fini.

 

Etape 3 : Le test

 

Selon la méthode que vous avez utilisé à l’Etape 2 ce sera différent :

 

Si vous avez utilisé la méthode 1 : vous devrez redémarrer votre serveur afin de recharger le trigger

Si vous avez utilisé la méthode 2 : vous pouvez tester directement.

 

Le test est simple vous marcher sur la case de départ et si tout fonctionne elle devrait vous téléporter sur la case d’arrivée.

 

Pour finir, il est possible de mettre des triggers ailleurs que sur les petits soleils mais si vous ajouter un trigger autre part, cela ne va pas créer un petit soleil.

 

PS : Je vais rajouter quelques images dans la journée.

59fb3340d8092_MAPIDCELL.jpg.218d7f76b1bd94e4b499244d335c961f.jpg

java style =)

Link to comment
  • Replies 10
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

  • 9 months later...

Perso, Ce Tutoriel m'a beaucoup aidé ^^' Je ne savait pas du tout comment fonctionnait les Trigger. Bien sûr je connaissait le /mapid et /cellid mais ensuite je ne savait pas ou mettre le reste pour faire en sorte de changé de Maps.

 

Bref Merci beaucoup pour l'effort que tu t'es donné pour faire ce Tutoriel :)

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.