Der Skripteditor in Studio ist das primäre Werkzeug für das Scripting auf Roblox. Es handelt sich um eine sich selbst verbessernde Umgebung, die Ihnen helfen kann, wirkungsvollen Code zu schreiben, Ihre Entwicklungszeit zu verkürzen und Ihre Spiele zu iterieren. Er kann Ihr Skripting-Erlebnis verbessern, indem er:
- Syntax in Ihrem Code formatiert und hervorhebt.
- Möglichkeiten bietet, um Phrasen in Ihrem Code während des Tippens automatisch zu vervollständigen.
- Ihnen hilft, Code zu navigieren, indem Sie zu Variablen- und Funktionsdeklarationen springen.
- Ihnen hilft, Code zu finden und zu ersetzen in offenen Skripten oder allen Skripten.
- Echtzeit-Feedback zu Ihrer Codequalität und -leistung bereitstellt.
Der Skripteditor unterstützt alle Arten von Skripten und öffnet sich automatisch, wenn Sie ein neues Skript erstellen oder doppelt auf ein vorhandenes Skript im Explorer Fenster klicken.
Autovervollständigungsfunktionen
Die Autovervollständigungsfunktionen des Skripteditors generieren codebezogene Informationen, die Ihre Programmier-Effizienz verbessern können, wie zum Beispiel:
Informierte Vorschläge zur Vervollständigung von Phrasen, während Sie sie eingeben, die kontextbezogen zum Datenmodell des Spiels sind. Wenn Sie beispielsweise ein Model in Workspace mit dem Namen RocketShip haben, schlägt die Autovervollständigung RocketShip vor, wenn Sie workspace.roc eingeben, und zeigt an, dass es sich um ein Model handelt.

Autofill-Namen für Variablen und Funktionen, die Sie deklarieren, um lästige Tippfehler zu vermeiden.

Dokumentations-Pop-ups mit Codebeispielen, die ähnlich sind wie die im Engine API Reference, und Ihnen Kontext zur Verwendung der API geben.

On-hover-Tooltips, die Sie mit Ihrer eigenen definierten Dokumentation anpassen können.

On-hover-Skripteanalyse-Diagnosen mit Informationen, die Sie zur Fehlersuche verwenden können.

Funktionssignaturen, wenn Sie ein Argument eingeben, das Ihnen einen Verweis auf die Parameter und Rückgabewerte bietet.

Code-Navigation
Gehe zu Deklaration
Sie können zur Deklaration einer Funktion oder Variablen springen, indem Sie Ctrl auf Windows oder ⌘ auf Mac gedrückt halten, während Sie auf den Aufruf klicken, oder indem Sie mit der rechten Maustaste auf den Aufruf klicken und Gehe zu Deklaration auswählen.

Skriptfunktionsfilter
Der Skriptfunktionsfilter zeigt eine Liste aller in einem Skript deklarierten Funktionen an. Um ihn zu öffnen, drücken Sie AltF auf Windows oder ⌥F auf Mac. Mit der geöffneten Liste können Sie die Signaturen für jede Funktion durchsuchen, nach Namen filtern und auf eine doppelklicken, um zu ihrer Deklaration zu springen.

Finden und Ersetzen
Das Finden/Ersetzen-Widget ermöglicht es Ihnen, Code in einem offenen Skript zu finden und zu ersetzen. Das Widget unterstützt die Groß-/Kleinschreibung, das vollständige Wort und die Suche nach regulären Ausdrücken. Um es zu öffnen, drücken Sie CtrlF auf Windows oder ⌘F auf Mac.

Echtzeit-Feedback
Skripteanalyse
Das Skripteanalyse-Fenster, das über die Schaltfläche Analyse in der Symbolleiste des Skripte-Tabs von Studio zugänglich ist, führt eine statische Analyse Ihrer Skripte durch und zeigt aktive Fehler und Warnungen an. Weitere Informationen zu den Fehlern und Warnungen finden Sie in der Luau-Linting Dokumentation.


Ausgabe
Das Ausgabe Fenster zeigt Fehler an, die beim Ausführen von Skripten erfasst wurden, Nachrichten von der Roblox-Engine, Nachrichten von Aufrufen an print() und Fehler von Aufrufen an warn().

