Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mrfrost-saltynui

mrfrost-saltynui

FiveM Lua React SaltyChat status: archived maintained: no licence: GPL-3.0

A full-screen NUI overlay for FiveM that appears while a player's SaltyChat plugin is not connected. It shows a logo, a headline, a subtitle and two buttons that open a link, typically the server's TeamSpeak and Discord, and it can hold the player's input until voice is working again.

Published as-is and no longer actively maintained — issues and pull requests may not get a response.

Background

These scripts were written for a private GTA V roleplay server and ran there in production. They are published here so the work stays available rather than sitting on a disk, and so anyone who finds them useful can build on them.

Because they were built for one specific server rather than for general release, they expect other resources that are not included here. You will need to supply these yourself, or adapt the code around them:

Requirements

Requirement Why
A FiveM server on a recent artifact The manifest uses fx_version "cerulean" and lua54 "yes"
SaltyChat for FiveM The overlay is driven entirely by the SaltyChat_PluginStateChanged event. Without it the overlay is shown on resource start and never hidden again
Internet access from the game client nui/index.html loads Font Awesome 5.10.0 from a CDN for the button icons, and the stylesheet loads the Montserrat font from Google Fonts. Both fall back to system defaults if unreachable

There is no framework dependency: no ESX, no QBCore, no database, no items and no inventory integration.

Installation

  1. Copy the mrfrost-saltynui folder into your server's resources/ directory.
  2. Add ensure mrfrost-saltynui to your server.cfg, after the line that starts SaltyChat.
  3. Edit mrfrost-saltynui/shared/config.lua. The shipped button URLs are placeholders (ts3server://your.teamspeak.host and https://discord.gg/your-invite) and the shipped title and subtitle are German, so both need changing for most servers.
  4. Optional: replace mrfrost-saltynui/nui/img/logo.svg with your own logo, or point Config.LogoUrl at an external URL.

No SQL and no item definitions are needed.

Configuration

Everything configurable lives in shared/config.lua. The whole Config table is sent to the NUI page as-is, so the key names are part of the interface between the Lua side and the compiled page and cannot be renamed without rebuilding it.

Key Default Purpose
Config.UseCursor true Take NUI focus while disconnected. Required for the buttons to be clickable; it also blocks all game input
Config.LogoUrl "./img/logo.svg" Logo above the title, relative to nui/index.html or an absolute URL
Config.TitleText "SaltyChat nicht verbunden!" Headline
Config.SubTitleText "Bitte verbinde mit unserem TeamSpeak um weiter zu spielen." Line below the headline
Config.ButtonLeftUrl / Config.ButtonRightUrl placeholder URLs Opened in the player's external browser when the button is clicked

The full list, including the icon and label keys, is in docs/configuration.md.

Events

The resource exposes no exports, no commands and no net events. It only listens, all on the client:

Event Fired by Effect
onResourceStart FiveM Sends the config to the page and shows the overlay, so a restart while players are in game restores it
SaltyChat_PluginStateChanged SaltyChat Plugin state 2 or 3 hides the overlay and releases NUI focus; any other value shows it
SaltyChat_SoundStateChanged SaltyChat Stored in a local flag that nothing currently reads

Internally the client talks to the page with two NUI messages, config and toggleWindow; both are described in docs/nui.md.

Documentation

Page Contents
docs/configuration.md Every config key, its type, default and effect
docs/nui.md The interface page: message protocol, styling, replacing the logo, and how the compiled build relates to its React source
docs/known-issues.md Findings from a read-through of the code

Licence

GPL-3.0

About

Full-screen NUI shown while a player is disconnected from SaltyChat. React. Archived, unmaintained.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages