Scripting

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Skrip adalah file teks biasa yang memungkinkan Anda menambahkan perilaku dinamis dan kustom ke dalam permainan Anda. Anda dapat menggunakan skrip untuk memicu peristiwa dalam permainan, merespons input pemain, menyimpan data pemain, membuat papan peringkat, memunculkan musuh, mengontrol perilaku NPC, dan banyak lagi.

Luau

Skrip Roblox menggunakan bahasa pemrograman Luau, yang berasal dari Lua 5.1.

  • Dibandingkan dengan Lua 5.1, Luau menambahkan peningkatan kinerja dan banyak fitur berguna, termasuk sistem pengetikan opsional, interpolasi string, dan iterasi umum untuk tabel.
  • Semua kode Lua 5.1 yang valid adalah kode Luau yang valid, tetapi sebaliknya tidak benar.

Sebagian besar buku dan sumber daya online untuk Lua masih berlaku secara luas untuk Luau. Untuk ringkasan rinci tentang perbedaan, lihat Kompatibilitas dalam dokumentasi Luau. Untuk sintaks bahasa, lihat Referensi Luau.

Dasar-dasar Luau

Luau memiliki tipe yang bertahap, jadi Anda tidak perlu menentukan tipe saat Anda membuat variabel. Anda dapat menggunakan type() untuk memeriksa tipe objek:

logMessage = "Pengguna memiliki lebih dari 10 item!"
print(logMessage) --> Pengguna memiliki lebih dari 10 item!
print(type(logMessage)) --> string

Luau memiliki ruang lingkup global dan lokal, tetapi hampir selalu lebih baik untuk mendeklarasikan variabel dan fungsi secara lokal dengan kata kunci local:

local logMessage = "Pengguna memiliki lebih dari 10 item!"
local function printMessage()
print(logMessage)
end
printMessage() --> Pengguna memiliki lebih dari 10 item!

Luau menggunakan nil untuk mewakili ketidakadaan atau ketiadaan, yang dievaluasi sebagai false dalam pernyataan kondisional:

local messageToUser
print(messageToUser) --> nil
print(type(messageToUser)) --> nil
if messageToUser then
-- pernyataan dievaluasi menjadi false
end

Seperti yang mungkin Anda perhatikan, -- memulai komentar satu baris. --[[]] membuat komentar blok:

--[[
Mematikan sinar bulan kosmik segera.
Harus hanya dipanggil dalam waktu 15 menit sebelum tengah malam Waktu Standar Gunung
untuk menghindari kerusakan pada sinar bulan kosmik.
]]
local function stopCosmicMoonRay()
-- tambahkan ini nanti, mungkin akan terbukti penting
end

Tabel adalah istilah umum untuk array dan kamus. Array adalah berbasis satu daripada berbasis nol, jadi item pertama adalah [1]. Anda mendeklarasikan array dan kamus dengan satu set kurung kurawal:

local myArray = {"keripik", "air berkilau", "salsa"}
local myDictionary = {
snack = "keripik",
drink = "air berkilau",
dip = "salsa"
}
print(myArray[1]) --> keripik
print(myDictionary.dip) --> salsa

Anda dapat mengiterasi tabel menggunakan loop for dengan fungsi ipairs() untuk array dan fungsi pairs() untuk kamus, tetapi Luau juga memungkinkan Anda untuk menghilangkan fungsi ini untuk sintaks yang lebih bersih:

for index, value in ipairs(myArray) do -- Lua standar
print(index, value)
end
for key, value in pairs(myDictionary) do -- Lua standar
print(key, value)
end
for key, value in myDictionary do -- iterasi umum Luau
print(key, value)
end

Skrip pertama Anda

  1. Di Roblox Studio, arahkan mouse ke ServerScriptService di jendela Explorer dan klik +.

  2. Pilih Script untuk menambahkan skrip baru.

  3. Klik kanan pada skrip dan ganti namanya menjadi HelloScript.

  4. Klik dua kali pada skrip untuk membukanya di Editor Skrip.

  5. Tambahkan kode berikut ke file:

    local helloArray = {"h", "e", "l", "l", "o"}
    local worldArray = {"w", "o", "r", "l", "d"}
    for index, value in helloArray do
    print(value)
    end
    print(table.concat(worldArray))
  6. Pastikan jendela Output terbuka.

  7. Jalankan permainan Anda dan catat outputnya:

    h
    e
    l (x2)
    o
    world

Kenali lingkungan Anda

Bagian besar dari beradaptasi dengan lingkungan pengembangan baru adalah mengonfigurasinya agar sesuai dengan kebutuhan Anda dan memahami alat yang tersedia:

  • Bagian Editor Skrip dari Pengaturan Studio memungkinkan Anda menyesuaikan fitur kualitas hidup seperti font, warna, indentasi, autocompletion, tanda kurung, dan tooltip. Anda mungkin juga ingin mengaktifkan mode gelap di bagian Studio.
  • Menahan Ctrl atau Command dan mengklik pada fungsi atau variabel membawa Anda ke deklarasinya di basis kode Anda (atau dokumentasi online-nya). Menggunakan Temukan dan Temukan Semua dapat membantu Anda menavigasi proyek yang lebih besar.
  • Jendela Output adalah alat paling dasar untuk memahami perilaku skrip Anda. Gunakan menu ⋯ untuk mengaktifkan Tampilkan Konteks dan Tampilkan Sumber.
  • Jendela Analisis Skrip menunjukkan ringkasan kesalahan dan peringatan, tetapi Anda mungkin menemukan kegunaannya terbatas; Editor Skrip sudah menyoroti masalah ini saat Anda mengetik.
  • Kemampuan logging minimal, tanpa konsep level log seperti DEBUG atau FATAL. Gunakan print() dan warn().

Untuk informasi lebih lanjut tentang mengonfigurasi Studio untuk scripting, lihat Editor Skrip.

Skrip kedua Anda

  1. Di Roblox Studio, tambahkan skrip ke ReplicatedStorage di jendela Explorer dan ganti namanya menjadi OhNo.

  2. Tambahkan kode berikut ke file:

    print("Halo jenis dan lokasi skrip!")
  3. Catat bagaimana outputnya tidak berbeda dari saat Anda menjalankan skrip pertama Anda.

Untuk memahami mengapa skrip tidak berjalan, lihat Jenis dan Lokasi Skrip.

©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.