การตั้งค่า Framework·

ESX, QBCore และ Qbox: ตั้งค่า Framework ของคุณและสร้างอาชีพ

คู่มือเริ่มต้น FiveM ที่ใช้งานได้จริง: ติดตั้ง framework ของคุณ, สร้างอาชีพและระดับตำแหน่งอย่างถูกต้อง, ทำความเข้าใจเรื่องการเข้าเวรและสิทธิ์การเข้าถึงของหัวหน้า และตรวจสอบว่าทุกอย่างมีการบันทึกข้อมูล

Framework ที่ใช้งานได้คือรากฐานของเซิร์ฟเวอร์ FiveM ของคุณ ก่อนที่จะเพิ่มอู่ซ่อมรถ, แท็บเล็ต หรือธุรกิจต่างๆ โปรดทำให้การสร้างตัวละคร, ฐานข้อมูล และการมอบหมายอาชีพใช้งานได้ก่อน คู่มือนี้ครอบคลุมถึงการติดตั้งใหม่และการสร้างตัวอย่างอาชีพขนาดเล็กหนึ่งอาชีพใน ESX Legacy, QBCore หรือ Qbox โปรดทำตามส่วนที่ตรงกับ framework ของคุณ การติดตั้งทั้งสามอย่างพร้อมกันไม่ใช่ส่วนหนึ่งของการตั้งค่า

เริ่มต้นด้วยการติดตั้งแบบสะอาดใหม่

เตรียมบัญชี Cfx.re, server registration key, FXServer artifact ที่เหมาะสม และบริการ MariaDB ที่กำลังทำงานอยู่ ใช้เวอร์ชันของฐานข้อมูลที่รองรับโดย framework ที่คุณเลือก; Qbox ระบุไว้อย่างชัดเจนว่าต้องใช้ MariaDB และไม่รองรับ MySQL หรือ XAMPP สำหรับโฮสติ้งแบบจัดการ ให้ใช้เซิร์ฟเวอร์และระบบควบคุม txAdmin ของผู้ให้บริการ ดูที่ คู่มือการตั้งค่าเซิร์ฟเวอร์อย่างเป็นทางการของ FiveM และ ข้อกำหนดของ Qbox

  1. เปิด txAdmin และเลือกการติดตั้งแบบ recipe ใหม่ในไดเรกทอรีข้อมูลเซิร์ฟเวอร์ใหม่
  2. เลือก recipe อย่างเป็นทางการของ framework ของคุณ: ESX Legacy, QBCore หรือ Qbox
  3. กรอก server key และรายละเอียดการเชื่อมต่อ MariaDB ที่ถูกต้อง ใช้บัญชีฐานข้อมูลเฉพาะที่มีสิทธิ์เข้าถึงฐานข้อมูลของเซิร์ฟเวอร์นี้
  4. รัน recipe, ตรวจสอบการกำหนดค่าที่สร้างขึ้น และเริ่มเซิร์ฟเวอร์ โปรดรักษาลำดับของ dependencies และ resource ของ recipe ไว้
  5. เข้าร่วมเกม, สร้างตัวละคร, เชื่อมต่อใหม่ และยืนยันว่าตัวละครยังโหลดได้ตามปกติก่อนที่จะเพิ่ม resource อื่นๆ

Recipe จะดาวน์โหลดทรัพยากรและรัน SQL สำหรับการติดตั้งของทรัพยากรเหล่านั้น ห้ามนำเข้า Schema ของ framework ตัวเต็มตัวที่สองหลังจากนั้น หรือติดตั้ง Recipe ใหม่ทับลงบนเซิร์ฟเวอร์ที่มีอยู่เดิม โปรดสำรองทั้งไฟล์และฐานข้อมูลก่อนทำการเปลี่ยนแปลงใดๆ ในภายหลัง สำหรับขั้นตอนการติดตั้งเฉพาะของแต่ละ framework โปรดทำตามคู่มือการติดตั้งของ ESX, คู่มือ Windows ของ QBCore หรือ คู่มือการติดตั้งของ Qbox

ทำความเข้าใจสิ่งที่อาชีพประกอบด้วยจริงๆ

ทุกอาชีพจะมี คีย์ภายใน (internal key), ชื่อที่แสดงผล และลำดับขั้น (grades) ที่เป็นตัวเลข เราใช้ sky_example, โดยมีลำดับขั้นคือ 0 และ 1 ตลอดทั้งระบบ โปรดรักษาคีย์นั้นให้เหมือนกันทั้งใน framework, สคริปต์อาชีพ และการเชื่อมต่อใดๆ ชื่อที่แสดงผลอย่างเช่น “Example Company” เป็นเพียงชื่อที่ผู้เล่นมองเห็นเท่านั้น

Frameworkการกำหนดค่าอาชีพคีย์ลำดับขั้นในคู่มือนี้
ESX LegacyMariaDB: jobs และ job_gradesค่า SQL 0, 1
QBCoreqb-core/shared/jobs.luaStrings: ['0'], ['1']
Qboxqbx_core/shared/jobs.luaNumbers: [0], [1]

