Configuration

This guide describes the nn_heistcreator configuration layout. The config is split into multiple files under config/. All framework features (inventory, target, notifications, progress bar, money) use community_bridge; you only need to edit these files and your bridge setup.


Config file overview

File
Purpose

config.lua

Bootstrap: defines Config = {} and Config.NodeSchemas = {}. Loaded first.

general.lua

General settings, admin groups, commands, debug flags.

heist_rewards.lua

Cash reward when a player completes a heist (per difficulty).

node_schemas_actions.lua

Editor node definitions: Actions (guards, doors, NPCs, card swipe, thermite, etc.).

node_schemas_script_actions.lua

Editor node definitions: Script Actions (target, wait, teleport, explosion, alarm, etc.).

node_schemas_minigames.lua

Editor node definitions: Minigames (hack, wires, lockpick, firewall, etc.).

node_schemas_textui.lua

Editor node definitions: TextUI (show/hide text UI).

node_schemas_robbery.lua

Editor node definitions: Robbery (PC, trolley, safe, bomb, glass, crates, etc.).

node_schemas_rewards.lua

Editor node definitions: Rewards (give item, give money).

node_schemas_cutscenes.lua

Editor node definitions: Cutscenes (e.g. buyers).

skill_trees.lua

Skill tree categories used by the editor skill-check nodes.

translations.lua

In-game messages (notifications, selector, PC, multiplayer).

ui_translations.lua

NUI and editor labels (sidebar, dashboard, list, editor, minigames, skill tree).

Load order is set in fxmanifest.lua via shared_scripts; do not change the order.


general.lua

General and admin settings.

Option
Default
Description

Config.DebugPrints

false

Enable server console debug messages.

Config.DebugZones

false

Show target zone outlines in the world when building heists.

Config.AdminGroups

{ 'admin', 'best' }

ACE groups that can open the heist editor.

Config.CommandName

'heist_editor'

Command to open the robbery creator (e.g. /heist_editor).

Config.SkillTreeCommand

'skilltree'

Command to open the skill tree (e.g. /skilltree).

Config.SecondsAfterPropDissapear

20

Seconds before temporary props from nodes are removed.


heist_rewards.lua

Cash given via community_bridge when a player completes a heist. Skill points are always awarded separately and saved in the database.

Option
Description

Config.HeistCompletionMoney

Cash amount per difficulty. Use keys easy, medium, hard, expert. Set a value to 0 to disable cash for that difficulty.

Config.HeistCompletionMoneyType

Account type: 'money' or 'cash' for normal cash; 'black_money' for dirty money.

Example:


Node schema files (editor nodes)

The heist editor uses NodeSchemas to build the graph. Each schema file adds one or more sections to Config.NodeSchemas. Every node has:

  • title — Name in the editor palette

  • icon — Font Awesome class (e.g. fa-solid fa-door-open)

  • fields — List of properties: id, label, type, and often default or options

Field types

  • coords_btn — In-game position picker

  • text — Text input

  • number — Numeric value

  • select — Dropdown; use options = { 'a', 'b' } or options = { { value = 'x', label = 'Display' } }

  • coords — Coordinate set

Many nodes support:

  • requiredRole — Override hint role: 'auto', 'Leader', 'Hacker', 'Muscle', 'Lookout'

  • isnetwork'local' (each client spawns) or 'network' (one spawn for all). Use 'network' for multiplayer heists

node_schemas_actions.lua — Actions

Node ID
Purpose

guards

Spawn NPC guard(s); model, weapon, invincible/freeze, drop prop/item on death, label, role hint.

spawnnpc

Spawn NPC; optional target, label, icon, cooldown, local/network.

opendoor

Open door: world (door system) or vault (prop + rotation); yaw offset, duration, open state.

drillvault

Vault door drill.

swipecard

Card swipe; coords, label, required item.

thermalcharge

Thermite; coords, label, required item.

playanim

Play animation (dict, clip, duration).

waitforcombat

Wait until combat in radius.

node_schemas_script_actions.lua — Script Actions

Node ID
Purpose

checkskilltree

Require a skill (e.g. hacking_gtav, lockpick) before continuing.

