Ga naar inhoud

Problemen identificeren

De eerste stap in elk foutenrapportageproces is het verzamelen van bewijs dat er iets misgaat. Eenvoudige berichten zoals “Hé, dit spel werkt niet” zijn niet nuttig voor ons onderhoudsteam. Om een probleem efficiënt op te lossen, hebben we elke keer drie dingen nodig:

  • Een video van de bug die wordt geactiveerd. We begrijpen dat u het effect niet op het toetsenbord kunt vastleggen, maar een gameplay-video volstaat.
  • Een beschrijving van de acties die de bug hebben veroorzaakt. Wees zo gedetailleerd mogelijk. Zelfs kleine details kunnen ons helpen de bron van het probleem snel te identificeren.
  • De schermresolutie waarop u speelt. Zonder dit moeten onze ontwikkelaars elke resolutie die we ondersteunen controleren om het probleem te vinden, wat tijdrovend kan zijn.

Als u een Lightscript-maker bent die niet direct bij ons bedrijf is aangesloten, zullen deze eenvoudige stappen u ook enorm helpen met uw eigen code. Grondige documentatie, gecombineerd met een begrip van de structuur van de code, maakt het identificeren van problemen een eenvoudig proces.

Als u een fan van het spel bent die DIY-onderhoud probeert, zorg er dan voor dat u gameplaybeelden met het zichtbare probleem naar ons stuurt. We kunnen uw herstel misschien versnellen!

Integratiebugs zijn meestal gemakkelijk te herkennen — als een effect nooit of te vaak wordt afgespeeld, is er duidelijk iets mis. Het uitdagende deel is het bepalen van het exacte codegedeelte dat het probleem veroorzaakt. Begin altijd met het identificeren van het probleem via de stappen in het vorige gedeelte, want dit biedt het duidelijkste pad. Hieronder staat een aanbevolen foutherstelproces:

  • Controleer het console-log:

    • Krijgen we console-logs die het probleem identificeren? Veelvoorkomende problemen zijn niet-gedeclareerde variabelen, spelfouten en onjuiste bereiken voor meters of vormtekening. Stack overflows worden niet gedetecteerd door SignalRGB, maar zijn gemakkelijk te herkennen: SignalRGB crasht als eerste, gevolgd door uw computer. Wees een verantwoordelijke programmeur en vermijd het laten tellen van uw app tot in het oneindige.
  • Controleer de meters:

    • Activeert het effect uw meters in de Meter Inspector tijdens gameplay? Als dat zo is, zou u wit moeten zien verschijnen in het zwarte gebied onder de meterweergave.
      • Als de meter verkeerd geplaatst is, gebruik dan ons eigen hulpmiddel (WindowSpy) om schermmetingen te nemen en de meterplaatsing in de sectie **<head>** aan te passen.
      • Als dit het probleem oplost, vergeet dan niet de meter aan te passen voor elke andere resolutie in het aanpassingsgedeelte. Instructies over meterplaatsing en genormaliseerde coördinaten zijn te vinden in de sectie “Smart Tags” van dit document.
      • Als de meters correct activeren, ligt het probleem ergens anders.
  • Controleer de updatefunctie:

    • Worden de metergegevens correct doorgegeven aan de Meter-klasse?
      • Heeft u conditionele Meter-updates ingevoegd om rekening te houden met complex UI-gedrag?
      • Als alles er goed uitziet, plaatst u een console.log direct in uw callbackfunctie. Het log moet elke keer afdrukken wanneer de meter stabiliseert, zelfs als het effect niet correct wordt geactiveerd.
      • Als het log consistent verschijnt, ligt het probleem ergens anders.
  • Evalueer de callbackfunctie:

    • We weten dat de callbackfunctie correct activeert omdat we eerder de logs hebben gezien. Bekijk nu de conditionals in het effect op nauwkeurigheid.
      • Als er niets duidelijk mis lijkt te zijn, voeg dan console.log-instructies toe in de conditionals om te zien of er tijdens gameplay onjuist worden geactiveerd.
      • Als alles er goed uitziet, kan het probleem in het effect zelf zitten.
  • Controleer de effectanimatiefunctie:

    • Animatiefuncties kunnen sterk variëren, dus er is geen universeel advies. Voor efficiënt debuggen:
      • Verplaats het effect naar een leeg Lightscript-sjabloon en verifieer dat u het kunt activeren om de animatie in SignalRGB te bekijken.
      • Let op de console en noteer waar de animatie vastloopt.
      • Het isoleren van de probleemcode bespaart u tijd, dus zorg ervoor dat u deze stap volgt.