Skip to content

Releases: Mindgamesnl/OpenAudioMc

6.10.1

06 May 12:46
607e11c
Compare
Choose a tag to compare

6.10.1

  • Fix compatibility using paper 1.20.5+
  • Bump NBT API version
  • improved concurrency control during connection state setup
  • improved client messaging when an unknown baseurl is used on a server which does not have a custom client whitelisted
  • the options.token-auto-login setting now gets respected on servers running through vistas
  • added stopFor API methods
  • the SourceHolder interface now supplies an exposed setter method
  • worldguard regions with negative priorities are now supported
  • removeStaticPeer and addStaticPeer now respect the ClientPeerAddEvent and ClientPeerRemovedEvent events
  • Fixed a few bugs where channels would still have members who have since disconnected or switched servers
  • Added a whole new API to interact with channels
  • Added a configuration option to define a max radius for speakers

6.10.1-pre1

05 May 21:58
Compare
Choose a tag to compare
6.10.1-pre1 Pre-release
Pre-release

6.10.1 - Pre-release 1

  • Fix compatibility using paper 1.20.5+
  • Bump NBT API version
  • improved concurrency control during connection state setup
  • improved client messaging when an unknown baseurl is used on a server which does not have a custom client whitelisted
  • the options.token-auto-login setting now gets respected on servers running through vistas
  • added stopFor API methods
  • the SourceHolder interface now supplies an exposed setter method
  • worldguard regions with negative priorities are now supported
  • removeStaticPeer and addStaticPeer now respect the ClientPeerAddEvent and ClientPeerRemovedEvent events

6.10.0

25 Feb 15:50
1493bfe
Compare
Choose a tag to compare

Update time again! and a juicy one at that!
This release includes major changes, new features and improvements to voice chat, the API, the web client, media, commands, and much more!

This update spent over a month in development, with multiple weeks of daily full-time work and contributions from multiple community members.

It’s a big change log, but please take a moment to go through it to see what it means for your server. Changes/notes are grouped by topic but in no particular order.

Voice Chat

  • Added voice channels!
    image
    You can now create voice chat channels, letting players talk globally and in groups without needing them to be nearby (or even in the same world). You can create channels in the config with optional custom permissions (locking some behind ranks for example), or allow players to create temporary channels and invite others. There’s a lot more to it, all covered in the new matching documentation article. OpenAudioMc Documentation - VoiceChat Channels
  • Filters are now built into the plugin! (these used to be separate modules)
    Filters give you control over who players can talk to in proximity voice chat and can be found in your config file. Filters include require-same-gamemode, require-common-team and require-no-channel. More details can be found in the matching documentation article OpenAudioMc Documentation - VoiceChat Filters
  • The system to gather voice chat peers has been improved, almost doubling performance on large servers and adding new cancellable API events to modify metadata for peers.
  • Added support for peer metadata updates, letting you hide specific players from the UI (while still being able to hear them) or disable their spatial audio effect. This can be updated on the fly, without dropping the peer.
  • Expanded the API to add support for non-proximity-based peers, allowing you to implement features like phones. More on this later.

Command handling

  • Tab-completion has been overhauled! providing full completion for sub-arguments. The plugin also synchronises uploaded files within your account, letting you tab-complete media sources. It can also tab-complete aliases and playlists on spigot servers (which you can now force to handle your command with /oas)
    image
  • Tab-completion now works on BungeeCord servers
  • added the /oas or /openaudiospigot command, for when you’re running a proxy but need to specify a command to run on the subserver.
  • There have been a ton of internal improvements for commands, namely for selector providers.
  • added /channel for the voice channel feature

Media

  • Media caching was redesigned from the ground up
    The media pool was broken on some modern browsers, which have now been fixed, and it’s way better at handling sources of different types. The pool will now also rehydrate itself after a source is used, meaning that you can keep media in the cache after it gets played. This is enabled by default in the config and provides significant performance improvements to re-used media sources in features like regions (as long as preloading is used)
  • You can now forcefully preload media through a command (/oa preload <source>), which is extremely useful for time-sensitive media (such as shows). More on this can be found in its new documentation article OpenAudioMc Documentation - The Preload command
  • Fixed cors for 3d speakers using media from a third-party domain

