07/10/2026 · อัปเดต 11/10/2026

มินิเกม FiveM ฟรี: งัดล็อก เจาะตู้เซฟ เรียกด้วย export บรรทัดเดียว และวิธีให้รางวัลแบบไม่โดนโกง

สคริปมินิเกม FiveM ฟรีจาก X3D: X3D Lockpick งัดล็อกด้วย WASD, X3D Safe Cracking หมุนเจาะตู้เซฟไม่ต้องพึ่ง ESX, X3D House Robbery งัดบ้านที่ใช้ทั้งสองตัว เรียกด้วย export บรรทัดเดียว ตั้งความยากเอง กันกดปุ่มอื่นระหว่างเล่น พร้อมโค้ดฝั่งเซิร์ฟเวอร์ที่กันคนส่งผลว่าผ่านเอง

มินิเกมทำให้งานในเมืองมีจังหวะ งัดประตู เจาะตู้เซฟ ปล้นบ้าน แต่สคริปมินิเกมส่วนใหญ่มีปัญหาเดียวกัน: ต้องต่อ callback หลายชั้น ไม่กันปุ่มอื่นระหว่างเล่น และที่หนักที่สุด ให้รางวัลตามที่เครื่องผู้เล่นบอกว่าผ่าน ซึ่ง menu โกงส่งได้ทุกวินาที

บทความนี้รวมมินิเกมฟรีของ X3D และวิธีต่อเข้ากับสคริปของคุณให้ปลอดภัย

สคริปต์ที่เกี่ยวข้อง

มินิเกมฟรีที่ใช้ได้เลย

สคริป เล่นยังไง เรียกใช้ ต้องมี
X3D Lockpick หาจุดด้วย WASD ใกล้หรือไกล กด ESC ยอมแพ้ exports['x3d_lockpick']:miniGameLockPick(4) ไม่ผูก framework
X3D Safe Cracking หมุนหน้าปัดด้วย A/D ไฟติดตรงร่องแล้วกด E exports['x3d_safe']:createSafe(4) ไม่มี dependency เลย ไม่ต้องใช้ ESX
X3D House Robbery งัดประตู ค้นห้อง เจาะตู้เซฟ เดินออก ใช้สองตัวบน (ลงแยก) หรือ ox_lib ESX / standalone

ทั้งสามตัวฟรี ภาษาไทย/อังกฤษ

X3D Lockpick: งัดล็อกได้ทุกอย่าง

local ok = exports['x3d_lockpick']:miniGameLockPick(4)
if ok then
    -- เปิดประตู สตาร์ทรถ เปิดตู้
end
  • ความยากคือจำนวนหมุด ช่วงที่ใช้ได้จริงคือ 3–6 เช่น ประตูบ้าน 3 ตู้เซฟ 5 ห้องเก็บของ 6
  • เรียกแล้วรอผลในบรรทัดเดียว ไม่ต้องต่อ callback หรือ event
  • ตายระหว่างงัด หรือ resource หยุด มินิเกมปิดเองและคืนค่า false ผู้เล่นไม่ค้างหน้าจอ

X3D Safe Cracking: เจาะตู้เซฟแบบ GTA

local ok = exports['x3d_safe']:createSafe(4)
if ok then
    -- ให้ของในตู้
end
  • ความยากคือจำนวนล็อก เช่น ตู้บ้าน 3 ตู้ร้าน 4 ตู้ธนาคาร 6
  • ใช้ texture หน้าปัดและเสียงหมุนของเกมเอง (MPSafeCracking, SAFE_CRACK) ไม่ต้องสตรีมไฟล์เพิ่มสักไบต์
  • ไม่มี dependency ใช้ได้กับ ESX, QBCore หรือ standalone

กันปุ่มอื่นระหว่างเล่น

ทั้งสองตัวตั้ง state bag ให้อ่านได้จากทุกสคริป:

if LocalPlayer.state.minigame then return end

ใส่บรรทัดนี้ในปุ่มเปิดกระเป๋า เมนู หรือโทรศัพท์ ผู้เล่นจะเปิด UI ซ้อนระหว่างงัดไม่ได้ ซึ่งเป็นทั้งช่องดูปและตัวกินเฟรม X3D Progress Bar ใช้ state bag ตัวเดียวกัน ถ้าอยากทำ HUD เอง ฟัง event x3d_lockpick:active หรือ x3d_safe:active ได้

ให้รางวัลแบบไม่โดนโกง

มินิเกมรันในเครื่องผู้เล่นเสมอ ผลว่า "ผ่าน" จึงเชื่อไม่ได้ทั้งหมด คนโกงยิง event ให้รางวัลของคุณตรง ๆ ได้โดยไม่เล่นเลย กติกาคือเซิร์ฟเวอร์เป็นคนเปิดรอบ และเป็นคนตัดสินว่ารอบนั้นให้รางวัลได้ไหม:

