เอกสาร

X3D Carry (อุ้มศพ)

ระบบอุ้มผู้เล่นฟรี — อุ้มศพ แย่งศพ อุ้มพาดบ่า ขี่หลัง ศพอุ้มได้ไม่ต้องขอ คนเป็นต้องขออนุญาตก่อน เซิร์ฟเวอร์ตัดสินทุกอย่าง UI ภาษาไทย

ซื้อ / รับฟรีตั้งค่า config

การติดตั้ง

  1. วางโฟลเดอร์ x3d_carry ใน resources/
  2. เพิ่มใน server.cfg
ensure x3d_carry

# ให้แอดมินอุ้มได้โดยไม่ต้องขอ (ใช้ได้ทุกเฟรมเวิร์ก)
add_ace group.admin x3d_carry.force allow

เสร็จแล้ว ไม่ต้องรัน SQL ไม่ต้องลง resource อื่น UI ถูก build มาให้แล้วใน web/build ไม่ต้องลง Node.js

ต้องใช้ FXServer artifacts 4752 ขึ้นไป (ระบบใช้ state bag)

วิธีเล่น

ปุ่ม / คำสั่ง ทำอะไร
F9 หรือ /x3dcarry เปิดเมนูอุ้ม
↑ ↓ เลื่อนเมนู
Enter เลือก
Backspace ปิดเมนู
/x3dcarry dragdeath อุ้มศพ (ข้ามเมนู)
/x3dcarry carrypeople อุ้มพาดบ่า (ข้ามเมนู)
/x3dcarry piggyback ขี่หลัง (ข้ามเมนู)

กำลังอุ้มอยู่ เมนูจะเหลือรายการเดียวคือท่าที่ใช้อยู่ เลือกซ้ำ = วางลง

คนถูกอุ้มจะขยับเอง ขึ้นรถ หรือใช้อาวุธไม่ได้ จนกว่าจะถูกวางลง

อุ้มศพ แย่งศพ ศพอุ้มได้เสมอโดยไม่ต้องขอและไม่ต้องมีสิทธิ์ ถ้าคนอุ้มตาย ห่างเกิน Config.MaxDist หรือขึ้นรถ เซิร์ฟเวอร์ปล่อยศพภายใน 2 วินาที ใครก็อุ้มต่อได้ ศพที่มีคนอุ้มอยู่ดึงไปไม่ได้

ผูกปุ่มให้แต่ละท่าเองได้ที่ ตั้งค่า FiveM > Key Bindings > FiveM

ตั้งค่า

แก้ที่ config.lua ทั้งไฟล์มีคำอธิบายภาษาไทย

ค่า ค่าเริ่มต้น ความหมาย
Config.Locale 'th' ภาษาในเกม 'th' หรือ 'en' แก้ข้อความเองได้ที่ locales.lua
Config.Command 'x3dcarry' ชื่อคำสั่ง อย่าตั้งเป็นชื่อสั้นที่สคริปต์อื่นอาจจองไว้
Config.MenuKey 'F9' ปุ่มเปิดเมนู '' = ไม่ผูกปุ่ม
Config.Range 3.0 ระยะที่กดอุ้มได้
Config.MaxDist 4.5 ห่างกันเกินนี้ขณะอุ้ม เซิร์ฟเวอร์ปล่อยให้เอง
Config.RequestTTL 15000 คำขออุ้มค้างได้กี่ ms
Config.Cooldown 2000 กันกดรัว ขออุ้มได้ทุกกี่ ms
Config.CarrierDelay 500 คนอุ้มหน่วงกี่ ms ก่อนเริ่มท่า ต่ำกว่านี้ท่าคู่จะเหลื่อมกัน
Config.ForceAce 'x3d_carry.force' ACE permission ที่อุ้มได้โดยไม่ต้องขอ false = ปิด
Config.ForceGroups admin, superadmin, mod กลุ่มแอดมินที่อุ้มได้เลย (ESX)
Config.ForceJobs police, ambulance อาชีพที่อุ้มได้เลย (ESX)
Config.Corpse — ค่ากันตายซ้ำและการล้มลงพื้น

