Debugging

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Studio bietet viele Debugging-Tools und Workflows, die in integrierten Entwicklungsumgebungen (IDEs) häufig zu finden sind. Diese helfen Ihnen, Fehler in Skripten zu inspizieren und zu beheben, während sie ausgeführt werden.

Haltepunkt-Debugging

Haltepunkte sind Kontrollpunkte, die die Ausführung Ihrer Skripte an bestimmten Zeilen anhalten oder "brechen". Sie können die Pausen nutzen, um Ihr Spiel zu inspizieren und zu debuggen, Variablen zu überwachen und den Aufrufstapel zu inspizieren. Haltepunkte sind eine der effektivsten Methoden, um Funktionen zu debuggen, daher sind sie eines der wichtigsten Debugging-Tools.

Verwaltung

Im Skripteditor können Sie mehrere Arten von Haltepunkten einfügen und die Konfiguration eines Haltepunkts jederzeit bearbeiten, auch während Spieltests. Wenn Sie Haltepunkte während einer Spieltest-Sitzung bearbeiten, bleiben die Änderungen auch nach Abschluss bestehen. Sie können auch einen Haltepunkt bearbeiten, der aktiv Ihre Spieltest-Sitzung pausiert, aber Änderungen werden erst in der nächsten Spieltest-Sitzung angewendet.

Einfügen

Haltepunkte haben mehrere Variationen und können an jeder Zeile ausführbaren Codes wie folgt eingefügt werden:

Um einen Standard-Haltepunkt an einer Codezeile einzufügen, klicken Sie in den Rand direkt rechts von der Zeilennummer. Alternativ können Sie mit der rechten Maustaste in den Rand klicken und Haltepunkt einfügen auswählen. Das Haltepunkt-Symbol erscheint als roter Kreis.

Standard-Haltepunkt im Skriptrand angezeigt

Deaktivieren

Um einen Haltepunkt vorübergehend zu deaktivieren, ohne ihn zu löschen, verwenden Sie einen der folgenden Workflows:

  • Klicken Sie auf das Symbol des Haltepunkts.
  • Klicken Sie mit der rechten Maustaste auf das Symbol des Haltepunkts und wählen Sie Haltepunkt deaktivieren.
  • Bearbeiten Sie den Haltepunkt und aktivieren Sie das Kontrollkästchen Aktiviert.

Ein deaktivierter Haltepunkt erscheint als hohle Version seines aktivierten Symbols, zum Beispiel ein hohler Kreis für einen deaktivierten Standard-Haltepunkt oder ein hohles Quadrat für einen deaktivierten Logpunkt.

Deaktivierter Standard-Haltepunkt im Skriptrand angezeigt
Deaktivierter Standard-Haltepunkt
Deaktivierter Logpunkt im Skriptrand angezeigt
Deaktivierter Logpunkt

Löschen

Um einen Haltepunkt zu löschen, klicken Sie mit der mittleren Maustaste auf sein Symbol oder klicken Sie mit der rechten Maustaste auf sein Symbol und wählen Sie Haltepunkt löschen.

Bearbeiten

Sie können die Konfiguration eines Haltepunkts jederzeit bearbeiten, auch während Spieltests. Wenn Sie Haltepunkte während einer Spieltest-Sitzung bearbeiten, bleiben die Änderungen auch nach Abschluss bestehen. Sie können auch einen Haltepunkt bearbeiten, der aktiv Ihre Spieltest-Sitzung pausiert, aber Änderungen werden erst in der nächsten Spieltest-Sitzung angewendet.

