About This File
Description:
This resources provides the ability to create/control sound in 3D via custom API. Also demonstrates the ability to use custom urls (Radio streams). 3D sound should be synced automatically without the need of extra work.
Notes:
- This resource represents basic functioning of CEF sounds using very basic 3D implementation
- This resource becomes obsolete when RAGEMP releases 1.1 dp2 which introduces 3D sound API.
- This resource doesn't support local mp3 due to some reason with soundManager2. I'll look into it later...
- This resource doesn't support Frontend sound atm, it's really easy to implement it yourself.
API:
// Client-side // FUNCTIONS mp.game.audio.playSound3D(url, pos, volume, range, dimension) /* * url: string (Required) [Links and local package:// protocol are supported] * pos: vector3 (Required) * volume: int (Optional, Default: 1) [Range: 0 to 1] * range: int (Optional, Default: 60) [Max Range: 60] * dimension: (Optional, Default: 0) * Returns Object. * Object Properties: - id (sound's ID) - url (sound's url) - pos (sound's position) - volume (sound's volume) - range (sound's max range) - dimension (sound's dimension) - listeners (players array that are listening to the sound) - paused (If sound is paused) */ mp.game.audio.setSoundVolume(id, volume); /* * id (Sound's ID) * volume (sound's volume) Range (0.1 - 1) */ mp.game.audio.setSoundPosition(id, pos); /* * Useful for portable sound * id (Sound's ID) * pos (sound's new position) */ mp.game.audio.setSoundRange(id, range); /* * id (Sound's ID) * range (Max Range 60) (Increase it by editing the maxRange...) */ // EVENTS: /* * EventName: audioFinish * params: soundID (Sound's ID that is finished Playing) */ /* * EventName: audioError * params: soundID (Sound's ID that had error), errorObject {code: 'error code', error: 'error description'} */ // Example let sound = mp.game.audio.playSound3D('http://rfcmedia.streamguys1.com/MusicPulse.mp3', pos, 60, 1, 0); sound.destroy(); // Destroys the sound sound.pause(); // Pauses the sound sound.resume(); // Resumes the sound
If you have any issues or suggestions, you know the usual routine.
Credits:
- Thanks to George for his 3D voice method.
- Thanks to soundManager 2 for bringing music to life in CEF
I wish you'll enjoy some epic music.
What's New in Version 1.0.0 See changelog
Released
Fixes:
- Fixed anonymous error showing when 2 players+ are inside the sound area
- Fixed volume setting to un-host players
- Changed the the structure of core to support hosts and add plans for future host changing.
- Added song host removal on playerQuit.
- Fixed some fatal mistakes which was a result of fast release of the resource.
Thanks to Mos, Jaeger046 for helping me with testing the resource.

Recommended Comments
There are no comments to display.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now