DirkScripts
âšī¸ Client Module - This can only be used on the client
Create a new player interaction
lualib.interact.register(name, data)
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | String | true | Unique reference for the interaction |
| data | Object | true | Options for the interact, refer to Data Structure |
Get information regarding an interaction
local interaction = lib.interact.get(name)
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | String | true | Unique reference for the interaction |
Completely remove an interaction by name
lualib.interact.destroy(name)
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Unique reference for the interaction |
Add an interaction to a specific entity
lualib.interact.entity(entity, data)
| Parameter | Type | Required | Description |
|---|---|---|---|
| entity | number | yes | Entity handle |
| data | table | yes | Interaction options |
Add interactions to one or more models globally
lualib.interact.addModels(data)
Add interactions to all vehicles
lualib.interact.addGlobalVehicle(data)
Add an interaction at specific world coordinates
lualib.interact.addCoords(data)
Add interactions to all players
lualib.interact.addGlobalPlayer(data)
Add interactions to all peds
lualib.interact.addGlobalPed(data)
Remove an interaction by its ID
lualib.interact.removeById(id)
Remove all interactions from an entity
lualib.interact.removeEntity(entity)
Remove global model interactions
lualib.interact.removeGlobalModel(model)
Remove global player interactions
lualib.interact.removeGlobalPlayer(id)
This is the data structure of an interaction and the valid options
There are multiple different interactions seen below:
lua{ zone_type = "circle", pos = vector4(10, 10, 20, 10), radius = 10 }
lua{ zone_type = "poly", polygon = { vector3(0, 0, 0), vector3(0, 0, 0), vector3(0, 0, 0), }, }
lua{ zone_type = "box", pos = vector4(10, 10, 20, 10), size = vector3(1, 1, 1) }
lua{ zone_type = "marker", pos = vector4(10, 10, 20, 10), color = vector4(255, 255, 255, 255), -- RGBA scale = vector3(1, 1, 1), -- Not Required dir = vector3(0, 0, 0), rot = vector3(0, 0, 0), bob = false, face = false, txd = false, txn = false, drawEnts = false }
â ī¸ This documentation is pending confirmation
lua{ zone_type = "text", text = "Hello World" pos = vector4(10, 10, 20, 10), size = vector3(1, 1, 1) }

Powered by
All you need for your FiveM server
Copyright Š 2026 DirkScripts.
Not affiliated with or endorsed by Rockstar North, Take-Two Interactive, or any other rights holders. FiveM is a copyright and registered trademark of Take-Two Interactive Software, Inc.
Our checkout system is provided by Tebex Limited, who manage payment processing, product delivery, and billing support. Prices shown in currencies other than GBP are approximate conversions updated daily. All purchases are processed in GBP, so the final amount charged may vary depending on your bank or payment providerâs exchange rate.
Daily dig available!
Hey you, you have free digs waiting