การซิงค์สคริปต์

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

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

อย่างไรก็ตาม นักพัฒนาหลายคนมีโปรแกรมแก้ไขข้อความหรือสภาพแวดล้อมการพัฒนาที่พวกเขาชื่นชอบ เช่น Visual Studio Code, Cursor, Sublime Text, หรือ Notepad++ สภาพแวดล้อมการพัฒนาที่ได้รับความนิยมมักมีฟีเจอร์หรือปลั๊กอินที่ไม่มีใน Studio เพื่อใช้โปรแกรมแก้ไขหรือ IDE ภายนอกกับ Studio ให้เปิดใช้งานฟีเจอร์ การซิงค์สคริปต์

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

เมื่อใดควรใช้การซิงค์สคริปต์

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

    การซิงค์สคริปต์ทำงานได้ดีในโปรเจกต์ Roblox ที่มีอยู่ เนื่องจากเป็นฟีเจอร์เพิ่มเติมมากกว่าการเปลี่ยนแปลงทั้งหมดในวิธีการจัดการโปรเจกต์

  • หากคุณต้องการเช็คโปรเจกต์ทั้งหมดของคุณ (ไม่ใช่แค่โค้ด) เข้าสู่การควบคุมเวอร์ชันหรือใช้ระบบไฟล์ของคุณเป็นแหล่งข้อมูลที่ถูกต้องสำหรับโปรเจกต์ของคุณ เครื่องมือของบุคคลที่สาม (third-party tools) เช่น Rojo เป็นตัวเลือกที่ดีกว่า

ตั้งค่าการซิงค์สคริปต์

  1. ใน Explorer ให้เลือกหนึ่งหรือหลายโฟลเดอร์ที่คุณต้องการซิงค์

  2. คลิกขวาและเลือก Sync to….

    หน้าต่าง Explorer ที่มีเมนู Script Sync ขยายออก
  3. เลือกไดเรกทอรีในคอมพิวเตอร์ของคุณ (หรือสร้างใหม่) และคลิก Save.

  4. ใน Studio คลิกขวาที่โฟลเดอร์อีกครั้งและเลือก Script SyncReveal in Explorer (Windows) หรือ Reveal in Finder (macOS).

  5. เปิดไดเรกทอรีในโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ

    หรือคุณสามารถคลิกขวาที่สคริปต์แต่ละตัวใน Studio และเลือก Open in External Editor.

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

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

ข้อจำกัด

การซิงค์สคริปต์รองรับสคริปต์สูงสุด 10,000 สคริปต์ต่ออินสแตนซ์ที่ซิงค์ในระดับสูงสุดและสูงสุด 128 อินสแตนซ์ที่ซิงค์ในระดับสูงสุด ดังนั้นจึงสามารถขยายไปยังฐานโค้ดขนาดใหญ่ได้

การแก้ไขความขัดแย้ง

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

การลบแบบเลือก

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

Team Create

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

หลีกเลี่ยงการทำงานที่มีหลายคนซิงค์สคริปต์เดียวกันและแก้ไขไฟล์ในเวลาเดียวกัน การซิงค์สคริปต์จะยังคงทำงานต่อไป แต่ผู้ร่วมงานอาจเขียนทับการเปลี่ยนแปลงของกันและกัน

เคล็ดลับสำคัญ

  • การซิงค์สคริปต์จะซิงค์เฉพาะ Script, LocalScript, ModuleScript และ Folder เท่านั้น อินสแตนซ์อื่น ๆ ทั้งหมดในโฟลเดอร์ที่ซิงค์จะถูกละเว้น หลีกเลี่ยงการซิงค์โฟลเดอร์ที่มีสคริปต์ควบคู่ไปกับอินสแตนซ์อื่น ๆ

  • คุณสามารถซิงค์แพ็คเกจได้ แม้ว่า PackageLink เองจะไม่ได้เขียนลงในดิสก์

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

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

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

  • การลบอินสแตนซ์ระดับสูงสุด (หรือ "ราก")—อินสแตนซ์ที่คุณซิงค์ในตอนแรก—ในดิสก์ท้องถิ่นอาจทำให้ Studio โยนข้อผิดพลาด เพื่อที่จะลบอินสแตนซ์ระดับสูงสุด:

    1. ใน Studio คลิกขวาที่สคริปต์หรือโฟลเดอร์และเลือก Script SyncStop Sync.
    2. เลือกตัวเลือก Delete file(s) หรือ Delete folder(s) เพื่อลบอินสแตนซ์จากดิสก์ท้องถิ่นของคุณ
    3. ลบสคริปต์หรือโฟลเดอร์ใน Studio

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

