BigDaddy-Sound

{:links-list}

INSTALLATION

  1. Open the downloaded ZIP product file and drop the folder in it somewhere in your resources folder.
  2. Add your product key (get it here) to the settings.ini file
  3. Add start BigDaddy-Sound to your server.cfg.

DO NOT RENAME THE FOLDER.

If you change the name of the folder it will not function correctly so leave the name as it is.

{:is-danger}

CONFIGURATION

SETTING DEFAULT DESCRIPTION
[licensing]
key1 productkeyhere Product key
[settings]
debug false Enables debug logs in F8 console
DesyncKey 111111111111 Internal desync/start validation key

HOW TO USE

BASIC USAGE

  • This script plays sounds through NUI when triggered by server events.
  • Sounds can be played:
  • Directly to one client
  • In a radius from a networked entity
  • In a radius from world coordinates
  • Distance-based sounds automatically reduce volume based on player distance.

SERVER EVENTS

Trigger these from server-side scripts.
Do not trigger client sound events directly.

EVENT PARAMETERS DESCRIPTION
BigDaddy-Sound:Server:SoundToClient playerId, soundFile, soundVolume, stopSound Play sound for one player
BigDaddy-Sound:Server:SoundToAll soundFile, soundVolume, stopSound Play sound for all players
BigDaddy-Sound:Server:SoundToRadius networkId, soundRadius, soundFile, soundVolume, stopSound Play positional sound around an entity
BigDaddy-Sound:Server:SoundToCoords x, y, z, soundRadius, soundFile, soundVolume, stopSound Play positional sound around world coordinates
BigDaddy-Sound:Server:SoundToCoordsLooped x, y, z, soundRadius, soundFile, soundVolume, stopSound, loopTime Play positional sound with loop timing value
BigDaddy-Sound:Server:SoundToClientById playerId, soundId, soundFile, soundVolume, stopSound Play/update a player sound channel by id
BigDaddy-Sound:Server:SoundToAllById soundId, soundFile, soundVolume, stopSound Play/update a global sound channel by id
BigDaddy-Sound:Server:SoundToRadiusById networkId, soundRadius, soundId, soundFile, soundVolume, stopSound Play/update entity radius sound by id
BigDaddy-Sound:Server:SoundToCoordsById x, y, z, soundRadius, soundId, soundFile, soundVolume, stopSound Play/update coords sound by id
BigDaddy-Sound:Server:SoundToCoordsLoopedById x, y, z, soundRadius, soundId, soundFile, soundVolume, stopSound, loopTime Play/update looped coords sound by id
BigDaddy-Sound:Server:StopSoundById playerId, soundId Stop one player sound channel by id
BigDaddy-Sound:Server:StopSoundForAllById soundId Stop all players sound channel by id

USAGE EXAMPLES (SERVER)

-- One player
TriggerEvent("BigDaddy-Sound:Server:SoundToClient", source, "notify.ogg", 0.5, false)

-- Everyone
TriggerEvent("BigDaddy-Sound:Server:SoundToAll", "alert.ogg", 0.7, false)

-- Start two sounds at once with different ids
TriggerEvent("BigDaddy-Sound:Server:SoundToClientById", source, "radio", "radio_loop.ogg", 0.35, false)
TriggerEvent("BigDaddy-Sound:Server:SoundToClientById", source, "alarm", "alarm.ogg", 0.8, false)

-- Stop only the radio sound
TriggerEvent("BigDaddy-Sound:Server:StopSoundById", source, "radio")

-- Stop alarm for everyone
TriggerEvent("BigDaddy-Sound:Server:StopSoundForAllById", "alarm")

NOTES

  • soundId is used to separate sounds that may play at the same time.
  • Use the same soundId to stop only that specific sound.
  • stopSound is forwarded to NUI and should match your UI audio stop logic.
  • Volume falloff for radius/coords playback is handled client-side.
  • Sync/desync checks run automatically at resource start and player spawn.