Um einen Haltepunkt zu bearbeiten:

  1. Klicken Sie mit der rechten Maustaste auf das Haltepunkt-Symbol und wählen Sie Haltepunkt bearbeiten.

  2. Konfigurieren Sie im Fenster Haltepunkt bearbeiten den Haltepunkt nach Wunsch. Sie können diese Konfigurationen kombinieren, um Ihren Debugging-Bedürfnissen am besten gerecht zu werden.

    OptionBeschreibung
    BedingungEin optionaler Ausdruck, der bestimmt, ob der Haltepunkt aktiviert wird. Wenn die Bedingung leer ist, wird der Haltepunkt immer aktiviert. Wenn die Bedingung vorhanden ist, wird der Haltepunkt zu einem bedingten Haltepunkt und aktiviert sich nur, wenn die Bedingung wahr ist. Wenn Sie möchten, dass der Haltepunkt nur aktiviert wird, wenn die Variable var gleich 10 ist, setzen Sie die Bedingung auf var == 10.
    ProtokollnachrichtEin Ausdruck, der im Ausgabefenster ausgegeben wird, wenn der Haltepunkt erreicht wird. Das Format der Protokollnachricht ist dasselbe wie das einer print()-Anweisung. Setzen Sie beispielsweise die Protokollnachricht auf "Der Wert von var:", var, um dieselbe Nachricht wie print("Der Wert von var:", var) auszugeben.
    Ausführung fortsetzenBestimmt, ob der Haltepunkt das Skript pausiert, wenn er aktiviert wird. Diese Option ist standardmäßig deaktiviert, es sei denn, der eingefügte Haltepunkt ist ein Logpunkt.
    Haltepunkt bei Treffer entfernenWenn aktiviert, entfernt sich der Haltepunkt automatisch nach der ersten Spieltest-Sitzung, wodurch er effektiv zu einem temporären Haltepunkt wird.
    Auslösen beiDer Kontext eines Haltepunkts bestimmt, ob er im Client (clientseitige Skripte), Server (serverseitige Skripte) oder Bearbeiten (Debugging Plugin-Skripte) aktiviert werden soll. Wenn Sie Benutzerdefinierter Kontext wählen, zeigt das Fenster die aktuellen Auslösekontexte an.

Workflow

Der typische Workflow für das Haltepunkt-Debugging ist wie folgt:

  1. Öffnen Sie das Skript, das Sie debuggen möchten, und fügen Sie Haltepunkte an den Codezeilen ein, die Sie untersuchen möchten.

  2. Starten Sie von Studios Mezzanine aus einen Spieltest, um mit dem Debuggen zu beginnen.

    Testoption im Dropdown-Menü der Testmodi von Studios Mezzanine.
  3. Wenn das Skript einen Haltepunkt erreicht, pausiert die Spieltest-Sitzung, es sei denn, dieser Haltepunkt ist konfiguriert, um die Ausführung fortzusetzen. Ein gelber Pfeil über dem Haltepunkt zeigt an, welche Codezeile als nächstes ausgeführt wird.

    Aktiver Haltepunkt im Debugger mit gelbem Pfeil angezeigt
  4. Während das Skript pausiert, inspizieren Sie das Haltepunkte-Fenster, das Überwachen-Fenster, das Aufrufstapel-Fenster, das Ausgabefenster und den Skripteditor, um Informationen über Variablenwerte und Funktionsausführungen zu finden.

  5. Um die Ausführung des Codes nach dem Erreichen eines Haltepunkts fortzusetzen, klicken Sie auf Skripte fortsetzen im Mezzanine.

    Schaltfläche Skripte fortsetzen im Mezzanine von Studio angezeigt

    Sie können auch den Code zeilenweise mit den Schritt-Buttons im Mezzanine ausführen:

    Haltepunkt-Schritt-Buttons im Mezzanine von Studio angezeigt
    AktionShortcutBeschreibung
    Schritt hineinF11Die Schaltfläche Schritt hinein bewegt den Debugger in den Code der Funktion in der aktuellen Zeile. Wenn in der aktuellen Zeile keine Funktion vorhanden ist, bewegt sich der Debugger zur nächsten Zeile.
    Schritt überF10Die Schaltfläche Schritt über bewegt den Debugger zur nächsten Codezeile, ohne in Funktionen zu wechseln.
    Schritt herausShiftF11Die Schaltfläche Schritt heraus bewegt den Debugger aus der aktuellen Funktion heraus zur nächsten Codezeile nach dem Funktionsaufruf. Wenn die aktuelle Zeile nicht innerhalb einer Funktion ist, bewegt sich der Debugger zur nächsten Zeile.
  6. Wenn Sie mit dem Debuggen der aktuellen Sitzung fertig sind, klicken Sie auf die Schaltfläche Stop.

    Stop-Schaltfläche im Mezzanine von Studio angezeigt.

