Verbeteringen aan de Lua-debugger!

Vandaag kondigen we met trots een ingrijpende vernieuwing van onze Lua Debugger aan! Deze functie is ontworpen om u te helpen begrijpen hoe uw code wordt uitgevoerd en om bugs effectiever op te sporen dan met veelgebruikte opties, zoals print-statements. Als u de Lua Debugger de laatste tijd nog niet hebt bekeken, nodigen we u uit om te ontdekken hoe u deze kunt gebruiken om uw code effectiever te debuggen. Voordat we de nieuwste verbeteringen en fixes beschrijven, zullen we kort de belangrijkste functies van de Lua Debugger doornemen.
Breekpunten
Door breekpunten in uw code in te voegen, kunt u het spel op elk moment pauzeren om de logica ervan te inspecteren. Om breekpunten te gebruiken, spoort u bij benadering op waar uw spel zich vreemd gedraagt en stelt u breekpunten in op de instructies waar u meer informatie nodig hebt door links van de coderegel te klikken. Uw code stopt tijdelijk met uitvoeren en alle globale en lokale variabelen, eigenschappen en objectverwijzingen tonen de waarden die ze tot dat moment in het spel zijn toegewezen.

Doorloop je code
Wanneer u uw code op een specifiek breekpunt hebt gepauzeerd, kunt u zich concentreren op het diagnosticeren van wat er gebeurt. Wanneer u bijvoorbeeld andere functieaanroepen bereikt, kunt u die functies 'binnenstappen' en onderzoeken wat ze doen. U kunt ook uit een functie 'stappen', waardoor de code wordt uitgevoerd totdat de functie terugkeert en stopt bij de volgende instructie in de code die deze heeft aangeroepen. Met deze functionaliteit kunt u nauwkeurig observeren hoe variabelen in de loop van de tijd veranderen en welke functies worden aangeroepen.


Wijzigingen in uw variabelen bijhouden
Met 'Add Watch' kunt u de Lua Debugger aangeven welke variabelen u wilt volgen of in de gaten wilt houden wanneer ze breekpunten tegenkomen. Om een item aan de watch-lijst toe te voegen, markeert u eenvoudigweg een variabele, klikt u er met de rechtermuisknop op in de scriptweergave en klikt u op het menu-item 'Add Watch'. U kunt ook op de knop 'Add Watch' klikken en de naam van de variabele invoeren. Hierdoor wordt automatisch informatie opgehaald over de waarde van de variabele die in de gaten wordt gehouden wanneer breekpunten worden geraakt.

Call Stack
Het venster Call Stack toont een lijst met functies die achtereenvolgens door elkaar worden aangeroepen. Functie A roept bijvoorbeeld functie B aan, die op haar beurt functie C aanroept die een ingebed breekpunt bevat. Wanneer de uitvoering vervolgens stopt bij dat breekpunt, toont de stack de volgorde waarin elke functie werd aangeroepen, samen met de plaats waar de aanroep plaatsvond. Terwijl u lokale variabelen in functie C bekijkt, kunt u ook schakelen tussen functies in de stack en de context van de functie wijzigen die momenteel is geselecteerd in de stacklijst, en wijzigingen in die lokale variabelen onderzoeken.

De Lua-debugger gebruiken
De Lua-debugger is toegankelijk wanneer je scripts bewerkt in Roblox Studio. Om te beginnen en breekpunten aan je code toe te voegen, klik je gewoon links van de regel in het scriptvenster die je wilt pauzeren. Elke regel waarop je klikt en die je als breekpunt aanwijst, wordt gemarkeerd met een rode stip.

Zodra je je game test, kun je in het menu 'View' de opties 'Breakpoint', 'Add Watch' en 'Call Stack' inschakelen en het gedrag van je code onder de hoofdviewport onderzoeken. Zo simpel is het! Als je de Lua Debugger nog niet eerder hebt gebruikt, raden we je aan deze eens te bekijken.
Nieuwe verbeteringen
Nu we de belangrijkste functies van de Lua Debugger hebben besproken, hebben we onlangs een aantal belangrijke verbeteringen en fixes doorgevoerd, waaronder:
- Een probleem opgelost waarbij het juiste script mogelijk niet werd geopend bij een breekpunt of vanuit het venster Call Stack.
- De markering van de huidige regel in de Lua Debugger is verholpen.
- Fouten met beschermde call- of pcall-aanroepen worden nu correct gedetecteerd.
- Er zijn gemengde tabellen toegevoegd waarmee u waarden kunt bekijken en volgen. U kunt ook met de muis over een tabelvariabele gaan en al uw waarden onmiddellijk zien, zonder dat u ze hoeft af te drukken.
- Diverse kleine verbeteringen aan de gebruikersinterface.
- Diverse fixes voor tooltips en het venster 'Add Watch'.
- Als u de muisaanwijzer op variabelen met één teken plaatst, wordt de waarde van de variabele nu correct weergegeven.
- Alle eigenschappen worden nu weergegeven in de tooltip en het venster 'Watch', zonder dat er eigenschappen ontbreken.
We zetten ons in om de getalenteerde Roblox-ontwikkelaarsgemeenschap te voorzien van de tools die ze nodig hebben. We horen graag uw feedback over hoe we de Lua Debugger kunnen blijven verbeteren op het Developer Forum.


