Scripting

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Les scripts sont des fichiers texte simples qui vous permettent d'ajouter un comportement dynamique et personnalisé à vos jeux. Vous pouvez utiliser des scripts pour déclencher des événements dans le jeu, répondre aux entrées des joueurs, sauvegarder des données de joueur, créer des classements, faire apparaître des ennemis, contrôler le comportement des PNJ, et bien plus encore.

Luau

Les scripts Roblox utilisent le langage de programmation Luau, qui est dérivé de Lua 5.1.

  • Comparé à Lua 5.1, Luau apporte des améliorations de performance et de nombreuses fonctionnalités utiles, y compris un système de typage optionnel, l'interpolation de chaînes et l'itération généralisée pour les tableaux.
  • Tout code valide Lua 5.1 est un code Luau valide, mais l'inverse n'est pas vrai.

La plupart des livres et des ressources en ligne pour Lua sont toujours largement applicables à Luau. Pour un résumé détaillé des différences, consultez Compatibilité dans la documentation Luau. Pour la syntaxe du langage, consultez la référence Luau.

Bases de Luau

Luau est typé progressivement, donc vous n'avez pas besoin de spécifier un type lorsque vous créez une variable. Vous pouvez utiliser type() pour vérifier le type d'un objet :


logMessage = "L'utilisateur a plus de 10 objets !"
print(logMessage) --> L'utilisateur a plus de 10 objets !
print(type(logMessage)) --> string

Luau a des portées globales et locales, mais il est presque toujours préférable de déclarer des variables et des fonctions localement avec le mot-clé local :


local logMessage = "L'utilisateur a plus de 10 objets !"
local function printMessage()
print(logMessage)
end
printMessage() --> L'utilisateur a plus de 10 objets !

Luau utilise nil pour représenter l'inexistence ou le néant, qui évalue à false dans les instructions conditionnelles :


local messageToUser
print(messageToUser) --> nil
print(type(messageToUser)) --> nil
if messageToUser then
-- l'instruction évalue à false
end

Comme vous l'avez peut-être remarqué, -- commence un commentaire sur une ligne. --[[]] crée un commentaire de bloc :


--[[
Éteint immédiatement le rayon cosmique lunaire.
Ne doit être appelé que dans les 15 minutes suivant minuit, heure normale des Rocheuses,
afin d'éviter d'endommager le rayon cosmique lunaire.
]]
local function stopCosmicMoonRay()
-- ajoutez ceci plus tard, cela pourrait s'avérer important
end

Les tableaux sont le terme générique pour les tableaux et les dictionnaires. Les tableaux sont à base de un plutôt qu'à base de zéro, donc le premier élément est [1]. Vous déclarez des tableaux et des dictionnaires avec un seul ensemble d'accolades :


local myArray = {"chips", "eau pétillante", "salsa"}
local myDictionary = {
encas = "chips",
boisson = "eau pétillante",
veille = "salsa"
}
print(myArray[1]) --> chips
print(myDictionary.veille) --> salsa

Vous pouvez itérer sur les tableaux en utilisant des boucles for avec la fonction ipairs() pour les tableaux et la fonction pairs() pour les dictionnaires, mais Luau vous permet également d'omettre ces fonctions pour une syntaxe plus claire :


for index, value in ipairs(myArray) do -- Lua standard
print(index, value)
end
for key, value in pairs(myDictionary) do -- Lua standard
print(key, value)
end
for key, value in myDictionary do -- itération généralisée Luau
print(key, value)
end

Votre premier script

  1. Dans Roblox Studio, survolez ServerScriptService dans la fenêtre Explorer et cliquez sur +.

  2. Sélectionnez Script pour ajouter un nouveau script.

  3. Cliquez avec le bouton droit sur le script et renommez-le en HelloScript.

  4. Double-cliquez sur le script pour l'ouvrir dans l'éditeur de script.

  5. Ajoutez le code suivant au fichier :


    local helloArray = {"h", "e", "l", "l", "o"}
    local worldArray = {"w", "o", "r", "l", "d"}
    for index, value in helloArray do
    print(value)
    end
    print(table.concat(worldArray))
  6. Assurez-vous que la fenêtre Sortie est ouverte.

  7. Exécutez votre jeu et notez la sortie :


    h
    e
    l (x2)
    o
    monde

Mettez-vous à l'aise

Une grande partie de l'adaptation à un nouvel environnement de développement consiste à le configurer pour répondre à vos besoins et à comprendre les outils à votre disposition :

  • La section Éditeur de script des Paramètres de Studio vous permet d'ajuster des fonctionnalités améliorant l'expérience utilisateur telles que la police, les couleurs, l'indentation, la complétion automatique, les accolades et les infobulles. Vous voudrez peut-être également activer le mode sombre dans la section Studio.
  • Maintenir Ctrl ou Command en cliquant sur une fonction ou une variable vous amène à sa déclaration dans votre code (ou dans sa documentation en ligne). Utiliser Rechercher et Rechercher tout peut vous aider à naviguer dans des projets plus importants.
  • La fenêtre Sortie est l'outil le plus basique pour comprendre le comportement de vos scripts. Utilisez le menu pour activer Afficher le contexte et Afficher la source.
  • La fenêtre Analyse de script affiche un résumé des erreurs et des avertissements, mais son utilité peut être limitée ; l'éditeur de script souligne déjà ces problèmes pendant que vous tapez.
  • Les capacités de journalisation sont minimales, sans concept de niveaux de journal tels que DEBUG ou FATAL. Utilisez print() et warn().

Pour plus d'informations sur la configuration de Studio pour la programmation, consultez Éditeur de script.

Votre deuxième script

  1. Dans Roblox Studio, ajoutez un script à ReplicatedStorage dans la fenêtre Explorer et renommez-le en OhNo.

  2. Ajoutez le code suivant au fichier :


    print("Bonjour les types et emplacements de script !")
  3. Notez que la sortie n'est pas différente de celle lorsque vous avez exécuté votre premier script.

Pour comprendre pourquoi le script ne s'est pas exécuté, consultez Types et emplacements de script.

©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.