Identifiera problem
Samla in media för testning
Section titled “Samla in media för testning”Det första steget i varje buggrapporteringsprocess är att samla bevis på att något går fel. Enkla meddelanden som “Hej, det här spelet fungerar inte” är inte till hjälp för vårt underhållsteam. För att effektivt åtgärda ett problem behöver vi tre saker varje gång:
- En video av buggen som utlöses. Vi förstår att du inte kan fånga att effekten går fel på tangentbordet, men en spelvideo räcker.
- En beskrivning av åtgärderna som utlöste buggen. Var så detaljerad som möjligt. Även små detaljer kan hjälpa oss att snabbt identifiera källan till problemet.
- Skärmupplösningen du spelar på. Utan det måste våra utvecklare kontrollera varje upplösning vi stöder för att hitta problemet, vilket kan ta lång tid.
Om du är en Lightscript-skapare som inte är direkt anknuten till vårt företag, hjälper dessa enkla steg dig fortfarande enormt med din egen kod. Grundlig dokumentation, kombinerat med förståelse för kodens struktur, gör det enkelt att identifiera problem.
Om du är ett fan av spelet som försöker göra DIY-underhåll, se till att skicka in spelfilm med problemet synligt. Vi kanske kan påskynda din fix!
Identifiera problem
Section titled “Identifiera problem”Integrationsbuggar är vanligtvis lätta att se – om en effekt aldrig spelas eller spelas för ofta är något tydligt trasigt. Den utmanande delen är att precisera det exakta kodavsnittet som orsakar problemet. Börja alltid med att identifiera problemet med hjälp av stegen som beskrivs i föregående avsnitt, eftersom detta ger den tydligaste vägen att följa. Nedan är en föreslagen buggfixningsprocess:
-
Kontrollera konsolloggen:
- Får vi några konsolloggar som identifierar problemet? Vanliga problem här inkluderar odeklarerade variabler, felstavade ord och felaktiga mätar- eller formritningsintervall. Stacköverskridanden upptäcks inte av SignalRGB, men de är lätta att se: SignalRGB kraschar först, följt av din dator. Var en ansvarsfull programmerare och undvik att låta din app räkna till oändligheten.
-
Kontrollera mätarna:
- Utlöser effekten dina mätare i Meter Inspector under spel? Om det gör det bör du se vitt visas i det svarta området under mätarvyn.
- Om mätaren är felplacerad, använd vårt egna verktyg (WindowSpy) för att ta skärmmätningar och justera mätarplaceringen i avsnittet
**<head>**. - Om det åtgärdar problemet, kom ihåg att justera mätaren för alla andra upplösningar i justeringsavsnittet. Instruktioner om mätarplacering och normaliserade koordinater finns i avsnittet “Smart-taggar” i det här dokumentet.
- Om mätarna utlöses korrekt ligger problemet någon annanstans.
- Om mätaren är felplacerad, använd vårt egna verktyg (WindowSpy) för att ta skärmmätningar och justera mätarplaceringen i avsnittet
- Utlöser effekten dina mätare i Meter Inspector under spel? Om det gör det bör du se vitt visas i det svarta området under mätarvyn.
-
Kontrollera update-funktionen:
- Skickas mätardata korrekt till Meter-klassen?
- Har du infogat villkorliga mätaruppdateringar för att ta hänsyn till komplext UI-beteende?
- Om allt ser bra ut, placera en
console.logdirekt inuti din återanropsfunktion. Loggen bör skriva ut varje gång mätaren stabiliseras, även om effekten inte utlöses korrekt. - Om loggen visas konsekvent ligger problemet någon annanstans.
- Skickas mätardata korrekt till Meter-klassen?
-
Utvärdera återanropsfunktionen:
- Vi vet att återanropsfunktionen aktiveras korrekt eftersom vi såg loggarna tidigare. Granska nu villkoren inuti effekten för noggrannhet.
- Om ingenting verkar uppenbart fel, lägg till
console.log-satser inuti villkoren för att se om något utlöses felaktigt under spel. - Om allt ser bra ut kan problemet ligga i själva effekten.
- Om ingenting verkar uppenbart fel, lägg till
- Vi vet att återanropsfunktionen aktiveras korrekt eftersom vi såg loggarna tidigare. Granska nu villkoren inuti effekten för noggrannhet.
-
Kontrollera effektanimeringsfunktionen:
- Animationsfunktioner kan vara mycket varierande, så det finns inga universella råd. Men för effektiv felsökning:
- Flytta effekten till en tom Lightscript-mall och verifiera att du kan aktivera den för att se animationen i SignalRGB.
- Var uppmärksam på konsolen och notera var animationen bryts.
- Att isolera problemkoden sparar tid, så se till att följa det här steget.
- Animationsfunktioner kan vara mycket varierande, så det finns inga universella råd. Men för effektiv felsökning: