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 more

2. 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

  1. The NPC will face the player

  2. Text will appear above the NPC

  3. An interaction prompt will be displayed

  4. 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