Oxide StudiosOxide Studios

Installation Guide

Complete installation instructions for Oxide Chat.

Table of Contents


Prerequisites

RequirementVersionNotes
FiveM ServerLatestRecommended: Latest artifacts
QBCore FrameworkLatestRequired dependency
ox_libOptionalEnhanced notifications (falls back to QBCore)

Fresh Installation

Step 1: Download

Download the oxide-chat resource and extract it to your resources folder.

resources/
└── [nulldev]/
    └── oxide-chat/
        ├── fxmanifest.lua
        ├── config/
        │   ├── main.lua
        │   ├── commands.lua
        │   └── blacklist.lua
        ├── client/
        │   ├── main.lua
        │   ├── commands.lua
        │   └── compat.lua
        ├── server/
        │   ├── main.lua
        │   └── compat.lua
        ├── html/
        │   ├── index.html
        │   ├── css/
        │   │   ├── variables.css
        │   │   ├── animations.css
        │   │   ├── main.css
        │   │   └── settings.css
        │   └── js/
        │       ├── app.js
        │       └── composables/
        └── locales/
            └── en.lua

Step 2: Server Configuration

Add the resource to your server.cfg:

# After qb-core
ensure qb-core

# Oxide Chat (replaces default chat)
ensure oxide-chat

Step 3: Remove Default Chat

Oxide Chat uses provide 'chat' in its manifest, which replaces the default FiveM chat resource. Ensure you don't have another chat resource running:

# Comment out or remove any existing chat resource
# ensure chat

Step 4: Configure

Edit config/main.lua to customize chat behavior:

Config.MaxMessages = 100         -- Messages in history
Config.MessageFadeTime = 10000   -- Fade delay (ms)
Config.OpenKey = 'T'             -- Key to open chat

See Configuration for all options.

Step 5: Restart

Restart your server or use:

refresh
ensure oxide-chat

Migration from FiveM Chat

Oxide Chat is designed as a drop-in replacement for the default FiveM chat resource.

Automatic Compatibility

The resource provides full compatibility with the standard chat API:

FeatureSupport
chat:addMessage eventFull
chat:addSuggestion eventFull
chat:removeSuggestion eventFull
chat:clear eventFull
chatMessage eventFull
exports['chat']:*Full

What Changes

  1. Visual Appearance: Modern glassmorphic UI replaces the default styling
  2. Additional Features: Proximity chat, job radios, private messaging
  3. Settings Panel: Players can customize their chat experience

Migration Steps

  1. Replace Resource

    • Remove or disable the default chat resource
    • Add oxide-chat to your resources
  2. Update server.cfg

    # Remove or comment out:
    # ensure chat
    
    # Add:
    ensure oxide-chat
  3. Test Existing Scripts

    • All scripts using the standard chat API will continue to work
    • Colors, suggestions, and messages display correctly

Compatibility Events

These events are fully supported:

-- Server-side
TriggerClientEvent('chat:addMessage', source, {
    args = { 'Author', 'Message text' },
    color = { 255, 0, 0 },  -- RGB array or hex string
})

-- Client-side
TriggerEvent('chat:addMessage', {
    args = { 'System', 'Welcome!' },
})

Verification

Check Resource Started

In server console or F8:

ensure oxide-chat

You should see no errors. If debug mode is enabled:

[oxide-chat] Debug mode enabled

Test Chat

  1. Press T to open chat
  2. Type a message and press Enter
  3. Message should appear with modern styling

Test Commands

Try the built-in roleplay commands:

/me waves hello
/do The sun is setting
/ooc This is an OOC message

Test Settings

  1. Open chat with T
  2. Type /chatsettings or click the gear icon
  3. Settings panel should open

Troubleshooting Installation

IssueSolution
Chat doesn't appearCheck F8 console for errors. Ensure resource started.
NUI errorsClear FiveM cache: %localappdata%/FiveM/FiveM.app/data/cache
"Resource not found"Ensure oxide-chat starts after qb-core in server.cfg
Styling brokenVerify all CSS files exist in html/css/ folder
Commands not workingCheck that QBCore is loaded and player is spawned

See Troubleshooting for more solutions.


Next Steps