Looking to push your players' entertainment a step forward?
Give them boomboxes, stereos and more to enjoy!
This resource is open source and you can customize it to your liking.
It is a standalone resource and works with any framework. The UI is accessed via the /boombox
command while near an enabled model object for players with Ace permission cs-boombox.control
.
Enabled model objects will be detected and will work regardless of their spawn method. Permission check and how the UI is accessed can be changed by modifying integration/client.lua and integration/server.lua files.
There is also an identifier-based check in parallel to Ace permission which can also be edited in integration/server.lua file to add any player identifiers you want.
Out of the box we provide you with configuration for the prop_boombox_01
object.
As well as the following commands for boombox model control (using the same control permissions):
/create-boombox
- create a boombox nearby./destroy-boombox
- destroy the closest boombox if one is nearby./pickup-boombox
- pick up the closest boombox if one is nearby./drop-boombox
- drop your picked up boombox.
Make sure to join our Discord where people may choose to share their configurations for other models or even share your own if you create one!
Special thanks to FildonPrime for assisting with the resource and bringing up the idea.
- YouTube (live or video) and Twitch (live, video or clip) supported.
- Player position and camera-based 3D audio.
- Minimal UI for full and easy control of what’s happening alongside a queue system.
- Unlimited number of model objects with their own setup given you can create them.
- Range synchronization and considerate optimization for a good balance between performance and features.
- Real-time state synchronization between players for both UI and currently playing media.
- A wide array of events and exports to check and control the resource.
- Extensive configuration to change almost all aspects of the resource to your liking without touching code.
- Lua-based integration for permissions and access control to limit usage of the resource to whoever you like (job-based, permission-based and so on).
- Download cs-boombox and place it in your resources folder.
- Add ensure cs-boombox to your server's configuration file.
- Add add_ace group.admin cs-boombox.control allow to your server's configuration file so Ace admins can access /boombox command (and by default boombox model control related commands).
This check can be changed by modifying integration/server.lua file. - Check the config.lua file inside cs-boombox for further configuration.
- Run the command refresh followed by the command ensure cs-boombox.
- The resource is optimized with range synchronization and assets are loaded only when the player is around an active object.
- Very low-spec computers may experience a more downgraded experience.
- If you want to ensure the resource, you are advised to stop the playback in all active objects first to avoid crashes.
- Minor crackling may be audible on certain songs when the camera is moved due to limitations imposed upon spatial audio.
- Only YouTube and Twitch content is allowed at this time.
- Twitch may throw alerts in live streams about third-party viewing experience and sync may not be optimal. Mature content warning and audio muted warning will be clicked away automatically.
- The resource is loading content in every client by using APIs, embeds and inline frames therefore, does not directly violate any copyright laws.
- If content fails to load or play for any reason for the player who is controlling the UI, it will stop for everyone. If content fails to load or play for any reason for a player who is only viewing / listening, it may attempt to reload for them.
- There are checks in place in an attempt to verify that the transmitted data (titles, thumbnail URL, icon, etc.) are legitimate and are coming from the within resource itself, however since the client sends it, they cannot be fully trusted.