การดีบั๊ก

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

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

กระบวนการทั่วไป

หากคุณสังเกตเห็นปัญหาในประสบการณ์ของคุณหรือต้องการตรวจสอบว่ามันทำงานตามที่คุณตั้งใจได้หรือไม่ คุณสามารถดีบั๊กรหัสที่เกี่ยวข้องกับมันได้ดังต่อไปนี้:

  1. ใส่จุดหยุดพัก ในแถวของโค้ดที่คุณต้องการตรวจสอบ

  2. ในแท็บ สคริปต์ คลิก เล่น หรือ วิ่ง ในแท็บทดสอบเพื่อเริ่มเซสชันทดสอบ โดยที่รู้จักกันในนามเซสชันของการดีบั๊ก

    Playtest options in Script tab.
  3. เมื่อสคริปต์เข้าถึงจุดหยุดพัก เซสชันทดสอบจะหยุดชั่วคราว ดูผ่านโค้ด ตรวจสอบ หน้าต่างดู และ ออก เพื่อช่วยให้คุณวินิจฉัยและเข้าใจปัญหา

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

  5. ใน แท็บสคริปต์ คลิก หยุด เพื่อสิ้นสุดเซสชันการดีบั๊ก

ทำซ้ำขั้นตอนก่อนหน้านี้จนกว่าคุณจะแก้ปัญหาหรือค้นหาสาเหตุรากของปัญหา เมื่อคุณเรียนรู้วิธีการทำงานทั่วไปคุณสามารถกำหนดจุดหยุดพักได้เฉพาะเมื่อตรงตามเง

การใส่จุดหยุด

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

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

Breakpoint in gutter is a red dot

ก้าวผ่านรหัส

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

Active breakpoint in the debugger shows yellow arrow

เมื่อสคริปต์หยุดทำงานให้ดำเนินการตามรหัสต่อไปด้วยการเรียกผ่านพวกเขาด้วยปุ่มใน สคริปต์ แท็บ ปุ่มเหล่านี้ยังปรากฏขึ้นในมุมด้านบนซ้ายของ Call Stack หน้า

Debugging tools indicated in Script tab

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

ปุ่มการกระทําลัดคำอธิบาย
Button to step into a line of code เข้าสู่ F11 ปุ่มเลือกปุ่มปุ่ม เข้าไปใน เคลื่อนย้ายเดบักเกอร์ไปยังโค้ดของฟังก์ชันในต่างแถวปัจจุบัน หากไม่มีฟังก์ชันในต่างแถวปัจจุบัน เดบักเกอร์จะย้ายไปยังต่างแถวถัดไป
Button to step over a line of code ข้ามขั้นตอน F10ปุ่ม ข้าม รหัส, ไม่ ย้ายเข้าสู่ฟังก์ชัน
Button to step out of a line of code ก้าวออกไป ShiftF11ปุ่ม ขั้นตอนออก เคลื่อนย้ายเดบดีออกจากสายงานปัจจุบันและไปยังสายงานต่อไปหลังจากการโทรคำนวณ. หากสายงานไม่อยู่ภายในฟังก์ชัน เดบดีจะย้ายไปยังสายงานต่อไป

การตรวจสอบรหัส

เมื่อคะแนนหยุดช่วงประสบการณ์ในระหว่างการทดสอบเล่น คุณสามารถตรวจสอบหน้าต่าง ดู หน้าต่าง โทร หน้าต่าง ออก หน้าต่าง 1>สคริป1>

ดูตอนนี้

หน้าต่าง นาฬิกา มีสองแท็บ: แปร และ นาฬิกาของฉัน แท็บ 1>แปร1> แสดงข้อมูลเกี่ยวกับแปรปัจจุบันในขอบเขต และแท็บ

แท็บ ตัวแปร มีคอลัมน์ต่อไปนี้:

  • ชื่อ – ชื่อที่ประกาศของแปร.
  • สเก็ป – สเก็ปของตัวแปร: ที่มันสามารถ "เห็น" และเข้าถึงได้ เช่น ท้องถิ่น โลก หรือ Upvalue
  • มูลค่า – มูลค่าปัจจุบันของตัวแปร
  • ประเภทข้อมูล – ประเภทข้อมูลของแปร

