Salty Chat for FiveM
An example implementation of Salty Chat for FiveM OneSync and OneSync Infinity.
If you want to use Salty Chat without OneSync, use the non-onesync branch.
You can report bugs or make sugguestions via issues, or contribute via pull requests - we appreciate any contribution.
Join our Discord and start with Salty Chat!
- Copy the folder
saltychat
into your resources - Build the solution (
saltychat\SaltyChat-FiveM.sln
) with Visual Studio 2019, so the*.net.dll
files get build - Add
start saltychat
into yourserver.cfg
- Open
fxmanifest.lua
and adjust the variables
VoiceEnabled "true"
ServerUniqueIdentifier "NMjxHW5psWaLNmFh0+kjnQik7Qc="
RequiredUpdateBranch ""
MinimumPluginVersion ""
SoundPack "default"
IngameChannelId "25"
IngameChannelPassword "5V88FWWME615"
SwissChannelIds "61,62"
Attention: CFX team implemented a NUI blacklist and blocked local (127.0.0.1
and localhost
) WebSocket connections, so we had to use a workaround.
If the clientside can't connect to the WebSocket, make sure that you can resolve lh.saltmine.de
:
- Open
Windows Command Prompt
by searchingcmd
- Execute
nslookup lh.saltmine.de
If it resolved to 127.0.0.1
then your issue is probably somewhere else, if not then you can use e.g. Google DNS servers.
Description | Control | Default QWERTY |
---|---|---|
Toggle voice range | EnterCheatCode | ~ / ` |
Talk on primary radio | PushToTalk | N |
Talk on secondary radio | VehiclePushbikeSprint | Caps |
Talk with Megaphone | SpecialAbilitySecondary | B |
Parameter | Type | Description |
---|---|---|
isTalking | bool |
true if player starts talking, false when the player stops talking |
Parameter | Type | Description |
---|---|---|
isMicrophoneMuted | bool |
true if player mutes mic, false when the player unmutes mic |
Parameter | Type | Description |
---|---|---|
isSoundMuted | bool |
true if player mutes sound, false when the player unmutes sound |
Get the current radio channel.
Parameter | Type | Description |
---|---|---|
primary | bool |
Whether to get the primary or secondary channel |
Set the current radio channel.
Parameter | Type | Description |
---|---|---|
radioChannelName | string |
Name of the radio channel |
primary | bool |
Whether to set the primary or secondary channel |
Sets player IsAlive
flag.
Parameter | Type | Description |
---|---|---|
netId | int |
Server ID of the player |
isAlive | bool |
true if player is alive, otherwise false |
Starts a call between two players.
Parameter | Type | Description |
---|---|---|
callerNetId | int |
Server ID of the caller |
partnerNetId | int |
Server ID of the call partner |
Ends a call between two players.
Parameter | Type | Description |
---|---|---|
callerNetId | int |
Server ID of the caller |
partnerNetId | int |
Server ID of the call partner |
Turns radio speaker of an player on/off.
Parameter | Type | Description |
---|---|---|
netId | int |
Server ID of the player |
toggle | bool |
true to turn on speaker, false to turn it off |
Sets a player's radio channel.
Parameter | Type | Description |
---|---|---|
netId | int |
Server ID of the player |
radioChannelName | string |
Name of the radio channel |
isPrimary | bool |
true to set the channel as primary, false to set it as secondary |
Removes a player from the radio channel.
Parameter | Type | Description |
---|---|---|
netId | int |
Server ID of the player |
radioChannelName | string |
Name of the radio channel |
Sets the radio towers.
Parameter | Type | Description |
---|---|---|
towers | float[][] |
Array with radio tower positions (X, Y, Z) |