you can easily make events into a lem so maybe check this thread:
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.

Just restart LEM on the rest of the toons.Maybe a dumb question, but is I add an event (the copy and paste long sting way) do I need to do it on each toon I'm running or just on one toon?
Thanks- BB
Thanks a bunch @aquietone.Just restart LEM on the rest of the toons.
Thank god is doesn;t cost you $500 each time you come hereThanks a bunch @aquietone.
This is awesome. Wish I'd run across it earlier. SOOOO much stuff on this site I don't know I need until I happen to run into it.
This site feels like a shopping trip to Costco.
BB

cmV0dXJuIHsKIGxvYWQgPSB7CiAgYWx3YXlzID0gZmFsc2UsCiAgY2xhc3MgPSAiIiwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJMUzBnSUVSbFlYUm9iRzlqYXlBdElEY3ZNakF5TXdvdExTQWdWMmxzYkNCamFHVmpheUJuY205MWNDQm1iM0lnUkVrZ2FXNGdZVzVrSUc5MWRDQnZaaUJEYjIxaVlYUWdZVzVrSUdOaGMzUWdhV1lnWVc1NUlHZHliM1Z3SUcxbGJXVmlaWElnYm1WbFpITXVDaTB0SUNBZ1JFa2dQU0JFYVhacGJtVWdUV1ZrYVdGMGFXOXVDZ3BzYjJOaGJDQnRjU0E5SUhKbGNYVnBjbVVvSjIxeEp5a0tiRzlqWVd3Z2JXVmthV0YwYVc5dUlEMGdiWEV1VkV4UExsTndaV3hzS0NkRWFYWnBibVVnVFdWa2FXRjBhVzl1SnlrdVVtRnVhMDVoYldVb0tRb0tMUzBnUkc4Z2JtOTBJR1ZrYVhRZ2RHaHBjeUJwWmlCamIyNWthWFJwYjI0S2FXWWdibTkwSUhCaFkydGhaMlV1Ykc5aFpHVmtXeWRzWlcwdVpYWmxiblJ6SjEwZ2RHaGxiZ29nSUNBZ2NISnBiblFvSjFSb2FYTWdjMk55YVhCMElHbHpJR2x1ZEdWdVpHVmtJSFJ2SUdKbElHbHRjRzl5ZEdWa0lIUnZJRXgxWVNCRmRtVnVkQ0JOWVc1aFoyVnlJQ2hNUlUwcExpQlVjbmtnSWdjdGRDOXNkV0VnY25WdUlHeGxiUWN0ZENJbktRcGxibVFLQ214dlkyRnNJR1oxYm1OMGFXOXVJRzl1WDJ4dllXUW9LUW9nSUNBZ0xTMGdVR1Z5Wm05eWJTQmhibmtnYVc1cGRHbGhiQ0J6WlhSMWNDQm9aWEpsSUhkb1pXNGdkR2hsSUdWMlpXNTBJR2x6SUd4dllXUmxaQzRLSUNBZ0lBcGxibVFLQ214dlkyRnNJR1oxYm1OMGFXOXVJSEJoY25SNVRXVnRZbVZ5VG05MFFuVm1abVZrS0NrS0lDQWdJRzF4TG1OdFpDZ2lMMjF4Y0NCdmJpSXBDaUFnSUNCbWIzSWdhV1I0UFRFc2JYRXVWRXhQTGtkeWIzVndMazFsYldKbGNuTW9LU0JrYndvZ0lDQWdJQ0FnSUd4dlkyRnNJR05vWVhKT1lXMWxJRDBnYlhFdVZFeFBMa2R5YjNWd0xrMWxiV0psY2locFpIZ3BDaUFnSUNBZ0lDQWdiWEV1WTIxa1ppZ25MM1JoY21kbGRDQWxjeWNzSUdOb1lYSk9ZVzFsS1FvZ0lDQWdJQ0FnSUcxeExtUmxiR0Y1S0RVd01Da0tJQ0FnSUNBZ0lDQnBaaUJ1YjNRZ2JYRXVWRXhQTGxSaGNtZGxkQzVDZFdabUtHMWxaR2xoZEdsdmJpa3VVM0JsYkd4SlJDZ3BJSFJvWlc0S0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1VLSUNBZ0lDQWdJQ0JsYm1RS0lDQWdJR1Z1WkFvZ0lDQWdiWEV1WTIxa0tDY3ZiWEZ3SUc5bVppY3BDaUFnSUNCdGNTNWtaV3hoZVNnaU1tMGlLUW9nSUNBZ2NtVjBkWEp1SUdaaGJITmxDbVZ1WkFvS0xTMHRRSEpsZEhWeWJpQmliMjlzWldGdUlFQlNaWFIxY201eklIUnlkV1VnYVdZZ2RHaGxJR0ZqZEdsdmJpQnphRzkxYkdRZ1ptbHlaU3dnYjNSb1pYSjNhWE5sSUdaaGJITmxMZ3BzYjJOaGJDQm1kVzVqZEdsdmJpQmpiMjVrYVhScGIyNG9LUW9nSUNBZ0xTMGdTVzF3YkdWdFpXNTBJSFJvWlNCamIyNWthWFJwYjI0Z2RHOGdaWFpoYkhWaGRHVWdhR1Z5WlM0S0lDQWdJR2xtSUc1dmRDQnRjUzVVVEU4dVRXVXVVM0JsYkd4U1pXRmtlU2h0WldScFlYUnBiMjRwS0NrZ2RHaGxiZ29nSUNBZ0lDQWdJRzF4TG1SbGJHRjVLQ0k0Y3lJcENpQWdJQ0FnSUNBZ0xTMVVUMFJQT2lCR2FYZ2dkR2hwY3lCaWNtOXJaVzRnYzJocGRBb2dJQ0FnSUNBZ0lDMHRiWEV1WkdWc1lYa29iWEV1VkV4UExsTndaV3hzS0cxbFpHbGhkR2x2YmlrdVVtVmpZWE4wVkdsdFpTZ3BJQ3NnTVRBd01Da0tJQ0FnSUNBZ0lDQnlaWFIxY200Z1ptRnNjMlVLSUNBZ0lHVnNjMlVLSUNBZ0lDQWdJQ0J5WlhSMWNtNGdjR0Z5ZEhsTlpXMWlaWEpPYjNSQ2RXWm1aV1FvS1FvZ0lDQWdaVzVrQ21WdVpBb0tiRzlqWVd3Z1puVnVZM1JwYjI0Z1luVm1abEJoY25SNVRXVnRZbVZ5Y3lncENpQWdJQ0J0Y1M1amJXUW9JaTluSUVOaGMzUnBibWNnUkVrZ2IyNGdKWFFpS1FvZ0lDQWdiWEV1WTIxa0tDY3ZZMkZ6ZENBeE1pY3BDaUFnSUNCdGNTNWpiV1FvSnk5dGNYQWdiMlptSnlrS1pXNWtDZ3BzYjJOaGJDQm1kVzVqZEdsdmJpQmhZM1JwYjI0b0tRb2dJQ0FnTFMwZ1NXMXdiR1Z0Wlc1MElIUm9aU0JoWTNScGIyNGdkRzhnY0dWeVptOXliU0JvWlhKbExnb2dJQ0FnWW5WbVpsQmhjblI1VFdWdFltVnljeWdwQ2dwbGJtUUtDbkpsZEhWeWJpQjdiMjVzYjJGa1BXOXVYMnh2WVdRc0lHTnZibVJtZFc1alBXTnZibVJwZEdsdmJpd2dZV04wYVc5dVpuVnVZejFoWTNScGIyNTkiLAogY2F0ZWdvcnkgPSAiIiwKIHR5cGUgPSAiY29uZGl0aW9ucyIsCiBuYW1lID0gIkNsZXJpY0RJIiwKfQ==
-- Deathlock - 7/2023
-- Condition Event
-- Will check group for DI in and out of Combat and cast if any group memeber needs.
-- DI = Divine Mediation
local mq = require('mq')
local mediation = mq.TLO.Spell('Divine Mediation').RankName()
-- Do not edit this if condition
if not package.loaded['lem.events'] then
print('This script is intended to be imported to Lua Event Manager (LEM). Try "-t/lua run lem-t"')
end
local function on_load()
-- Perform any initial setup here when the event is loaded.
end
local function partyMemberNotBuffed()
mq.cmd("/mqp on")
for idx=1,mq.TLO.Group.Members() do
local charName = mq.TLO.Group.Member(idx)
mq.cmdf('/target %s', charName)
mq.delay(500)
if not mq.TLO.Target.Buff(mediation).SpellID() then
return true
end
end
mq.cmd('/mqp off')
mq.delay("2m")
return false
end
---@return boolean @Returns true if the action should fire, otherwise false.
local function condition()
-- Implement the condition to evaluate here.
if not mq.TLO.Me.SpellReady(mediation)() then
mq.delay("8s")
--TODO: Fix this broken recast timer shit at some point.
--mq.delay(mq.TLO.Spell(mediation).RecastTime() + 1000)
return false
else
return partyMemberNotBuffed()
end
end
local function buffPartyMembers()
mq.cmd("/g Casting DI on %t")
mq.cmd('/cast 12')
mq.cmd('/mqp off')
end
local function action()
-- Implement the action to perform here.
buffPartyMembers()
end
return {onload=on_load, condfunc=condition, actionfunc=action}
cmV0dXJuIHsKIGxvYWQgPSB7CiAgYWx3YXlzID0gZmFsc2UsCiAgY2xhc3MgPSAiIiwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJMUzBnUkdWaGRHaHNiMk5ySUMwZ055OHlNREl6Q2kwdElGUmxlSFFnUlhabGJuUUtMUzBnVjJsc2JDQmpZWE4wSUVSSklHOXVJR0Z1ZVc5dVpTQnBaaUJoSUhkdmNtNGdiMlptSUcxbGMzTmhaMlVnYVhNZ2MyVmxiZ290TFNCRVNTQnBjeUJqWVhOMElHWnliMjBnYzNCbGJHd2dabkp2YlNCblpXMGdNVEl1Q2dwc2IyTmhiQ0J0Y1QxeVpYRjFhWEpsS0NkdGNTY3BDZ3BzYjJOaGJDQm1kVzVqZEdsdmJpQmxkbVZ1ZEY5b1lXNWtiR1Z5S0d4cGJtVXNJRzVoYldVcENpQWdJQ0F0TFNCSmJYQnNaVzFsYm5RZ2RHaGxJR2hoYm1Sc2FXNW5JR1p2Y2lCMGFHVWdaWFpsYm5RZ2FHVnlaUzRLSUNBZ0lHMXhMbU50WkNnbkwyMXhjQ0J2YmljcENpQWdJQ0J0Y1M1amJXUm1LQ2N2ZEdGeVoyVjBJQ1Z6Snl3Z2JtRnRaU2tLSUNBZ0lHMXhMbVJsYkdGNUtERXdNQ2tLSUNBZ0lHMXhMbU50WkNnbkwyTmhjM1FnTVRJbktRb2dJQ0FnYlhFdVpHVnNZWGtvTlRBd0tRb2dJQ0FnYlhFdVkyMWtLQ2N2YlhGd0lHOW1aaWNwQ21WdVpBb0tjbVYwZFhKdUlIdHZibXh2WVdROWIyNWZiRzloWkN3Z1pYWmxiblJtZFc1alBXVjJaVzUwWDJoaGJtUnNaWEo5IiwKIGNhdGVnb3J5ID0gIiIsCiB0eXBlID0gImV2ZW50cyIsCiBuYW1lID0gIkNsZXJpY1RleHRESSIsCiBwYXR0ZXJuID0gIiMqI1lvdXIgRGl2aW5lIE1lZGlhdGlvbiMqIyBzcGVsbCBoYXMgd29ybiBvZmYgb2YgIzEjLiMqIyIsCn0=
-- Deathlock - 7/2023
-- Text Event
-- Will cast DI on anyone if a worn off message is seen
-- DI is cast from spell from gem 12.
local mq=require('mq')
local function event_handler(line, name)
-- Implement the handling for the event here.
mq.cmd("/mqp on")
mq.delay(100)
mq.cmdf('/target %s', name)
mq.cmd('/cast 12')
mq.delay(500)
mq.cmd("/mqp off")
end
return {onload=on_load, eventfunc=event_handler}
cmV0dXJuIHsKIGxvYWQgPSB7CiAgYWx3YXlzID0gZmFsc2UsCiAgY2xhc3MgPSAiIiwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJiRzlqWVd3Z2JYRWdQU0J5WlhGMWFYSmxLQ2R0Y1NjcENteHZZMkZzSUhKbGNYVnBjbVZrWDNwdmJtVWdQU0FuWW14dmIyUm1ZV3hzYzE5dGFYTnphVzl1SndvS0xTMGdSRzhnYm05MElHVmthWFFnZEdocGN5QnBaaUJqYjI1a2FYUnBiMjRLYVdZZ2JtOTBJSEJoWTJ0aFoyVXViRzloWkdWa1d5ZHNaVzB1WlhabGJuUnpKMTBnZEdobGJnb2dJQ0FnY0hKcGJuUW9KMVJvYVhNZ2MyTnlhWEIwSUdseklHbHVkR1Z1WkdWa0lIUnZJR0psSUdsdGNHOXlkR1ZrSUhSdklFeDFZU0JGZG1WdWRDQk5ZVzVoWjJWeUlDaE1SVTBwTGlCVWNua2dJZ2N0ZEM5c2RXRWdjblZ1SUd4bGJRY3RkQ0luS1FwbGJtUUtDbXh2WTJGc0lHWjFibU4wYVc5dUlHOXVYMnh2WVdRb0tRb2dJQ0FnTFMwZ1VHVnlabTl5YlNCaGJua2dhVzVwZEdsaGJDQnpaWFIxY0NCb1pYSmxJSGRvWlc0Z2RHaGxJR1YyWlc1MElHbHpJR3h2WVdSbFpDNEtJQ0FnSUdsbUlHMXhMbFJNVHk1YWIyNWxMbE5vYjNKMFRtRnRaU2dwSUQwOUlISmxjWFZwY21Wa1gzcHZibVVnZEdobGJnb2dJQ0FnSUNBZ0lISmxkSFZ5YmlCdWFXd0tJQ0FnSUdWc2MyVUtJQ0FnSUNBZ0lDQnRjUzVqYldRb0p5OXNaVzBnWTI5dVpDQlVUMHhmVFdsemMybHZibDlEYkc5elpWOTBhR1ZmUjJGMFpWOUxhV3hzVDNKa1pYSWdNQ2NwQ2lBZ0lDQmxibVFLWlc1a0Nnb3RMUzFBY21WMGRYSnVJR0p2YjJ4bFlXNGdRRkpsZEhWeWJuTWdkSEoxWlNCcFppQjBhR1VnWVdOMGFXOXVJSE5vYjNWc1pDQm1hWEpsTENCdmRHaGxjbmRwYzJVZ1ptRnNjMlV1Q214dlkyRnNJR1oxYm1OMGFXOXVJR052Ym1ScGRHbHZiaWdwQ2lBZ0lDQXRMU0JKYlhCc1pXMWxiblFnZEdobElHTnZibVJwZEdsdmJpQjBieUJsZG1Gc2RXRjBaU0JvWlhKbExnb2dJQ0FnY21WMGRYSnVJRzF4TGxSTVR5NWFiMjVsTGxOb2IzSjBUbUZ0WlNncElEMDlJSEpsY1hWcGNtVmtYM3B2Ym1VZ1lXNWtJRzF4TGxSTVR5NVRjR0YzYmtOdmRXNTBLQ0poSUdkeWFXNXVhVzVuSUdkaGNtZHZlV3hsSWlrb0tTQStJREFLWlc1a0NncHNiMk5oYkNCbWRXNWpkR2x2YmlCaFkzUnBiMjRvS1FvZ0lDQWdMUzBnU1cxd2JHVnRaVzUwSUhSb1pTQmhZM1JwYjI0Z2RHOGdjR1Z5Wm05eWJTQm9aWEpsTGdvZ0lDQWdiWEV1WTIxa0tDY3ZiWEYwWVhKblpYUWdZU0JuY21sdWJtbHVaeUJuWVhKbmIzbHNaU2NwQ21WdVpBb0tjbVYwZFhKdUlIdHZibXh2WVdROWIyNWZiRzloWkN3Z1kyOXVaR1oxYm1NOVkyOXVaR2wwYVc5dUxDQmhZM1JwYjI1bWRXNWpQV0ZqZEdsdmJuMD0iLAogY2F0ZWdvcnkgPSAiTWlzc2lvbnMtVE9MIiwKIHR5cGUgPSAiY29uZGl0aW9ucyIsCiBuYW1lID0gIlRPTF9NaXNzaW9uX0Nsb3NlX3RoZV9HYXRlX0tpbGxPcmRlciIsCn0=
local mq = require('mq')
local required_zone = 'bloodfalls_mission'
-- Do not edit this if condition
if not package.loaded['lem.events'] then
print('This script is intended to be imported to Lua Event Manager (LEM). Try "-t/lua run lem-t"')
end
local function on_load()
-- Perform any initial setup here when the event is loaded.
if mq.TLO.Zone.ShortName() == required_zone then
return nil
else
mq.cmd('/lem cond TOL_Mission_Close_the_Gate_KillOrder 0')
end
end
---@return boolean @Returns true if the action should fire, otherwise false.
local function condition()
-- Implement the condition to evaluate here.
return mq.TLO.Zone.ShortName() == required_zone and mq.TLO.SpawnCount("a grinning gargoyle")() > 0
end
local function action()
-- Implement the action to perform here.
mq.cmd('/mqtarget a grinning gargoyle')
end
return {onload=on_load, condfunc=condition, actionfunc=action}
LEM for Tank bandolier for 2H to Shield.
[CODE title="Event Export"]cmV0dXJuIHsKIGxvYWQgPSB7CiAgY2xhc3MgPSAiIiwKICBhbHdheXMgPSBmYWxzZSwKICB6b25lID0gIiIsCiB9LAogY29kZSA9ICJMUzFCWkdGd2RHVmtJR1p5YjIwZ1UybGpKM01nVkdGdWEwSmhibVJ2VTNkaGNDQnRZV055YndvdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMEtDbXh2WTJGc0lHMXhJRDBnY21WeGRXbHlaU2duYlhFbktRcHNiMk5oYkNCRGIyMXRiMjV6SUQwZ2NtVnhkV2x5WlNnbmJHVnRZMjl0Ylc5dWN5NURiMjF0YjI1ekp5a0tiRzlqWVd3Z2JXVmZZMnhoYzNNZ1BTQnRjUzVVVEU4dVRXVXVRMnhoYzNNdVUyaHZjblJPWVcxbEtDa0tiRzlqWVd3Z2JYbGZibUZ0WlNBOUlHMXhMbFJNVHk1TlpTNURiR1ZoYms1aGJXVW9LUXBzYjJOaGJDQnBjMTkwWVc1cklEMGdlMUJCVEQxMGNuVmxMRk5JUkQxMGNuVmxMRmRCVWoxMGNuVmxmUXBzYjJOaGJDQnBaMjV2Y21WNmIyNWxjeUE5SUh0YkoyZDFhV3hrYUdGc2JETmZhVzUwSjEwOWRISjFaU3dnV3lkaGEyaGxkbUYwZDI5ZmJXbHpjMmx2YmlkZFBYUnlkV1VzSUZzbllXdG9aWFpoZEhkdlgzSmhhV1FuWFQxMGNuVmxmUW9LQ2dvdExTQkVieUJ1YjNRZ1pXUnBkQ0IwYUdseklHbG1JR052Ym1ScGRHbHZiZ3BwWmlCdWIzUWdjR0ZqYTJGblpTNXNiMkZrWldSYkoyeGxiUzVsZG1WdWRITW5YU0IwYUdWdUNpQWdJQ0J3Y21sdWRDZ25WR2hwY3lCelkzSnBjSFFnYVhNZ2FXNTBaVzVrWldRZ2RHOGdZbVVnYVcxd2IzSjBaV1FnZEc4Z1RIVmhJRVYyWlc1MElFMWhibUZuWlhJZ0tFeEZUU2t1SUZSeWVTQWlCeTEwTDJ4MVlTQnlkVzRnYkdWdEJ5MTBJaWNwQ21WdVpBb0tiRzlqWVd3Z1puVnVZM1JwYjI0Z1lXTjBhWFpoZEdWZlltRnVaRzlzYVdWeUtHSmhibVJ2YkdsbGNpa0tJQ0FnSUdsbUlHNXZkQ0J0Y1M1VVRFOHVUV1V1UW1GdVpHOXNhV1Z5S0dKaGJtUnZiR2xsY2lrdVFXTjBhWFpsS0NrZ2RHaGxiZ29nSUNBZ0lDQWdJRzF4TG1OdFpDZ25MMkpoYm1SdmJHbGxjaUJoWTNScGRtRjBaU0FuSUM0dUlHSmhibVJ2YkdsbGNpa0tJQ0FnSUdWdVpBcGxibVFLQ214dlkyRnNJR1oxYm1OMGFXOXVJRzl1WDJ4dllXUW9LUW9nSUNBZ0xTMGdVR1Z5Wm05eWJTQmhibmtnYVc1cGRHbGhiQ0J6WlhSMWNDQm9aWEpsSUhkb1pXNGdkR2hsSUdWMlpXNTBJR2x6SUd4dllXUmxaQzRLSUNBZ0lHbG1JR2x6WDNSaGJtdGJiV1ZmWTJ4aGMzTmRJSFJvWlc0S0lDQWdJQ0FnSUNCaFkzUnBkbUYwWlY5aVlXNWtiMnhwWlhJb0p6SklKeWtLSUNBZ0lHVnNjMlVLSUNBZ0lDQWdJQ0J0Y1M1amJXUW9KeTlrZENCT2IzUWdZU0JVWVc1cklFUnBjMkZpYkdsdVp5QjBhR2x6SnlrS0lDQWdJQ0FnSUNCdGNTNWpiV1FvSnk5c1pXMGdZMjl1WkNCVVlXNXJRbUZ1Wkc5VGQyRndJREFuS1FvZ0lDQWdaVzVrQ21WdVpBb0tiRzlqWVd3Z1puVnVZM1JwYjI0Z1kyOXVaR2wwYVc5dUtDa0tJQ0FnSUMwdElFbHRjR3hsYldWdWRDQjBhR1VnWTI5dVpHbDBhVzl1SUhSdklHVjJZV3gxWVhSbElHaGxjbVV1Q2lBZ0lDQnNiMk5oYkNCcGMxOXBibDlqYjIxaVlYUWdQU0J0Y1M1VVRFOHVUV1V1UTI5dFltRjBLQ2tnUFQwZ2RISjFaUW9nSUNBZ2JHOWpZV3dnYVhOZmJHOTNYMmhsWVd4MGFDQTlJRzF4TGxSTVR5NU5aUzVRWTNSSVVITW9LU0E4SURZd0NpQWdJQ0JzYjJOaGJDQm9ZWE5mYlhWc2RHbHdiR1ZmZEdGeVoyVjBjeUE5SUcxeExsUk1UeTVOWlM1WVZHRnlaMlYwS0NrZ1BpQXpDaUFnSUNCc2IyTmhiQ0JwYzE5MFlYSm5aWFJmYm1GdFpXUWdQU0J0Y1M1VVRFOHVWR0Z5WjJWMExrNWhiV1ZrS0NrZ1BUMGdkSEoxWlFvZ0lDQWdiRzlqWVd3Z1kzVnljbVZ1ZEY5NmIyNWxYMmxrSUQwZ2JYRXVWRXhQTGxwdmJtVXVVMmh2Y25ST1lXMWxLQ2tLQ2lBZ0lDQnBaaUJ1YjNRZ2FXZHViM0psZW05dVpYTmJZM1Z5Y21WdWRGOTZiMjVsWDJsa1hTQjBhR1Z1Q2lBZ0lDQWdJQ0FnYVdZZ2FYTmZhVzVmWTI5dFltRjBJR0Z1WkNBb2FYTmZiRzkzWDJobFlXeDBhQ0J2Y2lCb1lYTmZiWFZzZEdsd2JHVmZkR0Z5WjJWMGN5QnZjaUJwYzE5MFlYSm5aWFJmYm1GdFpXUXBJSFJvWlc0S0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1VLSUNBZ0lDQWdJQ0JsYkhObENpQWdJQ0FnSUNBZ0lDQWdJR2xtSUdselgzUmhibXRiYldWZlkyeGhjM05kSUhSb1pXNEtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHRmpkR2wyWVhSbFgySmhibVJ2YkdsbGNpZ25Na2duS1FvZ0lDQWdJQ0FnSUNBZ0lDQmxibVFLSUNBZ0lDQWdJQ0J5WlhSMWNtNGdabUZzYzJVS0lDQWdJQ0FnSUNCbGJtUWdJQW9nSUNBZ1pXeHpaUW9nSUNBZ2NtVjBkWEp1SUdaaGJITmxDaUFnSUNCbGJtUUtaVzVrQ2dvS2JHOWpZV3dnWm5WdVkzUnBiMjRnWVdOMGFXOXVLQ2tLSUNBZ0lDMHRJRWx0Y0d4bGJXVnVkQ0IwYUdVZ1lXTjBhVzl1SUhSdklIQmxjbVp2Y20wZ2FHVnlaUzRLSUNBZ0lHbG1JRzF4TGxSTVR5NU5aUzVDWVc1a2IyeHBaWElvSnpKSUp5a3VRV04wYVhabEtDa2dkR2hsYmdvZ0lDQWdJQ0FnSUcxeExtTnRaQ2duTDJKaGJtUnZiR2xsY2lCaFkzUnBkbUYwWlNCVGFHbGxiR1FuS1FvZ0lDQWdaVzVrQ2lBZ0lDQUtaVzVrQ2dweVpYUjFjbTRnZTI5dWJHOWhaRDF2Ymw5c2IyRmtMQ0JqYjI1a1puVnVZejFqYjI1a2FYUnBiMjRzSUdGamRHbHZibVoxYm1NOVlXTjBhVzl1ZlE9PSIsCiBjYXRlZ29yeSA9ICJHZW5lcmFsIiwKIHR5cGUgPSAiY29uZGl0aW9ucyIsCiBuYW1lID0gIlRhbmtCYW5kb1N3YXAiLAp9[/CODE]
[CODE title="LEM Script"]--Adapted from Sic's TankBandoSwap macro
------------------------------------------------
local mq = require('mq')
local Commons = require('lemcommons.Commons')
local me_class = mq.TLO.Me.Class.ShortName()
local my_name = mq.TLO.Me.CleanName()
local is_tank = {PAL=true,SHD=true,WAR=true}
local ignorezones = {['guildhall3_int']=true, ['akhevatwo_mission']=true, ['akhevatwo_raid']=true}
-- Do not edit this if condition
if not package.loaded['lem.events'] then
print('This script is intended to be imported to Lua Event Manager (LEM). Try "-t/lua run lem-t"')
end
local function activate_bandolier(bandolier)
if not mq.TLO.Me.Bandolier(bandolier).Active() then
mq.cmd('/bandolier activate ' .. bandolier)
end
end
local function on_load()
-- Perform any initial setup here when the event is loaded.
if is_tank[me_class] then
activate_bandolier('2H')
else
mq.cmd('/dt Not a Tank Disabling this')
mq.cmd('/lem cond TankBandoSwap 0')
end
end
local function condition()
-- Implement the condition to evaluate here.
local is_in_combat = mq.TLO.Me.Combat() == true
local is_low_health = mq.TLO.Me.PctHPs() < 60
local has_multiple_targets = mq.TLO.Me.XTarget() > 3
local is_target_named = mq.TLO.Target.Named() == true
local current_zone_id = mq.TLO.Zone.ShortName()
if not ignorezones[current_zone_id] then
if is_in_combat and (is_low_health or has_multiple_targets or is_target_named) then
return true
else
if is_tank[me_class] then
activate_bandolier('2H')
end
return false
end
else
return false
end
end
local function action()
-- Implement the action to perform here.
if mq.TLO.Me.Bandolier('2H').Active() then
mq.cmd('/bandolier activate Shield')
end
end
return {onload=on_load, condfunc=condition, actionfunc=action}[/CODE]
Thanks. I don't know why, but I didn't "get" LEM until now. Then un-thanks! now I have to convert all my events!First attempt at LEM with zero coding background.... Just trying to get my bard to cast Selo's when it sees a certain text line. I "speed please" as the pattern as a text condition LEM. It obviously doesn't work.
Event pattern: #*#Speed Please#*#
local mq = require('mq')
local function event_handler()
-- Implement the handling for the event here.
mq.cmd('/alt activate 3704')
end
return {eventfunc=event_handler}
Edit: I know there is easier ways to do this. I use a hotkey for for this with the /dexecute command. Just trying to learn the process. Also updated coded. I was an idiot and had activate alt as the command which was backwards.
Edit2: It works!
Anyone know if there is a way to add something to this Lua that will repeat it every 10 min even if it isn’t triggered by the pattern?First attempt at LEM with zero coding background.... Just trying to get my bard to cast Selo's when it sees a certain text line. I "speed please" as the pattern as a text condition LEM. It obviously doesn't work.
Event pattern: #*#Speed Please#*#
local mq = require('mq')
local function event_handler()
-- Implement the handling for the event here.
mq.cmd('/alt activate 3704')
end
return {eventfunc=event_handler}
Edit: I know there is easier ways to do this. I use a hotkey for for this with the /dexecute command. Just trying to learn the process. Also updated coded. I was an idiot and had activate alt as the command which was backwards.
Edit2: It works!
[kneel]
trigger=#1#The ice encrusted Avatar of War shouts that |${Me}| must bend the knee!#2#
command=/if (!${Me.Ducking}) /multiline ; /boxr Pause; /twist off; /attack off; /target clear; /keypress DUCK
[stand]
trigger=#1#The Avatar of War nods, accepting the subservience of those that gave it#2#
command=/if (${Me.Ducking}) /multiline ; /keypress DUCK; /boxr Unpause
That's correct but I'm not sure that the AOW mission LEM works, people often seem to say it doesn't. But I haven't been on live in a while to figure out if the event is broken or if its user error. The code looks comparable to the mq2events version far as I can tell. For example, just today someone couldn't get that event to work properly https://www.redguides.com/community...-of-my-hairs-is-coming-out.87825/#post-575843 so you may want to keep using mq2events for AOW.Hello everyone. I hope I am in the right place to ask a question about LEM. For my understanding if I use LEM which is a lua I would not have to turn on the event plug-in in the pluginmanager? is this correct. I would like to try one of the LEM's that someone created on the Avatar of War and this caught my eye. Before I make any mistakes I wanted to ask first for more understanding.
Thank you everyone for your time.
thank you!CWTN Plugins have options to autostand on duck. Make sure you have them turned off.
local mq = require('mq')
local function event_handler(line, name)
Write.Debug('name="%s", ducking=%s name==Me.CleanName=%s', name, mq.TLO.Me.Ducking(), name==mq.TLO.Me.CleanName())
if name == mq.TLO.Me.CleanName() and not mq.TLO.Me.Ducking() then
Write.Info('Pausing automation and ducking for AOW emote!')
-- pause automation, alternatively have autostand off
mq.cmdf('/%s pause on', mq.TLO.Me.Class.ShortName())
mq.cmd('/mqp on')
mq.cmd('/twist off')
mq.cmd('/keypress DUCK')
end
end
return {eventfunc=event_handler}

Most people say that avatar of war lem doesn't work, I think I've only seen one person say it did work.
The Dragonslayer one on the overview page.There are serveral versions if I remember well. Mind to narrow down by a link to the post to the version you sre using?

Switching to post 12 fixed it. Next to the active LEM it said - failed to load. LEM was still running and I could use other LEMs. Just not the banish one. And yep, importing the binary one row.Use the one from Post #12, there is an older one which still had a bug. So I posted the final version again in Post #12.
Worked for me with different classes and don’t remember to have seen posted issues since.
You are using the “SheiBanish Import-Code”, the binary one row code to import it to lem, don’t you?
Can you exolain further: “it fails to load”. If you just log in the shaman and see the event in the lem of the shaman, logging in the nec afterwards the event should be there as well.
Does “it fails to load” mean, you get an message/errormessage when attempting to activate it on the nec?
You do see the event on both chars identic inside lem? Like:
View attachment 51502
Are you running both chars on same pc or on different machines? If so, maybe on the second machine there is a prereq missing like “boxr”.
