Always Play 1.2.1.jar
Curse Maven Snippet
What's new
Always Play — 1.2.1
New
- Custom track folder selection. You can now point the mod at any folder on disk and it will read tracks directly from there - no need to copy files into the mod's folder. A "Select folder" button in the settings opens the system file picker; the default mod folder keeps being scanned alongside it.
- Nested subfolders in the music browser. If your tracks folder contains subfolders (e.g. tracks organized by album or artist), the music browser shows each one as its own collapsible group - up to two levels of nesting. Each subfolder starts collapsed the first time it's discovered; after that it's up to the player.
- Folder-based playlists. "My Playlists" now has a "Playlist from folder" button - pick an existing folder or create a new one right from the system dialog. Tracks for such a playlist are resolved from the folder's contents every time it plays: drop a file in, and it shows up automatically, no editing required.
- "Refresh" button in the music browser. Next to the search field - force a rescan of the tracks folder and the selected folder without leaving to the settings screen.
- Intelligent track prefetching system. The mod now knows and prepares up to 10 upcoming tracks in advance (navigation history, regular autoplay, playlists), not just the very next one - this eliminates freezes when manually switching music (skip forward/backward, clicking a track in the browser, autoplay, playlists).
Fixes and improvements
- Autoplay in "Custom" and "Both" modes now considers all track folders (default, selected, and their subfolders), not just the default mod folder - a track started manually from a subfolder or the selected folder no longer "loses" its folder when moving to the next track.
- The tracks folder is now scanned automatically on game launch and on world join, not only after manually opening the music browser - fixes silence on startup in "Both" mode.
- Folder scanning now runs on a background thread - large or network folders no longer freeze the UI.
- An invalid selected folder (deleted, empty, no access) now shows the player a clear message explaining why, instead of silently falling back to the default folder.
- Fixed a game freeze when manually switching tracks if the track's cache wasn't ready yet - previously the game could hang for up to 5 seconds; now there's a short (~2 sec) silent pause instead, the same as when a track finishes naturally. This fix applies consistently to skip forward/backward, clicking a track in the browser, regular autoplay, and playlist autoplay.
- Fixed a subtle bug where the startup fade-in flag could be lost when a track's start was deferred due to an unready cache, so the fade-in wouldn't apply to the actual successful playback attempt.
Internal (for development)
MusicBrowserScreenwas slimmed down: track list rendering and search/filter logic were moved into their own classes.- Added
QueuePlanner(predicts upcoming tracks without disturbing the actual playback queue state) andTrackPreloadManager(keeps a window of upcoming tracks warmed in the background, cancels preparation for tracks that are no longer relevant - e.g. during rapid skip-spamming). WavPlayer: removed the thread-blocking wait (crossfadeTono longer waits up to 5 seconds for the cache to be ready); preloaded-track cache capacity raised from 4 to 16; added a non-blocking readiness check (isReady) and preload cancellation (cancelPreload).playFromBrowserno longer duplicates track-start logic through a separate blocking path - it now goes through the shared safe mechanism (TrackPlaybackService.playNew).MusicTracker,TrackOrderManager,PlaylistOrderManager: added read-only look-ahead methods (peekForwardHistory,peekNext) that don't affect the actual playback order.
This mod has no additional files

