~/docs/interaction/configuration/interaction-config-reference
interaction docs›
Interaction
Interaction Config Reference
-- 1 code block · 1 min read
{
coords = vec3 | vec4, -- required
message = "string", -- panel text
key = 38, -- FiveM control id (38 = E)
hintIcon = "pin", -- see below
hintColor = "teal" | "#34d399", -- name or hex
showIcon = 4.0, -- hint render distance
canInteract = 1.5, -- panel arm distance / fn
offsetZ = 2.0, -- vertical sprite offset
heightOffset = nil, -- override offsetZ for the sprite
resetOnInteract = true, -- re-arm after callback
onInteract = function(id, ent, spec) end, -- single-key callback
-- Multi-choice (alternative to onInteract)
choices = {
{ bind = "E", message = "Use", hintColor = "green",
condition = function() return true end,
onInteract = function(ent) end },
{ bind = "G", message = "Rob", hintColor = "red",
onInteract = function(ent) end },
},
-- NPC dialogue (only meaningful with pedRegister)
dialogue = {
name = "Paul",
tag = "Lumberjack",
startMsg = "Welcome.",
interactAnim = { dict = "...", name = "..." } | { scenario = "..." },
elements = { { label = "...", action = function(changeDialog, close) end }, ... },
},
blips = { sprite = 119, color = 50, scale = 0.8, text = "Foreman" },
}
Available hint icons
pin, car, camion, velo, bateau, avion, moto, cloak, bank, house, work, phone, cart, combat, gym, game, hunting, peche, storage, duty, talk, search, interact, teleport.
The catalog example (config/example.lua, third block) renders every icon side-by-side so you can pick one in-game.
Color presets
teal (brand), red, blue, green, amber, yellow, orange, purple, pink, white, gray. French aliases rouge, bleu, vert are kept for backward compatibility. Any hex string also works.