Überwachung

Studio umfasst mehrere Fenster und Tools, um Variablenwerte und Funktionsausführungen während des Debuggens zu überwachen. Mit diesen Informationen können Sie die Ursache der meisten Probleme in Ihren Skripten finden.

Haltepunkte-Schaltfläche in der Symbolleiste von Studio angezeigt

Haltepunkte

Das Haltepunkte-Fenster ist eine einheitliche Ansicht, die alle Haltepunkte in allen Skripten anzeigt. Um es zu öffnen, klicken Sie auf Haltepunkte in der Symbolleiste des Skript-Tabs von Studio oder navigieren Sie zum Menü Fenster ⟩ Debug und aktivieren Sie Haltepunkte.

Im Fenster werden die Spalten Skript und Zeile immer angezeigt, und Sie können andere Konfigurations-Spalten über das Menü in der oberen rechten Ecke ein- oder ausschalten. Innerhalb der Skript-Spalte können Sie mit der rechten Maustaste auf einen Haltepunkt klicken, um ein Optionsmenü anzuzeigen, um ihn zu bearbeiten, deaktivieren/aktivieren, löschen oder zur Zeile des Haltepunkts im Skript zu springen.

Haltepunkte-Fenster in Studio

Während einer Debugging-Sitzung zeigt die äußerste linke Spalte (x3) an, dass es mehrere Kontexte (Client, Server, Bearbeiten) für den Haltepunkt gibt. Durch das Erweitern eines Haltepunkts können Sie auf das Symbol neben einem bestimmten Kontext klicken, um ihn für diesen Kontext zu deaktivieren/aktivieren, z. B. einen Haltepunkt nur im Client-Kontext zu deaktivieren, während er im Server-Kontext aktiviert bleibt.

Haltepunkt erweitert, um Kontexte anzuzeigen

Aufrufstapel

Das Aufrufstapel-Fenster, das über die Symbolleiste des Skript-Tabs von Studio oder das Menü Fenster ⟩ Debug zugänglich ist, zeigt an, welche Codezeile als nächstes ausgeführt wird, wenn der Debugger einen Haltepunkt erreicht. Wenn Sie Funktionen aus anderen Funktionen aufrufen, zeigt es an, von welchen Zeilen diese Funktionen aufgerufen wurden, sodass Sie bestätigen können, ob der tatsächliche Aufruffluss mit dem erwarteten Fluss übereinstimmt.

Aufrufstapel-Fluss in einem Skript Aufrufstapel-Fluss im Aufrufstapel-Fenster

Während das Skript an Haltepunkten pausiert, verwenden Sie die Schritt-Buttons im Mezzanine, um in eine Funktion/Zeile hinein, darüber oder heraus zu gehen, wie im Workflow beschrieben.

Haltepunkt-Schritt-Buttons im Mezzanine von Studio angezeigt

Überwachen

Das Überwachen-Fenster, das über die Symbolleiste des Skript-Tabs von Studio oder das Menü Fenster ⟩ Debug zugänglich ist, ermöglicht es Ihnen, aktiv Variablen- und Ausdruckswerte zu überwachen, während Sie durch Haltepunkte schrittweise vorgehen.

Der Variablen-Tab zeigt Informationen über die aktuellen Variablen im Geltungsbereich, filterbar durch Klicken auf die Schaltfläche Alle Geltungsbereiche in der oberen Leiste des Fensters. Das Erweitern eines Zweigs zeigt die Mitglieder dieser Variablen oder Instanz und deren Werte. Sie können auch jede Variable überwachen, indem Sie sie im Skripteditor doppelt markieren, mit der rechten Maustaste klicken und Überwachen hinzufügen aus dem Popup-Menü auswählen.

Zu überwachende Variablen in einem SkriptVariableninformationen im Überwachen-Fenster

Skripteditor

