Roblox Studio memiliki editor skrip bawaan untuk mengedit kode dalam proyek Roblox Anda. Editor ini mencakup fitur utama seperti linting, pengecekan tipe, autocomplete, dan pengeditan kolaboratif.
Namun, banyak pengembang memiliki editor teks atau lingkungan pengembangan terintegrasi (IDE) yang disukai, seperti Visual Studio Code, Cursor, Sublime Text, atau Notepad++. Lingkungan pengembangan yang populer sering memiliki fitur atau plugin yang tidak ada di Studio. Untuk menggunakan editor atau IDE eksternal dengan Studio, aktifkan fitur Sinkronisasi Skrip.
Sinkronisasi Skrip bekerja dengan menyinkronkan skrip dalam model data Anda ke file teks di disk lokal. Perubahan yang dilakukan pada file Luau di disk diterapkan pada skrip di Studio, dan sebaliknya. Sinkronisasi ini berarti Anda dapat mengedit skrip di editor eksternal seperti VS Code dan segera melihat perubahannya di Studio.
Kapan menggunakan Sinkronisasi Skrip
Jika Anda ingin menggunakan editor teks pilihan Anda atau memeriksa kode ke dalam kontrol versi, tetapi menggunakan Studio untuk segala hal lainnya, Sinkronisasi Skrip adalah pilihan yang tepat. Ini juga bekerja dengan alat kolaborasi bawaan Roblox, yang sering kali tidak dimiliki oleh alat pihak ketiga.
Sinkronisasi Skrip bekerja dengan baik pada proyek Roblox yang ada, karena ini adalah fitur tambahan daripada perubahan total dalam cara Anda mengelola proyek.
Jika Anda ingin memeriksa seluruh proyek Anda (bukan hanya kode) ke dalam kontrol versi atau menggunakan sistem file Anda sebagai sumber kebenaran untuk proyek Anda, alat pihak ketiga seperti Rojo adalah pilihan yang lebih baik.
Menyiapkan Sinkronisasi Skrip
Di Explorer, pilih satu atau beberapa folder yang ingin Anda sinkronkan.
Klik kanan dan pilih Sinkronisasi Skrip ⟩ Sinkronkan dengan Direktori.