การลงทะเบียนอาชีพจะสร้างอัตลักษณ์ของอาชีพใน framework นั้นๆ ระบบเกมเพลย์, อู่จอดรถ, คลังเก็บของ, เมนูหัวหน้างาน และบัญชีธุรกิจ จำเป็นต้องมีทรัพยากรและการตั้งค่าที่เข้ากันได้เป็นของตัวเอง อาชีพใน framework ไม่ใช่ธุรกิจที่เสร็จสมบูรณ์ สถานที่ด้านบนเป็นไปตาม schema ของ ESX, ไฟล์อาชีพของ QBCore และ ไฟล์อาชีพของ Qbox

ESX Legacy: สร้างอาชีพใน MariaDB

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

Check existing jobs
SELECT name FROM jobs WHERE name = 'sky_example';
SELECT grade FROM job_grades WHERE job_name = 'sky_example';

รันคำสั่ง insert ต่อไปนี้เฉพาะเมื่อ การตรวจสอบทั้งสองแบบไม่พบแถวข้อมูลใดๆ หากมีอาชีพอยู่แล้ว ให้ตรวจสอบและแก้ไขข้อมูลเดิมที่มีอยู่แทนการเพิ่มข้อมูลซ้ำ

Create the example job
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 อัตโนมัติของแถวไม่ใช่ลำดับ อาชีพที่ไม่มีระดับจะถูกข้ามไป โหลดรายการอาชีพใหม่ผ่านคอนโซลเซิร์ฟเวอร์:

Server console
refreshjobs

ESX Legacy ปัจจุบันเริ่มจาก oxmysql, ตามด้วย esx_lib, แล้วตามด้วย es_extended; บทช่วยสอนรุ่นเก่าอาจข้าม esx_libไป รักษาการพึ่งพาตามที่ระบุไว้ในสูตรของคุณ ดู การกำหนดค่าสูตรปัจจุบัน และ โค้ดส่วนโหลดอาชีพ

สำหรับการรวมระบบแบบ esx_society ชื่อระดับภายใน boss จะถูกรับรู้โดยการกำหนดค่าหัวหน้างานเริ่มต้น การใช้ป้ายกำกับที่มองเห็นได้ว่า “Manager” เพียงอย่างเดียวไม่ได้รับสิทธิ์ใดๆ การลงทะเบียนองค์กร บัญชี และลำดับการพึ่งพา ยังคงเป็นขั้นตอนการตั้งค่าที่แยกจากกัน โปรดปฏิบัติตาม เอกสารของระบบองค์กร หากทรัพยากรอาชีพของคุณมีการใช้งาน

QBCore: เพิ่มรายการลงในตารางอาชีพ

เปิด qb-core/shared/jobs.lua แทรก นี้ลงในตารางอาชีพที่มีอยู่ ร่วมกับรายการอาชีพอื่นๆ และก่อนเครื่องหมายปีกกาปิด รักษาการประกาศตารางเดิมและอาชีพเดิมทั้งหมดไว้ นี่คือการเพิ่มรายการ ไม่ใช่ไฟล์ทดแทน

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 มาใช้โดยไม่แปลงชนิดคีย์เป็นตัวเลข

qbx_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, bankAuth = true },
    },
},

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

Qbox รวมการรองรับงานหลายอาชีพ (multijob) ขีดจำกัดงานและเงื่อนไขที่ว่า /setjob จะแทนที่อาชีพที่มีอยู่หรือเพิ่มอาชีพนั้นสามารถกำหนดค่าได้ ใช้คำสั่งจัดการอาชีพที่รองรับเมื่อจัดการหลายอาชีพ; อย่าสมมติว่าทรัพยากร multijob ภายนอกสำหรับ QBCore จะสามารถใช้งานร่วมกันได้ ดู คำสั่งของ Qbox และ การกำหนดค่า multijob

มอบหมายอาชีพ ทดสอบ และเชื่อมต่อใหม่

เข้าร่วมด้วยตัวละครทดสอบและใช้บัญชีที่มีสิทธิ์คำสั่ง framework/ACE ที่จำเป็น การเข้าสู่ระบบ txAdmin เพียงอย่างเดียวไม่ได้สร้างสิทธิ์เหล่านั้น หาก Qbox เปิดใช้งาน requireOptIn ให้ใช้ /optin ก่อนคำสั่งแอดมิน แทนที่ 1 ด้านล่างด้วย ID เซิร์ฟเวอร์ปัจจุบันของตัวละครทดสอบที่เชื่อมต่อของคุณ; /job จะรายงานอาชีพของผู้เล่นที่ป้อนข้อมูลลงไป:

In-game chat
/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 โปรดตรวจสอบเวอร์ชันที่ติดตั้งของคุณก่อนนำตัวอย่างจากเวอร์ชันที่ใหม่กว่าไปใช้งาน