Différences entre les versions de « TESCS : Scripting »
Ligne 54 : | Ligne 54 : | ||
====Les différents types de script==== | ====Les différents types de script==== | ||
Il existe trois types de scripts : | |||
- le script local, attaché à un objet placé dans le jeu, c'est à dire à une référence. De cette façon, il permet de travailler directement avec cette référence en évitant les confusions entre id et référence. | |||
Un script local ne s'exécute que dans la cellule où est placée sa référence, en intérieur, plus les huit cellules adjacentes, en extérieur. | |||
- le script global est en général lancé par une commande ''startscript''. Une seule instance de ce script s'exécute à la fois et il fonctionne en permanence jusqu'à ce qu'il soit arrêté par une commande ''stopscript''. | |||
- le script ciblé (''targeted script'') est un hybride entre script local et script global. Il est lié à une référence, mais il fonctionne en permanence sans restriction de cellule. Il est possible de lancer plusieurs scripts ciblés sur une même référence, y compris simultanément et même si celle-ci possède déjà un script attaché à son id dans le TESCS, mais il semblerait que lancer simultanément un même script sur différentes références puisse causer des problèmes. | |||
==Limitations du scripting== | ==Limitations du scripting== |
Version du 17 février 2008 à 16:19
Tutoriels de références
Avant d'aller plus loin, les documents suivants sont l'alpha et l'oméga pour tout scripteur :
en français :
- Morrowind Scripting for Dummies 8ème édition. Manuel essentiel et quasiment exhaustif qui commence par expliquer les bases avant de couvrir toutes les commandes, les difficultés et les demandes les plus courantes des scripteurs, y compris le scripting avancé, avec de nombreux exemples; recommandable du novice au scripteur chevronné.
en anglais :
- Morrowind Scripting for Dummies 9ème édition : édition revue, augmentée et complétée par rapport à la précédente.
- Liste des commandes sur UESP la liste complète des commandes de scripting par ordre alphabétique, avec leur syntaxe, leur description et les subtilités d'utilisation. Le guide de référence.
Concepts de base
Objets, références, variables
Objets et références
Un objet est un élément défini dans le TESCS par un nom précis que l'on nommera id. Une référence est une instance d'un objet, placée dans le jeu. A une seule id peut donc correspondre plusieurs références placées dans le jeu, par exemple les gardes sont des copies d'un même PNJ, ils ont même id et donc mêmes caractéristiques.
Les commandes de script s'appliquent souvent à des éléments du jeu. Ces éléments sont placés dans le jeu, ce sont donc des références. Mais comme les références n'ont pas de nom en propre, la syntaxe du scripting utilise leurs id pour les nommer, ce qui occasionne bien des problèmes et des confusions.
La plupart du temps, ces commandes de script ne fonctionnent que s'il n'y a pas d'ambiguïté entre id et référence, c'est à dire qu'à une id correspond une unique référence placée dans le jeu. Par exemple, player est l'id du joueur, dont il n'existe qu'une référence associée placée dans le jeu. Player est donc valable pour désigner une référence.
Variables
Une variable est un espace de stockage pour un résultat. Dans Morrowind, une variable est toujours un nombre réel (en pratique, un nombre décimal compris dans une certaine fourchette) ou un nombre entier, Morrowind ne supportant que trois types de variables.
Ces types sont :
- short : un entier compris entre -32768 et 32767
- long : un entier compris entre -2147483648 et 2147483647
- float : un flottant avec au maximum 7 décimales, compris entre -3,4.10^38 et +3,4.10^38
Une variable peut être locale (c'est à dire interne à un script) ou globale (utilisable et accessible partout).
Les différents types de script
Il existe trois types de scripts :
- le script local, attaché à un objet placé dans le jeu, c'est à dire à une référence. De cette façon, il permet de travailler directement avec cette référence en évitant les confusions entre id et référence.
Un script local ne s'exécute que dans la cellule où est placée sa référence, en intérieur, plus les huit cellules adjacentes, en extérieur.
- le script global est en général lancé par une commande startscript. Une seule instance de ce script s'exécute à la fois et il fonctionne en permanence jusqu'à ce qu'il soit arrêté par une commande stopscript.
- le script ciblé (targeted script) est un hybride entre script local et script global. Il est lié à une référence, mais il fonctionne en permanence sans restriction de cellule. Il est possible de lancer plusieurs scripts ciblés sur une même référence, y compris simultanément et même si celle-ci possède déjà un script attaché à son id dans le TESCS, mais il semblerait que lancer simultanément un même script sur différentes références puisse causer des problèmes.
Limitations du scripting
Liste alphabétique détaillée et commentée des commandes de scripts
Exe externes
Morrowind Enhanced (MWE)
Morrowind Scripting Extender (MWSE)
Télécharger MWSE (version 0.94)