跳到內容

識別問題

任何錯誤回報流程的第一步是收集出問題的證明。簡單的訊息如「嘿,這個遊戲不能用」對我們的維護團隊沒有幫助。為了有效地修復問題,我們每次都需要三件事:

  • 觸發錯誤的影片。我們理解您無法擷取鍵盤上的特效出錯,但遊戲影片就足夠了。
  • 觸發錯誤的動作描述。請盡可能詳細。即使是小細節也能幫助我們快速識別問題來源。
  • 您正在使用的螢幕解析度。沒有這個,我們的開發者必須檢查我們支援的每個解析度才能找到問題,這可能很耗時。

如果您是一位與我們公司沒有直接聯繫的 Lightscript 創作者,這些簡單的步驟仍然會對您自己的程式碼大有幫助。徹底的文件記錄結合對程式碼結構的理解,使識別問題成為一個直接的過程。

如果您是嘗試 DIY 維護的遊戲愛好者,請確保向我們發送可見問題的遊戲影片。我們或許能加快您的修復速度!

整合錯誤通常很容易發現——如果一個特效從不播放或播放太頻繁,顯然有些東西壞了。具有挑戰性的部分是確定導致問題的確切程式碼段。始終按照上一節概述的步驟識別問題,因為這將提供最清晰的路徑。以下是建議的錯誤修復流程:

  • 檢查主控台記錄

    • 我們是否獲得了識別問題的任何主控台記錄?這裡的常見問題包括未宣告的變數、拼寫錯誤以及不正確的儀錶或形狀繪製範圍。SignalRGB 不會偵測到堆疊溢出,但它們很容易發現:SignalRGB 將首先當機,然後是您的電腦。作為負責任的程式設計師,避免讓您的應用程式無限計數。
  • 檢查儀錶

    • 在遊戲過程中,特效是否在儀錶檢查器中觸發您的儀錶?如果是,您應該在儀錶視圖下方的黑色區域中看到白色出現。
      • 如果儀錶放置不正確,使用我們的專有工具 (WindowSpy) 進行螢幕測量並調整 **<head>** 部分中的儀錶放置。
      • 如果這解決了問題,請記得為調整部分中的每個其他解析度調整儀錶。有關儀錶放置和正規化座標的說明可以在本文件的「智慧標籤」部分找到。
      • 如果儀錶觸發正確,問題在其他地方。
  • 檢查 Update 函式:

    • 儀錶資料是否正確傳遞給 Meter 類別?
      • 您是否插入了條件儀錶更新以應對複雜的 UI 行為?
      • 如果一切看起來正常,直接在您的回呼函式內放置 console.log。記錄應在每次儀錶穩定時打印,即使特效沒有正確觸發。
      • 如果記錄持續出現,問題在其他地方。
  • 評估回呼函式:

    • 我們知道回呼函式正在正確啟動,因為我們之前看到了記錄。現在,檢查特效中的條件語句是否準確。
      • 如果沒有明顯的問題,在條件語句內添加 console.log 語句,看看遊戲過程中是否有任何觸發不正確。
      • 如果一切看起來都正常,問題可能在特效本身內。
  • 檢查特效動畫函式:

    • 動畫函式可能差異很大,因此沒有萬能的建議。但是,為了有效率地除錯:
      • 將特效移到空的 Lightscript 範本中並驗證您可以啟動它以在 SignalRGB 中查看動畫。
      • 注意主控台並記下動畫中斷的位置。
      • 隔離問題程式碼將為您節省時間,所以確保遵循此步驟。