Oui techniquement c'est juste un fichier script dans AGS, avec ou sans commentaires (mais les commentaires aident à la compréhension)
Plus exactement, c'est une paire de fichiers .asc et .ash, autrement dit le corps du script et son en-tête. Donc techniquement, les fichiers GlobalScript.ash et GlobalScript.asc de n'importe quel projet constituent un module.
Mais on réserve généralement la qualification de "module" aux scripts qui sont autonomes, ton global script il va probablement dépendre de tout un tas d'éléments dans ton projet et si tu essayais de le copier-coller dans un autre projet, ça ferait probablement tout crasher, c'est pour ça qu'on appelle généralement
pas le GlobalScript un module
Un bon module, tu te contentes de l'importer dans
n'importe quel projet et ça crashera pas, en fait ça ajoutera même des fonctionnalités supplémentaires, généralement sous la forme de nouvelles fonctions
Pour prendre un exemple de module d'
@Asraroth justement, imagine que tu aimerais que tous tes personnages parlent dans des bulles, comme dans les bandes dessinéees. Ce serait cool s'il existait une fonction genre
Phylactere que tu pourrais utiliser exactement comme
Say, mais qui se charge automatiquement de placer une bulle derrière le texte. Eh bien c'est exactement ce que fait
le module Phylactere de
@Asraroth : c'est une paire de fichier .asc et .ash qui définit une nouvelle fonction nommée
Phylactere que tu pourras utiliser dans n'importe quel projet quand tu importes le script.
Si tu jettes un coup d'oeil au script en question, tu verras que y'a plein d'opérations qui sont faites en coulisse, mais toute la valeur d'un module vient du fait qu'on s'en fiche de ça, parce que c'est justement le boulot des gens qui font des modules de coder ces opérations et de livrer un produit fini autonome,
plug-and-play pour ainsi dire.
Dernière note : un plugin (ou greffon) accomplit sensiblement la même chose dans AGS, à la différence que ce n'est pas une paire de fichiers .ash et .asc mais un fichier DLL (il me semble) codé dans un langage autre que AGS puis compilé. Une conséquence de cette compilation c'est que ce sera spécifique au système d'exploitation (windows en l'occurrence) et donc pas directement disponible si tu exportes ton jeu pour un autre os comme linux par exemple, ce qui risque de compromettre la portabilité de ton jeu. Moralité : préfère les modules aux plugins si jamais tu dois choisir entre deux qui font la même chose.