changeskillvalue

Add/remove/set skill points (admin/testing).

target

Add target/interaction: coords, radius, min players, label, icon, disappear after use, cooldown, role.

showtarget

Show a previously hidden target.

wait

Delay in seconds.

teleport

Teleport player; optional fade.

explosion

Spawn explosion; size, damage on/off.

alertpolice

Trigger police alert.

alarm

Play alarm at coords; duration, range, type.

notification

In-game notification (title + message).

randomize

Randomize output path.

waypoint

Set waypoint at coords.

particle

Spawn particle.

customevent

Trigger custom client event.

setuphouse

Custom house/shell; coords, tier, enter/leave labels.

node_schemas_minigames.lua — Minigames

Node ID
Purpose

hack

GTAV-style hacking; difficulty, optional animation, role.

hackwires

Connect wires; difficulty, time.

hackbreach

Find pattern; difficulty, time.

hackdial

Hack dial; difficulty, time.

lockpickminigame

Lockpick; difficulty, time.

sumnumbers

Sum numbers; difficulty, time.

hackfirewall

Firewall hack; difficulty, time.

node_schemas_textui.lua — TextUI

Node ID
Purpose

showtextui

Show text UI; title, message, position, icon.

hidetextui

Hide the text UI.

node_schemas_robbery.lua — Robbery (loot / props)

Node ID
Purpose

pc

PC/BTC hacking; coords, label, required USB.

resetpc

Reset a PC node state.

stealjewellery

Jewellery heist; coords, label, required item.

stealart

Steal art (painting); coords, label, item, local/network.

stealcash

Trolley; coords, label, loot type, role, local/network.

stealchest

Chest; coords, label, local/network.

stealgoldengun

Golden gun desk; coords, label, local/network.

stealsafecrack

Safe cracking; coords, label, local/network.

plantbomb

Plant bomb; coords, label, disappear time, required item.

glasscut

Glass cutting; coords, label, item, reward type, local/network.

stealcustomprop

Custom prop; model, target on/off, label, animation, progress, local/network.

stealcontainer

Container; coords, label, minigame, difficulty, time, item, local/network.

stealsandbox

Sand box; coords, label, minigame, difficulty, time, item, local/network.

lootcrate

Loot crate; coords, label, required item, local/network.

openelectricbox

Electric box; coords, label, local/network.

switchboxon

Switch box; coords, label, local/network.

node_schemas_rewards.lua — Rewards

Node ID
Purpose

giveitem

Give item (item name + amount).

givemoney

Give money or black money; reward type and amount.

node_schemas_cutscenes.lua — Cutscenes

Node ID
Purpose

buyers

Buyers scene; coords, car model, radius, blip name.


skill_trees.lua

Defines skill categories used by the editor checkskilltree node. Each category has title, icon, description, and nodes. Each node has: id, label, icon, cost, row, col, req (parent id or nil), desc.

The id values (e.g. hacking_gtav, lockpick, sum_numbers) are what you select in checkskilltree in the heist editor. Changing IDs here must match how nn_heistcreator validates skills.


translations.lua

In-game messages and strings.

  • Title, Saved, Created, Deleted — Editor/creation messages

  • DontHaveRequiredItem, Cooldown — Player feedback

  • common — Heist created/updated strings

  • selector — Position/minigame selector help and titles

  • art_heist, glass_cutter, pc — Per-feature titles and PC hacking (BTC, encryption, terminal) messages

  • target — Target label prefix

  • multiplayer — Lobby, invite, “not enough players”, etc.

Edit these to match your server language and style.


ui_translations.lua

NUI and editor labels.

  • sidebar — Dashboard, list, close

  • dashboard — Status, welcome, stats, quick ops

  • list — Database, new/edit/delete heist, empty state, template labels

  • editor — Save, import/export, modals, palette, properties, fetch coords, etc.

  • notifications — Start node required, coords fetched, validation messages

  • miniGames — Minigame UI (win/lose, timers, voltage, tumbler, etc.)

  • skilltree — Skill tree title, points label, categories, status (locked/unlocked, cost, requirements)

Last updated