[PAID] Lusitano Thief — Search & Robbery System (RedM / VORP)

LS Thief — Search & Robbery System (VORP)

A complete search & robbery system for RedM (VORP Core). Walk up to a player who is hogtied, handcuffed, dead or with their hands up, hold a key, and take their cash, a second currency or their inventory (items & weapons) — through native prompts and the VORP steal panel, with no chat commands.

:clapper_board: YOUTUBE

✨ Features

  • Search downed players — hogtied / handcuffed / dead / hands-up (each toggleable)
  • Take cash & a second currency — amount prompt; 2nd currency is configurable (Gold by default, or rol/bloodmoney)
  • Search the inventory — take items and weapons through the VORP steal panel
  • Weapon → component conversion — stolen weapons turn into a configurable item (per-weapon or default)
  • Job bypass — chosen jobs (e.g. police) receive the real weapon instead of components
  • Item blacklist — block specific items from being stolen
  • Per-thief cooldown — anti-spam between robberies
  • Safe zones — disable robbing inside defined areas (banks, towns…)
  • Law alert + map blip — notifies on-duty law jobs when a robbery happens (chance-based)
  • Victim notification — the target is warned they're being robbed
  • Hands-up (X) & point (B) animations
  • Custom hogtie escape — removes the native escape; free yourself only when nobody is nearby
  • Ragdoll / knockout — Z key and /ragdoll, /ko, /ragdollmode
  • /online — counts on-duty law (configurable jobs)
  • Discord webhook logging — every steal logged
  • 6 languages included — English, Português, Español, Français, Deutsch, Italiano
  • Server-authoritative — all money & item validation done on the server (anti-exploit)

🛠️ Fully customizable (update-safe)

  • Open config, all locale files and the README are open-source (escrow-ignored)
  • CL_custom.lua / SV_custom.lua override files — plug in your own notify system and hooks (OnStealMoney / OnStealItem) without ever touching the core, and keep your changes through updates

📦 Dependencies

Requires vorp_core and vorp_inventory (plus the standard VORP menu & inputs: vorp_menu / vorp_inputs). 100% standalone otherwise — no other Lusitano/OldWest script needed.

⚙️ Installation

Drop the folder in your resources, add ensure LS_Thief to your server.cfg, and edit config/config.lua. Get close to a downed player and hold the search key — done.

🛒 More scripts

Check out all our scripts at lusitano-scripts.tebex.io

Others

Lusitano Marketplace.

Lusitano Sell To NPC.

Lusitano Ranch(with ilegal side).

Support: join the Lusitano Scripts Discord.

Code is accessible No (config, locales & custom override files are open; core is escrow-protected)
Subscription-based No
Lines (approximately) ~2400
Requirements vorp_core, vorp_inventory (+ vorp_menu / vorp_inputs), oxmysql
Support Yes

:sun::shopping_cart: We have sales see in DISCORD​:shopping_cart::sun:

**Update — v1.1.1**

A hands-up (`X`) reliability release.

**Fixed**
- **Hands up (`X`) could get stuck in the raised position.** The toggle decided between raise/lower by asking the game whether *its own* animation was playing. On servers where another resource also binds `X` (emote menus, animation packs, other hands-up scripts), that resource's animation took over, the check returned false, and the next `X` press raised the hands again instead of lowering them. The toggle now tracks its own state, so it lowers regardless of what animation ended up on the ped.
- **The hands-up animation expired after 2 minutes** (fixed 120s task duration) and dropped by itself. It is now maintained until the player lowers it.
- **Firing was not actually disabled** while the hands were up — the block was applied to the wrong handle, and only once on the key press instead of every frame.
- Hands up no longer starts or persists while the player is hogtied, cuffed, mounted, in a vehicle, or dead.

**Added**
| Option | What it does |
|---|---|
| `Config.EnableHandsUp` / `Config.EnablePoint` | Disable either animation on its own — useful if another resource already owns that key |
| `Config.HandsUpKey` / `Config.PointKey` | Rebind the animation keys |
| `Config.HandsUpDisarm` | Whether raising the hands also holsters the weapon |
| `Config.HandsUpCommand` | Fallback `/handsup` command for when the key conflicts |

Also added client exports `IsHandsUp`, `ToggleHandsUp` and `SetHandsUp` for anyone integrating with their own scripts.

**Updating:** drop in the new files and keep your existing `config.lua` — every new option falls back to its default when missing. One extra step this time: import the included `LS_Thief_items.sql`, which creates the `weapon_components` item used by the weapon→component conversion (or point `Config.DefaultWeaponItem` at an item that already exists on your server). The server now warns you at startup if that item is missing.





Store: https://lusitano-scripts.tebex.io/ · Discord: https://discord.com/invite/ppwmqA8uga
## Update v1.1.2 - New Player Protection & Carry Fix

Two additions driven by user requests.

**New player protection**

New players cannot be robbed until they reach a configurable amount of time on the server (10 hours by default).

- Counts real playtime, tracked while the player is actually online, not calendar time. A `firstjoin` mode is available if you prefer wall-clock hours instead.
- Scope is per account by default, summing every character, so a veteran cannot create a fresh character just to become immune. Switch to `character` if you want it per character.
- `/protection` shows the remaining time, `/protection off` lets a player waive it early for roleplay reasons. Both the command name and the opt-out are configurable.
- Configurable admin group bypass, optional notification to the protected player when someone tries, and an option to also stop protected players from robbing others.
- Characters that already exist when the update is installed are automatically flagged as veterans, so no existing player becomes untouchable overnight.
- Nothing to import: the tracking table is created automatically on the first start.

**Carried players cannot be searched**

If a player is being carried over another player's shoulder, the search prompt no longer appears and the robbery is blocked. Detection is based on the attachment to the carrier ped, so it works with any carry script rather than a specific resource. Toggle with `Config.BlockCarried`.

**Upgrade notes**

- New dependency: oxmysql. Make sure it starts before LS_Thief in your server.cfg.
- If you keep your existing config.lua, copy the new `Config.NewPlayerProtection` and `Config.BlockCarried` blocks across, otherwise both features stay disabled.
- All six languages updated: English, Portuguese, Spanish, French, German, Italian.

Store: https://lusitano-scripts.tebex.io/
Discord: https://discord.com/invite/ppwmqA8uga
Late summer sale: 50% off with the code LATESUMMER at checkout, valid until 10 October 2026. Applies to the whole store, no minimum basket.

Store: https://lusitano-scripts.tebex.io/