API

  • The major changes this update brings across the board were the trigger to re-evaluate the API the plugin previously offered, and how limited it was. A good amount of time was spent during this update rebuilding the API. The new API is similar enough to the old one that migrating shouldn’t take more than 5 minutes. It’s now its dedicated artefact too, no longer requiring you to build the entire plugin, while exposing a lot more functionality. The old API is still where it is, and powered by a mostly backwards-compatible layer (though everything is marked as deprecated, and will be removed in a future release. You can read more about the migration here: OpenAudioMc Documentation - Migrating your integrations to ^6.10.0
  • We now have a living javadoc site at https://javadoc.openaudiomc.net/, with a lot more documentation for everything.
  • The documentation article has been rewritten to reflect the new API and provides a ton of examples and details to get you going fastest OpenAudioMc Documentation - Building against the Java API

Misc

  • The plugin now uses proper log levels
  • PlaceholderAPI placeholders will now persist even if it reloaded (through for example /papi reload)
  • Servers running in offlinemode or using a free server host (such as minehut) now get a clickable message which will automatically set some common config values, instead of giving them an error message with instructions.
  • Teleporting will now instantly force a player’s set of regions to update
  • Regions will now all initialise on start, syncing their initial time code. This new behaviour is enabled by default, but you can disable it in the config which will completely restore the original behaviour.
  • The documentation now also lists relevant permissions per topic and links to useful Javadoc pages (if applicable)
  • 1.8 is now supported out-of-the-box, no longer requiring the legacy module to be installed manually. You will need to manually uninstall the module if you still have it.
  • Updated internal dependencies
  • General client UX improvements
  • Vistas now supports Redis Sentinel and ipv6! Courtesy of Mathéo (aka @DiscowZombie)
  • Config/database backups now work on Windows servers, use the proper folder and will log fatal errors.
  • The plugin is now far more fault-tolerant to spontaneous network interruptions between the plugin and our infrastructure. Both connection types will now try to reconnect a few times after an unexpected connection loss. Web clients will remain logged in for a few moments, waiting for the plugin to come back online and are only kicked after extended connection issues, meaning that voice chat and normal media will not be interrupted in most cases. The plugin will queue important packets (media start/stop and peer changes) to sync back up with the client once the connection is restored.

Where is 6.9.0? did you skip a version?

Yes, I did! This updated started as 6.8.10, but quickly outgrew that status as this cannot be described as a minor release. I also chose to skip the 6.9.0 major entirely because of its meme status.

Special thanks

A lot of changes in this update are based on community feedback, and there are quite a few people who stood out for their help.

  • Thank you DiscowZombie for your Redis sentinel PR, and early testing/feedback from the new API
  • Thank you Verum for the help implementing the persistent PlaceholderAPI hooks
  • Thank you SROrel for early testing and helping debug early issues with voice chat channels

Pull requests

Read more

Channels - Completion - Api - And much, much more

23 Feb 14:41
Compare
Choose a tag to compare

Beta notice

please use the client https://beta.openaudiomc.net/ while using this as a pre-release version.

Change log and notes for 6.10.0

Update time again! and a juicy one at that!
This release includes major changes, new features and improvements to voice chat, the API, the web client, media, commands, and much more!

This update spent over a month in development, with multiple weeks of daily full-time work and contributions from multiple community members.

It’s a big change log, but please take a moment to go through it to see what it means for your server. Changes/notes are grouped by topic but in no particular order.

Voice Chat

  • Added voice channels!
    image
    You can now create voice chat channels, letting players talk globally and in groups without needing them to be nearby (or even in the same world). You can create channels in the config with optional custom permissions (locking some behind ranks for example), or allow players to create temporary channels and invite others. There’s a lot more to it, all covered in the new matching documentation article. OpenAudioMc Documentation - VoiceChat Channels
  • Filters are now built into the plugin! (these used to be separate modules)
    Filters give you control over who players can talk to in proximity voice chat and can be found in your config file. Filters include require-same-gamemode, require-common-team and require-no-channel. More details can be found in the matching documentation article OpenAudioMc Documentation - VoiceChat Filters
  • The system to gather voice chat peers has been improved, almost doubling performance on large servers and adding new cancellable API events to modify metadata for peers.
  • Added support for peer metadata updates, letting you hide specific players from the UI (while still being able to hear them) or disable their spatial audio effect. This can be updated on the fly, without dropping the peer.
  • Expanded the API to add support for non-proximity-based peers, allowing you to implement features like phones. More on this later.

Command handling

  • Tab-completion has been overhauled! providing full completion for sub-arguments. The plugin also synchronises uploaded files within your account, letting you tab-complete media sources. It can also tab-complete aliases and playlists on spigot servers (which you can now force to handle your command with /oas)
    image
  • Tab-completion now works on BungeeCord servers
  • added the /oas or /openaudiospigot command, for when you’re running a proxy but need to specify a command to run on the subserver.
  • There have been a ton of internal improvements for commands, namely for selector providers.
  • added /channel for the voice channel feature

Media

  • Media caching was redesigned from the ground up
    The media pool was broken on some modern browsers, which have now been fixed, and it’s way better at handling sources of different types. The pool will now also rehydrate itself after a source is used, meaning that you can keep media in the cache after it gets played. This is enabled by default in the config and provides significant performance improvements to re-used media sources in features like regions (as long as preloading is used)
  • You can now forcefully preload media through a command (/oa preload <source>), which is extremely useful for time-sensitive media (such as shows). More on this can be found in its new documentation article OpenAudioMc Documentation - The Preload command
  • Fixed cors for 3d speakers using media from a third-party domain

API

  • The major changes this update brings across the board were the trigger to re-evaluate the API the plugin previously offered, and how limited it was. A good amount of time was spent during this update rebuilding the API. The new API is similar enough to the old one that migrating shouldn’t take more than 5 minutes. It’s now its dedicated artefact too, no longer requiring you to build the entire plugin, while exposing a lot more functionality. The old API is still where it is, and powered by a mostly backwards-compatible layer (though everything is marked as deprecated, and will be removed in a future release. You can read more about the migration here: OpenAudioMc Documentation - Migrating your integrations to ^6.10.0
  • We now have a living javadoc site at https://javadoc.openaudiomc.net/, with a lot more documentation for everything.
  • The documentation article has been rewritten to reflect the new API and provides a ton of examples and details to get you going fastest OpenAudioMc Documentation - Building against the Java API

Misc

  • The plugin now uses proper log levels
  • PlaceholderAPI placeholders will now persist even if it reloaded (through for example /papi reload)
  • Servers running in offlinemode or using a free server host (such as minehut) now get a clickable message which will automatically set some common config values, instead of giving them an error message with instructions.
  • Teleporting will now instantly force a player’s set of regions to update
  • Regions will now all initialise on start, syncing their initial time code. This new behaviour is enabled by default, but you can disable it in the config which will completely restore the original behaviour.
  • The documentation now also lists relevant permissions per topic and links to useful Javadoc pages (if applicable)
  • 1.8 is now supported out-of-the-box, no longer requiring the legacy module to be installed manually. You will need to manually uninstall the module if you still have it.
  • Updated internal dependencies
  • General client UX improvements
  • Vistas now supports Redis Sentinel and ipv6! Courtesy of Mathéo (aka @DiscowZombie)
  • Config/database backups now work on Windows servers, use the proper folder and will log fatal errors.
  • The plugin is now far more fault-tolerant to spontaneous network interruptions between the plugin and our infrastructure. Both connection types will now try to reconnect a few times after an unexpected connection loss. Web clients will remain logged in for a few moments, waiting for the plugin to come back online and are only kicked after extended connection issues, meaning that voice chat and normal media will not be interrupted in most cases. The plugin will queue important packets (media start/stop and peer changes) to sync back up with the client once the connection is restored.

Where is 6.9.0? did you skip a version?

Yes, I did! This updated started as 6.8.10, but quickly outgrew that status as this cannot be described as a minor release. I also chose to skip the 6.9.0 major entirely because of its meme status.

Special thanks

A lot of changes in this update are based on community feedback, and there are quite a few people who stood out for their help.

  • Thank you DiscowZombie for your Redis sentinel PR, and early testing/feedback from the new API
  • Thank you Verum for the help implementing the persistent PlaceholderAPI hooks
  • Thank you SROrel for early testing and helping debug early issues with voice chat channels

6.10.0-pre9

21 Feb 20:56
Compare
Choose a tag to compare
6.10.0-pre9 Pre-release
Pre-release

What's Changed

  • Feature/auto reconnect by @Mindgamesnl in #411
    • This adds auto reconnect support for voicechat and core data
  • Fixed tab-complete for the region commands

Full Changelog: 6.10.0-pre8...6.10.0-pre9

6.10.0-pre8

19 Feb 17:04
Compare
Choose a tag to compare
6.10.0-pre8 Pre-release
Pre-release

Before you continue

  1. Use beta.openaudiomc.net as your client base URL
  2. Make sure to check your api integrations, if your legacy addon/plugin gets broken, LET ME KNOW ASAP
  3. Check the javadoc at https://javadoc.openaudiomc.net/

What's Changed

  • Add API for media replenishing by @Mindgamesnl in #410
  • Implemented cleanup for media preloading
  • Various cors fixes

Full Changelog: 6.10.0-pre7...6.10.0-pre8

6.10.0-pre7

15 Feb 18:56
Compare
Choose a tag to compare
6.10.0-pre7 Pre-release
Pre-release

Before you continue

  1. Use beta.openaudiomc.net as your client base URL
  2. Make sure to check your api integrations, if your legacy addon/plugin gets broken, LET ME KNOW ASAP
  3. Check the javadoc at https://javadoc.openaudiomc.net/

What's Changed

Full Changelog: 6.10.0-pre6...6.10.0-pre7

6.10.0-pre6

11 Feb 18:00
faa7278
Compare
Choose a tag to compare
6.10.0-pre6 Pre-release
Pre-release

Before you continue

  1. Use beta.openaudiomc.net as your client base URL
  2. Make sure to check your api integrations, if your legacy addon/plugin gets broken, LET ME KNOW ASAP
  3. Check the javadoc at https://javadoc.openaudiomc.net/

What's Changed

Full Changelog: 6.10.0-pre5...6.10.0-pre6

6.10.0-pre5 - Events, API, Regions, automation, PAPI

08 Feb 18:43
c739589
Compare
Choose a tag to compare

Be sure to use https://beta.openaudiomc.net/ as your client

What's Changed

  • Add persist method by @Mindgamesnl in #393
  • [feature] New event driver + api by @Mindgamesnl in #396
  • [feature] Automatically help some users setup the plugin with offlinemode by @Mindgamesnl in #394
  • [fix] wait until teleportation went through before re-updating player… by @Mindgamesnl in #395
  • [fix] Handlers now persist between papi reloads

Full Changelog: 6.8.10-pre4...6.10.0-pre5

6.8.10-pre4

04 Feb 20:35
6199b7a
Compare
Choose a tag to compare
6.8.10-pre4 Pre-release
Pre-release

What's Changed

  • Voicechat without spatial audio, and without having to reload the ses… by @Mindgamesnl in #387
  • Feature/rework proximity ticking by @Mindgamesnl in #388
  • Minor chores (logging during backups, backup compatibility on windows servers, fixes to datafiles on windows servers, errors when empty sources are used, warnings when a selection is empty) by @Mindgamesnl in #389
  • Feature/new base api (OA main api) by @Mindgamesnl in #391
  • Add base api (voicechat) by @Mindgamesnl in #390
  • Feature/voice-channels by @Mindgamesnl in #392

Be sure to use the beta client! the current production client WILL NOT WORK WITH THIS

Full Changelog: 6.8.10-pre3...6.8.10-pre4