การเขียนสคริปต์

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

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

Luau

สคริปต์ Roblox ใช้ภาษาโปรแกรม Luau ซึ่งมีต้นกำเนิดมาจาก Lua 5.1

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

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

พื้นฐานของ Luau

Luau มีการพิมพ์แบบค่อยเป็นค่อยไป ดังนั้นคุณไม่จำเป็นต้องระบุประเภทเมื่อคุณสร้างตัวแปร คุณสามารถใช้ type() เพื่อตรวจสอบประเภทของวัตถุ:

logMessage = "ผู้ใช้มีรายการมากกว่า 10 รายการ!"
print(logMessage) --> ผู้ใช้มีรายการมากกว่า 10 รายการ!
print(type(logMessage)) --> string

Luau มี ขอบเขต ทั่วไปและท้องถิ่น แต่โดยทั่วไปแล้วจะดีกว่าที่จะประกาศตัวแปรและฟังก์ชันในท้องถิ่นด้วยคีย์เวิร์ด local:

local logMessage = "ผู้ใช้มีรายการมากกว่า 10 รายการ!"
local function printMessage()
print(logMessage)
end
printMessage() --> ผู้ใช้มีรายการมากกว่า 10 รายการ!

Luau ใช้ nil เพื่อแสดงถึงการไม่มีอยู่หรือความว่างเปล่า ซึ่งจะประเมินเป็น false ในคำสั่งเงื่อนไข:

local messageToUser
print(messageToUser) --> nil
print(type(messageToUser)) --> nil
if messageToUser then
-- คำสั่งประเมินเป็น false
end

ตามที่คุณอาจสังเกตเห็น -- เริ่มต้นความคิดเห็นแบบบรรทัดเดียว --[[]] สร้างความคิดเห็นแบบบล็อก:

--[[
ปิดการทำงานของรังสีดวงจันทร์จักรวาลทันที
ควรเรียกใช้ภายใน 15 นาทีของเที่ยงคืนตามเวลามาตรฐานภูเขา
เพื่อหลีกเลี่ยงความเสียหายต่อรังสีดวงจันทร์จักรวาล
]]
local function stopCosmicMoonRay()
-- เพิ่มสิ่งนี้ในภายหลัง อาจมีความสำคัญ
end

ตาราง เป็นคำทั่วไปสำหรับอาร์เรย์และพจนานุกรม อาร์เรย์จะเริ่มนับจาก 1 แทนที่จะเป็น 0 ดังนั้นรายการแรกคือ [1] คุณประกาศอาร์เรย์และพจนานุกรมด้วยชุดของวงเล็บปีกกา:

local myArray = {"มันฝรั่งทอด", "น้ำอัดลม", "ซัลซ่า"}
local myDictionary = {
ขนมขบเคี้ยว = "มันฝรั่งทอด",
เครื่องดื่ม = "น้ำอัดลม",
จิ้ม = "ซัลซ่า"
}
print(myArray[1]) --> มันฝรั่งทอด
print(myDictionary.dip) --> ซัลซ่า

คุณสามารถวนซ้ำตารางโดยใช้ลูป for กับฟังก์ชัน ipairs() สำหรับอาร์เรย์และฟังก์ชัน pairs() สำหรับพจนานุกรม แต่ Luau ยังให้คุณละเว้นฟังก์ชันเหล่านี้เพื่อให้ไวยากรณ์สะอาดขึ้น:

for index, value in ipairs(myArray) do -- Lua มาตรฐาน
print(index, value)
end
for key, value in pairs(myDictionary) do -- Lua มาตรฐาน
print(key, value)
end
for key, value in myDictionary do -- Luau การวนซ้ำทั่วไป
print(key, value)
end

สคริปต์แรกของคุณ

  1. ใน Roblox Studio ให้ชี้ไปที่ ServerScriptService ในหน้าต่าง Explorer และคลิก +

  2. เลือก Script เพื่อเพิ่มสคริปต์ใหม่

  3. คลิกขวาที่สคริปต์และเปลี่ยนชื่อเป็น HelloScript

  4. ดับเบิลคลิกที่สคริปต์เพื่อเปิดใน Script Editor

  5. เพิ่มโค้ดต่อไปนี้ลงในไฟล์:

    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. ตรวจสอบให้แน่ใจว่าหน้าต่าง Output เปิดอยู่

  7. เล่นเกมของคุณ และสังเกตผลลัพธ์:

    h
    e
    l (x2)
    o
    world

ทำความคุ้นเคย

ส่วนสำคัญของการปรับตัวให้เข้ากับสภาพแวดล้อมการพัฒนาใหม่คือการกำหนดค่าให้ตรงตามความต้องการของคุณและเข้าใจเครื่องมือที่คุณมีอยู่:

  • ส่วน Script Editor ใน การตั้งค่า Studio ช่วยให้คุณปรับคุณสมบัติที่ทำให้ชีวิตง่ายขึ้น เช่น ฟอนต์ สี การเยื้อง การเติมอัตโนมัติ วงเล็บ และคำแนะนำ คุณอาจต้องการเปิดโหมดมืดในส่วน Studio
  • การกด Ctrl หรือ Command และคลิกที่ฟังก์ชันหรือตัวแปรจะพาคุณไปยังการประกาศในฐานข้อมูลโค้ดของคุณ (หรือเอกสารออนไลน์ของมัน) การใช้ ค้นหาและค้นหาทั้งหมด สามารถช่วยให้คุณนำทางในโครงการขนาดใหญ่ได้
  • หน้าต่าง Output เป็นเครื่องมือพื้นฐานที่สุดในการเข้าใจพฤติกรรมของสคริปต์ของคุณ ใช้เมนู ⋯ เพื่อเปิดใช้งาน Show Context และ Show Source
  • หน้าต่าง Script Analysis แสดงสรุปข้อผิดพลาดและคำเตือน แต่คุณอาจพบว่าประโยชน์ของมันมีจำกัด; Script Editor จะเน้นปัญหาเหล่านี้เมื่อคุณพิมพ์
  • ความสามารถในการบันทึกมีน้อย โดยไม่มีแนวคิดเกี่ยวกับระดับบันทึกเช่น DEBUG หรือ FATAL ใช้ print() และ warn()

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่า Studio สำหรับการเขียนสคริปต์ โปรดดูที่ Script Editor

สคริปต์ที่สองของคุณ

  1. ใน Roblox Studio ให้เพิ่มสคริปต์ไปยัง ReplicatedStorage ในหน้าต่าง Explorer และเปลี่ยนชื่อเป็น OhNo

  2. เพิ่มโค้ดต่อไปนี้ลงในไฟล์:

    print("สวัสดีประเภทและตำแหน่งของสคริปต์!")
  3. สังเกตว่าผลลัพธ์ไม่มีความแตกต่างจากเมื่อคุณรัน สคริปต์แรกของคุณ

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

©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