Police Tape
Download · Documentation · GitHub
Police tape that behaves like tape, free and open source, for QBox, QBCore, ESX or standalone. It sags with its length, sways and twists in the game’s own wind, bows round people’s legs and a car’s bonnet when they push into it, springs back when they let go, and tears, for everybody, when a vehicle drives through it too fast.
Tie it to anything. Aim at a wall, a fence, a pole or a tree and the tape is tied to it. Aim at open ground and it stands on a delineator post or one of twenty traffic cones, picked from a menu with a picture of each. Cars, kicks and runners knock them over, and the tape goes down with them.
A hundred styles, and a studio for more. Police, sheriff, federal, crime scene, fire, medical, hazard, utility and international tape, switched live on the stretch you are placing. The Tape Studio makes new ones in game, for the whole server.
Admins see all of it. /tapeadmin lists every tape on the server, chooses which styles and cones police get, and switches tearing, physics, wind and saving on and off while the server runs.
Download
Release: https://github.com/Samuels-Development/sd-policetape/releases/latest
Grab sd-policetape.zip, not “Source code (zip)”: the zip has the interface already built.
Screenshots
A driveway in Mirror Park, taped off on four posts
Or tied to walls, with nothing to stand on: from the side of the house to the yard wall
Placing: the stretch is live while you aim · Posts and cones: H while placing, a picture of each
Torn: it snaps for everybody, and the ends fall where they hang · Pushing through: it bows round the legs
Some of the 100 styles, drawn by the same code that draws the tape in game
The post and the twenty cones
Screenshots, click to open:
Style picker and Tape Studio
The style picker: G while placing, or /tapestyles · By category, plus Custom and Yours for the Studio’s
The Tape Studio
How it behaves
Tape hangs between its two ties in a shallow curve set by its length, and sways and twists in the game’s wind. It is drawn by the script, so it is dimmed by hand at night and indoors to sit in the scene.
People and vehicles have their real shapes. A ped is a dozen capsules between its bones, so tape catches on a leg or a waist, and a vehicle is measured once per model, so tape rides up a bonnet onto the windscreen or catches under a truck’s bumper. Let go, and it springs back into line with a wobble.
Nobody just walks through it. A player pushing into tape is slowed the further it gives, and snaps it once they have pushed it a metre out. A vehicle tears it outright at 30 km/h, and a slower one catches it on the bumper and tears it after dragging it. The halves whip back towards their ties and lie on the ground where they land. Passers-by (NPCs) slide off it without breaking it.
Want tape that never breaks? Switch tearing off, and at the same limits it slips off whatever is pushing it and springs back.
Placing it
/tape, or use the police_tape item. Click where it starts, click where it is tied off, and keep going from there until you press Done. A green marker means it can go there; red, and the prompt says why (too long, something in the way, nothing to tie to).
| While placing | Controller | |
|---|---|---|
| Mouse wheel | D-pad up / down | Next or previous style, live on the tape |
| G | D-pad left | All styles |
| H | D-pad right | The post and cone menu |
| F | Y | Kept after a restart, or not |
Looking at tape, a prompt says [E] Edit tape. E opens it: G changes its style, holding E takes it down, F keeps it after a restart or not. A knocked-over cone works the same way: hold E to stand it back up.
Posts and cones
A delineator post and twenty cones, from 30 cm to a metre: orange, red and white, yellow, lime, blue, white, black, pink, green, hazard striped and highway cones. Each has its own size, base and the height the tape is tied at.
A car that drives into one sends it along the road, and a kick, a punch or running into one knocks it over where it stands. It goes down for everybody, the tape tied to it goes down with it, and it stays down across restarts until someone stands it back up. Cars pass through a standing one instead of stopping dead against it.
Tape Studio
/tapestudio starts from any style and saves a new one for everyone on the server: a background and a second colour (gradient or split), nine patterns, edge bands (solid, double, dashed or checked), and up to six pieces of wording with typeface, colour, letter height, width and spacing, a box behind them, an outline, a shadow and the mark between them. The preview is drawn by the same code as the tape in the world, close up, at 10 m and at 30 m.
In the style picker, Custom lists every Studio style with who made it, and Yours the ones you made.
Admin menu
/tapeadmin lists every tape on the server with its style, who put it up, its length, the street it is on, when, and how far away: a waypoint to it, going there, keeping it after a restart or not, and taking it down (one, every torn one, or all). It chooses which styles and which posts and cones police may put up, and switches tearing, physics, wind, knocking holders over, the item and saving while the server runs, kept in data/settings.json.
Server authority
The server decides. Every tear and every knocked-over cone is checked before anyone sees it: the server believes it only if that player is on foot right at the tape, or that vehicle is theirs, is there and is moving. Placing is checked for access, length, reach and limits (40 tapes per player, 800 on the server, 40 placements a minute, all in the config), and who may tape, use the Studio or use the admin menu is decided on the server, with a hook file for your own rules.
There are no tape models: each tape in sight is drawn as a ribbon, and tape further than 40 m is not simulated at all.
Compatibility
| Layer | Supported |
|---|---|
| Frameworks | QBox, QBCore, ESX, or none (ACE permissions only) |
| Inventories | ox_inventory, qb-inventory, ps-inventory, lj-inventory, qs-inventory(-pro), tgiann-inventory, codem-inventory, jaksam_inventory, origen_inventory, one_inventory |
| Item | Optional: a police_tape roll, used up per stretch if you like and given back when you take your own down |
| Database | None: tape, styles and settings are JSON in data/ |
| Languages | English, German, Dutch, French, Spanish |
Exports place, tear and clear tape from other scripts: PlaceTape, RemoveTape, TearTape, ClearTapes, GetTapes, GetStyles, and on the client StartPlacing, IsPlacing and GetLookedAtTape.
Code
| Code is accessible | Yes |
| Subscription-based | No |
| Lines (approximately) | circa 13000 |
| Requirements | ox_lib |
| Support | Yes |
If you’re enjoying sd-policetape and want to support my work, consider picking up a script from Samuel’s Development. Every purchase helps me keep building free resources like this one.
Download · Documentation · Discord · Store
