แท็บ นาฬิกาของฉัน มีคอลัมน์ต่อไปนี้:

  • คำถูกใช้ – คำถูกใช้ที่คุณต้องการดู
  • ค่า – ค่าปัจจุบันของสมุดค่า
  • ประเภทข้อมูล – ประเภทข้อมูลของคำ

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

Watch Window with variable values

เพื่อตรวจสอบโค้ดในหน้าต่างนาฬิกา:

  1. หากหน้าต่าง นาฬิกา ไม่เปิด ให้คลิกที่ นาฬิกา ในแท็บ มุมมอง

  2. เมื่อเซสชันส์ทดสอบของคุณหยุดในจุดหยุดชั่วคราวคุณควรคิดว่าคุณคาดหวังว่าจะเปลี่ยนแปลงค่าตัวแปรในสคริปต์นั้น

  3. รหัสดูว่ามูลค่าของแปรเปลี่ยนแปลงใน แปร แท็บ หากคุณต้องการดูคำแสดงผลที่ไม่ใช่ในแท็บแปร เปิดแท็บ ของฉ

  4. เปรียบเทียบค่าของแปรและค่าของประกาศจากสิ่งที่คุณคาดหวังและสิ่งที่คุณเห็นในหน้าต่างนาฬิกา หากมีความแตกต่างระหว่างวิธีที่คุณคาดหวังว่าแปรจะเปลี่ยนและวิธีที่พวกเขาเปลี่ยนจริง

โทรหน้าต่าง Stack

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

Call Stack in Studio

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

Call Stack with multiple breakpoints

เพื่อตรวจสอบโค้ดในหน้าต่าง Call Stack ในระหว่างเซสชันของการดีบั๊ก:

  1. หากหน้าต่าง คอลล์สแต็ค ไม่เปิด ให้คลิกที่ คอลล์สแต็ค ในแท็บ ดู

  2. เมื่อประสบการณ์ของคุณหยุดในจุดหยุดชั่วคราวคุณควรคิดว่าคุณคาดหวังว่าการเรียกใช้งานจะอยู่ในสคริปต์นั้น

    Script Editor with two functions and one breakpoint
  3. สแต็คการเรียกแสดงลำดับการเรียกหน้าการใช้งาน หากจุดหยุดอยู่ภายในการใช้งาน สแต็คการเรียกจะแสดงรหัสการเรียกของหน้าที่ใช้งานนั้น หากมี สแต็คการเรียกจะแสดงชื่อและหมายเลขบรรทัดของแ

    Click in Call Stack to jump to line
  4. เปรียบเทียบลำดับของการโทรคุณคิดว่าในขั้นตอนที่ 2 และลำดับที่แท้จริงจากขั้นตอนที่ 3 หากมีความแตกต่างใด ๆ จะมีความแตกต่างระหว่างวิธีที่คุณคาดหวังว่าโค้ดจะปฏิสัมพันธ์และวิธ

หน้าต่างการออก

หน้าต่าง การออก ซึ่งสามารถเข้าถึงจากหน้า ดู แสดงข้อผิดพลาดที่จับกุมได้จากการประมวลผลสคริปต์ข้อความจาก Roblox Engine บันทึกข้อความจากการโทรกลับ และข้อผิดพล

เครื่องมือสคริปต์

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

Mouseover a variable in Script Editor to show value

การตั้งค่า Breakpoint

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

การแก้ไขค่าชุด

คุณสามารถแก้ไขการตั้งค่าของจุดหยุดใด ๆ ได้ตลอดเวลา รวมถึงในระหว่างเซสชันส์เล่นทดสอส หากคุณแก้ไขจุดหยุดใด ๆ ในระหว่างเซสชันเล่นทดสอส การเปลี่ยนแปลงเหล่านี้จ

เพื่อ編輯ข้อมูลการตั้งค่าของ breakpoint:

  1. ให้คลิกที่จุดหยุดแล้วคลิก แก้ไขจุดหยุด

    Right click to edit a breakpoint in Studio
  2. ใน หน้าต่างแก้ไขค่าครอส คุณสามารถกำหนดค่าครอสตามที่คุณต้องการได้

    Edit Breakpoint window in Studio

เงื่อนไข, ข้อความบันทึก, และตั้งค่า

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

