Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Module qui déconne - ça sent le OHB foireux...
Module qui déconne - ça sent le OHB foireux...
Par Elmo le 5/2/2003 Ã 11:49:32 (#3174413)
Donc ma question est: y'a moyen de lister les scripts mis en OnHeartBeat?
Par Jedaï le 5/2/2003 à 12:56:25 (#3174874)
[list=1]
*Ne pas en mettre, ça fait tout de suite une liste plus courte ;)
*adopter une convention de nommage du type "ohb_*"
Je crois que le 2 est incontournable...:)
Si tu ne l'as pas fait, voilà une bonne occasion de rectifier cette erreur, mais pour l'instant tu vas devoir te taper tous les porteurs de script un par un, y a pas d'autres solution ( enfin si, essayer de se souvenir, mais tu risque d'en oublier...):(
Par Elmo le 5/2/2003 Ã 13:30:28 (#3175160)
Par Elmo le 5/2/2003 Ã 14:54:32 (#3175903)
Par eMRaistlin le 5/2/2003 Ã 15:02:21 (#3175951)
Toute facon, fais un test, tu verra bien...
Par Delphinea le 5/2/2003 Ã 16:25:27 (#3176709)
Du moment qu'on n'exagère pas en mettant trop de choses dans ces scripts, ça passe, faut pas non plus en faire un emplacement tabou où il ne faut jamais rien mettre.
Si vraiment ton module plante à cause de ça, c'est que tu as mis beaucoup trop de choses dedans, sinon ça peut venir également d'autre part, on n'a pas beaucoup d'infos pour émettre un diagnostic :)
Par Jedaï le 5/2/2003 à 19:39:30 (#3178436)
Par Elmo le 5/2/2003 Ã 23:13:02 (#3179910)
je suis l'homme le plus stupide de l'univers! ma stupidité n'a d'égale que la soif de bière d'un nain c'est dire! (je sais je suis le roi de la métaphore)
en fait j'avais mal édité le fichier ARE d'une zone, résultat tout le module foirait! maintenant ça marche, en un mot: WOOT
Distribution de rochers pour tous, garanti granit, et surtout VISEZ MA TETE!
Par Elminf le 5/2/2003 Ã 23:21:28 (#3179968)
Par Azrael07 le 5/2/2003 Ã 23:23:11 (#3179978)
Mais non Delphinea, on sait bien que les OnHeartbeat c'est pas tabou, ça peut même être la meilleure solution dans certains cas
bon alors petites précisions techniques consernant le OnHeartBeat et les ressources utilisées :
il faut savoir qu'un ordinateur est ULTRARAPIDE, l'appellation 1GHz signifie que le processeur est capable de réaliser 1 000 000 000 opérations simples en 1 seconde.
Donc demander de fermer une porte toute les 6secondes (boffffffff disons une 20aine d'instructions a tout casser toutes les 6secondes), c'est vraiment pas significatif du tout. Le principal c'est d'éviter les instruction inutiles dans le OHB, placer une condition très tot dans le script pour pas qu'il continue si ca sert a rien, et le OHB ne sera alors rien de moins qu'un évenement supplémentaire très utilse. Voila, donc MODERATION, mais ne vous en privez pas, c quand meme superpratique dans de très nombreux cas ;)
Par Taern le 6/2/2003 Ã 19:11:02 (#3184921)
Merci Azrael, je croyais bien que personne n'allait enfin éclaircir les choses.
Toutes les créatures par défaut on un OnHeartBeat, et un maousse qui plus est. Le secret réside dans l'utilisation de conditions bien placées pour éviter la surcharge.
Un "If a=b", c'est quoi après tout ? deux ou trois commandes dans le langage du processeur (assembleur). Ce qui prend, disons, une dizaine de cycle d'horloges (et encore, je prévois large parce que je connais pas exactement le fonctionnement d'un processeur). Quand on considère qu'un cycle d'horloge prend une nanoseconde dans le cas d'un pc à 1 GHz ...
Par contre, les fonctions spécifiques au jeu demandent des accès mémoire, de nombreux processus successifs (ce qui en assembleur représente plusieurs centaines de commandes). D'ou des ralentissements.
Donc ce que je dis c'est : Foutez La Paix Aux OHBé ! :hardos: :bouffon:
JOL Archives 1.0.1
@ JOL / JeuxOnLine