Player Kidnap System - Cinematic Kidnap Scenes - FiveM Script

Player Kidnap System

Kidnap System is a cinematic kidnapping resource for FiveM, built to work with any framework. It gives you two ways to kidnap a player and three cinematic scenes that play out in sync for everyone involved, including anyone nearby who happens to be watching.

Framework integration is left open on purpose. The files handling access checks aren’t escrowed, so you can wire them into whatever permission system your server already runs — jobs, gangs, ACE, staff whitelist, whatever fits.

Two ways to kidnap

Force Kidnap is built for speed. Run /force_kidnap, drop a ghost van wherever you want the player delivered, then enter their ID and pick a scene. The kidnap plays out at the target’s current position no matter where they are on the map, and moments later the van shows up at your chosen spot with them inside. No driving, no searching.

Normal Kidnap is the hands-on version. You need to be in one of the designated van models. Run /kidnap, pick a scene, and a marker will appear over nearby players so you can scan through them with your camera and lock onto a target. A ghost van then shows you exactly where and how to line up your real vehicle for the scene. Once you confirm, you become one of the kidnappers yourself and carry out the whole thing in person.

The scenes

Beat Kidnap has two kidnappers approach from the van and drop the target with a punch before pulling them in. Grab Kidnap has them come out the back doors instead, one holding them open while the other grabs the target and throws them inside. Final Drop plays whenever a kidnap ends, showing the player waking up inside the van and climbing back out.

All three are synced across everyone nearby. The kidnapper and the kidnapped player see it through a dedicated cinematic camera, but bystanders who happen to witness it see the same scene from their own normal viewpoint, not the cinematic one.

While they’re in the van

Once attached to the van, the kidnapped player is locked into a pass-out animation with no control over their character. What they actually see during this is up to you — the config lets you keep their vision clear, blur it, or black it out, and you can disable their controls entirely.

Release is entirely up to the kidnapper, triggered at any point. And in case something goes wrong, there’s a built-in failsafe: if the kidnapper disconnects, drives too far away, or the van gets deleted for any reason, the kidnapped player is automatically freed rather than left stuck.

Requirements

  • FiveM, standalone, no framework required
  • ox_lib

Client Config:

Config = { Models = {}, Commands = {}, Prompt = {}, KidnappedVision = {} }

---------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------- Commands Settings -------------------------------------------------------------------

Config.Commands.NormalKidnap = "kidnap" -- Command to start a Normal Kidnap, must be the driver of an allowed kidnap van
Config.Commands.ForceKidnap  = "force_kidnap" -- Command to start a Force Kidnap, place a drop-off location and target a player by ID

---------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------- Models Settings --------------------------------------------------------------------

Config.Models.KidnapVan = "gburrito" -- The vehicle model used to spawn the van during Force Kidnap
Config.Models.AllowedVans = { "burrito", "burrito2", "burrito3", "burrito4", "burrito5", "gburrito", "gburrito2" } -- List of vehicle models allowed to be used as the kidnap van for Normal Kidnap

Config.Models.Kidnapper1 = "G_M_Y_Lost_01" -- Ped model for the first kidnapper in the cinematic scenes
Config.Models.Kidnapper2 = "G_M_Y_Lost_02" -- Ped model for the second kidnapper in the cinematic scenes

---------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------- Prompts Settings --------------------------------------------------------------------

Config.Prompt.Side = "right" -- Which side of the screen the interaction prompt is displayed on, "right" or "left"

Config.Prompt.PosLeft = 64 -- Prompt horizontal offset from the left edge, in pixels (used when Side is "left")
Config.Prompt.PosRight = 64 -- Prompt horizontal offset from the right edge, in pixels (used when Side is "right")
Config.Prompt.PosBottom = 64 -- Prompt vertical offset from the bottom of the screen, in pixels

---------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------- Kidnapped Vision Settings ------------------------------------------------------------------

Config.KidnappedVision.Blur = true -- "true": apply a screen blur effect while the player is kidnapped | "false": no blur applied

Config.KidnappedVision.Darkness = true -- "true": darken the kidnapped player's screen while attached to the van | "false": no darkness applied
Config.KidnappedVision.DarknessValue = 0.96 -- Darkness intensity, from 0.0 (no darkness) to 1.0 (fully black)

Config.KidnappedVision.DisableControls = true -- "true": kidnapped player has no control while attached to the van | "false": player keeps control of their character

---------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------- Translations ----------------------------------------------------------------------

-- Every label, prompt, button, and notification text used across the resource, all editable here for easy translation
Config.Translations = {
    ['kidnap_system']            = "Kidnap System",
    ['force_kidnap_van_spawner'] = "Force Kidnap Van Spawner",
    ['force_kidnap_player']      = "Force Kidnap Player",
    ['player_id']                = "Player Id",
    ['kidnap_scene']             = "Kidnap Scene",
    ['beat_scene']               = "Beat Scene",
    ['grab_scene']               = "Grab Scene",
    ['kidnap_player']            = "Kidnap Player",
    ['kidnap_player_id']         = "Kidnap Player ID: %s",
    ['locked_player_id']         = "Locked at Player ID: %s",
    ['drop_player']              = "Drop Player at Your Location",
    ['back']                     = "Back",
    ['cancel']                   = "Cancel",
    ['confirm']                  = "Confirm",
    ['drop_here']                = "Drop Here",
    ['lock_on_player']           = "Lock on player",

    ['notif_title']              = "Kidnap System",
    ['notif_invalid_id']         = "Invalid Player Id",
    ['notif_no_vehicle']         = "You're not in any vehicle",
    ['notif_invalid_vehicle']    = "You can't kidnap using this vehicle",
    ['notif_driver_seat']        = "You must be in drive seat",
    ['notif_invalid_scene']      = "Invalid kidnap scene",
    ['notif_target_offline']     = "Target Player Offline",
    ['notif_cant_self_kidnap']   = "You Can't kidnap yourself",
    ['notif_already_in_scene']   = "Player is already in a scene",
    ['notif_appearance_error']   = "Couldn't get player appearance",
    ['notif_vehicle_node_error'] = "Couldn't get player vehicle node",
    ['notif_no_access_command']  = "You don't have access to this command",
    ['notif_player_is_arriving'] = "Target player is arriving in few seconds",
    ['notif_player_has_arrived'] = "Target player has arrived",
}

Client Config:

---------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------- Webhook Logs ----------------------------------------------------------------------

Config.WebhookLog = "POST_WEBHOOK_HERE" -- Webhook for logs

Preview: Youtube Link
Buy it here: Tebex Link ($13.99 + Tax)

Code is accessible Config, framework access files
Subscription-based No
Lines (approximately) 2800
Requirements & dependencies ox_lib
Support Yes