การดีบัก

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

Studio มีเครื่องมือและเวิร์กโฟลว์การดีบักมากมายที่พบได้ทั่วไปในสภาพแวดล้อมการพัฒนาแบบรวม (IDE) ซึ่งช่วยให้คุณตรวจสอบและแก้ไขข้อผิดพลาดในสคริปต์ขณะที่มันทำงาน

การดีบักจุดพัก

จุดพักเป็นจุดตรวจสอบที่หยุดหรือ "หยุด" การทำงานของสคริปต์ของคุณที่บรรทัดเฉพาะ คุณสามารถใช้การหยุดเหล่านี้เพื่อตรวจสอบและดีบักเกมของคุณ, ดู ตัวแปร, และตรวจสอบ สแต็คการเรียก จุดพักเป็นหนึ่งในวิธีที่มีประสิทธิภาพที่สุดในการดีบักฟังก์ชัน ดังนั้นจึงเป็นหนึ่งในเครื่องมือการดีบักที่สำคัญที่สุด

การจัดการ

ใน Script Editor คุณสามารถ แทรก จุดพักหลายประเภทและแก้ไขการกำหนดค่าของจุดพักได้ตลอดเวลา รวมถึงในระหว่างการทดสอบการเล่น หากคุณแก้ไขจุดพักในระหว่างการทดสอบการเล่น การแก้ไขจะยังคงอยู่แม้ว่าคุณจะเสร็จสิ้นแล้ว คุณยังสามารถแก้ไขจุดพักที่หยุดการทดสอบการเล่นของคุณอยู่ได้ แต่การเปลี่ยนแปลงจะไม่ถูกนำไปใช้จนกว่าจะถึงการทดสอบการเล่นครั้งถัดไป

แทรก

จุดพักมีหลายรูปแบบและสามารถแทรกได้ที่บรรทัดใด ๆ ของโค้ดที่สามารถทำงานได้ดังนี้:

เพื่อแทรกจุดพักมาตรฐานที่บรรทัดของโค้ด ให้คลิกในพื้นที่ด้านขวาของหมายเลขบรรทัดของมัน โดยทางเลือกอื่น ให้คลิกขวาในพื้นที่และเลือก แทรก จุดพัก ไอคอนจุดพักจะแสดงเป็นวงกลมสีแดง

จุดพักมาตรฐานที่แสดงในพื้นที่สคริปต์

ปิดใช้งาน

เพื่อปิดใช้งานจุดพักชั่วคราวโดยไม่ต้อง ลบ มัน ใช้เวิร์กโฟลว์ใด ๆ ต่อไปนี้:

  • คลิกที่ไอคอนของจุดพัก
  • คลิกขวาที่ไอคอนของจุดพักและเลือก ปิดใช้งานจุดพัก
  • แก้ไข จุดพักและเปลี่ยนสถานะของช่องทำเครื่องหมาย เปิดใช้งาน

จุดพักที่ปิดใช้งานจะแสดงเป็นเวอร์ชันที่ไม่มีเนื้อหาของไอคอนที่เปิดใช้งาน เช่น วงกลมที่ไม่มีเนื้อหาสำหรับจุดพักมาตรฐานที่ปิดใช้งาน หรือเพชรที่ไม่มีเนื้อหาสำหรับล็อกพ้อยที่ปิดใช้งาน

จุดพักมาตรฐานที่ปิดใช้งานที่แสดงในพื้นที่สคริปต์
จุดพักมาตรฐานที่ปิดใช้งาน
ล็อกพ้อยที่ปิดใช้งานที่แสดงในพื้นที่สคริปต์
ล็อกพ้อยที่ปิดใช้งาน

ลบ

เพื่อที่จะลบจุดพัก ให้คลิกกลางที่ไอคอนของมันหรือคลิกขวาที่ไอคอนของมันและเลือก ลบจุดพัก

แก้ไข

