Skip to content

MQ2Medley

MQ2Medley

Bard song scheduler

Authors: winnower, Dewey, plure • Config: servername_charname.ini

Resource Download Support Repo Quick Start

This plugin grew out of winnower's frustration with MQ2Twist and it being hard to change from twist to twist while still being efficient and not recasting the songs that already had signification duration left.

You can have both plugins loaded at the same time, but don't try to /twist and /medley at the same time.

Features

  • Set conditions for each song in the medley. Only want to cast on named? Only want to do insult if mana > 10%? Only want to cast dots if attack is on? Only want to cast mana regen when not in combat?
  • Advanced queuing support. Can specific target of queued spells for mez or cure and plugin will switch back to existing target with plugin reflexes. Optional interrupt when queing song.
  • Adapt your song song set without missing a beat when under the effect of "A tune stuck in my head"
  • Priority scheduling. Did you just mez 3 mobs? Switch back to your most important spells automatically
  • Automatically switch to maintaining 7 songs when Tune is up
  • Switch from medley to medley while still remembering the duration of current songs. Named up? just do switch to your burn medley to introduce new songs to the mix, while knowing what songs are already up.

Commands

/medley [option] [setting] | [queue <song name> <id> [-interrupt]]
Controls a queue for bard songs

Settings

INI Format

  • Multiple Medleys: Define medleys in sections named MQ2Medley-medleyname
  • Song Definitions: Up to 20 songs can be defined (song1-song20)
  • Song Format: Each song has 3 parts separated by ^:
    1. Name: Song, Item or AA name
    2. Duration: Expression for ${Math.Calc[part2]} (expected buff duration)
      Example: ${Medley.Tune} increases duration when "A Tune Stuck in my Head" is active
    3. Condition: Expression for ${Math.Calc} to determine when to cast

Scheduling

  • Order: Songs cast in priority order (song1 > song2 > ... > song20)
  • Skipped Songs:
    • Unreadable songs (Crescendo, Items, AA, etc)
    • Songs with active duration remaining
  • Recast Timing: Typically begins casting when duration has <6 seconds remaining
  • All Active Songs: Casts the song that will expire soonest

Quickstart Example

Add a section to your server_charactername.ini file like,

[MQ2Medley-melee]
song1=War March of Jocelyn^18 + (6*${Medley.Tune})^1
song2=Aria of Maetanrus Rk. II^13 + (6*${Medley.Tune})^1
song3=Blade of Vesagran^180^${Melee.Combat}
song4=Fjilnauk's Song of Suffering^18^1
song5=Arcane Melody^18 + (6*${Medley.Tune})^1
song6=Silisia's Lively Crescendo^45^1
song7=Nilsara's Chant of Flame^24^${Melee.Combat} && ${Medley.Tune}

Then type:

/plugin mq2medley
/medley melee

You are now singing songs

See also

Top-Level Objects

Medley

Holds a form that returns the current medley, as well as the Medley data type.

Forms

Medley Medley

Returns string of current medley, or FALSE if no current medley.

DataTypes

Medley

Holds members that return current medley, information about the current queue, and other status about the songs being played

Members

string Medley

Current medley name. Empty string if no current medley.

double TTQE

(Time to queue empty) double time in seconds until queue is empty, this is estimate only. If performating normal medley, this will be 0.0

int Tune

Deprecated when "A Tune Stuck in My Head" was changed to a passive AA, it's now always 0. It used to show 1 when buffed with A Tune Stuck in My Head.

bool Active

true - medley is active