90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!

Music Triggers

Changelog

  • Updated lavaplayer-fork to 1.4.2 which adds support for ogg file seeking, fixes some source issues, adds support for linux-musl, and has a lot more native libraries included (which is why the file size is almost 3x as big)
  • Added support for server enforced configurations via datapacks
  • Added support for resource pack based configurations. Note that only vanilla songs are currently able to be loaded from the redirect, so the song files will still need to be in the client config folder.
  • Reimplemented the music linking as a cross channel system
  • Optimized some stuff for when the same track is played more than once per session
  • Added 2 new debug parameters of ENCODING_QUALITY and RESAMPLING_QUALITY which can be lowered to combat potential audio stutters
  • Added a MAX_HOVER_ELEMENTS debug parameter with a default value of 15 to truncate excessively long mouse hover information in the GUI
  • Added support for an "all" modid in the BLOCKED_MOD_CATEGORIES debug parameter to block sound categories regardless of the modid the sound was registered under
  • Added a forceOverwrite parameter to all addTrigger methods for devs that know what they are doing and want to add compatability to triggers that are already registered
  • Fixed the channels thread crashing when there were no currently playable triggers with songs attached
  • Added a max_tracks parameter for all triggers which determines how many songs a trigger is able to play before it is no longer active. Resets when the conditions to activate the trigger are no longer met
  • Added additional levels to the play_once parameter where 3 plays once per login, 4 plays once per world, and 5 plays once per session
  • Fixed the loop counter for song loops not getting reset when the song is stopped
  • Added an inventory trigger to check whether certain inventory slots contain certain item types
  • Added a blockentity trigger to check whether certain block entities are within a specified range of the player
  • Added a detection_y_ratio for more nuanced detection_range checks
  • Added a stop_delay parameters for all triggers to determine how many ticks it takes a trigger to be playable again once it stops being active
  • Files in song folders that do not have valid file extentsions are now ignored
  • Parameter values are no longer all stored as strings by default to allow for more intelligent parsing and to decrease the usage of separator characters
  • Added a system for trigger specific default parameter values
  • The level parameter is no longer required for the mob trigger as it will be set to 1 by default now
  • Changed the separator character in the mob_nbt parameter from : to ;
  • The BOSS case of the mob trigger now stores an entity reference for the boss bars it checks, giving the special case access to all of the parameters accepted for the mob trigger and the ability to use mob ids rather than only display names
  • Fixed serverside trigger calculations not properly utilizing default parameters and random number ranges
  • Default "ANY" values for list parameters will now always be capitalized
  • Biome triggers now activate if either the resource_name or the biome_category pass, with the other checks still being additive
  • Most resource_name checks will now pass if the list is empty or contains "ANY"
  • Stopped the vanilla music ticker from messing up audio and impacting performance at times like the ender dragon fight
  • Made the various log messages when a channel attempts to register an audio track more streamlined and comprehensive.
  • Fixed some incorrect volume calculations that led to volume spikes when fading in, other weird fading issues, and very high volumes at low category/master volumes
  • Fixed the "not" parameter running twice for server side triggers
  • Added support for animated image cards via vertical (1 column) sprite sheets
  • Added a resume_on_play song parameter that lets the current position of the audio be saved before getting stopped and resume when it starts playing again
  • Added a play_x song parameter where a song has to play x number of times before the play_once parameter is activated
  • Parameters incorrectly stored as a string that are supposed lists are now read in as if they are a single element list
  • Fixed the pvp trigger
  • Fixed the victory trigger
  • Fixed reverse fading not working properly
  • Fixed the menu and loading triggers not applying default parameters like fade and delay
  • Removed the unused priority parameter from the loading, menu, and generic parameters
  • Fixed a crash when using non-UTF-8 encoded strings in parameters for serverside triggers
  • Added 2 new command shortcuts of '/musictriggers player reload' or '/mt reload' to quickly reload and '/musictriggers player debug' or '/mt player debug' to toggle the debug information on/off without the GUI
  • Reformatted the command trigger to '/musictriggers player commandtrigger identifier' or '/mt player commandtrigger identifier'
  • Channels are now listed alphabetically in the debug info
  • Finished implementing the jukebox config
  • Added a cache to the statistic and blockentity triggers
  • Fixed various issues and bad code related to tick based parameter (persistence, fading, delays, etc)
  • Fixed the difficulty trigger
  • Added a Reload Event (mods.thecomputerizer.musictriggers.client.data.Trigger$ReloadEvent) that [Forge] gets posted to the event bus when trigger data is reloaded for other mods to be able to add custom triggers and parameters in the right spot
  • Fixed the riding trigger check being reversed
  • Moved initial channel registration to the FMLCommonSetupEvent phase instead of the mod constructor to give other mods a chance to register the new Reload Event
  • Added support for Enhanced Celestials bloodmoon, bluemoon, harvestmoon, and custom moons
  • Added support for stopping the Blue Skies MusicTicker implementation
  • Fixed the gamestage trigger
  • Toggle Changes:
    • Improved error logging for toggle registration
    • Added a toggle_save_status parameter for all triggers to determine if and how the current toggle status for a trigger gets saved between sessions and relogs.
    • Triggers that get toggled on now queue their respective from conditions for the next check (5 ticks) instead of running immediately.
    • Added a channel parameter for to tables so the toggle status for triggers registered to other channel can be manipulated.
    • Added a channel_activation parameter for toggling entire channels on/off. Toggling a channel off while it is playing audio will still allow it to fade out when applicable.
  • GUI Changes:
    • The playback screen can now set the current position for audio tracks that are seekable
    • Fixed the value for the channel parameter Overrides Normal Music (previously known as Overrides Default Audio) not getting saved
    • Added the ability for all editable text fields to copy to (Ctrl+C) and paste from (Ctrl+V) the clipboard
    • Messages in the log visualizer screen are now broken into multiple lines if needed
    • Fixed messages in the log visualizer not always appearing in the correct order
    • Added a search bar to the log visualizer screen
    • Made the screens with the large square icons scrollable when necessary
    • The sort type for any screens that accept it will now be saved even across restarts
    • Moved the identifiers for registered triggers from the hover text to the labels
    • Fixed numerous incorrect descriptions for title and image cards
    • Made the rest of the valid title card parameters accessible (time, fade_in, fade_out, & opacity)
    • Fixed multiple triggers sometimes being added when adding a new trigger
    • Fixed some scroll calculation and rendering issues
    • Removed unused hover information from the redirect info screen
    • Fixed redirect entries getting saved without clicking on Apply Changes
    • Fixed multiple elements being selected in the redirect and jukebox screens
    • Parameters that are supposed to be lists are now enforced as such instead of dynamically determining the type
    • Filtered out quotes for parameters since those are handled automatically
    • Parameters are now listed alphabetically
    • Parameters now show their text ID values as mouse hover information
    • Moved loops to the parameters screen for songs so the parameters need 1 less click to access
    • Button positions are now dynamically readjusted when the width of a button changes
    • Universal Trigger Parameters and Universal Song Parameters are now always listed first in their respective screen regardless of the sort type
    • Adding a song to the jukebox config now pulls up a list of registered songs to choose from
    • Song and channel names with invalid characters are now properly refused

Files

musictriggers-1.18.2-6.3.jar(32.83 MiB) Primary Download

Project members

The_Computerizer

Owner

Details

Licensed MIT
Published 2 years ago
Updated a year ago