MQ2SpellHotkeys - MMOBugs Wiki

Plugin Info
Name MQ2SpellHotkeys
Author Relkin
Link MQ2 VIP
Commands /autohotkey
Source Available Yes
Uses INI File Yes





Description

MQ2SpellHotkeys MQ2SpellHotkeys allows a user to specify in an ini spell / hotkey combos that is stored in the release folder of MQ. The user can formate the hotkey directly in the proper spot in the .ini or can just put in the message they want to send. Any hotkey without formating before it will be sent to every chat in the default chat list.

Commands

  • /autohotkey Displays command list
  • /autohotkey on Turns on Autohotkey
  • /autohotkey off Turns off Authotkey
  • /autohotkey reload Reloads ini settings
  • /autohotkey list <all, state, chats, popups, hotkeys> Display plugin state, display configured spells/text/popup messages.
  • /autohotkey addchat <chatname> adds specified chat to the default chats list
  • /autohotkey remchat <chatname> removes specified chat from the default chats list
  • /autohotkey setpopups < all | NameOfPopUp > < TRUE | FALSE > all: sets all popups, NameOfPopUp: One of the categories such as OnHit or OnResist etc.
  • /autohotkey save saves the state (on or off) and default chats list to the .ini

Configuration

The [DEFAULT] section of the .ini contains the value for if auto hotkey starts enable and the list of chat channels. In this section, the chats must be labeled starting with CHAT0 and proceeding numerically. The placement with in this section is not an issue just can't have stuff like CHAT0, CHAT3, CHAT4. However, CHAT2, CHAT0, CHAT1 in that order is fine as long as the numbers dont' skip. This is only so when I'm saving chats I don't end up with doubles of channels or overwrite something not intended to overwrite. Capitalization does not matter. The chats can be formated as you want it here or you can let the plugin auto detect what type of formating to put on it. So if you just type in chat0=group" then the plugin will realize it's "/g" really. If you accidently type in "gropu" however, the plugin will think that is a chat channel and formate it as ";#gropu". Pop Up messages can be configured for 6 situations; OnHit, OnResist, OnInterrupt, OnOutOfRange, OnWillNotHold, and OnWornOff. The second category is for [PopUps]. Listed in here is the master control for what popup messages get shown. If all of these are false (or missing entirely), then no pop up messages will be shown. For each individual spell you wish to see popups for you must include a field for DoPopUps=TRUE in that spell's section. If it is missing or FALSE then no pop ups will be shown for that specific spell. So far I haven't added further custimization of any of the 5 fields for any spell. Meaning, if DoPopUps=TRUE for a spell, you see popups for any of the 6 categories that are enabled, you can't mix and choose which of the 6 per spell.

After the [PopUps] section is the spells. Each spell name is a section heading so put it in [ ... ] such as [Dooming Darkness]. Under each spell place the hotkeys. There are three conditions; OnHit, OnResist, and OnCast. Capitalization does not matter again, but each label must start with one of those three then end in whatever your heart desires. Once the label is there, just do an equal sign and the message you want exactly as you want it. You may either start the message off with the exact chat channel you want (such as OnCast0=/g ## I am casting healing on < %t > ##) or you may leave it unformated (OnCast=## I am casting healing on < %t > ##) in which case that hotkey will get sent to every chat on the default chats list. If there are no chats on the default chats list then unformated hotkeys will not be sent. If a hotkey starts with either a '/' or a ';' then I assume the user put in his/her own formating. (FYI: chat channels can be addressed as ;#<chatname> instead of /<chatnumber> that's why the ';' is there.) And don't forget the field under each spell section for DoPopUps.

The .ini files are named as "hotkeys_<charactername>_<server>.ini".


Example Configuration

hotkeys_<charactername>_<server>.ini

[DEFAULT]
chat0=/g
CHAT1=rs
auto_on=true

[PopUps]
OnHit=FALSE
OnResist=TRUE
OnInterrupt=TRUE
OnOutOfRange=TRUE
OnWillNotHold=FALSE
OnWornOff=TRUE

[My Uber Spellname Here]
DoPopUps=TRUE
onresist=Some resist message here, may use %t type embedded commands
OnHiT0=Some message for successful spell cast here.
ONRESISTblah=;#mychat Some resist message only for the channel "mychat" here
oncast=/g Some message for starting to cast this spell here that only goes to group

[Next Spell]
etc.

Shaman

; Filename: hotkeys_Soandso_Innoruuk.ini
; In the Default section, the chat's must be labeled in order.
; Doesn't matter the physical placement, just the numbers without skipping.
; If there is no "chat" label at all, then any unformated hotkeys below will
; not be sent.
[Default]
Auto_on=TRUE
chat0=/g
chat1=/rs

; Next section is all boolean values for spell pop up reporting
; These are just what to pop up, DoPopUps must be enabled in the
; section for that spell to show pop ups.
[PopUps]
OnHit=TRUE
OnResist=TRUE
OnInterrupt=TRUE
OnOutOfRange=FALSE
OnWillNotHold=FALSE
OnWornOff=TRUE
; Popup messages enabled for resists and wear off messages only

; Here are the spell / hotkey combos
; The section heading [...] is the name of the spell.
; There are 3 different types: OnCast, OnHit, and OnResist
; There can be multiple messages for each category as long as no two have
; the same exact name. They all have to start with one of the 3 categories.
; One field can be DoPopUps which enables popup messages for any of the
; categories allowed in the PopUps section.  If not included it's assumed FALSE.
; Remember for items to use the name of the spell that will be casting.
[Turgur's Insects]
DoPopUps=TRUE
OnCast0=## I am casting Slow on < %t > ##
OnResist=## < %t > resisted Slow! HEAL MY FURRY BUTT!!! ##
OnHit=## I have SLOWED < %t > ##

[Petrifying Earth]
DoPopUps=TRUE
OnCast=## I am casting Root on < %t > ##
OnResist=## < %t > resisted ROOT! RUN SCREAM and SHOUT!! ##
OnHit=## I have ROOTED < %t > ##
OnInterrupt=## ROOT has been interrupted!##

[Breath of Ultor]
DoPopUps=TRUE
OnCast=## I am casting Breath of Ultor on < %t > ##
OnHit=## I have Casted Breath of Ultor on < %t > ##

[Bane]
DoPopUps=TRUE
OnCast=## I am casting Bane on < %t > ##
OnResist=## < %t > resisted Bane! ##
OnHit=## I have BANED < %t > ##

[Tears of Saryrn]
OnCast=I am casting Tears of Saryrn on < %t >!
OnResist=## < %t > Tears of Saryrn! ##

[Malos]
DoPopUps=TRUE
OnCast=## I am casting Malos on < %t > ##
OnResist=## < %t > resisted Malos! ##
OnHit=## I have MALOSED < %t > ##
OnInterrupt=## MALOS has been interrupted!##

Availability

This plugin is included with the MMOBugs Compile.