LiteAssist

LiteAssist is a very basic addon to replace the standard /assist macro.

It lets you set a unit (a player, pet or NPC) that the mod remembers. When you push the assist key, it causes you to attack the same thing as that unit. It changes your target (what you are attacking) to be the same as their target.

LiteAssist provides extra key bindings to learn who to assist and to assist them. You can (and must to use this addon) set them up via the WoW Keyboard Options menu.

LiteAssist really is light. There are no /commands and no fancy GUIs, just the 3 key bindings.

Configuring LiteAssist

After entering the World of Warcraft game, go to the Keyboard Settings menu, scroll down to the LiteAssist section and set the key bindings. Then just use the keys to activate the learn and assist functions. See below for more details.

Key Bindings

The three key bindings are:

  1. Learn unit to assist from your current target.
  2. Learn unit to assist from whatever your mouse is hovering over.
  3. Assist the previously learned unit (i.e., target its target).

You can find these under the 'LiteAssist' heading in the Keyboard Options menu.

I use shift-F (learn target), ctrl-F (learn mouseover) and F (assist) for the three functions.

Notification Messages

When learning a new assist a message will pop up in the middle of the screen to inform you.

Clearing Assist

Learn assist with no unit targeted/mouseovered to clear the assist. The assist also starts out cleared before you first learn something.

When the assist is cleared, the assist key will assist your current target, exactly like WoW's default assist function. This makes it safe to override your regular assist key ('F').

Target Frame Indicator

When you are targeting the same unit as your assist, a small icon of a pair of crossed swords will be shown at the left of your target frame. This only works with the default Blizzard interface, not other unit frame addons.

Advanced Macro Support

When you assist the learned target, LiteAssist is internally running a hidden macro with '/assist PlayerName' in it.

If you create a macro of your own named LiteAssistMacro AND include in it the text {LiteAssistUnit} (just like that, including the curly brackets), LiteAssist will copy that macro, replace the text {LiteAssistUnit} with the name of the player you learned, and use that instead.

You can include {LiteAssistUnit} more than once and it will replace all the occurrences.

Note that LiteAssist will not change your original macro, and dragging it onto a bar will not do anything. Copying a macro just saves me writing a user interface to allow you to edit the hidden internal macro text.

Non-Keyboard Use

If you want to set up buttons on your action bar to trigger LiteAssist, you need to do so by creating macros like these and then dragging them onto your action bar.

To learn assist from target: /click LiteAssistLearnTarget

To learn assist from mouseover: /click LiteAssistLearnHover

To assist the learned unit: /click LiteAssistDo

Limitations

Due to intentional limitations by Blizzard you can't change assist in combat. If you try to learn a new assist while in combat LiteAssist will remember what you tried to do and apply it when combat ends.

You can (obviously) still assist the learned unit while in combat.

If This AddOn Seems Abandoned