คุณสามารถแก้ไขการกำหนดค่าของจุดพักได้ตลอดเวลา รวมถึงในระหว่างการทดสอบการเล่น หากคุณแก้ไขจุดพักในระหว่างการทดสอบการเล่น การแก้ไขจะยังคงอยู่แม้ว่าคุณจะเสร็จสิ้นแล้ว คุณยังสามารถแก้ไขจุดพักที่หยุดการทดสอบการเล่นของคุณอยู่ได้ แต่การเปลี่ยนแปลงจะไม่ถูกนำไปใช้จนกว่าจะถึงการทดสอบการเล่นครั้งถัดไป

เพื่อแก้ไขจุดพัก:

  1. คลิกขวาที่ไอคอนจุดพักและเลือก แก้ไขจุดพัก

  2. ในหน้าต่าง แก้ไขจุดพัก ให้กำหนดค่าจุดพักตามที่ต้องการ คุณสามารถผสมผสานการกำหนดค่าเหล่านี้เข้าด้วยกันเพื่อให้เหมาะสมที่สุดกับความต้องการในการดีบักของคุณ

    ตัวเลือกคำอธิบาย
    เงื่อนไขนิพจน์ที่ไม่บังคับซึ่งกำหนดว่าจุดพักจะทำงานหรือไม่ หากเงื่อนไขว่างเปล่า จุดพักจะทำงานเสมอ หากมีเงื่อนไข จุดพักจะกลายเป็น จุดพักที่มีเงื่อนไข และจะทำงานเฉพาะเมื่อเงื่อนไขเป็นจริง ตัวอย่างเช่น หากคุณต้องการให้จุดพักทำงานเฉพาะเมื่อค่าตัวแปร var เท่ากับ 10 ให้ตั้งค่าเงื่อนไขเป็น var == 10.
    ข้อความล็อกนิพจน์ที่พิมพ์ไปยังหน้าต่าง Output เมื่อจุดพักถูกเรียกใช้ รูปแบบของข้อความล็อกจะเหมือนกับที่ของคำสั่ง print() ตัวอย่างเช่น ตั้งค่าข้อความล็อกเป็น "ค่าของ var:", var เพื่อให้แสดงข้อความเดียวกันกับ print("ค่าของ var:", var).
    ดำเนินการต่อกำหนดว่าจุดพักจะหยุดสคริปต์หรือไม่หากมันทำงาน ตัวเลือกนี้จะถูกปิดใช้งานโดยค่าเริ่มต้น เว้นแต่จุดพักที่แทรกจะเป็น ล็อกพ้อย.
    ลบจุดพักเมื่อถูกเรียกใช้หากเลือก จุดพักจะลบตัวเองโดยอัตโนมัติหลังจากการทดสอบการเล่นครั้งแรก ทำให้มันเป็นจุดพัก ชั่วคราว.
    เรียกใช้ที่บริบท ของจุดพักกำหนดว่ามันควรทำงานใน Client (สคริปต์ฝั่งลูกค้า), Server (สคริปต์ฝั่งเซิร์ฟเวอร์), หรือ Edit (การดีบัก ปลั๊กอิน สคริปต์) หากคุณเลือก บริบทที่กำหนดเอง หน้าต่างจะแสดงบริบทการเรียกใช้ปัจจุบัน

เวิร์กโฟลว์

