promotional bannermobile promotional banner

BigWigs - Encounter Music

Plays encounter music on BigWigs boss engage.
BigWigs Encounter Music settings in BigWigs

BigWigs Encounter Music settings in BigWigs

Description

 

Contributors Forks Stargazers Issues Discord License

 

BigWigs Encounter Music Logo

BigWigs Encounter Music

`BigWigs_EncounterMusic` is a BigWigs plugin that automatically plays a selected music track when a boss encounter starts.

Report Bug · Request Feature

 

About The Project

The addon is designed to stay lightweight, configurable, and extensible:

  • It integrates into the BigWigs options UI.
  • It lets you choose a single global encounter track.
  • It can stop the music automatically when the fight ends.
  • It exposes a shared track registry so external music pack addons can register additional tracks.

DMCA/Content notice: the bundled example track is “no copyright music” / royalty-free, provided only as a sample. If you ship custom packs, ensure you have rights to the audio you include.

(back to top)

Features

  • Automatic music playback on BigWigs boss engage
  • Preview and stop buttons in the BigWigs options panel
  • Global track selector
  • Optional stop-on-encounter-end behavior
  • Support for external music packs through BigWigsEncounterMusicAPI
  • Built-in localization structure via Locales.lua

(back to top)

Requirements

  • BigWigs

(back to top)

Installation

Install the addon into your WoW AddOns folder:

World of Warcraft/_retail_/Interface/AddOns/BigWigs_EncounterMusic

(back to top)

How to configure

In game:

  • Open the BigWigs options
  • Go to the Encounter Music plugin panel
  • Select the track you want to use
  • Optionally enable or disable automatic stop at the end of the encounter
  • Use Preview track to test the selected music
  • Use Stop track to stop playback manually

(back to top)

How it works

When BigWigs fires a boss engage event, the plugin:

  • Reads the selected global track from the plugin profile
  • Resolves the track from the shared registry
  • Starts playback with PlayMusic() when possible
  • Falls back to plugin:PlaySoundFile() when needed

When the encounter ends, the plugin stops the currently active track if stopOnEnd is enabled.

(back to top)

Architecture

Core addon

BigWigs_EncounterMusic contains:

  • Core.lua
    • BigWigs plugin lifecycle
    • option panel definition
    • playback and stop logic
    • encounter event handling
  • Registry.lua
    • global track registry
    • registration and sorting helpers
    • API exposed through _G.BigWigsEncounterMusicAPI
  • Locales.lua
    • base English strings
    • locale overrides

External music packs

Additional packs can register tracks without modifying the core addon.

The current example is:

  • BigWigs_EncounterMusic_EpicMusicPack

This companion addon registers tracks into the shared registry during load.

(back to top)

Shared API

The core addon exposes a global registry object:

_G.BigWigsEncounterMusicAPI

Available functions:

  • RegisterTrack(id, data)
  • GetTrack(id)
  • GetTrackIds()
  • GetTrackValues()

A registered track looks like this:

api.RegisterTrack("my_track_id", {
    name = "My Track Name",
    path = "Interface\\AddOns\\MyAddon\\Music\\MyTrack.mp3",
    source = "MyAddon",
    channel = "Music",
})

Track fields

  • id
    • unique string identifier
  • name
    • display name shown in the selector
  • path
    • full in-game file path
  • source
    • addon or pack name
  • channel
    • audio channel, usually Music

(back to top)

Creating a custom music pack

To create your own pack:

  • Create a new addon folder
  • Add a .toc file with a dependency on BigWigs_EncounterMusic
  • Load a Lua file that calls BigWigsEncounterMusicAPI.RegisterTrack(...)
  • Store your audio files inside your addon folder

Example layout:

BigWigs_EncounterMusic_MyPack/
  BigWigs_EncounterMusic_MyPack.toc
  Tracks.lua
  Music/
    BossTheme.mp3

(back to top)

Current behavior

  • The plugin uses one global selected track for all encounters
  • There is no boss-specific music mapping
  • If the selected track is missing, the profile is normalized to a valid fallback
  • If no track is selected, the plugin does nothing on engage

(back to top)

Localization

Localization is defined in Locales.lua using the same simple pattern used by other BigWigs companion addons:

  • English strings are the base
  • Other locales override only the strings they need

(back to top)

Notes for development

  • The addon is loaded on demand by BigWigs
  • The plugin is created with BigWigs:NewPlugin("EncounterMusic")
  • Do not manually call plugin:Initialize()
  • Music packs should register tracks through the shared registry, not by editing the core addon

(back to top)

Troubleshooting

The panel does not appear

Check that:

  • BigWigs is enabled
  • the addon folder name is exactly BigWigs_EncounterMusic
  • the plugin loaded without Lua errors

No music plays

Check that:

  • a track is selected in the options
  • the registered file path is correct
  • the audio file exists in the expected addon folder
  • your in-game audio settings allow music playback

The music pack tracks do not appear

Check that:

  • the music pack addon is enabled
  • its file paths point to the correct Music folder

(back to top)

Project structure

BigWigs_EncounterMusic/
  BigWigs_EncounterMusic.toc
  Core.lua
  Registry.lua
  Locales.lua
  README.md

(back to top)

The BigWigs - Encounter Music Team

profile avatar
  • 3
    Followers
  • 9
    Projects
  • 602.1K
    Downloads
Donate

More from ZelionGGView all