If more than two weeks go by after a major patch and this addon isn't updated, I've probably been hit by a bus. In that case I encourage anyone with the necessary ability to take over maintenance of the addon. It is released under the terms of the GNU General Public License, which means anyone can take it and do whatever they want with it, as long as they too release their code under the same terms.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Twopro Twopro Jan 02, 2013 at 17:30 UTC - 0 likes

    alright, i'll try that and sorry for the late response due to the holiday.

  • Avatar of spiralofhope spiralofhope Dec 14, 2012 at 21:12 UTC - 0 likes

    @Twopro: Go

    It must be some misunderstanding of how to use this addon.

    Use one: Simple assisting using hotkeys.

    The "Key Bindings" section in the documentation above describes this.

    Use two: A macro.

    If you create a macro called LiteAssistMacro then when you press the 'assist' hotkey it will not /assist the target. It will instead run your macro.

    The macro is created out of combat and {LiteAssistUnit} is replaced with whomever you assisted (out of combat).

    For example, you can trigger LiteAssist with, say, shift-F and if you have a macro called LiteAssistMacro like this:

    /targetenemy [noharm][dead]
    /cast [harm,nodead] Charge
    /cancelaura bladestorm
    /assist {LiteAssistUnit}
    

    A hidden macro is created (out of combat). Now when you press F it will trigger that macro.


    But I suspect you want a third option.

    • shift-F to learn your target
    • continue to use F to assist that target
    • have a custom macro dragged onto your bars which also understands the assist target

    This is not directly supported by this addon, but it is possible. Below is how I achieved it with LiteAssist and _DevPad

    1) /macro and create three macros:

    1.1) LiteAssistMacro with:

    /assist {LiteAssistUnit}
    /run local AddOnInit = _DevPad( "LiteAssistMacro" ); AddOnInit()
    

    1.2) LiteAssistSource with your choice of content. All occurrences of {LiteAssistUnit} are replaced with your target's name. Note that this cannot run in combat. Example content:

    #showtooltip
    /cast [@{LiteAssistUnit}] Mind Sear
    

    1.3) LiteAssistTarget with empty contents.

    2) Drag out LiteAssistTarget and use it like a regular macro on your bars.


    To make this work, I created this _DevPad code. I created a script at the root-level (not in a folder) called LiteAssistMacro with these contents:

    local source = 'LiteAssistSource'
    local target = 'LiteAssistTarget'
    local body_old = GetMacroBody( source )
    local search = '{LiteAssistUnit}'
    local replace = LiteAssist_GetAssistName()
    local body_new = string.gsub( body_old, search, replace )
    EditMacro( target, nil, nil, body_new )
    

    I've been able to extend this to create multiple macros which all understand the assist target, but to use it, you first shift-F to select your assist, then you have to press the assist hotkey once out of combat so that the LiteAssistTarget is rewritten.

    All of this is probably possible without using _DevPad, but I don't do any other kind of development, so I'm not going to try it.

    I hope this makes sense. =)

    Last edited Dec 14, 2012 by spiralofhope
  • Avatar of Twopro Twopro Dec 12, 2012 at 13:37 UTC - 0 likes

    Also, friend and i tested "/click LiteAssistDo" on a macro in pvp.

    what seems to happen is it works for the first click. then if you happen to use said macro again, your target switches to yourself then back to your target your attacking over and over.

    anyways, we'd really like to use this in pvp. i thought using "/click LiteAssistDo" fixed the current target update problem like it did on target dummies. but it seems to bug in pvp.

    i think if you fixed "/assist {LiteAssistUnit}" so that when you use said macro, it updates to whatever your assist switched to, it'd be perfect.

  • Avatar of Twopro Twopro Dec 12, 2012 at 07:06 UTC - 0 likes

    ok so i just tested "/click LiteAssistDo" command

    i removed "/assist {LiteAssistUnit}"

    when you're assisting a player that changes targets, it auto changes targets like it should. however, shouldn't "/assist {LiteAssistUnit}" work that way in a macro? to update your target when you press it again? when your assist target changes targets?

  • Avatar of Twopro Twopro Dec 12, 2012 at 06:55 UTC - 0 likes

    hey, my friend and i were testing this macro out. we tried putting "/assist {LiteAssistUnit}" before spell or ability line, we removed auto target but we ran into the same problem where when you're assisting somebody, and that somebody changes targets and you hit your macro again, it doesn't update your assist to their new target.

    but this works if you use the keybind "assist learned unit" so, i assume it might be broken?

  • Avatar of Twopro Twopro Dec 11, 2012 at 13:01 UTC - 0 likes

    Ah okay, perfect. i'll change my macro right away. thank you.

  • Avatar of spiralofhope spiralofhope Dec 11, 2012 at 03:01 UTC - 0 likes

    @Twopro: Go

    Well you have to actually do something with your {LiteAssistUnit}

    #showtooltip Charge
    /targetenemy [noharm][dead]
    /cast [harm,nodead] Charge
    /cancelaura bladestorm
    /assist {LiteAssistUnit}
    
  • Avatar of Twopro Twopro Dec 08, 2012 at 15:49 UTC - 0 likes

    okay i have a question about macros.

    lets say i want to add it to an auto target macro and it works @ end of the macro (i'm sorry the forum isn't showing the macro text stacked)

    1. showtooltip Charge

    /targetenemy [noharm][dead]

    /cast [harm,nodead] Charge

    /cancelaura bladestorm

    {LiteAssistUnit}

    but the problem is my character /says {LiteAssistUnit}

    when i use this macro is there a way to allow this addon to utilize this macro without my character /say {LiteAssistUnit}

    Last edited Dec 08, 2012 by Twopro
  • Avatar of spiralofhope spiralofhope Dec 03, 2012 at 10:48 UTC - 0 likes

    @Twopro: Go

    No.

  • Avatar of Twopro Twopro Dec 03, 2012 at 04:11 UTC - 0 likes

    do i have to install the broker part?

Facts

Date created
May 22, 2007
Category
Last update
Dec 15, 2014
Development stage
Release
Language
  • enUS
License
GNU General Public License version 2 (GPLv2)
Curse link
LiteAssist
Downloads
37,455
Recent files
  • R: 6.0.7 for 6.0.3 Dec 15, 2014
  • R: 6.0.6 for 6.0.3 Dec 14, 2014
  • R: 6.0.5 for 6.0.3 Dec 13, 2014
  • R: 6.0.4 for 6.0.3 Dec 13, 2014
  • R: 6.0.3 for 6.0.3 Dec 09, 2014

Authors

Relationships

Tool used
LibDataBroker-1.1
Embedded library
CallbackHandler-1.0
LibStub