Le bug du lag infini

Aides pour les développeurs de mods (scénarios)
Post Reply
User avatar
NatakuSq
Eslodmonaë, archidruide
Posts: 2036
Joined: Tue Jul 26, 2005 8:01 pm
Location: Marseille
Contact:

Le bug du lag infini

Post by NatakuSq »

J'ai souvent rencontré ce bug que je ne savais pas résoudre à l'époque, ça m'a fait arrêté plusieurs modules. Quand on change de secteur pendant le jeu ou qu'on charge la partie, il arrive qu'il y ai un MECHANT MECHANT lag, genre... infini.
Si je postes ici le pourquoi du comment, c'est parce que je me dis que peut-être quelqu'un a rencontré/rencontrara ce bug en créant un module et qu'il viendra peut-être chercher ici la solution.
Au passage, il y a ce bug dans le tombeau de Tol Guldur de Triblonto mais, j'expliquerai après pourquoi, on ne le rencontre pas toujours.

Bon, donc pourquoi ce bug ? Tout simplement parce que vous avec téléporté un scenery. Dès qu'on utilise un script teleport sur un scenery, ça créé un méchant bug qui fait que quand on quitte le secteur (ou qu'on charge la partie), le scenery revient à sa place initiale. Le jeu n'aime pas ça et rame à mort. Bizzare non ?
Alors que ça marche avec les npc, les containers, le player (évidemment), les items, ... ON NE DOIT JAMAIS TELEPORTER UN SCENERY.
Au passage, je l'ai rencontré dans CrossRoad et mon frère dans son module. On a mis un certain temps avant de comprendre (on a testé les sauvegardes à tous les moments du jeu, ...
Donc, pour résoudre le problème, il faut modifier le script qui fait se téléporter le scenery. Pour le remplacer, plusieurs options :
:) Changer d'art un autre scenery à la place de celui qui doit être téléporté et détruire l'autre.
:) Faire apparaître un npc qui a une tête de scenery (mais si le scenery n'est pas click through, il n'apparaîtra pas en surbrillance mais avec la simili-auréole des npc.
:) Remplacer le scenery par un container avec une print line (si on veut masquer le fait le "verrou fermé" ou même le "blocage").
:) Changer d'idée (ce que je n'aime pas faire).
Au passage, c'est le scenery fait des "aller-retours" entre des destinations, le mieux est, je pense, de changer l'art de chacun en un objet quasi-invisible (moi j'utilise un art de pixel) et de les cibler grâce à un internal pour changer d'art. Ah, et s'il a un script à USE, penser à activer un global quand il change d'art et a testé ce global quand on active le script à USE, ça évite de pouvoir utiliser l'objet avant qu'il n'aparaisse (oui, on peut trouver un pixel dans le jeu si on est patient).
Dernière astuce : tester aussi le global flag à EXAMINE et si l'objet n'est pas encore "apparu", vous enclenchez un print line blanche (donc le joueur ne verra rien dans le cadre de description). Ceci est pour le cas où l'on change d'art.
Pour en revenir à Tol Guldur, Triblonto a téléporté la tapisserie, ce qui enclenche le bug. Mais si le joueur la remet en place avant de quitter le secteur/charger la partie, le scenery est à sa place initiale et il n'y a pas de bug (on peut dire que les joueurs qui aiment ranger sont avantagés :duh: ).

Voilà, donc, à l'avenirn évitez de téléporter des scenery ;)
P*T**N de bug :x
"Pray for the children you lost along the way
Still remember the names and faces…
Cold and abandoned they cry, their fate put in your hands.
When it’s over they come to haunt you…"
-One more soul to the call

User avatar
Eoliad, Miroir de la nuit
Posts: 799
Joined: Tue Jun 28, 2005 1:35 pm
Location: Avignon / Les Terres d' Haholith

Post by Eoliad, Miroir de la nuit »

Ce bug nous a flingué genre au moins 3 mods... :fire:
"Noli me tangere"

User avatar
Gorka
Posts: 529
Joined: Thu May 05, 2005 11:01 pm

Post by Gorka »

ah ben, merci ! J'y ferais attention, du coup.

User avatar
NatakuSq
Eslodmonaë, archidruide
Posts: 2036
Joined: Tue Jul 26, 2005 8:01 pm
Location: Marseille
Contact:

Post by NatakuSq »

De toute façon, même si tu fais pas attention pendant la création, dès que tu as un énorme lag perpétuel après avoir chargé ou changé de secteur pendant le test, tu peux être sûr que c'est ce bug de m***e :pleurs:
"Pray for the children you lost along the way
Still remember the names and faces…
Cold and abandoned they cry, their fate put in your hands.
When it’s over they come to haunt you…"
-One more soul to the call

User avatar
Gorka
Posts: 529
Joined: Thu May 05, 2005 11:01 pm

Post by Gorka »

Mais, du coup... Ca marche comment, la téléportation de scenery ?!
C'est quand on clique sur le mauvais objet (un scenery au lieu d'un autre élément ?)

User avatar
NatakuSq
Eslodmonaë, archidruide
Posts: 2036
Joined: Tue Jul 26, 2005 8:01 pm
Location: Marseille
Contact:

Post by NatakuSq »

Je suis pas sur de comprendre la question...
Tu téléportes un scenery quand le script "teleport (obj)..." vise un scenery, que ce soit l'attachee, le current loop object, l'extra object, ...
"Pray for the children you lost along the way
Still remember the names and faces…
Cold and abandoned they cry, their fate put in your hands.
When it’s over they come to haunt you…"
-One more soul to the call

Post Reply