Oxide Chatv2.0.0
MajorAdded
- Custom chat channels: build your own slash-command channels (job radios, staff chat, gang chat) with per-channel styling, aliases, scope (members / global / broadcast / proximity), job or admin restriction, minimum grade, on-duty requirement, and cooldown — all in
Config.ChatChannelsor live in-game - In-game server settings editor (
/chat settings, admin only): configuration is now edited live and saved to the database, no file edits or restarts needed after setup - Friends & block list:
/friend add [id]//friend remove [id]plus a friends panel in the chat UI with requests, online status, and blocking; blocking stops private messages in both directions - Inline images & GIFs: pasted image links embed in any message type (allowed hosts set via
Config.ImageHosts), plus a Discord-style GIF picker powered by Giphy (addset oxide:chat:giphy_key your-keyto server.cfg); images have their own cooldown and optional job/admin restriction - @mentions: type
@to autocomplete online player names; mentions are highlighted, including your own name when someone mentions you - Chat category tabs above the message list (All / Local / Global / Job / PMs by default), fully configurable via
Config.Categories; players can hide the tab bar - Automatic announcements: a rotating list of server-wide broadcasts on a timer (
Config.AutoBroadcasts), in order or random, skipped while the server is empty, toggled live with/chat autobroadcast on|off - Announcements support an optional heading with
Title | Bodysyntax - 10 chat style presets (Bubbles, Discord, Timeline, Masonry, Compact, Cards, Float, Panel, Retro, Glass) plus new appearance options: chat height, 12/24-hour timestamps, message density, and a private-message color
- Integration API for other resources: read or change any chat setting at runtime (
GetSetting/SetSetting) and query or manage the friends & block list from your own scripts — seedocs/EXPORTS.md
Changed
- BREAKING: new required dependencies
o-linkandoxmysql— update your server.cfg start order (see docs/INSTALLATION.md) - BREAKING:
Config.ChatTypeswas replaced byConfig.ChatChannels, one list that styles the built-in message types and defines custom channels; the default job radios (/lspd,/medic,/mechanic) are now ordinary channel rows you can edit, remove, or copy - Admin commands consolidated under
/chat:/announce→/chat announce,/clearchat→/chat clear,/testchat→/chat test; player customization opens with/chat customize - Admin commands now use the standard framework admin check, so stock QBCore/QBX/ESX admin setups work without extra ACE configuration
- Chat position and size are now per-player settings (the fixed
Config.UIposition/width/height options were removed)
Fixed
- Sending while on cooldown now tells you how long to wait instead of silently dropping the message
- Command suggestions correctly mark optional vs required arguments and refresh reliably when other resources start
Migration Guide
- In server.cfg, make sure
oxmysqlando-linkstart beforeoxide-chat. - Database tables are created automatically on first start. To import them manually instead, run
sql/install.sql(fresh install) orsql/migrations/0001_friends_and_blocks.sql+sql/migrations/0002_settings.sql(existing install). - If you had customized
Config.ChatTypes, re-apply those styles as rows inConfig.ChatChannels— or just edit them in-game via/chat settings. - After the first start, settings live in the database; change them with
/chat settingsin-game.config/main.luaonly supplies defaults for keys the database doesn't have yet. - Players who used a removed style preset are automatically switched to the new Bubbles preset.