Pickpocketing

A feature-rich pickpocketing script that allows players to steal items from NPCs using a difficulty-based minigame system.

Features

  • Interactive pickpocketing minigame with moving safe zones

  • Dynamic loot table with difficulty-based rewards

  • Bystander witness system with police reporting

  • Timeout/cooldown system to prevent spam

  • Police dispatch integration

  • Early exit option with configurable success/failure

  • Blip system for reporting NPCs

  • Multi-language locale support

Installation

  1. Place ls_pickpocket in your resources folder

  2. Configure the script (see Configuration section)

  3. Add to server.cfg:

    ensure ls_pickpocket
  4. Restart your server

Dependencies

  • Required:

    • None (standalone)

  • Recommended:

    • Framework (ESX/QBCore) for inventory integration

    • Dispatch system for police alerts

Configuration

Located in server/editables/editables.lua and client/editables/editables.lua

Main Configuration

Timeout System

Minigame Settings

Difficulty Configuration

Safe zone width determines difficulty:

Bystander System

NPC Selection

Loot Table Configuration

Configure items in the loot table:

Police Dispatch

How It Works

Player Experience

1

Target NPC

  • Player approaches an NPC

  • Initiates pickpocket action

2

Minigame

  • Moving bar appears on screen

  • Player must keep cursor in safe zone

  • Duration: 20-30 seconds (random)

  • Can exit early (configurable success/failure)

3

Outcome

  • Success: Receives random loot based on difficulty

  • Failure: No items obtained

  • Witnesses: Nearby NPCs may report to police

  • Cooldown: Timeout applied if max attempts reached

4

Police Response

  • Dispatch alert sent (if configured)

  • Police respond to location

  • Blip shows on police map

Difficulty System

Item rewards are tied to difficulty levels:

  • Easy: Common items (wallets, small cash)

  • Medium: Moderate value items (phones, cards)

  • Hard: Valuable items (jewelry, electronics)

  • Expert: Rare/expensive items (luxury watches, diamonds)

Difficulty affects:

  • Safe zone width in minigame

  • Item rarity in loot pool

  • Potential reward value

Usage Examples

Basic Pickpocketing

1

Approach any NPC on the street

2

Press interaction key

3

Complete the minigame

4

Receive items on success

Timeout System

After 3 failed attempts (default):

  • Player is locked out for 120 seconds

  • Timer displays remaining cooldown

  • Can resume after timeout expires

Witness Reporting

When witnesses are enabled:

  • Nearby NPCs can report the crime

  • 100% chance by default (configurable)

  • 5-second delay before reporting

  • Blip appears on reporting NPC

  • Police dispatch triggered

Customization

Adding New Items

1

Open loot table configuration

2

Add new item entry:

Adjusting Difficulty

Make the minigame easier:

Make it harder:

Disable Bystanders

Modify Cooldown

Dispatch Integration

cd_dispatch

ps-dispatch

Custom Dispatch

Modify event in client/client.lua:

Troubleshooting

chevron-rightMinigame Not Appearinghashtag
  • Check browser console for errors (F8)

  • Verify NUI resources are loading

  • Ensure script is fully started

chevron-rightNo Items Receivedhashtag
  • Check loot table configuration

  • Verify item names match inventory

  • Enable debug mode to check item spawning

chevron-rightBystanders Not Reportinghashtag
  • Verify Config.bystanders.enabled = true

  • Check police job configuration

  • Ensure dispatch system is running

chevron-rightTimeout Not Workinghashtag
  • Verify Config.timeout.enabled = true

  • Check console for errors

  • Ensure max_attempts is set correctly

Debug Mode

Enable debug output:

Debug information includes:

  • NPC detection

  • Minigame events

  • Item rewards

  • Timeout tracking

  • Bystander detection

Performance

  • Optimized NPC detection - Only checks nearby NPCs

  • Efficient minigame - Lightweight UI

  • Smart witness system - Limited radius checks

  • Idle: 0.00ms

  • Active: 0.01-0.02ms

Locale Support

Customize text in locale/en.lua (or your language):

API Reference

Exports

Currently no exports. Future versions may include:

  • StartPickpocket(ped) - Start pickpocket on specific ped

  • IsInTimeout(playerId) - Check if player is in timeout

Support

For issues or questions:

  • Enable debug mode first

  • Check console for errors

  • Review configuration

  • Contact Lith Studios support

Changelog

v1.0.0 - Initial Release

  • Four difficulty levels

  • Bystander witness system

  • Timeout/cooldown system

  • Police dispatch integration

  • Multi-language support

Last updated