### Version 2.7.12:
- Fixed crash related to the Sable mod when using the `$skylight_potential` property.
### Version 2.7.11:
- Fixed crash related to the Sable mod when using the `$cave_score` property.
### Version 2.7.10:
- Improved stability of music player during Minecraft startup as well as auto-reload on music player crash.
- Fixed `@warden_nearby` causing music player crash if game thread hangs for a while.
- Fixed music player caches when entity lookup fails. (thank you create_xiaoyu)
- Fixed null-pointer crashes in various event handlers. (thank you create_xiaoyu)
### Version 2.7.9:
- Reworded the "auto-reloaded music player" toast to make it clearer that the auto-reload is actually successful.
- Fixed music player crash when main game thread hangs for a while.
### Version 2.7.8:
- Fixed music player crash with FLAC files where no metadata is present.
- Fixed bug that causes the game to freeze when combat is registered.
### Version 2.7.7:
- Fixed crash when joining server with other players online in some versions of Minecraft.
- Fixed rare mod-conflict and crash due to cross-threaded access to world entities.
* The `@village`, `@ranch`, and `@warden_nearby` now only update once a second to reduce load on main game thread.
- Attempted to fix rare music player crash on startup in huge modpacks.
- Attempted fix at vanilla music and custom music overlapping.
- Fixed crash with sufficiently low gain on music file (e.g. `"..."<-50.0>`).
- The music player will now automatically attempt to restart once upon crash.
### Version 2.7.6:
- Fixed issue where combat tracking breaks when certain combat mods are installed (or at least Epic Fight and SlashBlade).
- Fixed issue where combat tracking generally did not work properly in multiplayer (while working in singleplayer).
- Fixed music player crashes related to MP3 file metadata parsing.
- Fixed problem where mods that constantly update the music volume cause the game rendering to hang for the duration of Ambience Mini's fade in/out effect when changing music.
* Why constantly update music volume? No idea.
- Attempt at fixing weird null-pointer crash on startup in the mod's event handlers in Minecraft 1.21.1.
### Version 2.7.5:
- Fixed crash bugs when joining a server without Ambience Mini.
- Added mod-config option for showing a toast with music info whenever the music changes.
- Fixed music player crash when near a jukebox (or a cockroach with Maracas from Alex's mobs since the music is played like record music) in multiplayer affecting Minecraft versions 1.19.2 and above.
- Fixed music player crash with some OGG and MP3 files.
### Version 2.7.4:
- Fixed mixin refmap issue.
### Version 2.7.3:
- Fixed intermittent stuttering/glitches when playing MP3 files.
- Bugfixes and improvements in music players/decoders.
### Version 2.7.2:
- Fixed server-sided crash bug when attacking entities with projectiles.
### Version 2.7.1:
- Hopefully fixed bug where quickly entering and leaving a boss fight causes the music player to crash.
- Added `@is_targeted` event which is `true` when any mob is targeting the player (and `undefined` when there is no server-support).
- Added `@is_fighting` event which is `true` when any mob has had recent (damage-based) interaction with the player.
- The `@in_combat` event works roughly the same, activating only when actively fighting and staying active until the player is safe or sufficient time has passed.
* You can now be in combat when in creative mode, but not targeted. You can use `$game_mode` if you do not want combat music in creative.
* Removed `Leaving_Combat_Distance` mod config option in favor of time-based combat detection (and since long-distance combat should still count as combat).
- Fixed bug for Minecraft versions 1.19.2 and above that caused incorrect tracking of enemies in combat.
- Improved combat tracking in general.
- Improved error messaging in an edge case.
- Fixed brainfart where messages (errors, notifications, etc.) are created but not printed to the chat...
### Version 2.7.0:
- Improved structure caching and intersection checking.
- Added the ability to re-enable the vanilla music player in the music config.
* Use the `use_vanilla_player` command (instead of a `play` command) to enable the vanilla player.
- Added a `$combatants` property of type `list<combatant>` using the new `combatant` type.
* `combatant` has four fields (accessed using `combatant.field`): `type_id`, `health`, `maxHealth`, and `health_percent`.
* This can be used to select music based on the type and state of fought mobs.
- Added fields `int.floatVal` and `float.intVal` for converting between whole and decimal numbers.
- Added arithmetic operators `+`, `-`, `*`, and `/` to the configuration language.
- Added player events `@on_fire` and `@in_powder_snow`.
- Added `length` field to lists. `list.length` will get the length of a list.
- Added support for `loopstart` and `looplength/loopend` metadata tags for all supported music files.
* This will cause the music to start out as normal, but continue looping some part after reaching the end of the loop interval.
* `loopstart` and `looplength/loopend` are all measured in samples (the smallest piece of audio data).
- Mod now prints a warning to the logs when music directory contains unused music files.
- Mod now prints warnings about unused identifiers (e.g., playlists) in the music config.
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }