**btc-selldrugs** allows players to approach world NPCs and attempt to sell products configured by the server. Each negotiation can be accepted or refused, and a refusal can turn into a police report, creating real tension for sellers and new patrol opportunities for officers.
## Highlights
- NPC selling system for world pedestrians.
- Interaction through `ox_target` or native RedM aim/prompt.
- Configurable selling areas.
- Items, prices, and quantities per location.
- NPC acceptance chance.
- NPCs react to refusals.
- Police call only when an NPC refuses the offer.
- Configurable delay before the report reaches police.
- Police blip with pulsing search area.
- Police jobs configurable per location.
- Minimum on-duty police requirement.
- Sale bonus based on online police.
- Seller job blacklist.
- NPC model blacklist.
- Configurable cooldown.
- Option for refusals to count, or not count, toward cooldown.
- Webhook audit for sales.
- Configurable language through locale.
- Open police module for customization.
## A Sale Is Never Just a Sale
The player finds an NPC, interacts through target or prompt, and attempts the deal. From there, the server decides the result based on your configuration:
- The NPC can accept and buy the products.
- The NPC can refuse and walk away.
- The NPC can refuse, report the sale, and run away scared.
When a report happens, on-duty officers receive an alert, a map blip, and a pulsing area showing where the incident may have happened. This makes the search more interesting without giving away a perfect location.
## Built for Roleplay
btc-selldrugs is designed to create organic situations:
- sellers looking for active areas;
- real risk when approaching strangers;
- police receiving reports of suspicious activity;
- chases, patrols, and approaches happening naturally;
- illegal economy controlled through configuration.
It is not just a button-to-money system. The sale has risk, reaction, and consequence.
## Fully Configurable
You can configure:
- selling locations
- radius for each area;
- allowed selling hours;
- sold products;
- minimum and maximum price;
- minimum and maximum quantity;
- NPC acceptance chance;
- NPC police call chance;
- cooldown time;
- whether refusals apply cooldown;
- police jobs called;
- minimum on-duty police;
- bonus per online officer;
- blips and notifications;
- pulsing map area;
- webhook;
- texts in English or PT-BR.
## Police Integrated Into the Flow
The police call was built as a separated, editable module. This allows each server to adapt the report to its own police system while keeping the base simple and easy to modify.
The default flow already includes
- finding on-duty officers;
- filtering by jobs configured for the location;
- notification for officers;
- main blip;
- pulsing search area;
- configurable blip duration;
- configurable report delay.
## Server-Side Security
Important actions are validated server-side:
- area check;
- cooldown check;
- blacklisted job check;
- online police check;
- item check;
- item removal;
- player payment;
- webhook registration.
The client only handles visual interaction, animations, prompt/target, and local NPC behavior.
## Open Files
The buyer can edit:
- `config/config.lua`
- `locale.lua`
- `server/modules/police.lua`
- `client/modules/police.lua`
This makes it easier to adapt the script to different servers, icons, jobs, and police systems.
## Dependency
- `btc-core`
Compatible with the ecosystem based on the btc-core bridge.
## Ideal for Servers That Want
- A more controlled illegal economy.
- More interaction between criminals and police.
- NPC selling with real risk.
- Simple per-location configuration.
- A lightweight, direct, and easy-to-adjust system.
- A ready base for custom police call logic.