LyricDisplay
Shows boombox song lyrics as an in-game HUD above the inventory bar, with bilingual translations, track headers and multi-boombox support.Changelog
All notable changes to LyricDisplay are documented in this file.
[1.0.0] - 2026-08-19
Added
- Initial Thunderstore release.
- HUD display of boombox song lyrics above the inventory bar (in-game scenes only).
- Recognition of CustomBoomboxMusic (CBM) tracks, including custom audio sources and vanilla boombox tracks.
- Bilingual lyrics: translation lines sharing a timestamp with the original are rendered as original + translation.
- Track metadata header (
Title - Artist - Album) with unknown-value fallback. - Scene detection: UI renders only in game scenes, never in the main menu or loading screens.
- Spectator support: lyrics remain visible while spectating after death (toggleable via
ShowInSpectate). - Per-boombox distance filtering (
MaxAudioDistance) and multi-boombox stacking (MaxSimultaneousSources, closest first). - Show/hide toggle bound to
ToggleDisplayKey(defaultEnd). - Recursive lyric discovery: every folder named
CustomBoomboxMusicorLyricsanywhere underBepInEx/pluginsis scanned for.lrcfiles, at any nesting depth. - Built-in Chinese-capable rendering with bundled Source Han Sans (思源黑体) font.
- Panel alignment options:
TextAlign(Left/Center/Right) andHorizontalOffset. - Performance: per-frame config caching, cached key parsing, reflection cached only when needed, allocation-conscious render path.
Fixed
- Config file name now matches the plugin name (
LyricDisplay.cfg) instead of the old GUID-based name (moxia.LyricDisplay.cfg). - Bundled font is loaded from the plugin-local
BepInEx/plugins/LyricDisplay/Fontsfolder (next to the plugin), falling back to system CJK fonts when missing.
Notes
- Requires BepInExPack (5.4.2100); CustomBoomboxMusic 2.4.2 recommended for custom tracks.
