[Tutoriel] BASE - La fonction PlaceAtMe

Vous trouverez ici les tutoriels et l'entraide sur les outils et techniques de modding spécifiques à Oblivion.
Répondre
Avatar du membre
beeratwork
Légende de la Confrérie
Légende de la Confrérie
Messages : 1881

BASE - La fonction PlaceAtMe

Message par beeratwork »

Tuto - INFO - Index des tutos de Beeratwork


"BASE" - LA FONCTION PLACEATME
Petite dicussion


Cette fonction réserve une surprise, pas forcément agréable. Poursuivons.
wiwiki

A quoi sert PlaceAtMe ?
La fonction PlaceAtMe est une focntion qui permet de créer une instance d'un objet et de la positionner où on veut par rapport à une autre référence.

Les paramètres
Le format est le suivant :
ReferenceObjet.PlaceAtMe IDObjet Nombre , Distance , Direction
"ReferenceObjet" est la référence d'un objet.
"IDObjet" est simplement l'ID d'un objet.
"Nombre" correspond au nombre d'objet que l'on veut faire apparaître.
"Distance" est la distance par rapport à la référence servant de "repère".
"Direction" est une valeur pour définir si l'objet apparaît de face, de derrière, etc :
0 > Devant
1 > Derrière
2 > A gauche
3 > A droite
Donc :
set RefSword to player.PlaceAtMe WeaponIronShortSword 1,1,0
Permet d'initialiser RefSword à la référence de l'épée courte en fer créée à 1 pied devant le joueur. Que se passe-t'il dans le cas où on initialise RefSword sur 50 épées ?

Ze Big Problem :
Si vous avez suivi le "Tuto - BASE - Détruire un objet", vous savez qu'il est pratiquement impossible de détruire un objet de façon propre ou aisée. Et comme les objets ne sont pas détruits, cela fait gonfler la sauvegarde. Une sauvegarde gonflée, c'est autant de risque d'erreur de lecture et d'écriture qu'elle est grosse. Le jeu subit moin de bugs avec des sauvegarde propres et peu nombreuses !

En conclusion :
:reglement:
Ne jamais utiliser PlaceAtMe ! Sauf évidement si c'est impossible de faire autrement, mais il faut aussi se poser parfois des questions par rapport à la jouabilité...
PlaceAtMe facilite la réalisation de scripts sales ! :tape2:
Faire un sort d'invocation d'objets avec PlaceAtMe a pour résultat qu'au bout de 1000 utilisation, c'est 1000 instance qui ont fait gonfler la sauvegarde !
C'est beaucoup plus propres d'utiliser "MoveTo" sur une référence persistante (voir Tuto - SCRIPT - Les invocations d'acteurs et d'objets).
Donc avant d'utiliser "PlaceAtMe", demandez conseil... ;)
Répondre

Retourner vers « Modder Oblivion »