Installation Guide
Complete installation instructions for Oxide Chat.
Table of Contents
Prerequisites
| Requirement | Version | Notes |
|---|---|---|
| FiveM Server | Latest | Recommended: Latest artifacts |
| QBCore Framework | Latest | Required dependency |
| ox_lib | Optional | Enhanced 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:
| Feature | Support |
|---|---|
chat:addMessage event | Full |
chat:addSuggestion event | Full |
chat:removeSuggestion event | Full |
chat:clear event | Full |
chatMessage event | Full |
exports['chat']:* | Full |
What Changes
- Visual Appearance: Modern glassmorphic UI replaces the default styling
- Additional Features: Proximity chat, job radios, private messaging
- Settings Panel: Players can customize their chat experience
Migration Steps
-
Replace Resource
- Remove or disable the default chat resource
- Add oxide-chat to your resources
-
Update server.cfg
# Remove or comment out: # ensure chat # Add: ensure oxide-chat -
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
- Press T to open chat
- Type a message and press Enter
- 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
- Open chat with T
- Type
/chatsettingsor click the gear icon - Settings panel should open
Troubleshooting Installation
| Issue | Solution |
|---|---|
| Chat doesn't appear | Check F8 console for errors. Ensure resource started. |
| NUI errors | Clear FiveM cache: %localappdata%/FiveM/FiveM.app/data/cache |
| "Resource not found" | Ensure oxide-chat starts after qb-core in server.cfg |
| Styling broken | Verify all CSS files exist in html/css/ folder |
| Commands not working | Check that QBCore is loaded and player is spawned |
See Troubleshooting for more solutions.
Next Steps
- Configure the chat - Customize ranges, cooldowns, and behavior
- Learn the commands - Explore roleplay and job chat commands
- Use the API - Integrate with your resources
- Customize the UI - Modify colors and styling
- Explore features - Discover all capabilities