Code-Hilfe
Code-Hilfe ist eine Funktion, die beim Tippen Zeilen oder Funktionen von Code vorschlägt, um Ihnen zu helfen, effizienter zu programmieren und fokussiert zu bleiben. Basierend auf Kontexten aus Ihrem Kommentar und Code werden Vorschläge auf zwei Arten ausgelöst:
- Automatisch, wenn Sie einige Sekunden auf einer Zeile pausieren und das KI-Modell genügend Kontext für einen Vorschlag hat.
- Manuell mit der Tastenkombination Alt∖ auf Windows oder ⌥∖ auf Mac.
Drücken Sie Tab, um einen Vorschlag zu akzeptieren, oder ignorieren Sie ihn, indem Sie weiter tippen. Derzeit muss Ihr Skript mindestens einige Zeilen Code enthalten, um einen Vorschlag auszulösen.
Verbesserung der Vorschläge
Um genauere und relevantere Vorschläge zu erhalten, wird empfohlen, dass Sie saubere Programmierpraktiken befolgen, unabhängig von der Unterstützung, und:
- Zerlegen Sie Ihren Code in kleinere Funktionen.
- Verwenden Sie beschreibende Skriptnamen, die die allgemeine Absicht dessen, was jedes Skript tut, erfassen. Benennen Sie beispielsweise ein Skript SyncCustomSounds anstelle von nur Sounds.
- Weisen Sie beschreibende Namen für Parameter, Funktionen und Skripte zu. Benennen Sie beispielsweise ein Teil GreenSphere anstelle von einfach grs, oder benennen Sie eine Funktion generateSphere() anstelle von gen(). Die Verwendung benannter Funktionen im Vergleich zu anonymen Funktionen kann ebenfalls bessere Hinweise liefern.
- Fügen Sie konsequent gut geschriebene Kommentare hinzu, die die Aufgabe beschreiben, die Sie implementieren, und was die Eingaben/Ausgaben sein sollten.
- Ziehen Sie in Betracht, einige Beispielaufrufe mit den erwarteten Ergebnissen in Kommentaren einzuschließen.
- Schlagen Sie vor, wie ein Problem gelöst werden kann, zum Beispiel -- Verwenden Sie Raycast.
- Verwenden Sie den genauen Funktions- oder Variablennamen, den Sie definiert haben, zum Beispiel -- Erstellen Sie 10 greenSphere-Objekte anstelle von -- Erstellen Sie 10 Sphären.
- Wenn Sie ein neuer Skripter sind, beginnen Sie mit grundlegenden Projekten wie "Lassen Sie den Spieler springen, wenn er das Teil berührt" oder verwenden Sie das Tool, um kleine Code-Snippets zu generieren, die Sie erweitern können, während Ihr Wissen wächst.
Einschränkungen
Das Tool hilft, grundlegende Programmieraufgaben zu automatisieren, aber es schlägt nicht immer perfekten Code vor. Bekannte Einschränkungen sind:
- Manuelles Auslösen generiert nicht immer einen Vorschlag.
- Vorschläge werden maschinell aus einem Korpus von Code gelernt und können daher einige Einschränkungen des Codes widerspiegeln, auf dem sie trainiert wurden. Beispielsweise verwenden Vorschläge möglicherweise nicht neuere APIs zugunsten älterer APIs oder sie verwenden Lua anstelle von Luau.
- Das Tool kann falsche oder irreführende Informationen generieren, die für Ihren Zweck nicht nützlich sind.
- Interne Filter versuchen, beleidigende Sprache zu blockieren, sind jedoch nicht allumfassend, und es besteht die Möglichkeit, dass das Tool beleidigende oder voreingenommene Informationen generiert.
- Die Vorschläge können bei verschiedenen Benutzern gleich, ähnlich oder unterschiedlich sein, selbst bei denselben Eingabeaufforderungen. Ihr Code wird jedoch niemals mit anderen geteilt.
- Der Vorschlag kann unvollständig sein, da die Ausgabe der Lernmodelle eine begrenzte Länge hat.
- Es gibt eine tägliche Obergrenze für die Anzahl der Vorschläge, und sobald die Obergrenze erreicht ist, erhalten Sie bis zum nächsten Tag keine Vorschläge mehr.
Code-Privatsphäre
Derzeit verwendet Roblox keine nicht-öffentlichen Daten, um die Lernmodelle zu trainieren. Das Tool verwendet nur eine kleine Teilmenge von kostenlosen Marktplatz-Assets zur Feinabstimmung großer Sprachmodelle, und die Teilmenge hat verschiedene Prüfungen für Qualität und Sicherheitsfilter bestanden.
Darüber hinaus werden alle Vorschläge von dem KI-Modell generiert und nicht von einem Benutzer auf einen anderen übertragen. Da Ihr Code nicht für das Modelltraining verwendet wird, wird er anderen Benutzern von Code Assist nicht vorgeschlagen, mit der Ausnahme von Code, der in kostenlosen Marktplatzartikeln veröffentlicht wird.
Mehrfach-Cursor
Der Skripteditor unterstützt die Verwendung mehrerer Cursor, um gleichzeitig Änderungen vorzunehmen. Sie können Cursor je nach Bedarf mit einem Mausklick oder einer Tastenkombination hinzufügen. Der ursprüngliche Cursor wird als primärer Cursor bezeichnet, und zusätzliche Cursor werden als sekundäre Cursor bezeichnet.
- Änderungen, die Sie am primären Cursor vornehmen, werden auf die sekundären Cursor kopiert. Jede Änderung zählt als eine Aktion, sodass das Rückgängigmachen/Wiederherstellen einer Änderung auf alle Cursor angewendet wird.
- Widgets wie Autovervollständigung erscheinen am primären Cursor, jedoch nicht an den sekundären Cursor.
- Alle Standard-Tastenkombinationen für die Skripterstellung funktionieren mit der Mehrfach-Cursor-Bearbeitung, einschließlich Codeeinrückung, Kommentartoggle und Zeilenlöschung.
Die folgende Tabelle fasst die Arbeitsabläufe mit mehreren Cursorn und deren Tastenkombinationen zusammen.
| Befehl | Windows | Mac |
|---|---|---|
| Cursor an Mausposition hinzufügen/entfernen | Alt + Klick | ⌥ + Klick |
| Zuletzt hinzugefügten Cursor entfernen | CtrlU | ⌘U |
| Cursor beim Ziehen der Maus hinzufügen/ändern | Alt + Ziehen | ⌥ + Ziehen |
| Cursor über/unter hinzufügen | CtrlAlt↑ / CtrlAlt↓ | ⌘⌥↑ / ⌘⌥↓ |
| Cursor zur nächsten übereinstimmenden Auswahl hinzufügen | CtrlD | ⌘D |
| Cursor zu jeder übereinstimmenden Auswahl hinzufügen | ShiftAltL | Shift⌥L |
| Spalten-/Blockauswahl | ShiftAlt + Ziehen | Shift⌥ + Ziehen |
| Auswahlen in Zeilen aufteilen | ShiftAltI | Shift⌥I |
Cursor hinzufügen
Sie können Cursor mit einer Kombination aus Tastenkombinationen und Mausbewegungen hinzufügen. Cursor verschmelzen, wenn sie denselben Raum einnehmen, z. B. wenn Sie Cursor mit den Pfeiltasten hinzufügen oder alle Zeichen zwischen den Cursorn löschen.
An Mausposition
Um einen Cursor an der Position Ihres Mauszeigers hinzuzufügen:
Halten Sie Alt auf Windows oder ⌥ auf Mac gedrückt.
Klicken Sie an die Stelle, an der Sie den Cursor hinzufügen möchten.
Mit Maus ziehen
Sie können die Maus ziehen, um einen Cursor zu einer Auswahl hinzuzufügen, eine mehrzeilige Auswahl in Zeilen aufzuteilen oder Spalten und Blöcke von Code/Whitespace auszuwählen.
Um einen Cursor zu einer Auswahl von Code durch Ziehen hinzuzufügen:
Halten Sie Alt auf Windows oder ⌥ auf Mac gedrückt.
Klicken und ziehen Sie Ihre Maus über die Auswahl von Code.
Über und unter dem primären Cursor
Um einen Cursor direkt über oder unter dem primären Cursor hinzuzufügen:
Drücken und halten Sie CtrlAlt auf Windows oder ⌘⌥ auf Mac.
Drücken Sie die Pfeiltasten ↑ oder ↓.
Zu übereinstimmenden Auswahlen
Sie können Cursor zu allen Übereinstimmungen einer Auswahl oder zur nächsten/vorherigen Übereinstimmung hinzufügen und optional umschalten, ob Übereinstimmungen groß-/kleinschreibungssensitiv und/oder das vollständige Wort sind.
Um einen Cursor zu allen Übereinstimmungen eines ausgewählten Teils hinzuzufügen:
Wählen Sie den Code aus, nach dem Sie Übereinstimmungen suchen möchten.
Drücken Sie ShiftAltL auf Windows oder Shift⌥L auf Mac.
Cursor entfernen
Sie können Cursor mit den folgenden Tastenkombinationen und Mausbewegungen entfernen. Alternativ können Sie die Mehrfach-Cursor-Bearbeitung beenden, indem Sie Esc drücken.
An Mausposition
Um einen Cursor zu entfernen:
Drücken und halten Sie Alt auf Windows oder ⌥ auf Mac.
Klicken Sie auf den Cursor, den Sie entfernen möchten.
Zuletzt hinzugefügt
Um den zuletzt hinzugefügten Cursor zu entfernen, drücken Sie CtrlU auf Windows oder ⌘U auf Mac.
Cursor kopieren und einfügen
Das Kopieren einer Auswahl von Code umfasst die darin enthaltenen Cursor. Das Verhalten des Einfügens hängt von der Anzahl der Cursor an der Quelle und der Anzahl der Cursor am Ziel ab:
- Wenn die Anzahl der Cursor gleich ist, wird jeder kopierte Cursor an jeden entsprechenden Zielcursor eingefügt.
- Wenn die Anzahl der Cursor unterschiedlich ist, erhält jeder Cursor am Ziel das gesamte Einfügen, wobei jeder kopierte Cursor als neue Zeile eingefügt wird.
Formatierung beim Tippen
Das Drücken von Enter/Return wird jeden Cursor in der neuen Zeile relativ zur vorherigen Zeile automatisch einrücken. Wenn die vorherige Zeile mit einem unvollständigen Block beginnt, versucht der Formatter, ihn zu vervollständigen.
Editor-Einstellungen
Viele Anpassungsoptionen sind über den Skripteditor-Tab der Studio-Einstellungen zugänglich. Häufig modifizierte Optionen umfassen:
| Option | Beschreibung |
|---|---|
| Schriftart | Schriftart und -größe für Code im Editor. |
| Tabulatorbreite | Anzahl der Leerzeichen, die einen Tab-Einzug darstellen. |
| Einrücken mit Leerzeichen | Wenn aktiviert, werden Leerzeichen, die der Tabulatorbreite entsprechen, mit dem Drücken von Tab eingefügt. |
| Textumbruch | Wenn aktiviert, werden längere Codezeilen in die nächste Zeile umgebrochen. |
| Farbeinstellung des Skripteditors | Farbeinstellung für Codeelemente, Auswahlfarben und mehr. Nachdem Sie eine Einstellung gewählt haben, können Sie spezifische Farben für Optionen wie Auswahlfarbe und Kommentarfarbe festlegen. |
Tastenkombinationen
Der Skripteditor hat die folgenden Tastenkombinationen.
| Befehl | Windows | Mac |
|---|---|---|
| Skript schließen | CtrlW | ⌘W |
| Letztes geschlossenes Skript erneut öffnen | CtrlShiftT | ⌘ShiftT |
| Schnell öffnen | CtrlP | ⌘P |
| Skript im Explorer anzeigen | CtrlAltK | ⌘⌥K |
| Vergrößern | Ctrl= | ⌘= |
| Verkleinern | Ctrl- | ⌘- |
| Skriptzoom zurücksetzen | Ctrl0 | ⌘0 |