Comment debugger une quête ?

Section Française de l'emulateur Dawn of light.

Moderators: Support Team, Other Language Team

Comment debugger une quête ?

Postby NealWeiss » Sun Nov 16, 2014 9:47 pm

Bonjour à tous, c'est Neal Weiss !

J'ai installé l'émulateur Dol (le tout automatique), HeidiSQL. Je teste, je lance le client, choisi le Royaume d'Albion, créé un perso, je fais quelques quêtes... Et boum ! le crash ! Impossible de réutiliser mon perso. Je refais quelques essais pour identifier le problème. Il semblerait que la quête "Cemmeth's Order " soit buggée.
Y a t il une bonne âme qui pourrait m'expliquer comment on debuggue une quête pas à pas avec un exemple précis ?

Merci et à bientôt !
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby snoopydo » Mon Nov 17, 2014 5:22 pm

salut ,

je veux bien t'aider si je peux . :)
je t'ai email j'attend réponse.
snoopydo
DOL Freak
 
Posts: 578
Joined: Mon Jan 02, 2006 12:48 pm

Re: Comment debugger une quête ?

Postby NealWeiss » Mon Nov 17, 2014 5:49 pm

Merci j'ai reçu ton mail !
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby NealWeiss » Mon Nov 17, 2014 5:55 pm

Par contre ma réponse par mail n'est pas passée.
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby Leodagan » Mon Nov 17, 2014 6:28 pm

Vous voulez pas faire ça en publique ?

Cette quête fait partie du package de base (GameServerScript), si elle plante les enregistrement de personnages il serait bon de donner également une solution publique :)

Sinon quels sont les derniers paquets envoyés en client ? (le serveur DOL doit l'afficher dans les logs lors d'un crash du client)

La quête fourni-t-elle un item avec un nom un peu trop long ou trop d'items d'un coup ? (le client plante si l'un des paquets des mises à jour d'inventaire dépasse 2048 octets)

Y a t'il une méthode pour reproduire à coup sur le crash ? (faire "telle" quête avant ? être level "X" ? avoir certains items dans l'inventaire ?)
Typiquement est-ce qu'il suffit de connecter un personnage sur Albion et d'aller démarrer la quête au NPC ?
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: Comment debugger une quête ?

Postby NealWeiss » Mon Nov 17, 2014 6:32 pm

Pas de problème pour moi pour mettre ça en publique ! Dans la quête buggué il y a un skeleton et un decayed zombie à tuer. J'ai tué le squellette pas de soucis, je tue le zombie -> Crash !
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby NealWeiss » Tue Nov 18, 2014 5:16 pm

Quand le problème survient le serveur marque en rouge "Handlepacket Thread 21 DOL-GS.PacketHandle.client:v168.Client Crash Packet Handler.took 5258ms !" Si ca peut aider...
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby Leodagan » Wed Nov 19, 2014 7:28 am

le message d'erreur est plutôt une conséquence du crash client que sa cause ;)

Il faudrait jeter un oeil au code de la quête pour voir ce qui est sensé se produire lorsque l'on accompli l'étape.
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: Comment debugger une quête ?

Postby NealWeiss » Wed Nov 19, 2014 10:25 am

Donc pour commencer il faudrait trouver où se cache le code de cette quête. Quelqu'un sait où trouver ça?
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby NealWeiss » Wed Nov 19, 2014 11:30 am

Je crois que j'ai trouvé où chercher :
Code: Select all
/// <summary> /// Text showing upon finishing the quest. /// </summary> public override String Conclusion { get { String text = String.Format(LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Alb.CemmethsOrders.Conclusion.Text1", QuestPlayer.CharacterClass.Name)); return text; } }
Est ce que dans "QuestPlayer.CharacterClass.Name" la partie que j'ai souligné à sa raison d'être dans le code?
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby Leodagan » Wed Nov 19, 2014 12:39 pm

Oui c'est surement pour afficher la classe du joueur dans le texte de conclusion, je ne pense pas que le problème se situe par ici ;)

Normalement chaque quête "scriptée" est décrit dans un fichier à par entière (souvent avec un nom approchant de la quête jusque là c'est assez bien faite :D )

Donc quelque part dans ce fichier il doit y avoir un bout de code qui correspond aux événements qui se produisent quand un mob "cible" est tué...
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: Comment debugger une quête ?

Postby snoopydo » Wed Nov 19, 2014 1:41 pm

salut j'ai pas encore regardé a la quete je lui ai appris a compiler et a config un server deja :)
snoopydo
DOL Freak
 
Posts: 578
Joined: Mon Jan 02, 2006 12:48 pm

Re: Comment debugger une quête ?

Postby Leodagan » Wed Nov 19, 2014 1:51 pm

bin c'est un peu pareil j'ai pas vraiment accès au code depuis le bureau ;)
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: Comment debugger une quête ?

Postby NealWeiss » Wed Nov 19, 2014 5:57 pm

Dans le code du script de la quête parle de "DecayingGhoulsKilled", le serveur lui parle de "Decayed Zombie" c'est normal ?
NealWeiss
DOL Initiate
 
Posts: 16
Joined: Sun Nov 16, 2014 6:13 pm

Re: Comment debugger une quête ?

Postby HunabKu » Sat Nov 22, 2014 6:34 pm

Sans regarder dans le code, je pense que :
- "DecayingGhoulsKilled" est ce qui se produit quand les "Decaying Ghouls" meurent
- "Decayed Zombie" est le nom réel des "Decaying Ghouls"
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am


Return to “%s” Français

Who is online

Users browsing this forum: No registered users and 1 guest