เพิ่มท่าอุ้ม

ใส่ใน Config.Styles แล้วรีสตาร์ท resource เมนูกับคำสั่งสร้างให้อัตโนมัติ

Config.Styles.bridal = {
    order   = 4,
    key     = '',              -- '' = ไม่ผูกปุ่ม ผู้เล่นตั้งเองได้
    th      = 'อุ้มเจ้าสาว',
    en      = 'Bridal Carry',
    target  = 'alive',         -- 'dead' | 'alive' | 'any'
    offset  = vector3(0.0, 0.42, 0.05),
    heading = 0.0,
    carrier = { dict = 'anim@dict', anim = 'carrier_anim', flag = 49 },
    victim  = { dict = 'anim@dict', anim = 'victim_anim',  flag = 33 },
}

flag = 49 (คนอุ้ม) และ flag = 33 (คนถูกอุ้ม) ใช้ได้กับอนิเมชันคู่ส่วนใหญ่ ท่าที่ตั้ง target = 'dead' จะปลุกร่างปลอมให้อัตโนมัติ

ใช้กับเฟรมเวิร์กอื่น

ไฟล์ แก้เมื่อ
addons/framework/client.lua เช็กว่าผู้เล่นตายยังไง (ESX / standalone)
addons/framework/extra_client.lua Framework.OnCorpseCarried() / OnCorpseDropped() ใส่คำสั่งกันตายซ้ำของระบบหิวกระหายเซิร์ฟคุณ
addons/framework/server.lua และ extra_server.lua วิธีเช็กสิทธิ์อุ้มโดยไม่ต้องขอ (Framework.CanForce)
addons/notify/client.lua ใช้ okokNotify mythic หรือระบบแจ้งเตือนของตัวเอง

เรียกจาก resource อื่น

-- client
exports['x3d_carry']:IsCarried()              --> true ถ้ากำลังถูกอุ้ม
exports['x3d_carry']:IsCarrying()             --> true ถ้ากำลังอุ้มคนอื่น
exports['x3d_carry']:IsFakeAlive()            --> true ถ้าร่างถูกปลุกปลอมอยู่

-- server
exports['x3d_carry']:IsCarried(src)
exports['x3d_carry']:IsCarrying(src)
exports['x3d_carry']:StopCarry(src)           --> ปล่อยทันที

แก้ UI เอง

UI เป็น Nuxt 4 อยู่ใน web/ ถ้าไม่แก้ไม่ต้องทำอะไร

cd web
npm install
npm run build

ต้อง build ทุกครั้งหลังแก้ NUI โหลดจาก web/build เท่านั้น

ปัญหาที่พบบ่อย

อาการ สาเหตุ
กด F9 แล้วไม่มีอะไรเกิดขึ้น มี resource อื่นใช้ F9 อยู่ เปลี่ยนที่ ตั้งค่า FiveM > Key Bindings > FiveM
พิมพ์ /x3dcarry แล้วขึ้นว่าไม่รู้จักคำสั่ง resource ไม่ได้สตาร์ท เช็ก ensure x3d_carry ใน server.cfg
ศพยืนแข็งทื่อตอนวาง มีสคริปต์อื่นตั้ง SetPedCanRagdoll(false) ค้างไว้ หรือ Config.Corpse.ragdollOnDrop ถูกปิด
ศพตายซ้ำหรือเด้งกลับหน้าจอตาย ระบบหิวกระหายของเซิร์ฟยังฆ่าซ้ำ เพิ่มคำสั่งดันค่าใน Framework.OnCorpseCarried()
ขี่หลังลอย หรือพาดบ่าหลุด Config.CarrierDelay ต่ำไป ลองเพิ่มเป็น 700 ถึง 1000
แอดมินยังต้องขออนุญาต ยังไม่ได้ใส่ add_ace group.admin x3d_carry.force allow
ดูหน้าสินค้า