Der Debugger ist in den Skripteditor integriert. Wenn Ihr Spiel an einem Haltepunkt in einem Skript pausiert, können Sie mit der Maus über den Namen einer Variablen fahren, um ihren Wert zu sehen. Zum Beispiel können Sie die Zusammensetzung einer Tabelle und deren enthaltene Schlüssel/Werte sehen.

Mauszeiger über einer Variablen im Skripteditor, um den Wert anzuzeigen

Zusätzliche Debugging-Tools

Neben dem Debugger bietet Studio zusätzliche Debugging-Tools, um Probleme und Fehler in Ihrem Spiel zu beheben.

Befehlszeile

Die Befehlszeile ermöglicht es Ihnen, Luau-Befehle auszuführen, während das Spiel läuft. Sie ist in Studio im Menü Fenster ⟩ Skript und in der Entwicklerkonsole verfügbar.

Entwicklerkonsole

Die Entwicklerkonsole bietet eine Vielzahl von Details, einschließlich Client- und Serverausgaben, Speicherverbrauch, Netzwerkleistung und mehr. Um die Konsole während des Testens oder Spielens eines Spiels zu öffnen, geben Sie /console in den Chat ein oder drücken Sie F9.

Protokolldateien

Wenn ein Skript in Studio oder der Spieler-App druckt oder einen Fehler ausgibt, protokolliert die App die Nachricht in einer Protokolldatei im lokalen Dateisystem. Diese Dateien befinden sich an verschiedenen Orten, abhängig vom Betriebssystem.

Windows

Um auf Protokolldateien unter Windows zuzugreifen:

  1. Öffnen Sie den Datei-Explorer.
  2. Navigieren Sie zum Verzeichnis %LOCALAPPDATA%\Roblox\logs.
  3. Doppelklicken Sie auf ein Protokoll, um es zu öffnen. Protokolle mit demselben XXXXX-Wert stammen aus derselben Studio-Sitzung.

Mac

Um auf Protokolldateien auf dem Mac zuzugreifen:

  1. Öffnen Sie den Finder.
  2. Wählen Sie in der Menüleiste Gehe zuGehe zu Ordner....
  3. Geben Sie im Dialogfeld ~/Library/Logs/Roblox ein.
  4. Doppelklicken Sie auf das Ergebnis, um zum Roblox-Protokollverzeichnis zu navigieren.
  5. Doppelklicken Sie im Verzeichnis auf ein Protokoll, um es zu öffnen.

iOS

Sie können iOS-Protokolle mit einem Mac oder einem iOS-Gerät sammeln.

Um auf iOS-Protokolldateien auf einem Mac zuzugreifen:

  1. Schließen Sie das iOS-Gerät an einen Mac an.
  2. Öffnen Sie den Finder.
  3. Navigieren Sie zu Dienstprogramme und öffnen Sie die Konsole-Anwendung.
  4. Um Echtzeitprotokolle in der Konsolenanwendung zu füllen, wählen Sie das iOS-Gerät aus der Seitenleiste aus, klicken Sie auf die Schaltfläche Start und reproduzieren Sie das Problem auf dem iOS-Gerät.
  5. Um archivierte Protokolle in der Konsolenanwendung zu füllen, führen Sie sudo log collect --device-name "[iOS-Gerätename]" im Terminal aus. Stellen Sie sicher, dass im Namen des Geräts keine Apostrophe enthalten sind, da Sie sonst beim Ausführen des Befehls einen Fehler erhalten könnten.

Android

Um auf Protokolldateien auf Android zuzugreifen:

  1. Navigieren Sie zu EinstellungenSystemEntwickleroptionen.
  2. Aktivieren Sie die Entwickleroptionen.
  3. Laden Sie auf einem Computer Android Studio herunter und installieren Sie es.
  4. Klicken Sie in Android Studio auf Logcat.
  5. Schließen Sie das Android-Gerät an den Computer an, um Logcat automatisch mit Protokollen zu füllen.
©2026 Roblox Corporation. Roblox, das Roblox-Logo und "Powering Imagination" gehören zu unseren eingetragenen und nicht eingetragenen Markenzeichen in den USA und anderen Ländern.