FiveM Resource ไม่ทำงานหรือ Start ไม่ขึ้น แก้อย่างไร? วิธีเช็ก Error แบบละเอียด
ปัญหา FiveM Resource ไม่ทำงาน, Start ไม่ขึ้น, ensure แล้ว Error หรือขึ้น Couldn't find resource เป็นปัญหาที่เจอบ่อยมากหลังเพิ่ม Script, Map, รถ, Framework หรือ Resource ใหม่ลง Server
วิธีแก้ที่ถูกต้องไม่ใช่ Restart FXServer ซ้ำ ๆ แต่ต้องไล่ตรวจตั้งแต่
ตำแหน่ง Resource
↓
fxmanifest.lua
↓
refresh
↓
ensure
↓
Dependencies
↓
Artifact / OneSync
↓
Database
↓
Script Error
↓
Console
หลักสำคัญคือ เริ่มแก้จาก Error แรกใน Console เพราะ Error แรกมักเป็นต้นเหตุ ส่วน Error ที่ตามมาอาจเป็นเพียงผลกระทบจาก Resource ก่อนหน้าที่ Start ไม่สำเร็จ
① Resource FiveM ไม่ทำงานมีอาการแบบไหน
อาการที่พบได้ เช่น
Couldn't find resource
Failed to start resource
Missing dependency
SCRIPT ERROR
No such export
Resource failed to load
Could not load resource
Resource manifest error
หรือ Resource แสดง Started แต่ Feature ภายในไม่ทำงาน
แต่ละกรณีมีสาเหตุต่างกัน
② เริ่มจากดู Live Console ก่อน
ถ้าใช้ txAdmin ให้เปิด
Live Console
แล้วลอง
ensure resource_name
ตัวอย่าง
ensure policejob
จากนั้นอ่าน Error ที่เกิดขึ้นทันที
③ อย่าแก้หลายอย่างพร้อมกัน
วิธีที่ไม่ควรทำคือ
เปลี่ยน Artifact
เปลี่ยน Database
เปลี่ยน Framework
แก้ Manifest
ลบ Cache
Restart
พร้อมกันทั้งหมด
เพราะจะไม่รู้ว่าปัญหาจริงเกิดจากอะไร
แก้ทีละจุดแล้วทดสอบทุกครั้ง
④ ตรวจก่อนว่า Resource อยู่ใน resources หรือไม่
FiveM โหลด Resources จาก Folder
resources/
ตัวอย่าง
server-data/
└── resources/
└── my_resource/
ถ้าวาง Resource นอก Folder นี้ FXServer อาจไม่ตรวจพบ
⑤ Resource ต้องมี fxmanifest.lua
Resource ปัจจุบันควรมี
fxmanifest.lua
ตัวอย่าง
my_resource/
├── fxmanifest.lua
├── client.lua
└── server.lua
หากไม่มี Manifest FXServer จะไม่ Parse Resource อย่างถูกต้อง
⑥ __resource.lua ยังใช้ได้ไหม
เป็น Manifest รูปแบบเก่า
__resource.lua
Cfx.re ยังรองรับ Resource เก่าบางรูปแบบ แต่ถือเป็น Legacy
Resource ใหม่ควรใช้
fxmanifest.lua
⑦ ตัวอย่าง fxmanifest.lua พื้นฐาน
fx_version 'cerulean'
game 'gta5'
client_script 'client.lua'
server_script 'server.lua'
ถ้าเป็น Resource สำหรับ FiveM ต้องกำหนด Game API ให้ถูก เช่น
game 'gta5'
⑧ fx_version ควรใช้อะไร
เอกสารปัจจุบันระบุ FXv2 Resource Version ปัจจุบันคือ
cerulean
จึงมักใช้
fx_version 'cerulean'
ใน Resource ใหม่
⑨ Manifest เขียนผิดทำให้ Start ไม่ขึ้นได้ไหม
ได้
fxmanifest.lua เป็นไฟล์ Lua
ดังนั้น Syntax Error เช่น
fx_version 'cerulean
ที่ลืมปิด '
สามารถทำให้ Manifest Parse ผิด
⑩ ตรวจชื่อไฟล์ใน Manifest
สมมุติ Manifest มี
server_script 'server.lua'
แต่ไฟล์จริงคือ
server_main.lua
Resource จะไม่สามารถโหลด Script ตามที่กำหนดได้ถูกต้อง
ชื่อ File และ Path ต้องตรงกัน
⑪ Linux ต้องระวังตัวพิมพ์ใหญ่เล็ก
บน Linux
Client.lua
กับ
client.lua
อาจถือเป็นคนละไฟล์
ดังนั้น Manifest
client_script 'client.lua'
ต้องตรงกับชื่อจริง
⑫ Resource ซ้อน Folder ผิดชั้น
เป็นสาเหตุยอดนิยมมากหลังดาวน์โหลด ZIP จาก Repository
ตัวอย่าง
resources/
└── myresource/
└── myresource-main/
├── fxmanifest.lua
└── client.lua
แล้วใช้
ensure myresource
อาจไม่ตรง Resource Root ที่ต้องการ
⑬ โครงสร้างที่ควรเป็น
จัดให้ Manifest อยู่ที่ Root ของ Resource เช่น
resources/
└── myresource/
├── fxmanifest.lua
├── client.lua
└── server.lua
แล้วใช้
ensure myresource
⑭ Couldn't find resource หมายความว่าอะไร
โดยทั่วไปหมายถึง FXServer ยังหา Resource ตามชื่อนั้นไม่พบ
ตรวจ
Folder อยู่ถูกที่ไหม
ชื่อ Resource ถูกไหม
Manifest มีไหม
เพิ่งเพิ่ม Resource หรือไม่
ถ้าเพิ่ง Copy Resource ขณะ Server Running ให้ใช้ refresh
⑮ refresh คืออะไร
ใช้
refresh
เพื่อให้ FXServer Rescan Folder resources/ และอ่าน Resource Manifests ใหม่
หลังเพิ่ม Resource ใหม่สามารถใช้
refresh
ensure myresource
ได้
⑯ refresh กับ Restart Server ต่างกันอย่างไร
refresh ไม่ได้ Restart FXServer
แต่เป็นการ Scan Resource List ใหม่
เหมาะกับ Development เพราะไม่ต้อง Restart ผู้เล่นทั้ง Serverเพียงเพื่อให้ FXServer รู้จัก Folder ใหม่
⑰ refresh แล้ว Resource ยังไม่เจอ
ตรวจ Manifest
ถ้า Resource Folder ไม่มี
fxmanifest.lua
หรือ Legacy
__resource.lua
FXServer อาจแจ้ง Warning ว่า Folder นั้นไม่มี Resource Manifest
⑱ ensure ใช้อย่างไร
เมื่อ FXServer รู้จัก Resource แล้วใช้
ensure myresource
พฤติกรรมคือ
ถ้ายังหยุด
→ Start
ถ้ากำลัง Started
→ Restart
เหมาะสำหรับทดสอบหลังแก้ Resource
⑲ start ใช้แทน ensure ได้ไหม
ได้บางกรณี
start myresource
จะ Start หาก Resource ยังหยุดอยู่
แต่ ensure ครอบคลุมกว่า เพราะถ้า Resource ทำงานอยู่จะ Restart ให้ด้วย
⑳ Resource Start แล้วหยุดทันทีเกิดจากอะไร
มักต้องดู Error ภายใน Resource เช่น
Syntax Error
Missing Dependency
Missing Export
Database Error
Invalid Config
Runtime Error
ข้อความ Started resource เพียงอย่างเดียวไม่ได้รับประกันว่า Logic ภายในทำงานสมบูรณ์
㉑ Dependency คืออะไร
Resource บางตัวต้องพึ่ง Resource อื่น
เช่น
Framework
Inventory
Target
Database Library
UI Library
ถ้า Dependency ยังไม่พร้อม Resource หลักอาจ Start ไม่ได้หรือทำงานผิด
㉒ Dependency ระบุใน fxmanifest.lua ได้
ตัวอย่าง
dependency 'base_resource'
หรือหลายตัว
dependencies {
'base_resource',
'utility_resource'
}
Cfx.re ใช้ข้อมูลนี้เป็น Requirement ของ Resource
㉓ Missing dependency แก้อย่างไร
ถ้า Console บอก
Missing dependency xyz
ให้ตรวจว่า xyz
ติดตั้งแล้วหรือยัง
ชื่อถูกหรือไม่
Start ได้หรือไม่
Version ถูกหรือไม่
อย่าลบ dependency ออกจาก Manifest เพียงเพื่อให้ Error หาย หาก Resource ต้องใช้จริง
㉔ จัด Load Order อย่างไร
แนวคิดทั่วไป
Database
↓
Core Framework
↓
Libraries
↓
Inventory / Target
↓
Jobs
ตัวอย่าง
ensure database_resource
ensure framework_core
ensure shared_library
ensure inventory
ensure policejob
ใช้ชื่อ Resource จริงของระบบคุณ
㉕ No such export คืออะไร
Resource หนึ่งกำลังเรียก Export จาก Resource อื่น แต่ Export นั้นหาไม่เจอ
สาเหตุอาจเป็น
Dependency ยังไม่ Start
Resource Version ไม่ตรง
Export ถูกเปลี่ยนชื่อ
ใช้ Framework คนละ Version
Resource ถูก Rename
ต้องอ่าน Documentation ของ Resource ที่ใช้อยู่
㉖ Resource Name มีผลกับ Export ไหม
มี
ตัวอย่าง Script อาจเรียก
exports['inventory']:SomeFunction()
ถ้าคุณ Rename Folder Resource จาก
inventory
เป็น
my_inventory
Script ที่อ้างชื่อเดิมอาจทำงานไม่ได้
จึงไม่ควร Rename Dependencies แบบสุ่ม
㉗ Framework ไม่ตรงกันทำให้ Resource พังได้ไหม
ได้มาก
ตัวอย่าง Resource อาจออกแบบสำหรับ
ESX
แต่ Server ใช้
QBCore
หรือ Resource ใช้ Framework API รุ่นเก่า
การ ensure ให้ขึ้นไม่ได้ทำให้ Resource ต่าง Framework ใช้งานร่วมกันเองได้
㉘ Database Resource ต้องเปิดก่อนหรือไม่
Resource ที่ใช้ Database มักต้องมี Database Connector พร้อมก่อน
ถ้า Database Connector ยังไม่ Start อาจเกิด
database unavailable
export not found
query error
หรือ Framework Start ไม่สมบูรณ์
㉙ Database เปิดแต่ Resource ยัง Error
ตรวจต่อ
Connection String
Database Name
User
Password
Permission
Schema
Tables
Migration
Resource บางตัวต้อง Import SQL ก่อนใช้งาน
㉚ Table ไม่มีทำให้ Resource Start ไม่ขึ้นไหม
ได้
ตัวอย่าง Resource เรียก Table
users
vehicles
jobs
แต่ Database ยังไม่ได้ Import Schema
อาจเกิด SQL Error ทันทีตอน Resource Startup
㉛ อย่าเปิด MySQL 3306 Public เพื่อแก้ Resource
ถ้า Database อยู่เครื่องเดียวกันหรือ Private Network ไม่จำเป็นต้องเปิด Public Port ให้ทั้ง Internet
Resource Database Error ควรแก้ที่
Connection
Credentials
Permissions
Schema
Network ระหว่าง Server กับ Database
ไม่ใช่เปิด Database สู่ Public โดยไม่มีเหตุผล
㉜ Resource อาจ Require OneSync ได้ไหม
ได้
Manifest สามารถกำหนด Runtime Constraint
dependency '/onesync'
หมายความว่า Resource ต้องการ State Awareness
ถ้า Server ปิด OneSync Resource อาจไม่ผ่าน Requirement
㉝ วิธีแก้ Resource Require OneSync
ตรวจ server.cfg
สำหรับ Server รุ่นใหม่โดยทั่วไปใช้
set onesync on
จากนั้น Restart Server และทดสอบ Resource อีกครั้ง
㉞ Resource อาจ Require Artifact ขั้นต่ำได้ไหม
ได้
Manifest สามารถระบุ
dependency '/server:4500'
หมายความว่าต้องใช้ Server Build ตั้งแต่เลขที่กำหนดขึ้นไป
ถ้า Artifact เก่าเกิน Resource อาจไม่สามารถทำงานตาม Requirement ได้
㉟ Resource อาจ Require Game Build ได้ไหม
ได้
ตัวอย่าง Manifest สามารถมี Constraint รูปแบบ
dependency '/gameBuild:h4'
ซึ่งใช้ระบุ Minimum Game Build Requirement
ดังนั้น Resource บางตัวอาจต้องสัมพันธ์กับ sv_enforceGameBuild ของ Server
㊱ Resource อาจ Require Policy ได้ไหม
ได้
Manifest รองรับ Runtime Constraint เช่น
dependency '/policy:subdir_file_mapping'
หาก Server Key ไม่มี Policy ที่ Resource ต้องการ Resource อาจไม่ผ่าน Requirement
พบได้กับ Asset บางประเภท
㊲ Resource อาจ Require Native ได้ไหม
ได้
Manifest สามารถใช้
dependency '/native:0xHASH'
เพื่อ Require ว่า Server รองรับ Native ที่กำหนด
ถ้า Server Build เก่าเกินไปอาจไม่ผ่าน
㊳ Artifact เก่ามีผลกับ Resource ไหม
มี
Resource ใหม่อาจใช้
Native ใหม่
Runtime ใหม่
Manifest Feature ใหม่
Server API ใหม่
ที่ Artifact เก่าไม่มี
ดังนั้นเมื่อ Resource รุ่นใหม่ Start ไม่ได้ ควรตรวจ FXServer Artifact ด้วย
㊴ ควรอัปเดต Artifact ก่อน Debug ไหม
ถ้า Artifact เก่ามาก ควร Update เป็น Build ที่ยัง Support ก่อน
Cfx.re ระบุว่า Artifact เก่าจะเข้าสถานะ End of Support และ End of Life ตามระยะเวลา
การ Debug Resource ใหม่บน Runtime ที่ล้าสมัยทำให้เสียเวลาโดยไม่จำเป็น
㊵ lua54 'yes' ยังจำเป็นไหม
ไม่จำเป็นแล้วสำหรับ Resource ปัจจุบัน
Cfx.re ระบุว่า lua54 Manifest Setting ถูก Deprecated แล้ว
ตั้งแต่เดือนมิถุนายน 2025 Lua 5.3 ถูก Deprecated และ Lua Scripts ทั้งหมดใช้ Lua 5.4 แล้ว
ดังนั้นไม่ต้องเพิ่ม
lua54 'yes'
เพื่อ “แก้ Resource” แบบ Tutorial เก่า
㊶ Resource Lua เก่ามากอาจมีปัญหาไหม
ได้
Script เก่าอาจใช้ Function/Library หรือ Syntax ที่ไม่เข้ากับ Runtime ปัจจุบัน
เช่น Code เก่าที่อาศัย Behavior ของ Lua รุ่นก่อน
ต้อง Update Script ไม่ใช่พยายามลด Runtime Server กลับไปเรื่อย ๆ
㊷ JavaScript Resource มี Version Runtime ไหม
Manifest รองรับ
node_version '22'
และเอกสารปัจจุบันระบุว่ามี Node.js Runtime Versions ตามที่ Cfx.re รองรับ
Resource บางตัวจึงอาจมี Runtime Requirement เฉพาะ
ไม่ควรเปลี่ยน Version โดยเดา
㊸ Script Error ต้องอ่านจากบรรทัดไหน
ตัวอย่าง
SCRIPT ERROR: @myresource/server.lua:42
ข้อมูลสำคัญคือ
Resource = myresource
File = server.lua
Line = 42
ให้เปิดไฟล์และตรวจบริเวณนั้นก่อน
㊹ Error แรกสำคัญกว่า Error สุดท้าย
สมมุติ Console แสดง
1. Database resource failed
2. Framework export missing
3. Inventory failed
4. Police job failed
ต้นเหตุอาจเป็นข้อ 1
ถ้าแก้ข้อ 1 ได้ Error 2–4 อาจหายตาม
อย่าเริ่มแก้จาก Police Job ทันที
㊺ Resource Started แต่ใช้งานไม่ได้ทำอย่างไร
กรณีนี้แปลว่ากระบวนการ Start ระดับ Resource ผ่าน แต่ Function ภายในอาจ Error
ตรวจ
Server Console
Client F8
Dependencies
Exports
Config
Database
Permissions
Events
NUI
ต้องดูทั้ง Client และ Server Side
㊻ Client Script Error ดูตรงไหน
ผู้เล่นหรือ Developer เปิด FiveM แล้วกด
F8
ดู Client Console
ถ้า Server Console ไม่ Error แต่ UI/Client Feature ไม่ทำงาน ปัญหาอาจอยู่ฝั่ง Client
㊼ Server Script Error ดูตรงไหน
ดู
txAdmin Live Console
หรือ FXServer Console
เช่น Error เกี่ยวกับ
Database
Exports
Server Events
Lua
JavaScript
C#
จะปรากฏฝั่ง Server ตามประเภท Script
㊽ Checklist Resource Start ไม่ขึ้น
ไล่ตามนี้
Resource อยู่ใต้ resources/
Folder ไม่ซ้อนผิดชั้น
fxmanifest.lua มี
Manifest Syntax ถูก
game 'gta5' ถูก
ชื่อ Script ใน Manifest ถูก
refresh แล้ว
ensure ชื่อ Resource ถูก
Dependencies ติดตั้งครบ
Dependencies Start ได้
Load Order ถูก
Framework ตรง
Database ใช้งานได้
SQL Schema ครบ
OneSync Requirement ผ่าน
Artifact Requirement ผ่าน
Game Build Requirement ผ่าน
Policy Requirement ผ่าน
Console ไม่มี Error แรกที่ยังไม่แก้
ใช้ Checklist นี้ก่อน Reinstall Server
㊾ วิธี Debug ที่เร็วที่สุด
ใช้ Flow นี้
ensure myresource
↓
อ่าน Error แรก
↓
Couldn't find?
→ Folder / Manifest / refresh
Missing dependency?
→ ติดตั้งและ Start Dependency
No such export?
→ Version / Resource Name / Load Order
SQL Error?
→ Database / Schema
OneSync Requirement?
→ เปิด OneSync
Server Build Requirement?
→ Update Artifact
SCRIPT ERROR?
→ เปิด File + Line ที่แจ้ง
นี่เป็นวิธีที่มีประสิทธิภาพกว่าการ Restart Server ซ้ำ ๆ
㊿ สรุป FiveM Resource ไม่ทำงานหรือ Start ไม่ขึ้น แก้อย่างไร
เมื่อ Resource มีปัญหา อย่าเริ่มด้วยการลบ Cache หรือ Reinstall Server
เริ่มจาก
refresh
ensure resource_name
แล้วอ่าน Error แรกใน Console
ถ้าขึ้น
Couldn't find resource
ตรวจ
Folder
fxmanifest.lua
ชื่อ Resource
Folder ซ้อน
refresh
ถ้าขึ้น
Missing dependency
ตรวจ Resource ที่ต้องพึ่งและ Load Order
ถ้าขึ้น
No such export
ตรวจ
Dependency Version
Resource Name
Framework Version
Load Order
ถ้าเป็น SQL Error ให้ตรวจ Database และ Schema
ถ้า Manifest Require
/onesync
/server
/gameBuild
/policy
/native
ต้องทำให้ Server ผ่าน Requirement เหล่านั้นก่อน
สำหรับ Production Server comsiam แนะนำให้เพิ่ม Resource ทีละตัวหรือทีละกลุ่ม ไม่ควร Copy Script หลายสิบตัวลง resources/ แล้ว ensure ทั้งหมดพร้อมกัน
Workflow ที่เหมาะสมคือ
Backup
↓
เพิ่ม Resource
↓
refresh
↓
ensure
↓
อ่าน Console
↓
ทดสอบ Client
↓
ทดสอบ Database
↓
เพิ่ม ensure ลง server.cfg
↓
ค่อยติดตั้ง Resource ถัดไป
อีกเรื่องที่ควรเลิกทำตาม Tutorial เก่าคือเพิ่ม
lua54 'yes'
เพื่อหวังแก้ Resource เพราะ Cfx.re ปัจจุบันระบุว่า Setting นี้ Deprecated แล้ว และ Lua Scripts ใช้ Lua 5.4 เป็นมาตรฐานมาตั้งแต่เดือนมิถุนายน 2025
เมื่อผู้ดูแล FiveM Server ของ comsiam ใช้วิธีอ่าน Error จากต้นทางและแก้ Dependency ตามลำดับ จะสามารถหาสาเหตุ Resource Start ไม่ขึ้นได้เร็วกว่าการ Restart, Clear Cache หรือ Reinstall FXServer แบบสุ่มอย่างมาก
Comments
Post a Comment