Studio มีเครื่องมือและเวิร์กโฟลว์การดีบักมากมายที่พบได้ทั่วไปในสภาพแวดล้อมการพัฒนาแบบรวม (IDE) ซึ่งช่วยให้คุณตรวจสอบและแก้ไขข้อผิดพลาดในสคริปต์ขณะที่มันทำงาน
การดีบักจุดหยุด
จุดหยุดเป็นจุดตรวจสอบที่หยุดหรือ "ทำลาย" การทำงานของสคริปต์ของคุณที่บรรทัดเฉพาะ คุณสามารถใช้การหยุดเหล่านี้เพื่อตรวจสอบและดีบักเกมของคุณ, ดู ตัวแปร, และตรวจสอบ สแต็คการเรียก จุดหยุดเป็นหนึ่งในวิธีที่มีประสิทธิภาพที่สุดในการดีบักฟังก์ชัน ดังนั้นจึงเป็นหนึ่งในเครื่องมือการดีบักที่สำคัญที่สุด
การจัดการ
ใน Script Editor คุณสามารถ แทรก จุดหยุดหลายประเภทและแก้ไขการกำหนดค่าของจุดหยุดได้ตลอดเวลา รวมถึงในระหว่างการทดสอบการเล่น หากคุณแก้ไขจุดหยุดในระหว่างการทดสอบการเล่น การแก้ไขจะยังคงอยู่แม้ว่าคุณจะเสร็จสิ้นการทดสอบแล้ว คุณยังสามารถแก้ไขจุดหยุดที่กำลังหยุดการทดสอบการเล่นของคุณอยู่ได้ แต่การเปลี่ยนแปลงจะไม่ถูกนำไปใช้จนกว่าจะถึงการทดสอบการเล่นครั้งถัดไป
แทรก
จุดหยุดมีหลายรูปแบบและสามารถแทรกได้ที่บรรทัดใด ๆ ของโค้ดที่สามารถทำงานได้ดังนี้:
เพื่อแทรกจุดหยุดมาตรฐานที่บรรทัดของโค้ด ให้คลิกในพื้นที่ด้านขวาของหมายเลขบรรทัดของมัน โดยทางเลือกอื่น ให้คลิกขวาในพื้นที่และเลือก แทรก จุดหยุด ไอคอนจุดหยุดจะแสดงเป็นวงกลมสีแดง

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


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

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

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

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

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

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

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

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

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


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

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


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

เครื่องมือการดีบักเพิ่มเติม
นอกจากดีบักเกอร์แล้ว Studio ยังมีเครื่องมือการดีบักเพิ่มเติมสำหรับคุณในการแก้ไขปัญหาและบั๊กในเกมของคุณ
Command Bar
Command Bar ช่วยให้คุณสามารถรันคำสั่ง Luau ขณะที่เกมกำลังทำงาน มันสามารถเข้าถึงได้ใน Studio จากเมนู หน้าต่าง ⟩ สคริปต์ และใน Developer Console
Developer Console
Developer Console ให้รายละเอียดที่หลากหลายรวมถึงผลลัพธ์ของลูกค้าและเซิร์ฟเวอร์, การใช้งานหน่วยความจำ, ประสิทธิภาพเครือข่าย, และอื่น ๆ เพื่อเปิดคอนโซลขณะทดสอบหรือเล่นเกม ให้พิมพ์ /console ลงในแชทหรือกด F9
ไฟล์บันทึก
เมื่อสคริปต์พิมพ์หรือเกิดข้อผิดพลาดใน Studio หรือแอปผู้เล่น แอปจะบันทึกข้อความในไฟล์บันทึกในระบบไฟล์ท้องถิ่น ไฟล์เหล่านี้ตั้งอยู่ในสถานที่ต่าง ๆ ขึ้นอยู่กับระบบปฏิบัติการ
Windows
เพื่อเข้าถึงไฟล์บันทึกใน Windows:
- เปิด File Explorer
- ไปที่ไดเรกทอรี %LOCALAPPDATA%\Roblox\logs
- ดับเบิลคลิกที่ไฟล์บันทึกเพื่อเปิด ไฟล์บันทึกที่มีค่า XXXXX เดียวกันมาจากเซสชัน Studio เดียวกัน
Mac
เพื่อเข้าถึงไฟล์บันทึกใน Mac:
- เปิด Finder
- ในแถบเมนู ให้เลือก ไป ⟩ ไปที่โฟลเดอร์...
- ในกล่องโต้ตอบ ให้ป้อน ~/Library/Logs/Roblox
- ดับเบิลคลิกที่ผลลัพธ์เพื่อไปยังไดเรกทอรีบันทึกของ Roblox
- ภายในไดเรกทอรี ดับเบิลคลิกที่ไฟล์บันทึกเพื่อเปิด
iOS
คุณสามารถรวบรวมบันทึก iOS โดยใช้ Mac หรือใช้อุปกรณ์ iOS
เพื่อเข้าถึงไฟล์บันทึก iOS บน Mac:
- เชื่อมต่ออุปกรณ์ iOS กับ Mac
- เปิด Finder
- ไปที่ Utilities และเปิดแอป Console
- เพื่อให้บันทึกแบบเรียลไทม์ในแอป Console ให้เลือกอุปกรณ์ iOS จากแถบด้านข้าง คลิกปุ่ม เริ่ม และทำซ้ำปัญหาบนอุปกรณ์ iOS
- เพื่อให้บันทึกที่เก็บถาวรในแอป Console ให้รัน sudo log collect --device-name "[iOS Device Name]" ใน Terminal ตรวจสอบว่าไม่มีอัญประกาศในชื่อของอุปกรณ์หรือคุณอาจได้รับข้อผิดพลาดเมื่อรันคำสั่ง
Android
เพื่อเข้าถึงไฟล์บันทึกใน Android:
- ไปที่ การตั้งค่า ⟩ ระบบ ⟩ ตัวเลือกนักพัฒนา
- เปิดใช้งาน ตัวเลือกนักพัฒนา
- บนคอมพิวเตอร์ ดาวน์โหลดและติดตั้ง Android Studio
- ใน Android Studio คลิก Logcat
- เชื่อมต่ออุปกรณ์ Android กับคอมพิวเตอร์เพื่อให้ Logcat ถูกเติมด้วยบันทึกโดยอัตโนมัติ