Le Débugueur De Scripts Sous Oblivion
#26
Posté 24 avril 2006 - 19:36
C'est bisare que tu saches faire du graphique sans avoir fait du shell ? Normalement c'est le contraire lol
Bon bah en fait je veux bien que tu m'envoies le code jessairai de trouver un peu de temps pour faire ça et le rendre compatible avec edit+
#27
Posté 25 avril 2006 - 06:19
Je vais regarder !
Par ailleurs, je commence à douter de faire un jour une multi-plateforme avec une interface en Win32 : certains menus déroulants doivent obligatoirement être différents sur Oblivion et sur Morrowind, et je ne sais pas comment gérer ce problème...
Peut-être sur une version avec fenêtre console, donc ? A voir !
Edit : par contre, si tu veux toujours le code source, envois moi un mail (adresse sur le débugueur ! ) pour que j'ai la tienne, et je te l'enverrai à ce moment.
Modifié par Nenfëa, 25 avril 2006 - 06:21.
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#28
Posté 26 avril 2006 - 18:50
J'avai un probleme car j'utilisais une reference dans un SetEssential (au lieu d'une ID), donc le script plantait, je me dis, tien j'ai peut etre un endif en trop, je le copie colle dans la fenetre, et il me trouve 4endif et un end manquant, alors que c'est pas le cas
Il me sort aussi des erreurs sur les references qui sont utilisé pas comme il faut (alors que y'a pas d'erreur), mais ca je sais pas si tu pourra y corriger.
#29
Posté 26 avril 2006 - 21:38
En fait, le mode "Débuguer un script" n'accepte que des scripts de taille réduite (pour plus de détails, cf le fichier d'aide, section "Erreurs du débugueur" ! ), il faut que tu mémorises ton script dans un fichier texte et que tu utilises le mode "Débuguer un fichier".
Par contre, de nombreuses variables sont effectivement indiquées comme étant utilisées en tant que deux types incompatibles : j'ai du faire une erreur dans le code source qui gère ça... Je vais regarder !
Edit : une erreur de traitement pour la fonction Resurrect qu'il détecte mal (problème de chaîne de caractères - il ajoute un espace en fin du nom de la fonction quand il cherche un paramètre après, mais il est optionnel dans ce cas... ), je corrige ça demain !
Du coup, ton erreur n'est pas référencée sur le débugueur (à moins qu'il ne s'agisse d'une incompatibilité sur les objets utilisés, ce qui m'étonnerait ! ) : désolé ! Si tu trouves l'origine du plantage (c'est juste la référence ? Ou ça plante encore ?), ça m'intéresse toujours...
Edit2 : auretaugrhaf et modifications mineures !
Modifié par Nenfëa, 26 avril 2006 - 21:59.
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#30
Posté 26 avril 2006 - 22:02
Nenfëa, le 26.04.2006 à 22:38, dit :
En fait, le mode "Débuguer un script" n'accepte que des scripts de taille réduite (pour plus de détails, cf le fichier d'aide, section "Erreurs du débugueur" ! ), il faut que tu mémorises ton script dans un fichier texte et que tu utilises le mode "Débuguer un fichier".
Par contre, de nombreuses variables sont indiquées comme étant utilisées en tant que deux types incompatibles : j'ai du faire une erreur dans le code source qui gère ça... Je vais regarder !
Edit : une erreur de traitement pour la fonction Resurrect qu'il détecte mal (problème de chaîne de caractères - il ajoute un espace en fin du nom de la fonction quand il cherche un paramètre après, mais il est optionnel dans ce cas... ), je corrige ça demain !
Du coup, ton erreur n'est pas référencée sur le débugueur (à moins qu'il ne s'agisse d'une incompatibilité sur les objets utilisés, ce qui m'étonnerait ! ) : désolé ! Si tu trouves l'origine du plantage, ça m'intéresse toujours...
Et oui j'ai utilisé la version la fonction script, car debug un fichier a pas voulu me prendre le fichier texte y me mettait fichier introuvable (chemin a ralonge avec plein d'espace dedans ca viens peut-etre de la^^)
Sinon l'erreur c'était que j'appelais la fonction SetEssential sur une reference, et non sur l'id elle meme, ca compile mais ca plante in-game (comme d'hab )
C'est pas détectable par ton logiciel, à moins que tu repertorie toute les id du jeu (ca se fait vite fait mais bon, ca allourdirai le programme pour pas grand chose, a la rigueur mettre un warning, et que l'utilisateur vérifie par lui meme)
#31
Posté 26 avril 2006 - 22:08
Dradeel, le 26.04.2006 à 23:02, dit :
Citation
C'est pas détectable par ton logiciel, à moins que tu repertorie toute les id du jeu (ca se fait vite fait mais bon, ca allourdirai le programme pour pas grand chose, a la rigueur mettre un warning, et que l'utilisateur vérifie par lui meme)
Par contre, je peux toujours gérer les références déclarées comme variables locales... Je vais voir ça aussi !
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#32
Posté 26 avril 2006 - 22:33
Nenfëa, le 26.04.2006 à 23:08, dit :
La syntaxe "normale" c'est SetEssential id valeur
Tu testes si "id" est une variable locale, ou si "id" contient un . (un truc du style maquetexxx.marefdequete) et dans ces 2 cas c'est pas bon. Normalement si c'est aucun des 2 cas, c'est bien une id (ou alors s'en es pas une mais ca compilera pas sous el tescs )
Modifié par Dradeel, 26 avril 2006 - 22:34.
#33
Posté 27 avril 2006 - 02:18
J'espere pas poster pour rien mais bon
je ne suis pas trop sur de mon coup comme je debute tout juste en scriptage
mais j'ai recut une erreur que je ne comprend vraiment pas, dans tout les cas
ta reponse rendra surement service a l'un de nous 2 ^^
alors voila , il me repond
Citation
---------------------
- Ligne 94 : erreur dans l'expression logique du If.
à la commande
Citation
Set templved to hodflved + 4
If ( templved >= GetCurrentTime )
Player.RemoveSpell lvedballonagespell
Set templved to 0
endif
voila, le tesc ne m'indique aucune erreur et ... je ne peux pas savoir si ca marche en jeux car d'autres probleme de mon mod ne m'y autorise pas ^^
Dans tout les cas merci pour ce programme surement sympa, j'y repenserais quand je me serais ameliorer ^^
#34
Posté 27 avril 2006 - 06:43
Liste des variables locales externes utilisées : -------------------------------------------------- - "isspelltarget" (type indéterminé)...
Merci beaucoup ! Ca commence à faire une petite liste de modifications... Par contre, je ne vois pour l'instant pas où est le problème - je corrige dès que j'ai trouvé.
Edit : bon, ça va, ce n'est pas un gros problème de traitement : j'ai tout bêtement fait rechercher au débugueur la fonction "GetIsSpellTarget" (qui n'existe pas) à la place de la fonction "IsSpellTarget", qui est parfaitement correcte ! Merci !
Modifié par Nenfëa, 27 avril 2006 - 06:50.
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#35
Posté 27 avril 2006 - 11:47
Edit :
Bon cette fois je suis presque sur de moi
Citation
---------------------
- Ligne 8 : erreur, la fonction GameMode ne prend pas de paramètre appelé !
Citation
je l'ai vue sur un autre script donc je supose que ca marche ^^
Modifié par Citamagon, 27 avril 2006 - 12:43.
#36
Posté 27 avril 2006 - 17:37
Le script sur lequel tu as vu cette syntaxe marche-t-il ? Si il n'est pas dans un mod déjà sorti, je veux bien que tu me le dises dès que tu l'auras testée !
Par ailleurs, voilà la dernière version du débugueur par ici, sur lequel on a :
- incompatibilités de type qui n'avaient pas lieu d'être corrigées,
- fonction IsSpellTarget corrigée,
- erreur si on utilise une référence déclarée comme telle localement avec SetEssential.
Je me renseigne sur l'utilisation de tests logiques dans des commandes !
Edit : après avoir jeté un oeil à une bonne partie des scripts contenant "||", je n'ai pas non plus l'impression que ça ait été utilisé dans le TESC2...
Par ailleurs, il doit probablement y avoir d'autres fonctions que SetEssential qui n'acceptent pas les références : si quelqu'un en trouve, l'information est la bienvenue !
Modifié par Nenfëa, 31 juillet 2006 - 00:16.
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#37
Posté 27 avril 2006 - 18:05
desolé pour ce post un peut prompt
Modifié par Citamagon, 27 avril 2006 - 18:06.
#38
Posté 27 avril 2006 - 18:14
Hum ! Pas de soucis pour la hâte, si tu te rends finalement compte que ça marche sous certaines conditions, je suis toujours preneur !
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#39
Posté 27 avril 2006 - 19:10
http://forum.wiwilan...showtopic=31727
t'y veras peut etre quelque chose d'interessant
#40
Posté 25 mai 2006 - 09:04
Passage à la version 1.03 du débugueur, donc, téléchargeable par ici ! (liens précédents aussi valides)
Cette version ajoute la gestion des opérateurs logiques "&&" et "||" dans les commandes...
Merci !
"Edit" : après quelques tests persos sur des scripts d'Oblivion, correction de nombreux bugs mineurs de la version 1.03. J'en ai aussi profité pour améliorer la gestion des variables externes : maintenant, dans la liste des informations, les variables locales externes apparaissent avec le nom de l'objet auquel elles sont associées, si le débugueur arrive à le trouver (ce qui est le cas avec la syntaxe IDobjet.variable, c'est à dire plus de 9 cas sur 10 ! ).
La liste précise des changements entre la version 1.03 et la 1.04 apparait désormais dans l'aide !
Le fichier se trouve encore et toujours par ici.
Second "edit" : on passe à la version 2.0, qui ajoute une version shell (fenêtre console) moins zoulie, mais théoriquement compatible avec toutes les plate-formes existantes ! (bien que je ne puisse pas le tester pour l'instant)
A noter que cette version ne retire pas la version win32, mais propose le choix entre l'une et l'autre au lancement (choix qui pourra bien entendu être par la suite modifié ! ).
Comme d'habitude, ça se passe par ici !
Troisième edit/efface : on passe à la version 2.01, qui ajoute les fonctionnalités suivantes :
- correction d'un pitit bug qui empêchait d'afficher les erreurs sur la dernière ligne (alors qu'elles étaient correctement traitées)
- lègères améliorations de l'interface de la version win32 : ajout d'une scrollbar verticale, possibilité de mettre les dialogues en réduction... rien de transcendant !
- possibilité de remettre toutes les variables du débugueur par défaut
- possibilité d'effacer tous les fichiers temporaires "système" générés par le débugueur
Pour changer, le fichier est disponible par là !
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#41
Posté 29 mai 2006 - 11:08
Merci pour l'énorme travail que tu as fourni !
Juste une petite remarque d'ordre pratique, est-ce que tu pourrais éditer ton premier post pour y mettre que le debugger est prêt (en le lisant je pensais que c'était toujours en cours de dev) pis un 'tit lien.
Sinon t'as un site où on peut suivre l'évolution du log ? Ou un forum pour le report de bugs ? Enfin ce genre de choses.
J'ai pas encore scripté sur Oblivion (encore moins sour Morrowind), mais je pense que ton débugger me suivra comme mon ombre
Encore merci.
Et, franchement, les modos, ça vaut pas le coup de mettre le topic en post-it ?
Modifié par Kephuro, 29 mai 2006 - 11:16.
#42
Posté 29 mai 2006 - 16:02
Dicton Manchot: "Pelle qui rouille n'amasse pas plousse."
"Le bon sens est une affaire d'orientation."
#43
Posté 29 mai 2006 - 16:19
Ancien créateur et fan du mod Morrowind Stargate.
Et depuis, je suis devenu consultant SEO sur SeoMix et game addict sur Play-Mod
#44
Posté 29 mai 2006 - 17:05
Sauf erreur, le log des changements est reporté à la fin du fichier d'aide ! (par contre, je viens de voir que je ne l'ai pas reporté pour la version 2.01 : gloups ! )
Pas de problème pour le lien, je le fais de suite - en fait, jusqu'à avant hier, il était encore plus ou moins en cours de développement (tentative d'ajout de coloration syntaxique au choix "Débuguer un script"), mais là... ça me dépasse ! Du coup, je pense que c'est la version définitive, hors correction des bugs qui s'y cachent encore ou améliorations de traitement (du style des opérateurs logiques dans les Begin signalés par Citamagon ! ).
Merci pour la mise en post-it, Rojhann !
Je pense que cette version devrait être dispo sous peu sur le site - je vais refaire l'aide (le txt, c'est bien quand on n'a pas grand chose à raconter, mais là, ça devient limite illisible ! ), prendre quelques screens pour illustrer tout ça, et je le renvoie à la BAL pour de bon !
Et en général, merci pour vos encouragements...
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#45
Posté 29 mai 2006 - 17:53
#46
Posté 29 mai 2006 - 20:32
De plus, d'après ce que j'ai pu lire, le win32 a évolué au cours des versions de Windows. J'ai d'ailleurs pu voir que la compatibilité n'est que partielle sur Windows 98 SE (affichage d'erreurs inexistantes, toujours les mêmes - mais je n'ai pas compris au juste pourquoi, aussi je ne saurais garantir que ça vient de là).
En bref, une version plus mieux compatible à priori... mais à confirmer, il est possible qu'elle ne serve effectivement pas à grand chose ! (je n'ai pas trop eu l'occasion de confirmer avec des tests poussés sur d'autres plate-formes... )
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#47
Posté 29 mai 2006 - 20:40
Ce qui veut dire qu'il ne tournera pas sous une autre plate-forme que Windows. Ce n'est même pas sûr qu'il tourne sur d'anciens Windows car le shell a aussi changé depuis Windows 98.
Si tu veux qu'il marche sur toutes les plate-formes il faut plutôt donner les sources.
Sinon Oblivion n'est sorti que sous Windows.
#48
Posté 29 mai 2006 - 20:53
Duncan Imrryran, le 29.05.2006 à 21:40, dit :
Ce qui veut dire qu'il ne tournera pas sous une autre plate-forme que Windows. Ce n'est même pas sûr qu'il tourne sur d'anciens Windows car le shell a aussi changé depuis Windows 98.
[Mode déception on ]
Citation
Citation
Merci pour les infos !
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
#49
Posté 30 mai 2006 - 17:32
Nenfëa, le 29.05.2006 à 20:53, dit :
[Mode déception on ]
Sinon ca peut toujours être utile de mettre les sources dans l'archive, pour la place que ça prend ça mange pas de pain.
#50
Posté 30 mai 2006 - 19:06
Je vais voir pour le code source - il me semble que la somme des fichiers cpp pèse plus lourd que l'executable, mais ça ne va pas chercher bien loin , donc c'est tout à fait faisable.
- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!
Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!
Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !
0 utilisateur(s) li(sen)t ce sujet
0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)