-- server
local attempts = {}

RegisterNetEvent('myrob:start', function(spotId)
    local src = source
    if not nearSpot(src, spotId) or onCooldown(spotId) then return end
    attempts[src] = { spot = spotId, at = os.time() }
    TriggerClientEvent('myrob:play', src, spotId)
end)

RegisterNetEvent('myrob:finish', function(ok)
    local src = source
    local a = attempts[src]
    attempts[src] = nil
    if not a or not ok then return end
    if os.time() - a.at < MIN_SECONDS then return end
    if not nearSpot(src, a.spot) then return end
    startCooldown(a.spot)
    giveLoot(src, a.spot)
end)

AddEventHandler('playerDropped', function()
    attempts[source] = nil
end)
-- client
RegisterNetEvent('myrob:play', function()
    local ok = exports['x3d_lockpick']:miniGameLockPick(4)
    TriggerServerEvent('myrob:finish', ok)
end)

nearSpot, onCooldown, startCooldown, giveLoot และ MIN_SECONDS คือฟังก์ชันและค่าของสคริปคุณเอง สิ่งที่โค้ดนี้ปิด:

  • ส่ง finish(true) เฉย ๆ ไม่ได้ ต้องมีรอบที่เซิร์ฟเปิดให้ก่อน และรอบหนึ่งใช้ได้ครั้งเดียว
  • จบเร็วกว่าที่คนเล่นจริงทำได้ ไม่ได้ของ
  • ต้องยังยืนอยู่ที่จุดตอนจบ ไม่ใช่เปิดรอบแล้ววาร์ปไปที่อื่น
  • ของในตู้และคูลดาวน์อยู่ที่เซิร์ฟทั้งหมด ไม่ส่งไปให้ client เลือก

หลักเดียวกันใช้กับทุกสคริปที่ขยับเงินหรือไอเทม อ่านเต็ม ๆ ในกันโปร FiveM ขั้นพื้นฐานแบบยังไม่มี anticheat

ตัวอย่างงานที่ประกอบเสร็จแล้ว: X3D House Robbery

ถ้าไม่อยากเขียนเอง X3D House Robbery คืองานงัดบ้านครบวงจรที่ใช้สองมินิเกมข้างบน: เดินไปบ้านที่ยังไม่โดนปล้น กด E งัดประตูด้วย lockpick ค้นจุดในห้องได้ของสุ่ม เจาะตู้เซฟที่จ่ายดีกว่า แล้วเดินออก บ้านที่โดนแล้วติดคูลดาวน์และป้ายหน้าบ้านเปลี่ยนเป็นสีแดง ตารางของบนพื้นและในตู้แยกกัน ตั้งได้ทุกค่าใน config.lua

ติดตั้ง: ตั้งแต่เวอร์ชัน 1.2.0 มินิเกมไม่ได้อยู่ในซิปของ House Robbery แล้ว ดาวน์โหลด X3D Lockpick กับ X3D Safe Cracking แยก (ฟรี) วางใน resources/ แล้ว ensure มินิเกมก่อน ถ้าไม่ลง ระบบใช้ skillCheck ของ ox_lib แทน (Config.Minigame = 'auto'):

ensure x3d_lockpick
ensure x3d_safe
ensure x3d_houserobbery

(มินิเกมเป็น resource แยกเพราะ FiveM ให้ resource หนึ่งตัวมี ui_page ได้หน้าเดียว และมินิเกมแต่ละตัวมีหน้าจอของตัวเอง)

คำถามที่พบบ่อย

ใช้กับ QBCore ได้ไหม — X3D Lockpick และ X3D Safe Cracking ไม่ผูก framework เรียก export จากสคริปไหนก็ได้ ส่วน X3D House Robbery ใช้ ESX หรือ standalone

ปรับความยากยังไง — ส่งตัวเลขเข้า export: จำนวนหมุดของ lockpick และจำนวนล็อกของตู้เซฟ

ผู้เล่นตายระหว่างเล่นแล้วค้างไหม — ไม่ค้าง มินิเกมปิดเองและคืนค่า false

มีงัดร้านไหม — ตอนนี้มีงัดบ้าน (X3D House Robbery) ถ้าจะทำงัดร้านเอง ใช้ lockpick + safe ตามโค้ดตัวอย่างข้างบนได้เลย หรือคุยงาน custom กับทีมผ่าน ticket ใน Discord

สคริปฟรีตัวอื่นอยู่ในแจกสคริป FiveM ฟรี

สคริปต์ที่เกี่ยวข้อง