ESX, QBCore และ Qbox: ตั้งค่า Framework ของคุณและสร้างอาชีพ
Framework ที่ใช้งานได้คือรากฐานของเซิร์ฟเวอร์ FiveM ของคุณ ก่อนที่จะเพิ่มอู่ซ่อมรถ, แท็บเล็ต หรือธุรกิจต่างๆ โปรดทำให้การสร้างตัวละคร, ฐานข้อมูล และการมอบหมายอาชีพใช้งานได้ก่อน คู่มือนี้ครอบคลุมถึงการติดตั้งใหม่และการสร้างตัวอย่างอาชีพขนาดเล็กหนึ่งอาชีพใน ESX Legacy, QBCore หรือ Qbox โปรดทำตามส่วนที่ตรงกับ framework ของคุณ การติดตั้งทั้งสามอย่างพร้อมกันไม่ใช่ส่วนหนึ่งของการตั้งค่า
เริ่มต้นด้วยการติดตั้งแบบสะอาดใหม่
เตรียมบัญชี Cfx.re, server registration key, FXServer artifact ที่เหมาะสม และบริการ MariaDB ที่กำลังทำงานอยู่ ใช้เวอร์ชันของฐานข้อมูลที่รองรับโดย framework ที่คุณเลือก; Qbox ระบุไว้อย่างชัดเจนว่าต้องใช้ MariaDB และไม่รองรับ MySQL หรือ XAMPP สำหรับโฮสติ้งแบบจัดการ ให้ใช้เซิร์ฟเวอร์และระบบควบคุม txAdmin ของผู้ให้บริการ ดูที่ คู่มือการตั้งค่าเซิร์ฟเวอร์อย่างเป็นทางการของ FiveM และ ข้อกำหนดของ Qbox
- เปิด txAdmin และเลือกการติดตั้งแบบ recipe ใหม่ในไดเรกทอรีข้อมูลเซิร์ฟเวอร์ใหม่
- เลือก recipe อย่างเป็นทางการของ framework ของคุณ: ESX Legacy, QBCore หรือ Qbox
- กรอก server key และรายละเอียดการเชื่อมต่อ MariaDB ที่ถูกต้อง ใช้บัญชีฐานข้อมูลเฉพาะที่มีสิทธิ์เข้าถึงฐานข้อมูลของเซิร์ฟเวอร์นี้
- รัน recipe, ตรวจสอบการกำหนดค่าที่สร้างขึ้น และเริ่มเซิร์ฟเวอร์ โปรดรักษาลำดับของ dependencies และ resource ของ recipe ไว้
- เข้าร่วมเกม, สร้างตัวละคร, เชื่อมต่อใหม่ และยืนยันว่าตัวละครยังโหลดได้ตามปกติก่อนที่จะเพิ่ม resource อื่นๆ
Recipe จะดาวน์โหลดทรัพยากรและรัน SQL สำหรับการติดตั้งของทรัพยากรเหล่านั้น ห้ามนำเข้า Schema ของ framework ตัวเต็มตัวที่สองหลังจากนั้น หรือติดตั้ง Recipe ใหม่ทับลงบนเซิร์ฟเวอร์ที่มีอยู่เดิม โปรดสำรองทั้งไฟล์และฐานข้อมูลก่อนทำการเปลี่ยนแปลงใดๆ ในภายหลัง สำหรับขั้นตอนการติดตั้งเฉพาะของแต่ละ framework โปรดทำตามคู่มือการติดตั้งของ ESX, คู่มือ Windows ของ QBCore หรือ คู่มือการติดตั้งของ Qbox
ทำความเข้าใจสิ่งที่อาชีพประกอบด้วยจริงๆ
ทุกอาชีพจะมี คีย์ภายใน (internal key), ชื่อที่แสดงผล และลำดับขั้น (grades) ที่เป็นตัวเลข เราใช้ sky_example, โดยมีลำดับขั้นคือ 0 และ 1 ตลอดทั้งระบบ โปรดรักษาคีย์นั้นให้เหมือนกันทั้งใน framework, สคริปต์อาชีพ และการเชื่อมต่อใดๆ ชื่อที่แสดงผลอย่างเช่น “Example Company” เป็นเพียงชื่อที่ผู้เล่นมองเห็นเท่านั้น
| Framework | การกำหนดค่าอาชีพ | คีย์ลำดับขั้นในคู่มือนี้ |
|---|---|---|
| ESX Legacy | MariaDB: jobs และ job_grades | ค่า SQL 0, 1 |
| QBCore | qb-core/shared/jobs.lua | Strings: ['0'], ['1'] |
| Qbox | qbx_core/shared/jobs.lua | Numbers: [0], [1] |
การลงทะเบียนอาชีพจะสร้างอัตลักษณ์ของอาชีพใน framework นั้นๆ ระบบเกมเพลย์, อู่จอดรถ, คลังเก็บของ, เมนูหัวหน้างาน และบัญชีธุรกิจ จำเป็นต้องมีทรัพยากรและการตั้งค่าที่เข้ากันได้เป็นของตัวเอง อาชีพใน framework ไม่ใช่ธุรกิจที่เสร็จสมบูรณ์ สถานที่ด้านบนเป็นไปตาม schema ของ ESX, ไฟล์อาชีพของ QBCore และ ไฟล์อาชีพของ Qbox
ESX Legacy: สร้างอาชีพใน MariaDB
เปิดฐานข้อมูลที่กำหนดค่าไว้สำหรับเซิร์ฟเวอร์นี้ ไม่ใช่ฐานข้อมูลของเซิร์ฟเวอร์อื่น ขั้นแรกให้ตรวจสอบว่ามีคีย์ตัวอย่างอยู่แล้วหรือไม่:
SELECT name FROM jobs WHERE name = 'sky_example';
SELECT grade FROM job_grades WHERE job_name = 'sky_example';
รันคำสั่ง insert ต่อไปนี้เฉพาะเมื่อ การตรวจสอบทั้งสองแบบไม่พบแถวข้อมูลใดๆ หากมีอาชีพอยู่แล้ว ให้ตรวจสอบและแก้ไขข้อมูลเดิมที่มีอยู่แทนการเพิ่มข้อมูลซ้ำ
INSERT INTO jobs (name, label)
VALUES ('sky_example', 'Example Company');
INSERT INTO job_grades
(job_name, grade, name, label, salary, skin_male, skin_female)
VALUES
('sky_example', 0, 'employee', 'Employee', 100, '{}', '{}'),
('sky_example', 1, 'boss', 'Manager', 200, '{}', '{}');
job_name เชื่อมโยงแต่ละระดับเข้ากับอาชีพ คอลัมน์ grade คือลำดับที่ใช้สำหรับการมอบหมาย; id อัตโนมัติของแถวไม่ใช่ลำดับ อาชีพที่ไม่มีระดับจะถูกข้ามไป โหลดรายการอาชีพใหม่ผ่านคอนโซลเซิร์ฟเวอร์:
refreshjobs
ESX Legacy ปัจจุบันเริ่มจาก oxmysql, ตามด้วย esx_lib, แล้วตามด้วย es_extended; บทช่วยสอนรุ่นเก่าอาจข้าม esx_libไป รักษาการพึ่งพาตามที่ระบุไว้ในสูตรของคุณ ดู การกำหนดค่าสูตรปัจจุบัน และ โค้ดส่วนโหลดอาชีพ
สำหรับการรวมระบบแบบ esx_society ชื่อระดับภายใน boss จะถูกรับรู้โดยการกำหนดค่าหัวหน้างานเริ่มต้น การใช้ป้ายกำกับที่มองเห็นได้ว่า “Manager” เพียงอย่างเดียวไม่ได้รับสิทธิ์ใดๆ การลงทะเบียนองค์กร บัญชี และลำดับการพึ่งพา ยังคงเป็นขั้นตอนการตั้งค่าที่แยกจากกัน โปรดปฏิบัติตาม เอกสารของระบบองค์กร หากทรัพยากรอาชีพของคุณมีการใช้งาน
QBCore: เพิ่มรายการลงในตารางอาชีพ
เปิด qb-core/shared/jobs.lua แทรก นี้ลงในตารางอาชีพที่มีอยู่ ร่วมกับรายการอาชีพอื่นๆ และก่อนเครื่องหมายปีกกาปิด รักษาการประกาศตารางเดิมและอาชีพเดิมทั้งหมดไว้ นี่คือการเพิ่มรายการ ไม่ใช่ไฟล์ทดแทน
['sky_example'] = {
label = 'Example Company',
defaultDuty = false,
offDutyPay = false,
grades = {
['0'] = { name = 'Employee', payment = 100 },
['1'] = { name = 'Manager', payment = 200, isboss = true },
},
},
รักษาคีย์ระดับ (grade keys) ให้เป็นสตริง รวมถึงระดับศูนย์ ตรวจสอบเครื่องหมายจุลภาคและปีกกาที่อยู่รอบๆ รายการที่อยู่ติดกัน บันทึก แล้วทำการรีสตาร์ทเซิร์ฟเวอร์แบบเต็มรูปแบบตามที่วางแผนไว้เพื่อให้ทรัพยากรที่เกี่ยวข้องโหลดคำจำกัดความแบบเดียวกัน คำสั่ง refresh ของ FiveM จะทำการสแกนทรัพยากรและแมนิเฟสต์ใหม่ แต่ไม่ได้โหลดตารางงาน Lua ที่กำลังทำงานอยู่ อย่าสร้างแถว SQL jobs ในรูปแบบ ESX สำหรับ QBCore คำจำกัดความงานของมัน อยู่ใน Lua ในขณะที่ข้อมูลตัวละครยังคงใช้ฐานข้อมูล
isboss ระบุระดับผู้จัดการ; ไม่ได้ให้สิทธิ์คำสั่ง framework-admin ทรัพยากรการจัดการที่เข้ากันได้ยังคงต้องจัดเตรียมและกำหนดค่าเมนูจริงและตำแหน่งของเมนูนั้น
Qbox: ใช้ไฟล์งานของตัวเองและระดับแบบตัวเลข
เปิด qbx_core/shared/jobs.lua และแทรก นี้ลงในตารางที่คืนค่าโดย return { ... } ก่อนเครื่องหมายปีกกาปิดสุดท้าย รักษาข้อมูลรายการอื่นๆ ไว้ Qboxใช้คีย์ระดับแบบตัวเลขที่นี่; อย่าคัดลอกคีย์แบบสตริงของ QBCore มาใช้โดยไม่แปลงชนิดคีย์เป็นตัวเลข
['sky_example'] = {
label = 'Example Company',
defaultDuty = false,
offDutyPay = false,
grades = {
[0] = { name = 'Employee', payment = 100 },
[1] = { name = 'Manager', payment = 200, isboss = true, bankAuth = true },
},
},
บันทึกและทำการรีสตาร์ทเซิร์ฟเวอร์แบบเต็มรูปแบบตามแผนที่วางไว้ bankAuth แยกจาก isboss และถูกใช้โดยการเชื่อมต่อธนาคารที่เข้ากันได้; ไม่มีแฟล็กใดที่สร้างบัญชีหรือเมนู การตั้งค่าของคุณต้องตรงกับคำจำกัดความงานอย่างเป็นทางการของ Qbox
Qbox รวมการรองรับงานหลายอาชีพ (multijob) ขีดจำกัดงานและเงื่อนไขที่ว่า /setjob จะแทนที่อาชีพที่มีอยู่หรือเพิ่มอาชีพนั้นสามารถกำหนดค่าได้ ใช้คำสั่งจัดการอาชีพที่รองรับเมื่อจัดการหลายอาชีพ; อย่าสมมติว่าทรัพยากร multijob ภายนอกสำหรับ QBCore จะสามารถใช้งานร่วมกันได้ ดู คำสั่งของ Qbox และ การกำหนดค่า multijob
มอบหมายอาชีพ ทดสอบ และเชื่อมต่อใหม่
เข้าร่วมด้วยตัวละครทดสอบและใช้บัญชีที่มีสิทธิ์คำสั่ง framework/ACE ที่จำเป็น การเข้าสู่ระบบ txAdmin เพียงอย่างเดียวไม่ได้สร้างสิทธิ์เหล่านั้น หาก Qbox เปิดใช้งาน requireOptIn ให้ใช้ /optin ก่อนคำสั่งแอดมิน แทนที่ 1 ด้านล่างด้วย ID เซิร์ฟเวอร์ปัจจุบันของตัวละครทดสอบที่เชื่อมต่อของคุณ; /job จะรายงานอาชีพของผู้เล่นที่ป้อนข้อมูลลงไป:
/setjob 1 sky_example 0
/job
/setjob 1 sky_example 1
/job
ตรวจสอบว่าทั้งสองระดับแสดงอาชีพและยศที่คาดหวัง รูปแบบคำสั่งมอบหมายอาชีพมีระบุไว้สำหรับ ESX, QBCore และ Qbox; การตรวจสอบการเลือกเข้าร่วมแบบมีเงื่อนไขของ Qbox อยู่ใน โค้ดของคำสั่ง
สำหรับ QBCore และ Qbox ตัวอย่างนี้เริ่มต้นด้วยสถานะนอกเวลาปฏิบัติงานและปิดการจ่ายเงินนอกเวลาปฏิบัติงาน โปรดใช้คำสั่งเปลี่ยนสถานะปฏิบัติงานของทรัพยากรงานที่คุณติดตั้งไว้ เนื่องจากไม่มีคำสั่ง /duty ที่เป็นสากลสำหรับการเข้าสู่สถานะปฏิบัติงาน การตั้งค่าการเข้าสู่ระบบยังมีผลต่อการเลือกระหว่างสถานะปฏิบัติงานที่บันทึกไว้หรือ defaultDuty จากนั้นให้เชื่อมต่อใหม่และตรวจสอบงาน ระดับ และพฤติกรรมการปฏิบัติงานที่ตั้งใจไว้
ก่อนเปิดให้ผู้เล่นเข้าใช้งานงาน ให้ทดสอบสิทธิ์การใช้งานด้วยทั้งสองระดับ พนักงานไม่ควรเข้าถึงฟีเจอร์ที่สงวนไว้สำหรับฝ่ายบริหาร โปรดรอรอบการจ่ายเงินตามที่คุณกำหนดไว้แทนที่จะคาดหวังว่าจะได้รับเงินทันทีหลังจากการได้รับมอบหมาย จำนวนเงินในตัวอย่างเป็นเพียงตัวแทนสำหรับระบบเศรษฐกิจของคุณ หากการตรวจสอบล้มเหลว ให้อ่านข้อผิดพลาดแรกที่เกี่ยวข้องในคอนโซลและแก้ไขให้เรียบร้อยก่อนที่จะเพิ่มทรัพยากรอื่น
| อาการ | การตรวจสอบเบื้องต้น |
|---|---|
| ไม่สามารถมอบหมายงานได้ | คีย์ที่ถูกต้อง, ระดับที่มีอยู่ และการกำหนดค่าที่โหลดแล้ว |
| คำสั่งถูกปฏิเสธ | สิทธิ์ของ Framework และการกำหนดค่า ACE |
| ทรัพยากรทำงานล้มเหลวหลังจากแก้ไข Lua | ข้อผิดพลาดแรกในคอนโซล, เครื่องหมายจุลภาค และปีกกา |
| งานถูกต้องแต่ไม่มีเมนู | ทรัพยากรงาน, สถานที่ที่กำหนด, ระดับ และสถานะปฏิบัติงาน |
| การจ่ายเงินผิดพลาด | ค่าจ้างตามระดับ, กฎการปฏิบัติงาน และการกำหนดค่าบัญชี/เงินเดือน |
เชื่อมต่ออาชีพ Sky ของคุณหลังจากนั้น
เมื่อการมอบหมายงานของ framework ทำงานได้แล้ว ให้ปฏิบัติตาม คู่มือการติดตั้ง Sky และกำหนดค่าทรัพยากรงานที่คุณติดตั้งด้วยคีย์ framework และระดับที่ตรงกัน ใช้ ฟีเจอร์พื้นฐานของงาน Sky สำหรับการตั้งค่าส่วนกลางที่เกี่ยวข้อง ให้กำหนดค่าคู่งานนอกเวลาปฏิบัติงานเฉพาะเมื่อการตั้งค่า Sky ที่คุณเลือกมีการใช้งานเท่านั้น และสร้างงานทั้งสองอย่างพร้อมกับทุกระดับที่จำเป็น
ตรวจสอบล่าสุดเมื่อ: 25 ตุลาคม 2026. แหล่งข้อมูลด้านบนคือเอกสารประกอบอย่างเป็นทางการของเฟรมเวิร์ก, สูตรที่ได้รับการดูแล และซอร์สโค้ดบน GitHub โปรดตรวจสอบเวอร์ชันที่ติดตั้งของคุณก่อนนำตัวอย่างจากเวอร์ชันที่ใหม่กว่าไปใช้งาน