กันโปร FiveM ขั้นพื้นฐานแบบยังไม่มี anticheat — ตั้งค่า server.cfg ปิดช่องปั๊มเงิน กันหนีแบน (เซิฟถึง 2,000 คน)
คู่มือกันโปร FiveM ที่ทำได้ฟรีก่อนซื้อ anticheat: ตั้งค่า server.cfg (sv_entityLockdown, sv_filterRequestControl, ปิด networked sounds/phone explosions, sv_scriptHookAllowed) บล็อก game event ยัด/ถอดปืนและเตะออกจากรถ เขียนสคริปเศรษฐกิจให้เซิฟเป็นคนคิดเงินกันปั๊มเงิน/ดูป ล็อกก่อนรีสตาร์ท ผูก Discord + Rockstar License กันหนีแบน และเก็บ log ให้พอรับเมือง 2,000 คน
คนเปิดเซิฟใหม่มักถามคำแรกว่า "ต้องซื้อ anticheat ตัวไหน" แต่ความเสียหายส่วนใหญ่ในเมือง FiveM ไม่ได้มาจาก menu โกงที่ anticheat จับ มันมาจากสองเรื่อง: ค่าตั้งเซิฟที่ปล่อยให้ client ทำอะไรก็ได้ และ สคริปที่เชื่อตัวเลขจากเครื่องผู้เล่น ทั้งสองเรื่องแก้ได้ฟรี วันนี้ ไม่ต้องมี anticheat สักตัว
บทความนี้คือ 5 ชั้นที่ควรทำก่อนจ่ายเงินซื้ออะไร ใช้ได้ตั้งแต่เซิฟ 32 คนจนถึงเมือง 2,048 คน และขอพูดตรง ๆ ก่อน: ไม่มีเซิฟไหนกันโปรได้ 100% เป้าหมายจริงคือทำให้การโกง "ทำยาก ได้ผลน้อย และทิ้งหลักฐาน" ที่ 2,000 คน คนโกงแค่ 1% คือ 20 คนออนไลน์พร้อมกัน ถ้าแต่ละคนปั๊มเงินได้ เศรษฐกิจทั้งเมืองพังภายในสัปดาห์
ภาพรวม 5 ชั้น
| ชั้น | กันอะไร | ใช้อะไร |
|---|---|---|
| 1. โครงสร้างเซิฟ | เสกรถ/NPC/พร็อพ ยึดรถคนอื่น สแปมเสียงและระเบิด ScriptHook | convar ใน server.cfg |
| 2. เศรษฐกิจ | ปั๊มเงิน ปั๊มของ ดูปไอเทม | โค้ดฝั่งเซิฟในสคริป |
| 3. กันก่อกวนผู้เล่นอื่น | ยัดปืน ถอดปืน เตะออกจากรถ ระเบิดมั่ว | block_net_game_event, explosionEvent |
| 4. ยืนยันตัวตน | หนีแบน สร้างบัญชีใหม่ บัญชีซ้ำ | playerConnecting + identifier + token |
| 5. log และหลักฐาน | รู้ว่าเกิดอะไร ใครทำ ตัดสินได้ | txAdmin, log ลงฐานข้อมูล, screenshot-basic |
ชั้น 1 และ 3 ใช้เวลาไม่ถึงชั่วโมง ชั้น 2 คือชั้นที่ปิดความเสียหายได้มากที่สุดและไม่มี anticheat ตัวไหนทำแทนได้
ชั้น 1: server.cfg — 10 นาที ปิดช่องที่ใหญ่ที่สุด
sv_entityLockdown relaxed
sv_filterRequestControl 1
sv_enableNetworkedSounds false
sv_enableNetworkedPhoneExplosions false
sv_scriptHookAllowed false
sv_endpointPrivacy true
sv_entityLockdownคุมว่า client สร้าง entity เองได้แค่ไหน ค่าเริ่มต้นคือinactive(สร้างอะไรก็ได้) ซึ่งเป็นทางที่ menu โกงใช้เสกรถ NPC และพร็อพrelaxedบล็อก entity ที่สคริปฝั่ง client สร้าง แต่ยังให้รถและคนเดินถนนของเกมเกิดปกติ เหมาะกับเมือง RP ส่วนใหญ่strictคือ client สร้างอะไรไม่ได้เลย- ข้อแลก: สคริปที่สร้างรถหรือพร็อพฝั่ง client (โรงรถ งานอาชีพ พร็อพท่าทาง โทรศัพท์ในมือ) จะสร้างไม่ขึ้น ต้องย้ายไปสร้างฝั่งเซิฟ เช่น
CreateVehicleServerSetterทดสอบบนเซิฟ dev ที่ลง resource ชุดเดียวกันก่อนเสมอ ถ้ายังย้ายไม่หมด ตั้งเฉพาะบาง routing bucket ด้วยSetRoutingBucketEntityLockdownModeไปก่อน
- ข้อแลก: สคริปที่สร้างรถหรือพร็อพฝั่ง client (โรงรถ งานอาชีพ พร็อพท่าทาง โทรศัพท์ในมือ) จะสร้างไม่ขึ้น ต้องย้ายไปสร้างฝั่งเซิฟ เช่น
sv_filterRequestControlกันการ "ขอคุม" entity ที่ผู้เล่นคนอื่นคุมอยู่ ซึ่งเป็นวิธียึดรถคนอื่นหรือลากรถทั้งเมือง โหมด1บล็อกการขอคุมรถที่มีคนอยู่และเกิดมานานกว่า 30 วินาที ปลอดภัยที่สุดสำหรับเริ่ม โหมด2–4กันได้กว้างขึ้น แต่สคริปช่าง ลากรถ หรืออุ้มคนบางตัวที่ต้องคุม entity ของคนอื่นจะพัง ทดสอบก่อนขยับsv_enableNetworkedSounds falseและsv_enableNetworkedPhoneExplosions falseปิดสองช่องที่เอกสารของ Cfx.re ระบุว่าคนไม่หวังดีใช้บ่อย คือเสียงที่ยิงใส่ทั้งเซิฟและระเบิดผ่านโทรศัพท์ (ค่าหลังเป็นfalseอยู่แล้ว ตั้งไว้ให้ชัดว่าไม่มีใครเปิด)sv_scriptHookAllowed falseห้าม client ที่ลง ScriptHook เข้าเซิฟ ค่าเริ่มต้นก็เป็นfalseสิ่งสำคัญคือ อย่าเปิด แม้ผู้เล่นจะขอsv_endpointPrivacy trueซ่อน IP ผู้เล่นจากข้อมูลสาธารณะของเซิฟ ลดโอกาสโดนยิง DDoS รายคนsv_pureLevel(ทางเลือก)1บล็อกไฟล์เกมที่ถูกแก้ ยกเว้นเสียงและม็อดกราฟิกที่รู้จัก2บล็อกทั้งหมด ระดับ 2 ทำให้คนที่ลงม็อดกราฟิกเข้าไม่ได้ เลือกตามกลุ่มผู้เล่นของคุณ
สองเรื่องที่ไม่ใช่ convar แต่ควรทำพร้อมกัน:
- ไม่ตั้ง
rcon_passwordถ้าไม่ได้ใช้ RCON และให้สิทธิ์ command ผ่านadd_aceเฉพาะgroup.adminห้ามมี command ที่ให้ทุกคนใช้แล้วรันโค้ดได้ - ฐานข้อมูลห้ามเปิดพอร์ตสู่อินเทอร์เน็ต และแผง txAdmin ใช้บัญชีแยกต่อแอดมิน ห้ามแชร์บัญชี master
ตั้งค่าใน
server.cfgแล้ว restart เซิฟทั้งตัวผ่าน txAdmin ไม่ใช่สั่งrestartresource บางค่าอ่านตอนเปิดเซิฟเท่านั้น
ชั้น 2: เศรษฐกิจ — ชั้นที่ไม่มี anticheat ตัวไหนทำแทนได้
menu โกงทุกตัวยิง event ของสคริปคุณได้ตรง ๆ พร้อมค่าอะไรก็ได้ ถ้า event ขายของรับ "จำนวน" และ "ราคา" จาก client คนโกงก็แค่ส่ง 999999 anticheat ที่ดีที่สุดก็ไม่รู้ว่าค่านั้นผิด เพราะมันเป็น event ที่ถูกต้องของสคริปคุณเอง
แบบที่เจอบ่อยและพัง:
RegisterNetEvent('fishing:sell', function(count, price)
local xPlayer = ESX.GetPlayerFromId(source)
xPlayer.addMoney(count * price)
end)
แบบที่เซิฟเป็นคนคิดทุกอย่าง:
local SELL_POINT = vector3(-1845.0, -1195.0, 14.3)
local PRICE = 120
local COOLDOWN_MS = 2000
local busy, lastSell = {}, {}
RegisterNetEvent('fishing:sell', function()
local src = source
if economyLocked or busy[src] then return end
local now = GetGameTimer()
if lastSell[src] and now - lastSell[src] < COOLDOWN_MS then return end
local xPlayer = ESX.GetPlayerFromId(src)
if not xPlayer or xPlayer.job.name ~= 'fisherman' then return end
if #(GetEntityCoords(GetPlayerPed(src)) - SELL_POINT) > 5.0 then return end
local item = xPlayer.getInventoryItem('fish')
if not item or item.count < 1 then return end
busy[src] = true
lastSell[src] = now
xPlayer.removeInventoryItem('fish', item.count)
xPlayer.addMoney(item.count * PRICE)
MySQL.insert.await('INSERT INTO economy_log (identifier, action, amount) VALUES (?, ?, ?)',
{ xPlayer.identifier, 'fishing:sell', item.count * PRICE })
busy[src] = nil
end)
AddEventHandler('playerDropped', function()
busy[source], lastSell[source] = nil, nil
end)
หลักที่อยู่ในโค้ดนี้ ใช้กับทุกสคริปที่ขยับเงินหรือไอเทม:
- client ส่งมาแค่ "อยากทำอะไร" ราคา จำนวน และรางวัลคำนวณที่เซิฟทั้งหมด
- เช็กซ้ำที่เซิฟทุกครั้ง ระยะจากจุด อาชีพ ของในกระเป๋า คูลดาวน์ ฝั่ง client เช็กไว้แค่ให้ UI สวย ไม่ได้กันอะไร
- หักของก่อน ให้ของทีหลัง ถ้าสลับกัน event ที่ยิงซ้อนได้เงินก่อนที่ของจะหาย
- ล็อกต่อผู้เล่น ทุก handler ที่มี
await(เช่นรอฐานข้อมูล) เปิดช่องให้ event ตัวที่สองแทรกเข้ามากลางทาง นี่คือที่มาของดูปส่วนใหญ่ - จำกัดความถี่ คนปกติขายของไม่กี่ครั้งต่อนาที event ที่ถูกยิงรัวคือสัญญาณชัดที่สุด
ล็อกเศรษฐกิจก่อนรีสตาร์ท
ช่วงก่อนเซิฟรีสตาร์ทคือช่องดูปใหญ่ที่สุด ของที่โอนให้กันแล้วบันทึกไม่ทันจะกลับมาทั้งสองฝั่ง txAdmin ส่ง event เตือนก่อนรีสตาร์ทตามเวลาที่ตั้งไว้ ใช้มันหยุดธุรกรรมแล้วสั่งบันทึกผู้เล่นทั้งหมดด้วยฟังก์ชันของ framework
economyLocked = false
AddEventHandler('txAdmin:events:scheduledRestart', function(eventData)
if eventData.secondsRemaining <= 60 then
economyLocked = true
end
end)
ESX Legacy Core — X3D Build (ฟรี) ทำเรื่องนี้ให้ใน core และมี audit log ทุกการเปลี่ยนเงิน/ไอเทม ส่ง Discord webhook
มินิเกมต้องยืนยันที่เซิฟ
มินิเกมงัดกุญแจ ตกปลา แฮ็ก ถ้า client ส่ง "ผ่านแล้ว" มาแล้วเซิฟให้รางวัลเลย คนโกงก็ส่ง "ผ่านแล้ว" ได้ทุกวินาที เซิฟต้องรู้ว่าใครเริ่มมินิเกมเมื่อไหร่ ปฏิเสธผลที่มาเร็วเกินกว่าคนเล่นจริงทำได้ และเลือกรางวัลเองที่เซิฟ
ก่อนลงสคริปใหม่ทุกตัว เปิดไฟล์ฝั่ง server หา RegisterNetEvent แล้วดูว่า handler รับเงินหรือจำนวนจาก client ไหม ถ้ารับ อย่าลง อ่านเพิ่มในวิธีเช็คสคริป FiveM ปลอดภัย และเลือกร้านตามซื้อสคริป FiveM ที่ไหนดี
ชั้น 3: กันก่อกวนผู้เล่นอื่น
menu โกงใช้ game event ของ GTA สั่งผลกับผู้เล่นคนอื่น เช่น ยัดปืน ถอดปืนทั้งตัว หรือล้างท่าทางจนหลุดจากรถ FXServer บล็อก game event เหล่านี้ได้ทั้งเซิฟด้วย block_net_game_event
block_net_game_event "GIVE_WEAPON_EVENT"
block_net_game_event "REMOVE_WEAPON_EVENT"
block_net_game_event "REMOVE_ALL_WEAPONS_EVENT"
block_net_game_event "NETWORK_CLEAR_PED_TASKS_EVENT"
ระบบปืนที่ทำผ่าน inventory ฝั่งเซิฟไม่กระทบ เพราะไม่ได้ใช้ event เหล่านี้ยิงใส่ผู้เล่นคนอื่น ส่วนสคริปตำรวจบางตัวที่ล้างท่าของคนอื่นจากฝั่ง client (ใส่กุญแจมือ ลาก) อาจต้องแก้ ทดสอบบนเซิฟ dev ก่อน และเหมือนชั้น 1 คือต้อง restart เซิฟทั้งตัว
ระเบิด: เก็บ log ก่อน แล้วค่อยบล็อก
local allowedExplosion = {}
local enforce = false
AddEventHandler('explosionEvent', function(sender, ev)
if allowedExplosion[ev.explosionType] then return end
print(('[explosion] %s (%s) type=%d'):format(GetPlayerName(sender), sender, ev.explosionType))
if enforce then CancelEvent() end
end)
เปิดไว้แบบ enforce = false หนึ่งสัปดาห์ จดประเภทระเบิดที่เกิดจากการเล่นปกติ (รถระเบิด ปั๊มน้ำมัน สคริปปล้นที่ใช้ระเบิด) ใส่ใน allowedExplosion แล้วค่อยเปิด enforce = true ถ้าบล็อกทันทีโดยไม่เก็บ log ก่อน คุณจะทำให้สคริปปล้นของตัวเองพัง
ถ้ายังเปิด entity lockdown ไม่ได้
ระหว่างย้ายสคริปไปสร้าง entity ฝั่งเซิฟ ใช้ entityCreating ยกเลิกโมเดลที่ไม่ควรมีในเมืองไปก่อน:
local blockedModels = {
[`rhino`] = true,
[`hydra`] = true,
[`lazer`] = true,
}
AddEventHandler('entityCreating', function(entity)
if blockedModels[GetEntityModel(entity)] then
CancelEvent()
end
end)
อาวุธหนัก (RPG, Minigun, Railgun) ไม่ควรอยู่ในระบบไอเทมของเมืองเลย ถ้ามีคนใช้ แปลว่าได้มาผิดทาง เก็บ log ส่งแอดมิน
ชั้น 4: ยืนยันตัวตนและกันหนีแบน
แบนแล้วคนโกงกลับมาด้วยบัญชีใหม่ใน 5 นาที แปลว่าการแบนไม่มีความหมาย ด่านแรกอยู่ตอนเชื่อมต่อ:
AddEventHandler('playerConnecting', function(name, setKickReason, deferrals)
local src = source
deferrals.defer()
Wait(0)
local license = GetPlayerIdentifierByType(src, 'license')
local discord = GetPlayerIdentifierByType(src, 'discord')
if not license or not discord then
return deferrals.done('กรุณาเปิด Discord และเข้าสู่ระบบ Rockstar ก่อนเข้าเซิฟ')
end
if isBanned(license) or isBanned(discord) then
return deferrals.done('บัญชีนี้ถูกแบน ติดต่อทีมงานผ่าน Discord')
end
for i = 0, GetNumPlayerTokens(src) - 1 do
if isBanned(GetPlayerToken(src, i)) then
return deferrals.done('เครื่องนี้ถูกแบน ติดต่อทีมงานผ่าน Discord')
end
end
deferrals.done()
end)
isBanned คือฟังก์ชันเช็กฐานข้อมูลแบนของคุณเอง สิ่งที่โค้ดนี้ทำ:
- บังคับ Discord + Rockstar License คนที่ไม่มี identifier ครบเข้าไม่ได้ แบนแล้วต้องสร้างใหม่หลายบัญชีพร้อมกัน
- แบนด้วย token ของเครื่อง
GetPlayerTokenคือค่าที่ผูกกับฮาร์ดแวร์ ใช้แบนระดับเครื่องแบบพื้นฐานได้ ตอนแบน เก็บทั้ง identifier และ token ทุกตัวลงฐานข้อมูล - Account Lock ผูกชุด license + discord (+ steam ถ้าใช้) กับตัวละครตั้งแต่ครั้งแรก ถ้า license เดิมเข้ามาพร้อม discord คนละบัญชี ให้ปฏิเสธและให้ติดต่อแอดมิน
Discord whitelist (ต้องอยู่ใน Discord ของเซิฟถึงเข้าได้) ทำได้ด้วยการเรียก Discord API ผ่าน bot ตอน playerConnecting เก็บ bot token ใน server.cfg ด้วย set เท่านั้น ห้ามใช้ setr (ส่งไปทุก client) หรือ sets (แสดงในข้อมูลสาธารณะของเซิฟ)
ร้านเน็ตต้องระวัง หลายคนใช้เครื่องเดียวกัน token จึงซ้ำกันได้ บัญชีที่ token ตรงกับคนโดนแบน ให้ส่งแอดมินตรวจ อย่าแบนอัตโนมัติจาก token อย่างเดียว เช่นเดียวกับบัญชีซ้ำ (หลาย license บนเครื่องเดียว) ใช้เป็นหลักฐานประกอบ ไม่ใช่คำตัดสิน
ไม่อยากเขียนเอง: X3D Admin Panel (ฟรี) แบนด้วย identifier + token ของเครื่องให้ มีฐานข้อมูลผู้เล่นทุกคนที่เคยเข้าพร้อมบัญชีที่ใช้เครื่องร่วมกัน และนำเข้าแบนจาก txAdmin ได้ ค่าเริ่มต้นจะเพิ่มบัญชีใหม่จากเครื่องเดิมเข้าแบนเดิม (spreadOnEvade ใน config/config.sanctions.lua) ถ้าผู้เล่นมาจากร้านเน็ตเยอะ ให้พิจารณาตรงนี้ตามข้อข้างบน
ชั้น 5: log และหลักฐาน
ไม่มี anticheat ไม่ได้แปลว่ามองไม่เห็น เครื่องมือฟรีที่ควรใช้ให้ครบ:
- txAdmin แบน เตือน ประวัติผู้เล่น และ action log ของแอดมินในตัว แบนผ่าน txAdmin ทุกครั้งเพื่อให้มีบันทึกว่าใครแบนใคร เพราะอะไร (ตั้งค่าครบในคู่มือ txAdmin)
- X3D Admin Panel (ฟรี) เก็บ log เงิน ไอเทม อาชีพ แชต เข้า/ออก และทุก action ของแอดมินลงฐานข้อมูล ค้นรายคนได้ในแผงเดียว แอดมินทำกับยศเท่ากันหรือสูงกว่าไม่ได้
- log เงินและไอเทมลงฐานข้อมูลทุกครั้ง แล้วส่ง Discord เฉพาะรายการผิดปกติ webhook ของ Discord มี rate limit ที่ 2,000 คนส่งทุกรายการไม่ไหว และไม่มีใครอ่านทัน
- screenshot-basic resource ของ Cfx.re ให้แอดมินขอภาพหน้าจอผู้เล่นที่สงสัยได้ เก็บไว้เป็นหลักฐานก่อนตัดสิน
- ทีมแอดมิน spectate ผ่าน txAdmin ได้ เมือง 2,000 คนต้องมีคนดู log ผลัดกะ ไม่ใช่ดูเฉพาะตอนมีคนแจ้ง
เรื่องที่ไม่ควรประกาศ
ประกาศได้ว่าเซิฟ "มีระบบป้องกัน" แต่ อย่าประกาศรายละเอียดการตรวจจับ ค่าเกณฑ์ หรือชื่อ resource ป้องกัน ในเว็บหรือ Discord สาธารณะ ข้อมูลพวกนี้คือคู่มือหลบให้คนทำโปร และ อย่าเขียนว่า "กันโปร 100%" วันที่มีคนโดนโปรแล้วเจอคำนี้ เซิฟเสียความน่าเชื่อถือทันที
ที่ 2,000 คน อะไรเปลี่ยน
- FXServer มี rate limiter ของ net event ในตัว (
rateLimiter_netEvent_*,rateLimiter_netEventFlood_*) ค่าเริ่มต้นใช้ได้กับเซิฟส่วนใหญ่ ถ้าผู้เล่นปกติโดนตัดเพราะ event flood ให้หาสคริปที่ยิง event ถี่เกินแล้วแก้ที่สคริป แทนการขยายลิมิตให้คนโกงใช้ด้วย - entity lockdown สำคัญขึ้น client ที่ถูกแก้ 20 เครื่องเสก entity พร้อมกันพอทำให้ทั้งเมืองกระตุก
- log ต้องลงฐานข้อมูล ไม่ใช่ไฟล์หรือ webhook ทุกรายการ และต้องค้นได้ตาม identifier
- เช็ก Discord ตอนเข้าเซิฟต้องมี cache หลังรีสตาร์ท คน 1,000 กว่าคนกดเข้าพร้อมกัน เรียก Discord API ทีละคนโดน rate limit คนรอคิวค้าง
- ทีมแอดมินคือส่วนหนึ่งของระบบป้องกัน ไม่มีเครื่องมือไหนแทนคนที่ดู log และตัดสินด้วยหลักฐาน
เมื่อไหร่ถึงควรมี anticheat
ทำครบ 5 ชั้นแล้ว สิ่งที่ยังเหลือคือการโกงฝั่ง client ล้วน ๆ: god mode, speed hack, noclip, ล่องหน, aimbot พวกนี้ต้องมีตัวตรวจที่รันในเครื่องผู้เล่น ซึ่งคือหน้าที่ของ anticheat เทียบตัวฟรีกับตัวเสียเงินได้ในAnticheat FiveM ฟรี vs เสียเงิน
X3D Anti-Cheat ออกแบบให้ทำงานบนฐานนี้: เก็บภาพหน้าจอเป็นหลักฐานส่ง Discord แจ้งแอดมินในเมือง แบน HWID ผูกบัญชี Steam + Discord และให้คนตัดสินเคสที่ไม่ชัด ทดลองฟรี 7 วันบนเซิฟจริง และถ้าอยากเห็นว่ารอบช่วงที่ถูกจับมีอะไรเกิดขึ้น X3D Replay (BETA, ESX) ให้แอดมินดูย้อนหลังผู้เล่นในเกมพร้อมปุ่มที่กด
คำถามที่พบบ่อย
ตั้ง sv_entityLockdown relaxed แล้วรถจากโรงรถหรือพร็อพในมือหาย ทำยังไง — สคริปนั้นสร้าง entity ฝั่ง client ต้องแก้ให้สร้างที่เซิฟ หรือเปลี่ยนไปใช้สคริปที่รองรับ lockdown ระหว่างแก้ ให้ตั้ง lockdown เฉพาะบาง routing bucket หรือใช้ entityCreating บล็อกโมเดลต้องห้ามไปก่อน
block_net_game_event ทำให้ระบบยึดปืนของตำรวจพังไหม — ระบบที่ยึดผ่าน inventory ฝั่งเซิฟไม่พัง สคริปที่ถอดปืนคนอื่นจากฝั่ง client ตรง ๆ จะใช้ไม่ได้ ซึ่งเป็นช่องเดียวกับที่ menu โกงใช้ ควรแก้สคริปนั้นอยู่แล้ว
ร้านเน็ตใช้เครื่องเดียวกันหลายคน แบน token จะโดนคนอื่นไหม — โดนได้ ใช้ token เป็นหลักฐานประกอบและส่งแอดมินตรวจ ไม่ใช่แบนอัตโนมัติ
ทำครบ 5 ชั้นแล้วกันโปรได้ 100% ไหม — ไม่มีเซิฟไหนทำได้ 5 ชั้นนี้ปิดช่องที่ทำความเสียหายมากที่สุด (ปั๊มเงิน เสกของ ก่อกวนคนอื่น หนีแบน) ส่วนที่เหลือคือ anticheat และทีมแอดมิน
ไม่มีเงินซื้อสคริปเลย เริ่มตรงไหน — ใช้ core ที่ล็อกเศรษฐกิจก่อนรีสตาร์ทและสคริปที่ตรวจฝั่งเซิฟ ซึ่งแจกฟรีอยู่ในบทความแจกสคริป FiveM ฟรี และวางงบเปิดเซิฟตามงบเปิดเซิฟ FiveM