Page cover

πŸ”ZoneCues

ZoneCues is a FiveM script designed for immersive roleplay. It allows players to place ambient notifications in the game world that trigger when another player enters a defined radius around a player.

πŸš€ Features

  • πŸ“ Create roleplay-based cues (e.g. "You smell cannabis")

  • πŸ”˜ Attach cues to:

    • Yourself

    • Vehicles

    • Objects

    • Static world positions

  • 🎯 ox_target integration for intuitive third-eye target selection

  • πŸ‘€ Preview radius with live marker during cue placement

  • πŸ“‹ Manage active cues via a modern, stylish NUI menu

  • πŸ•’ Automatic timeout if no selection is made

  • πŸ›‘ Cues attached to players are removed if they leave the server


🧱 Installation

Follow instructions in Getting Started


πŸ“¦ Dependancies

πŸ•ΉοΈ Usage

Open the Menu

Use the command:

Creating a Cue

  1. Enter your message (e.g. "You smell cannabis").

  2. Set the radius (1-50 meters).

  3. Choose an attachment type:

    • Self β€” attaches to you

    • Vehicle/Object β€” requires selection with third eye

    • Static β€” places it where you stand

  4. If Vehicle/Object is chosen, click Select Target and use the third eye to select your target.

  5. A radius marker will preview the area before finalizing.

  6. Click Create to place the cue.

Managing Cues

  • Your active zones appear in the bottom panel

  • Edit or remove cues at any time


πŸ’‘Tips & Notes

  • Only the creator sees their own cues in the management panel

  • Notifications display using a clean, modern UI overlay

  • The menu auto-closes when selecting a target, and auto-reopens once selected

  • If no target is selected within 30 seconds, the process is cancelled with a notification

  • Cues follow vehicles and objects if they move (via network ID tracking)


πŸ“€ Exports

ZoneCues provides several server-side exports for interacting with zones programmatically from other resources:

addZone(data: table) β†’ number

Adds a new zone and returns its unique ID.

Example:

Data Parameters:

Field
Type
Description

message

string

The message shown when entering the zone

radius

number

Radius (in meters) of the zone

attach

string

"static", "vehicle", "object", "self"

coords

vector3

Required if using "static"

netId

number

Required if using "vehicle" or "object"


removeZone(id: number) β†’ boolean

Removes a zone by its ID.

Example:


getAllZones() β†’ table

Returns a table of all currently active zones.

Example:


βš™οΈ Configuration

Located in config.lua:


Last updated