เงื่อนไข คือคำสั่งที่กำหนดว่าว่า n จะประกาศว่าเป็นเงื่อนไขหรือไ

ข้อความบันทึก คือคำสั่งที่พิมพ์ไปยังหน้าต่างการออกเมื่อเงื่อนไขเป็นจริง รูปแบบของข้อความบันทึกคือเหมือ

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

บริบทของตรวจสอบจุดหยุด ของ breakpoint กำหนดว่า breakpoint ควรจะเปิดใช้งานใน Cliente, Server หรือ Edit หากบริบทเป็น Cliente แล้ว breakpoint จะเริ่มในสคริปต์ด้านล่างของ Cliente หากบริบทเ

Edit Breakpoint Window shows Custom Context

คุณสมบัติเฉพาะและ Logpoints เฉพาะ

Studio เสนอตัวเลือกแบบขาดที่หลากหลายให้กับตัวชี้วัดเพื่อทำให้การใส่ชุดชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของชุดของช

Right click to insert a breakpoint

คอนดิชันนัลไบร์คพอยน์ท์ คือไบร์คพอยน์ที่มี เงื่อนไข และ การดำเนินการต่อเนื่อง ถูกปิดใช้งาน

A Logpoint เป็นจุดหยุดชั่วคราวด้วยข้อความ Log Message และ การดำเนินการต่อไป เปิดใช้งาน Logpoints ส่งข้อความไปยังหน้า 2>การแสด

Logpoints มักจะมีประสิทธิภาพมากกว่าการใช้ print() สถานะ เพราะพวกเขาช่วยให้คุณสามารถบันทึกข้อความไปยังหน้าต่างการออกผลได้โดยไม่ต้องหยุดหรือเริ่มเซสชัน playtest ที่ก

การปิดการใช้งานจุดหยุด

มีหลายวิธีในการปิดการใช้งานและเปิดใช้งานระดับหยุดชั่วคราว:

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

การลบจุดหยุด

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

หน้าต่างแยก

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

Breakpoints window in Studio

หน้าต่าง Breakpoints มีคอลัมน์ต่อไปนี้: unlabeled, สคริปต์, เส้น, เส้นที่แหล่ง, เงื่อนไข, ข้อความล็อค, และดำเนินการต่อ คอลัมน์ที่ไม่มีชื่อจะปรากฏขึ้นเสมอ แต่คุณสามารถเปิด/ปิดคอลัม

ในคอลัมน์ที่ไม่มีชื่อ เครื่องหมาย (x3) บ่งชี้จำนวนเวรเอ๊ยในเส้นทางเดียวกันของโค้ด และไอคอนบ่งชี้การกำหนดค่าเวรเอ๊ย คอลัมน์เวรเอ๊ย

Edit the Condition of a Breakpoint in the Breakpoints Window

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

ปุ่มการกระทํา
Button to disable all breakpointsปิดการใช้งานทุกจุดหยุด. หากมีจุดหยุดใช้งานใด ๆ ปิดการใช้งาน, เปิดใช้งานทั้งหมด
Button to delete all breakpointsลบจุดหยุดทั้งหมด

ไอคอนสถานะพัง

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

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

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

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

แถบคําสั่ง

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

คอนโซลผู้พัฒนา

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

บันทึก

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

หน้าต่าง

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

  1. เปิด เครื่องมือจัดการไฟล์ 2. ไปที่ %LOCALAPPDATA%\Roblox\logs ไดเรกทอรี
  2. คลิกสองครั้งในบันทึกเพื่อเปิดมัน บันทึกที่มีค่า XXXXX เดียวกันอยู่ในเซสชันเดียวกัน

แมค

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

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

iOS

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

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

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

อันดรู

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

  1. ไปที่ การตั้งค่าระบบตั้งค่าผู้พัฒนา .
  2. เปิด/ปิด ตัวเลือกผู้พัฒนา 3. บนคอมพิวเตอร์, ดาวน์โหลดและติดตั้ง Android Studio
  3. ใน Android Studio, คลิก Logcat 5. เชื่อมต่ออุปกรณ์ Android กับคอมพิวเตอร์เพื่อกรอก Logcat โดยอัตโนมัติด้วยบันทึก