Professional weapon sound replacement resource for FiveM servers
A lightweight, performance-optimized FiveM resource that enhances the game audio experience by replacing default GTA V sounds with custom alternatives. Features intelligent audio streaming, memory management, and extensive configuration options.
- Features
- Requirements
- Installation
- Configuration
- Usage
- Exports
- Performance Tuning
- Troubleshooting
- Contributing
- License
- Credits
- π΅ Custom Audio Replacement - Replaces default weapon, environmental, and vehicle sounds
- β‘ Smart Memory Management - Intelligent audio bank loading and unloading
- ποΈ Granular Controls - Per-category volume and enable/disable toggles
- π« Weapon Filtering - Apply custom sounds to specific weapons only
- π Performance Options - Choose between preload and on-demand streaming
- π§ Extensive Configuration - Customize every aspect of audio playback
- π Debug System - Built-in logging and diagnostics
- π Export API - Programmatic control for external resources
| Component | Version |
|---|---|
| FiveM Server | Build 4752+ |
| Game | GTA V |
| Client RAM | 8GB+ recommended |
Download the latest release and extract to your server's resources directory.
Add the resource to your server.cfg:
ensure dps-weaponsoundsRestart your FiveM server or use the command:
restart dps-weaponsounds
All settings are located in config.lua. Below are the primary configuration options:
| Setting | Type | Default | Description |
|---|---|---|---|
MasterVolume |
float | 1.0 |
Global volume multiplier (0.0-1.0) |
EnableWeaponSounds |
boolean | true |
Toggle weapon audio |
EnableEnvironmentSounds |
boolean | true |
Toggle environmental audio |
EnableVehicleSounds |
boolean | true |
Toggle vehicle audio |
EnableFootstepSounds |
boolean | true |
Toggle footstep audio |
PreloadAllSounds |
boolean | false |
Load all audio on startup |
BankReleaseDelay |
integer | 300 |
Seconds before unloading unused audio |
Individual volume multipliers for each category:
Config.AudioSettings = {
WeaponVolume = 1.0, -- Weapon sounds
EnvironmentVolume = 1.0, -- Ambient sounds
VehicleVolume = 1.0, -- Vehicle sounds
FootstepVolume = 1.0, -- Footstep sounds
ExplosionVolume = 1.0, -- Explosion sounds
}Restrict custom sounds to specific weapons:
Config.WeaponOverrides = {
[GetHashKey("WEAPON_PISTOL")] = true,
[GetHashKey("WEAPON_COMBATPISTOL")] = true,
}Note: Leave the table empty to apply sounds to all weapons.
Config.Debug = {
Enabled = false, -- Enable console logging
ShowNotifications = false, -- Show in-game notifications
}Once installed and configured, the resource operates automatically. Audio banks load based on your configuration settings.
To troubleshoot or monitor audio loading:
- Open
config.lua - Set
Config.Debug.Enabled = true - Restart the resource
- Check console (F8) for detailed logs
For servers with limited resources:
Config.AudioSettings.PreloadAllSounds = false -- Load on-demand
Config.AudioSettings.BankReleaseDelay = 180 -- Unload after 3 minutesFor servers prioritizing audio quality:
Config.AudioSettings.PreloadAllSounds = true -- Load everything at start
Config.AudioSettings.BankReleaseDelay = 0 -- Never unloadThe resource exposes the following exports for programmatic control:
Manually load all audio banks.
exports['dps-weaponsounds']:LoadCustomSounds()Manually unload all audio banks.
exports['dps-weaponsounds']:UnloadCustomSounds()Check if a specific audio bank is currently loaded.
local isLoaded = exports['dps-weaponsounds']:IsAudioBankLoaded('CUSTOM_WEAPON_SOUNDS')
if isLoaded then
print("Weapon sounds are active")
endAvailable Bank Names:
CUSTOM_RESIDENT_SOUNDS- Environmental/ambient audioCUSTOM_WEAPON_SOUNDS- Weapon audio
The resource implements several optimization strategies:
Audio banks load only when needed, reducing initial memory footprint.
Config.AudioSettings.PreloadAllSounds = falsePros: Lower memory usage, faster initial load Cons: Brief delay when first equipping weapons
Unused audio banks automatically unload after a configurable delay.
Config.AudioSettings.BankReleaseDelay = 300 -- 5 minutesLower values = More aggressive memory management Higher values = Less frequent reloading
PreloadAllSounds = false
BankReleaseDelay = 120PreloadAllSounds = false
BankReleaseDelay = 300PreloadAllSounds = true
BankReleaseDelay = 0Reduce resource usage by disabling unneeded sound categories:
Config.AudioSettings = {
EnableWeaponSounds = true,
EnableEnvironmentSounds = false, -- Disabled
EnableVehicleSounds = false, -- Disabled
EnableFootstepSounds = true,
}Symptoms: No custom sounds are audible in-game
Solutions:
- Verify resource is started: Check
server.cfgcontainsensure dps-weaponsounds - Check resource name: Ensure folder name matches what's in
server.cfg - Enable debug mode: Set
Config.Debug.Enabled = trueand check console (F8) - Verify file paths: Ensure all paths in
fxmanifest.luaare correct
Symptoms: "Oversized asset" or memory-related warnings
Solutions:
- Enable on-demand loading:
PreloadAllSounds = false - Reduce unload delay:
BankReleaseDelay = 120 - Disable categories: Turn off unused sound categories
- Check streaming limits: Increase server-side streaming limits if needed
Symptoms: Client lag or stuttering
Solutions:
- Use on-demand loading:
PreloadAllSounds = false - Increase release delay:
BankReleaseDelay = 600 - Reduce volume: Lower individual category volumes
- Check conflicts: Disable other sound resources temporarily
Symptoms: Sounds cut out or overlap incorrectly
Solutions:
- Check load order: Place this resource first in
server.cfg - Use weapon overrides: Limit scope to specific weapons
- Review other resources: Ensure no other resources replace the same audio banks
Run through this checklist when troubleshooting:
- Resource appears in
server.cfg - Resource shows as "started" in server console
- No errors in server console on startup
- No errors in client console (F8)
- Debug mode enabled and showing logs
- File paths in
fxmanifest.luamatch actual files -
.awcfiles exist instream/sfx/directories
Contributions are welcome! If you'd like to improve this resource:
- Fork the repository
- Create a feature branch (
git checkout -b feature/improvement) - Commit your changes (
git commit -am 'Add new feature') - Push to the branch (
git push origin feature/improvement) - Open a Pull Request
- Maintain existing code style
- Test thoroughly before submitting
- Update documentation for new features
- Follow semantic versioning
This project is licensed under the GNU General Public License v3.0.
See LICENSE for complete terms.
- β Free to use, modify, and distribute
- β Source code must remain open
- β Derivative works must use GPL-3.0
- β No warranty provided
Author: DPS Development Team Organization: DPS Development Version: 2.0.0 Repository: GitHub
- FiveM Community for documentation and support
- OpenIV team for audio conversion tools
- All contributors and testers
Need help? Check these resources:
- π Configuration Guide
- π§ Troubleshooting
- π Debug Mode
For additional support, enable debug mode and review console output for diagnostic information.
Made with β€οΈ by DPS Development