เวิร์กโฟลว์ทั่วไปสำหรับการดีบักจุดพักมีดังนี้:

  1. เปิดสคริปต์ที่คุณต้องการดีบักและ แทรกจุดพัก ที่บรรทัดของโค้ดที่คุณต้องการตรวจสอบ

  2. จาก mezzanine ของ Studio, เริ่มการทดสอบการเล่น เพื่อเริ่มการดีบัก

    ตัวเลือกทดสอบในเมนูดรอปดาวน์โหมดการทดสอบของ Studio.
  3. เมื่อสคริปต์ถึงจุดพัก การทดสอบการเล่นจะ หยุด เว้นแต่จุดพักนั้นจะถูก กำหนดค่า ให้ดำเนินการต่อ ลูกศรสีเหลืองเหนือจุดพักจะแสดงว่าบรรทัดของโค้ดใดจะทำงานถัดไป

    จุดพักที่ใช้งานในดีบักเกอร์แสดงลูกศรสีเหลือง
  4. ขณะที่สคริปต์หยุด ตรวจสอบหน้าต่าง จุดพัก, หน้าต่าง ดู, หน้าต่าง สแต็คการเรียก, หน้าต่าง Output, และ Script Editor เพื่อค้นหาข้อมูลเกี่ยวกับค่าตัวแปรและการเรียกใช้ฟังก์ชัน

  5. เพื่อดำเนินการต่อหลังจากถึงจุดพัก ให้คลิก ดำเนินการสคริปต์ ใน mezzanine

    ปุ่มดำเนินการสคริปต์ที่ระบุใน mezzanine ของ Studio

    คุณยังสามารถดำเนินการโค้ดทีละบรรทัดด้วยปุ่มก้าวใน mezzanine:

    ปุ่มก้าวจุดพักที่ระบุใน mezzanine ของ Studio
    การกระทำทางลัดคำอธิบาย
    ก้าวเข้าF11ปุ่ม ก้าวเข้า จะย้ายดีบักเกอร์เข้าไปในโค้ดของฟังก์ชันที่อยู่ในบรรทัดปัจจุบัน หากไม่มีฟังก์ชันในบรรทัดปัจจุบัน ดีบักเกอร์จะย้ายไปยังบรรทัดถัดไป
    ก้าวข้ามF10ปุ่ม ก้าวข้าม จะย้ายดีบักเกอร์ไปยังบรรทัดถัดไปของโค้ด โดย ไม่ ย้ายเข้าไปในฟังก์ชัน
    ก้าวออกShiftF11ปุ่ม ก้าวออก จะย้ายดีบักเกอร์ออกจากฟังก์ชันปัจจุบันและไปยังบรรทัดถัดไปหลังจากการเรียกฟังก์ชัน หากบรรทัดปัจจุบันไม่อยู่ในฟังก์ชัน ดีบักเกอร์จะย้ายไปยังบรรทัดถัดไป
  6. เมื่อคุณเสร็จสิ้นการดีบักเซสชันปัจจุบัน ให้คลิกปุ่ม หยุด

    ปุ่มหยุดที่ระบุใน mezzanine ของ Studio.

การตรวจสอบ

Studio รวมถึงหลายหน้าต่างและเครื่องมือเพื่อตรวจสอบค่าตัวแปรและการเรียกใช้ฟังก์ชันขณะทำการดีบัก ด้วยข้อมูลนี้ คุณสามารถค้นหาสาเหตุที่แท้จริงของปัญหาส่วนใหญ่ในสคริปต์ของคุณ

ปุ่มจุดพักที่ระบุในแถบเครื่องมือของ Studio

จุดพัก

หน้าต่าง จุดพัก เป็นมุมมองรวมที่แสดงจุดพักทั้งหมดในสคริปต์ทั้งหมด เพื่อเปิดมัน ให้คลิก จุดพัก จากแถบเครื่องมือ สคริปต์ ของ Studio หรือไปที่เมนู หน้าต่าง ⟩ ดีบัก และเปิดใช้งาน จุดพัก

ในหน้าต่าง คอลัมน์ สคริปต์ และ บรรทัด จะแสดงเสมอ และคุณสามารถเปิด/ปิดคอลัมน์การ กำหนดค่า อื่น ๆ ผ่านเมนู ที่มุมขวาบน ภายในคอลัมน์ สคริปต์ คลิกขวาที่จุดพักใด ๆ เพื่อแสดงเมนูตัวเลือกเพื่อ แก้ไข, ปิดใช้งาน/เปิดใช้งาน, ลบ, หรือกระโดดไปยังบรรทัดของจุดพักภายในสคริปต์

