Oxide Baitcar

Police-deployable honeypot vehicle with remote control, dashcam, and dispatch alerts for FiveM servers.

Oxide Baitcar is a police-deployable honeypot vehicle system for FiveM servers. Officers install a baitcar_chip into any target vehicle — civilians see a normal car, while officers get a dashboard or handheld remote that exposes door locks, engine kill, steering override, speed limiter, strobes, alarm, horn, waypoint, and a per-vehicle dashcam feed. When a non-officer drives the chipped car above a configured speed threshold, a dispatch alert fires and an audit row is written to baitcar_events. Civilians can fight back by using a screwdriver while seated in the chipped vehicle (configurable success chance). Dashcam clips upload through oxide-police's recording pipeline, and alerts are carried by any olink.dispatch.* adapter — including oxide-dispatch.

Key Features

  • Chip-Based Deployment — Officers consume a baitcar_chip in a 4-second install with a per-vehicle unique-plate check
  • Two Operating Modes — Handheld remote (baitcar_remote item, default) or a /baitcar dashboard + radial menu when remote-only mode is disabled
  • Remote Actions — Lock / unlock doors, engine on / off, steering override (lock / left / right), speed limiter, strobe, alarm, horn, and waypoint
  • Dashcam Feed — Live camera attached to the chipped vehicle with per-class and per-model tuning via the /baitcardashcamtune workflow
  • Drive-Off Trigger — One-shot dispatch alert + configurable fake wanted level when a non-officer exceeds Config.TriggerSpeedMps for Config.TriggerDurationMs
  • Civilian Search — Screwdriver-based 12-second search with a configurable success chance; failures always return the same "nothing found" message to prevent detector abuse
  • Audit Log + Live Feed — Persistent baitcar_events table covering 20 distinct event types plus an in-memory live event feed to authorized-job clients
  • Officer-Only Map Blips — Active deployments surface as map markers visible only to jobs in Config.AllowedJobs
  • Dashcam Recording — F8 hotkey starts a recording that uploads through oxide-police and lands in the MDT Video Storage tab

Requirements

Required

ResourcePurpose
ox_libCallbacks, timers, UI helpers
oxmysqlDatabase driver for the baitcar_events audit log
o-linkFramework and system abstraction (character, job, inventory, notifications, dispatch, radial, menu, input, logger)
FrameworkOne of qb-core, qbx_core, or es_extended

Optional

ResourcePurpose
oxide-policeDashcam clip recording uploads. Clips are stored in police_bodycam_recordings and surfaced in the MDT Video Storage tab. Without it, the recorder mount is skipped and the F8 hotkey is a no-op.
Dispatch adapter (oxide-dispatch, ps-dispatch, cd_dispatch, etc.)Carries the Bait Car Triggered alert when a suspect drives off. Without an adapter, the audit row still logs but no alert fires.

Supported Frameworks

FrameworkSupport
QBCore (qb-core)Full
QBX (qbx_core)Full
ESX Legacy (es_extended)Full

Quick Start

Place oxide-baitcar in your server's resources directory.

Start ox_lib, oxmysql, o-link, optional oxide-police, and oxide-baitcar in that order.

Run sql/install.sql to create the baitcar_events audit table.

Register the three items (baitcar_chip, baitcar_remote, screwdriver) in your framework's inventory — see the per-framework subsections in the installation guide.

Review shared/config.lua — especially Config.AllowedJobs, Config.UseRemoteController, and Config.Dispatch.

See the Installation Guide for the full setup flow.

Documentation