NPC DIALOG
ES-Dialogue is a comprehensive NPC dialogue system for FiveM servers. It allows server owners to create interactive NPCs with custom dialogue options that can trigger various server and client events.
1. Introduction
## Features
- Easy to configure NPC spawning
- Interactive dialogue system with multiple response options
- Support for multiple frameworks (QBCore, ESX)
- Dynamic mugshot generation from NPC models
- Customizable NPC appearances and animations
- Event-based interactions for shop systems, quests, and more2. Installation
Prerequisites
FiveM Server (Not mandatory, but there is a choice of sample config)
QBCore or ESX Framework (Not mandatory, but there is a choice of sample config)
Standalone (The code is actually standalone, you can only select default ESX - QBCore in controls such as item export)
3. Configuration

NPCs are defined in the Config.Locations table. Each NPC can have unique properties:
Configuration
Framework Configuration
ES-Dialogue supports multiple frameworks. Configure your framework in the shared.lua file:
NPC Configuration
NPCs are defined in the Config.Locations table. Each NPC can have unique properties:
4. NPC System
The NPC will face the player
Text will appear above the NPC
An interaction prompt will be displayed
Pressing E opens
Players can interact with NPCs by approaching them and pressing E. When in range:
NPC Interactions
Custom appearance (model)
Unique position and heading
Idle animations (scenarios)
Interactive text display
Custom dialogue options
ES-Dialogue automatically spawns NPCs defined in your configuration. Each NPC can have:
Creating NPCs
NPC System
5. Dialogue System
Configuring Dialogues
Each NPC can have multiple dialogue options configured throughn text value = "buy_fooifier type =d", -- Unique option identifier type = -- Event type:server "server" or "client" trigger = "servervent to -- Arguments trigger args = { -- Arguments type = action = "ich", buy", item = "sandwich", count = 1 } }, -- More options... }ue options can trigger:
Server events (for purchases, quest progress, etc.)
Client events (for animations, UI changes, etc.)
Additional dialogues (for multi-step conversations)
Events receive the configured args object, allowing for dynamic responses.
7. Examples
client.lua (exit)
server.lua (example trigger)
shared.lua
Last updated