ตั้งค่าเซิร์ฟเวอร์ภาษา

เซิร์ฟเวอร์ภาษาให้ฟีเจอร์เฉพาะทางด้านภาษาสำหรับโปรแกรมแก้ไขข้อความของคุณ เช่น การเติมอัตโนมัติ การตรวจสอบประเภท "ไปที่การกำหนด" และอื่น ๆ สำหรับ VS Code เราขอแนะนำ Luau Language Server

ส่วนขยายโปรโตคอลเซิร์ฟเวอร์ภาษา (LSP) ต้องเข้าใจลำดับชั้นโมเดลข้อมูลของโปรเจกต์เพื่อทำงานได้อย่างถูกต้อง ส่วนขยาย VS Code มาพร้อมกับปลั๊กอิน Studio ที่เป็นคู่ (Luau Language Server Companion) ที่ให้ข้อมูลนี้

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

ส่วนขยายที่แนะนำ

  • Roblox Luau LSP และ Luau Language Server Companion - ฟีเจอร์ด้านภาษา (ดูข้างต้น)
  • selene - การวิเคราะห์โค้ดแบบสถิต (การตรวจสอบข้อผิดพลาด)
  • StyLua - การจัดรูปแบบโค้ดอัตโนมัติ

กฎการซิงค์

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

ในดิสก์ การซิงค์สคริปต์ใช้กฎต่อไปนี้ในการแยกประเภทสคริปต์ที่แตกต่างกันออกจากกัน

ข้อกำหนดการตั้งชื่อในดิสก์ประเภทอินสแตนซ์ใน Studio
name.luauModuleScript
name.server.luauสคริปต์ที่มี Server Script.RunContext
name.client.luauสคริปต์ที่มี Client Script.RunContext
name.local.luauLocalScript
name.legacy.luauสคริปต์ที่มี Legacy Script.RunContext
name.plugin.luauสคริปต์ที่มี Plugin Script.RunContext
name/ (ไดเรกทอรี)Folder
name/init.*.luauอินสแตนซ์สคริปต์ที่มีลูก ประเภท (*) ถูกกำหนดโดยกฎข้างต้น

การตั้งค่า

การซิงค์สคริปต์มีการตั้งค่าหลายอย่างในหน้าต่าง การตั้งค่า Studio (AltS หรือ S). ตัวเลือกเริ่มต้นเหมาะสำหรับกรณีการใช้งานส่วนใหญ่

การตั้งค่าคำอธิบาย
อัตโนมัติรีซูมซิงค์เมื่อเปิดสถานที่ว่า Studio ควรรีซูมการซิงค์เมื่อคุณเปิดสถานที่หรือไม่ การปิดการตั้งค่านี้จะลดประโยชน์ของการซิงค์สคริปต์อย่างมาก
รีซูมซิงค์ที่ขัดแย้งเมื่อเปิดสถานที่วิธีที่ Studio ควรจัดการกับความขัดแย้งเมื่อคุณเปิดสถานที่ ตัวเลือกเริ่มต้น Do not resume จะบังคับให้คุณต้องแก้ไขความขัดแย้งด้วยตนเองเพื่อหลีกเลี่ยงการสูญเสียข้อมูล คุณยังสามารถเลือกที่จะให้เวอร์ชันในดิสก์หรือเวอร์ชันใน Studio เป็นที่ชื่นชอบ
เก็บไฟล์/ไดเรกทอรีในท้องถิ่นหลังการซิงค์วิธีจัดการไฟล์ในดิสก์หลังจากที่คุณเลือก Script Sync > Stop Sync ใน Studio
นามสกุลไฟล์นามสกุลไฟล์ที่ใช้สำหรับสคริปต์ในดิสก์
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