Skip to main content

Documentation Index

Fetch the complete documentation index at: https://fxscripts.dev/docs/llms.txt

Use this file to discover all available pages before exploring further.

Every config file is editable and survives updates.
fxChat/
├── config.lua
├── configs/
│   ├── chat.lua
│   ├── chat-sv.lua
│   ├── blacklist.lua
│   ├── commands.lua
│   └── translation.lua
├── translations/
└── themes/

config.lua

Admin permissions and the Discord webhook.
Config = {}

Config.AdminGroups = { 'admin', 'superadmin' }

Config.Webhooks = {
    enabled = false,
    url = 'https://discord.com/api/webhooks/...',
    name = 'fxChat',
    avatar = 'https://i.imgur.com/...'
}

configs/chat.lua

Behavior — open key, default theme, ranges, rate limit.
Chat = {}

Chat.OpenKey = 'T'
Chat.DefaultTheme = 'default'
Chat.AutoHideAfter = 10000      -- ms before chat fades out
Chat.HiddenMode = false         -- only show while open

Chat.Proximity = {
    me  = 15.0,   -- /me /do range in meters
    ooc = 10.0,   -- /ooc range
}

Chat.RateLimit = {
    messages = 5,
    window   = 3000, -- per N ms
}

configs/blacklist.lua

Block prefixes, words and links.
Blacklist = {
    prefixes = { '/cmd', '/give' },
    words    = { 'forbidden', 'spamword' },
    urls     = true,
}
Set urls = false if you want players to share links freely.

configs/commands.lua

Toggle and gate each built-in command.
Commands = {
    me           = { enabled = true },
    do_          = { enabled = true },
    ooc          = { enabled = true },
    pm           = { enabled = true },
    reply        = { enabled = true },
    announcement = { enabled = true,  group = 'admin' },
    lspd         = { enabled = true,  job = 'police' },
    ems          = { enabled = true,  job = 'ambulance' },
    cls          = { enabled = true },
    clear        = { enabled = true,  group = 'admin' },
    chatadmin    = { enabled = true,  group = 'admin' },
}
Full reference at Commands.

configs/translation.lua

Translation = {
    locale = 'en',
}
To add a language: copy translations/en.lua to translations/<locale>.lua, translate the values, set locale to your filename.

Themes

Each themes/*.json is one look. Drop a new file — it appears in the theme picker. Schema and editor live at Themes.

Applying changes

  • Most edits → restart fxChat
  • Theme edits → /reloadthemes (no restart needed)