หน้าต่างจุดพักใน Studio

ในระหว่างการดีบักเซสชัน คอลัมน์ที่อยู่ทางซ้ายสุดจะแสดง (x3) ซึ่งบ่งบอกถึงบริบทหลาย ๆ อย่าง (Client, Server, Edit) สำหรับจุดพัก โดยการขยายสาขาของจุดพักใด ๆ คุณสามารถคลิกที่ไอคอนถัดจากบริบทเฉพาะเพื่อ ปิดใช้งาน/เปิดใช้งาน สำหรับบริบทนั้น เช่น การปิดใช้งานจุดพักเฉพาะในบริบท Client ขณะที่ยังคงเปิดใช้งานในบริบท Server

จุดพักที่ขยายเพื่อแสดงบริบท

สแต็คการเรียก

หน้าต่าง สแต็คการเรียก ซึ่งเข้าถึงได้จากแถบเครื่องมือ สคริปต์ ของ Studio หรือเมนู หน้าต่าง ⟩ ดีบัก แสดงว่าบรรทัดใดของโค้ดจะทำงานถัดไปเมื่อดีบักเกอร์ถึงจุดพัก หากคุณเรียกฟังก์ชันจากภายในฟังก์ชันอื่น มันจะแสดงว่าบรรทัดใดที่ฟังก์ชันเหล่านั้นถูกเรียกใช้จาก ซึ่งช่วยให้คุณยืนยันว่าการเรียกใช้งานจริงตรงกับการเรียกใช้งานที่คาดหวังหรือไม่

การไหลของสแต็คการเรียกในสคริปต์ การไหลของสแต็คการเรียกในหน้าต่างสแต็คการเรียก

ขณะที่สคริปต์หยุดที่จุดพัก ใช้ปุ่มก้าวใน mezzanine เพื่อก้าวเข้า, ข้าม, หรือออกจากฟังก์ชัน/บรรทัดตามที่อธิบายไว้ใน เวิร์กโฟลว์

ปุ่มก้าวจุดพักที่ระบุใน mezzanine ของ Studio

ดู

หน้าต่าง ดู ซึ่งเข้าถึงได้จากแถบเครื่องมือ สคริปต์ ของ Studio หรือเมนู หน้าต่าง ⟩ ดีบัก ช่วยให้คุณดูค่าตัวแปรและนิพจน์ขณะที่คุณก้าวผ่านจุดพัก

แท็บ ตัวแปร แสดงข้อมูลเกี่ยวกับตัวแปรปัจจุบันใน ขอบเขต ซึ่งสามารถกรองได้โดยการคลิกปุ่ม ขอบเขตทั้งหมด ในแถบด้านบนของหน้าต่าง การขยายสาขาจะแสดงสมาชิกของตัวแปรหรืออินสแตนซ์นั้นและค่าของพวกเขา คุณยังสามารถดูตัวแปรใด ๆ โดยการไฮไลต์ใน Script Editor สองครั้ง คลิกขวา และเลือก เพิ่ม ดู จากเมนูป๊อปอัป

ตัวแปรที่ต้องดูภายในสคริปต์ข้อมูลตัวแปรในหน้าต่างดู

Script Editor

ดีบักเกอร์ถูกบูรณาการกับ Script Editor เมื่อเกมของคุณหยุดที่จุดพักในสคริปต์ คุณสามารถวางเมาส์เหนือชื่อของตัวแปรเพื่อดูค่าของมัน ตัวอย่างเช่น คุณสามารถดูองค์ประกอบของตารางและคีย์/ค่าที่มีอยู่ภายใน

วางเมาส์เหนือค่าตัวแปรใน Script Editor

เครื่องมือการดีบักเพิ่มเติม