Pilih direktori di komputer Anda (atau buat yang baru) dan klik Simpan.
Di Studio, klik kanan pada folder lagi dan pilih Sinkronisasi Skrip ⟩ Tampilkan di Explorer (Windows) atau Tampilkan di Finder (macOS).
Buka direktori di editor teks pilihan Anda.
Atau, klik kanan pada skrip individu di Studio dan pilih Buka di Editor Eksternal.
Anda dapat menyinkronkan skrip individu, tetapi kami sangat merekomendasikan untuk menyinkronkan folder; jika Anda menyinkronkan sebuah folder, Sinkronisasi Skrip secara otomatis menyinkronkan folder dan skrip anaknya, yang memungkinkan Anda membuat, menghapus, dan mengganti nama skrip tanpa harus mengaktifkan sinkronisasi setiap kali.
Setelah Anda menyiapkan Sinkronisasi Skrip, Anda hampir pasti ingin menambahkan ekstensi LSP ke editor teks Anda.
Tips Utama
Sinkronisasi Skrip hanya menyinkronkan instance Script, LocalScript, ModuleScript, dan Folder. Semua instance lain dalam folder yang disinkronkan akan diabaikan. Hindari menyinkronkan folder yang mengandung skrip bersama instance lainnya.
Jangan sinkronkan skrip yang memiliki atribut atau tag. Sinkronisasi Skrip mengabaikan ini, yang dapat menyebabkan kehilangan data jika Anda membuat atau menghapus skrip atau mulai menyinkronkan dengan versi file Anda di disk yang lebih lama.
Sinkronisasi Skrip memerlukan nama skrip yang kompatibel dengan sistem file Anda—tidak ada nama duplikat atau karakter yang tidak didukung. Jika Studio menemukan masalah ini, itu akan mengeluarkan kesalahan dan meminta Anda untuk menyelesaikan situasi sebelum melanjutkan sinkronisasi.
Jika ada file atau folder yang disinkronkan berubah saat Studio tertutup, Studio akan bertanya bagaimana Anda ingin menyelesaikan situasi tersebut saat Anda membuka kembali tempat tersebut.
Menghapus instance tingkat atas (atau "root")—instance yang awalnya Anda sinkronkan—di disk lokal Anda dapat menyebabkan Studio mengeluarkan kesalahan. Untuk menghapus instance tingkat atas:
- Di Studio, klik kanan pada skrip atau folder dan pilih Sinkronisasi Skrip ⟩ Hentikan Sinkronisasi.
- Pilih opsi Hapus file atau Hapus folder untuk menghapus instance dari disk lokal Anda.
- Hapus skrip atau folder di Studio.
Anda dapat menghapus instance anak di Studio atau di disk lokal Anda tanpa menonaktifkan sinkronisasi, dan penghapusan akan disinkronkan sesuai harapan.
Menyiapkan server bahasa
Server bahasa memberikan editor teks Anda fitur spesifik bahasa seperti autocompletion, pengecekan tipe, "pergi ke definisi", dan lainnya. Untuk VS Code, kami merekomendasikan Luau Language Server.
Ekstensi protokol server bahasa (LSP) perlu memahami hierarki model data sebuah proyek agar berfungsi dengan baik. Ekstensi VS Code dilengkapi dengan plugin Studio pendamping (Luau Language Server Companion) yang menyediakan data ini.
Kami sangat merekomendasikan untuk menginstal keduanya. Jika Anda menggunakan ekstensi VS Code dan plugin Studio pendamping, fitur bahasa akan berfungsi dengan benar di VS Code saat menggunakan Sinkronisasi Skrip.
Ekstensi yang Direkomendasikan
- Roblox Luau LSP dan Luau Language Server Companion - Fitur bahasa (lihat di atas)
- selene - Analisis kode statis (linting)
- StyLua - Format kode otomatis
Aturan Sinkronisasi
Saat menyinkronkan sebuah instance dengan anak-anak dengan direktori di disk, Studio secara otomatis akan menyinkronkan operasi pembuatan, penggantian nama, pemindahan, dan penghapusan pada anak-anak dengan file dan folder yang sesuai di disk. Pendekatan ini memungkinkan Anda mempertahankan kode Anda tanpa harus secara manual menghentikan dan memulai sinkronisasi pada skrip individu.
Di disk, Sinkronisasi Skrip menggunakan aturan berikut untuk membedakan berbagai jenis skrip satu sama lain.
| Konvensi penamaan di disk | Tipe instance di Studio |
|---|---|
| name.luau | ModuleScript |
| name.server.luau | Skrip dengan Server Script.RunContext |
| name.client.luau | Skrip dengan Client Script.RunContext |
| name.local.luau | LocalScript |
| name.legacy.luau | Skrip dengan Legacy Script.RunContext |
| name.plugin.luau | Skrip dengan Plugin Script.RunContext |
| name/ (direktori) | Folder |
| name/init.*.luau | Instance skrip dengan anak-anak. Tipe (*) ditentukan oleh aturan di atas. |
Pengaturan
Sinkronisasi Skrip memiliki beberapa pengaturan di jendela Pengaturan Studio (AltS atau ⌥S). Opsi default adalah pilihan yang baik untuk sebagian besar kasus penggunaan.
| Pengaturan | Deskripsi |
|---|---|
| Resume otomatis sinkronisasi saat tempat dibuka | Apakah Studio harus melanjutkan sinkronisasi saat Anda membuka tempat. Menonaktifkan pengaturan ini secara dramatis mengurangi kegunaan Sinkronisasi Skrip. |
| Lanjutkan sinkronisasi yang konflik saat tempat dibuka | Bagaimana Studio harus menangani konflik saat Anda membuka tempat. Opsi default, Jangan lanjutkan, memaksa Anda untuk menyelesaikan konflik secara manual untuk menghindari kehilangan data. Anda juga dapat memilih untuk lebih memilih versi di disk atau versi di Studio. |
| Pertahankan file/direktori lokal setelah sinkronisasi | Cara menangani file di disk setelah Anda memilih Sinkronisasi Skrip > Hentikan Sinkronisasi di Studio. |
| Ekstensi file | Ekstensi file yang digunakan untuk skrip di disk. |