นอกจากดีบักเกอร์แล้ว Studio ยังมีเครื่องมือการดีบักเพิ่มเติมสำหรับคุณในการแก้ไขปัญหาและบั๊กในเกมของคุณ

Command Bar

Command Bar ช่วยให้คุณสามารถรันคำสั่ง Luau ขณะที่เกมกำลังทำงาน มันสามารถเข้าถึงได้ใน Studio จากเมนู หน้าต่าง ⟩ สคริปต์ และใน Developer Console

Developer Console

Developer Console ให้รายละเอียดมากมายรวมถึงผลลัพธ์ของลูกค้าและเซิร์ฟเวอร์, การใช้งานหน่วยความจำ, ประสิทธิภาพเครือข่าย, และอื่น ๆ เพื่อเปิดคอนโซลขณะทดสอบหรือเล่นเกม ให้พิมพ์ /console ลงในแชทหรือกด F9

ไฟล์ล็อก

เมื่อสคริปต์พิมพ์หรือเกิดข้อผิดพลาดใน Studio หรือแอปผู้เล่น แอปจะบันทึกข้อความในไฟล์ล็อกในระบบไฟล์ท้องถิ่น ไฟล์เหล่านี้ตั้งอยู่ในสถานที่ต่าง ๆ ขึ้นอยู่กับระบบปฏิบัติการ

Windows

เพื่อเข้าถึงไฟล์ล็อกใน Windows:

  1. เปิด File Explorer
  2. ไปที่ไดเรกทอรี %LOCALAPPDATA%\Roblox\logs
  3. ดับเบิลคลิกที่ล็อกเพื่อเปิด ไฟล์ล็อกที่มีค่า XXXXX เดียวกันมาจากเซสชัน Studio เดียวกัน

Mac

เพื่อเข้าถึงไฟล์ล็อกใน Mac:

  1. เปิด Finder
  2. ในแถบเมนู ให้เลือก ไปไปที่โฟลเดอร์...
  3. ในกล่องโต้ตอบ ให้ป้อน ~/Library/Logs/Roblox
  4. ดับเบิลคลิกที่ผลลัพธ์เพื่อไปยังไดเรกทอรีล็อกของ Roblox
  5. ภายในไดเรกทอรี ดับเบิลคลิกที่ล็อกเพื่อเปิด

iOS

คุณสามารถรวบรวมล็อก iOS โดยใช้ Mac หรือใช้อุปกรณ์ iOS

เพื่อเข้าถึงไฟล์ล็อก iOS บน Mac:

  1. เชื่อมต่ออุปกรณ์ iOS กับ Mac
  2. เปิด Finder
  3. ไปที่ Utilities และเปิดแอป Console
  4. เพื่อให้ล็อกเรียลไทม์ปรากฏในแอป Console ให้เลือกอุปกรณ์ iOS จากแถบด้านข้าง คลิกปุ่ม เริ่ม และทำซ้ำปัญหาบนอุปกรณ์ iOS
  5. เพื่อให้ล็อกที่เก็บถาวรปรากฏในแอป Console ให้รัน sudo log collect --device-name "[iOS Device Name]" ใน Terminal ตรวจสอบว่าไม่มีอัญประกาศในชื่อของอุปกรณ์หรือคุณอาจได้รับข้อผิดพลาดเมื่อรันคำสั่ง

Android

เพื่อเข้าถึงไฟล์ล็อกใน Android:

  1. ไปที่ การตั้งค่าระบบตัวเลือกนักพัฒนา
  2. เปิดใช้งาน ตัวเลือกนักพัฒนา
  3. บนคอมพิวเตอร์ ดาวน์โหลดและติดตั้ง Android Studio
  4. ใน Android Studio คลิก Logcat
  5. เชื่อมต่ออุปกรณ์ Android กับคอมพิวเตอร์เพื่อให้ Logcat มีล็อกโดยอัตโนมัติ
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