• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver
KissAssist

KissAssist Release KissAssist (4 Viewers) 12.002.039

No permission to download
If you are trying to turn off and on the aggro routine. Then use /togglevariable AggroOn 1 to turn it on and /togglevariable AggroOn 0 to turn it off. I think using /togglevariable AggroOn will toggle it.
 
ctaylor22 updated KissAssist with a new update entry:

New Combat entry tag and some other mods.

First we added a new combat entry tag to force/control the delay on recasting AA's and Spell book spells. So keep in mind this only works for AA and spell book spell combat entries. This new tag was added to allow a longer wait time than provided by the Spell.Duration.TotalSeconds TLO.Member. When using Debuffs that have a fulmination, that is triggered when the debuff wears off requires prolonging the delay timers used by KA. This new tag gives you more control over those delays.

The new...

Read the rest of this update entry...
 
You could also setup your hot key that starts Kissassist to include your Class in the ini file name. /mac Kissassist.mac ini kissassist_CharacterName_${Me.Class.Name}.ini

The information @manydills provided applies as well.
 
Thanks to @ctaylor22 since just realizing this past week that the macro gives a nice status message when you use /maxradius. No idea how long it's been, but it now reports both the old value and the new value when you change it. For years I would open the puller's INI file and check the value before changing it in-game! Now I can just make an arbitrary change and it will tell me what it was originally. Just a really nice quality of life update!

PS The current version of the macro has been rock stable for me across a variety of classes and character levels.
 
Is there a way to set up the puller to pull if there is already a mob in camp? I have my puller set to pull at 100% HP and chain pull, but still have downtime. I would like it to pull and not stop unless there is 2 or mobs in camp.
 
Is there a way to set up the puller to pull if there is already a mob in camp? I have my puller set to pull at 100% HP and chain pull, but still have downtime. I would like it to pull and not stop unless there is 2 or mobs in camp.
Hiya Smart! Did you check this section by chance? - https://www.redguides.com/docs/projects/kissassist/#pull-settings

Seems like it's supposed to have the puller go pull another mob even if 1 is in the camp (assuming puller is not the tank) unless some specific conditions are met. It also has some debug info that may help diagnose things. Hopefully this info helps =)
 
Hiya Smart! Did you check this section by chance? - https://www.redguides.com/docs/projects/kissassist/#pull-settings

Seems like it's supposed to have the puller go pull another mob even if 1 is in the camp (assuming puller is not the tank) unless some specific conditions are met. It also has some debug info that may help diagnose things. Hopefully this info helps =)
I did read through the wiki, but will check that out. Thank you!
 
Was giving this a try on emu server as a quick way to just get assist and some automation. For some reason on the cleric and shaman I get this error and the macro pauses. Any advise on a fix please?
 

Attachments

  • Screenshot_20241012-062707.png
    Screenshot_20241012-062707.png
    134.3 KB · Views: 0
Was giving this a try on emu server as a quick way to just get assist and some automation. For some reason on the cleric and shaman I get this error and the macro pauses. Any advise on a fix please?
You need to set your kiss ini to not use autoloot
 
You need to set your kiss ini to not use autoloot
ok looton=0 was on so not sure why it wont register it being off. also this error appears after turning on. i would really like it so i can turn off and keep loot off on cleric and shaman.
1728773926280.png
 
Last edited:
The line 204 in the macro is not accessing the variable LootOn so it is not the macro. The command /doevents flush just flushes the events that are queued and does not execute any of the events code. Most likely the issue is a plugin you are using like MQ2Events that is getting triggered.
 
The line 204 in the macro is not accessing the variable LootOn so it is not the macro. The command /doevents flush just flushes the events that are queued and does not execute any of the events code. Most likely the issue is a plugin you are using like MQ2Events that is getting triggered.
Thank you guys for patching mq and such. Problem cleared up completely now!
 
Last edited:
Feature Request!

Dear @ctaylor22 I love you the best and sincerely appreciate how wonderful and stable KissAssist is currently!

But...

A kind of nice feature I'd like to be added would be a more Hunter-friendly Pull section.

What I mean is that I'd like to enter my Rare mob(s) and all it's placeholders in MobsToPull= section, but then if none of those mobs are currently available, then I'd like to have a secondary list of mobs to pull.

A typical Named Mob might have 3 placeholders. If you only pull those placeholders your group will sit around doing nothing for long periods of time. But if you add a bunch of other mobs into the pull list, then your more distant placeholders will keep standing for equally long periods of time.

What I'd like to see happen is that we keep the placeholders dead as a top priority, but if there are zero ph'ers or namers, then jump to a secondary pull list and work on it until such time as a namer or ph'er pops. In this fashion the group could stay busy all the time while continuing to work on Hunter. And this sort of behaviour would be most humanlike. Real humans wouldn't leave a Named standing while they work on closer yard trash. Also, a secondary pull list would allow other goals to be met. For example in LI the timber tradeskill pieces were rather rare. While doing Hunter in Unkempt Woods I also wanted to kill treants for the tradeskill drops. A secondary pull list would have let me keep ph'ers down while continuing to farm the timber drops easily as an additional goal.

I reviewed the existing macro code and am not ashamed to admit it's outside my ability to add something this complicated! So I'm just throwing this out there to see if it's something you would want to entertain? Thanks for reading no matter what you decide.

One coding idea I had would be to prioritize the order of mobs listed in the MobsToPull= section. Then it would be on the user to enter mobs in the order they should be pulled.
 
The First thing I can think of that could be an issue is trying to get to a priority mob(like a named) but having to pass through/by other mobs. In hunter mode the puller searches for the closest mob to pull and then moves to that mob. In this manner mobs are cleared as you go, but having multiple lists to use for pulling in and of itself would not be a big deal. The problem would be how to deal with the mobs you pickup/aggro on the way to the mobs on the primary list.

I have my own ideas on how I would want to deal with the issue, but what are your thoughts on the issue?
 
The First thing I can think of that could be an issue is trying to get to a priority mob(like a named) but having to pass through/by other mobs. In hunter mode the puller searches for the closest mob to pull and then moves to that mob. In this manner mobs are cleared as you go, but having multiple lists to use for pulling in and of itself would not be a big deal. The problem would be how to deal with the mobs you pickup/aggro on the way to the mobs on the primary list.

I have my own ideas on how I would want to deal with the issue, but what are your thoughts on the issue?

The macro already detects when new mobs appear on xtarget and then aborts the pull. I've been doing a hard camp (clearing 3 separate namers) in Unkempt Woods where those first few pulls can be severe with 6 to 8 mobs coming on the pull. For those pulls I ensure my tank is well buffed and I do some things manually to keep the group alive. Once the initial bad pulls are done it's easy to just maintain. But a person needs to stay at the keyboard and sometimes click a disc while running back to camp.

Another option I'll use is that I'll start a session with one group of mobs in the MobsToPull= section. Then after breaking the camp I'll /end on the PullerTank and I'll modify the MobsToPull= with the desired mobs and just let aggro deal with the trash that's in the way. I have an extremely stout group with plenty of crowd control and healing so dealing with large pulls is not a problem.

I've tried running in Hunter mode with the rest of the group in /chase but invariably the assisting chars will end up stuck in geometry at some point. I mostly use Hunter for gray cons where group integrity isn't important.

One other trick I use sometimes is to temporarily disable movement buffs (bard and shaman) on the pulling tank. By running more slowly, he then is likely to get aggro on the mobs he runs past early in the pull rather than later. This helps keep the trash pulls more manageable. With Selos the puller can frequently run right past trash without aggro on the journey outbound, but of course then those mobs will add on the way back due to social aggro.

My initial brainstorming was that once my placeholders were down I'd just switch to pulling ALL mobs within my MaxRadius. This would keep most of the trash dead so it wouldn't be a factor. I like how the macro already prioritizes the red con namer mobs when I get multiples on incoming. My mezzer usually locks down the extras while my tank still has discs running. Again, I do some things manually if the pull looks particularly bad, like switching to my cleric and using emergency heals like Divine Arbitration and epic shield until the unruly mobs are locked down.

It's actually fun dealing with hard camps with the automation providing 90% of the pulling/cc/dps action even while I have to put some effort into surviving.

Thanks a lot for considering this. I do realize this is a very unique "edge" case and will understand if it's not worth your time!
 
Hey @ctaylor22 - Looking to revisit our conversation about pet pulling changes to KA. It would be nice to give a bit more time between movement adjustments when pet pulling. A lot of the time the pet is nearly there and the macro shifts positions and tries again.

I think it is here... Maybe change delay to 15 or 20:


| SUB: Pull With Pet Written by TreeHuginDruid for RedGuides
|-------------------------------------------------------------------------------------
Sub PullWithPet(int BeginMobID,float petPullDist)
DEBUGPULL PullWithPet: Enter
/declare int_petMoving int local 0
/declare int_triedSending int local 0
/if (${Target.ID}) /face ${If[${FaceMobOn}==2,nolook,fast nolook]}
|- Ensure we are in pull range and pet is following!
/if (${Me.Pet.Stance.NotEqual[FOLLOW]}) /pet follow
| - Send in pet if I don't have a mob in extended target
/echo Pulling with PET now !
/while (!${PullAggroTargetID}) {
| Send in the Pet and monitor his movement.
/if (!${int_petMoving}) /pet attack
/delay 10 ${PullAggroTargetID}
 
Hey @ctaylor22 - Looking to revisit our conversation about pet pulling changes to KA. It would be nice to give a bit more time between movement adjustments when pet pulling. A lot of the time the pet is nearly there and the macro shifts positions and tries again.

Too funny! I recently asked @ctaylor22 to look at the pulling routines. He's probably wishing he never heard of pulling now! :)
 
@Granditos have you tried changing the /delay 10 to 20 yet? Does it make a difference? If you notice the /while () loop it tries 3 time before aborting the pull. what I would do is increase the number of time through the loop.

Change:
/if (${int_triedSending}>2) /break
To:
/if (${int_triedSending}>4) /break

That is how I would try and lengthen the wait time of that loop.

Yea @B_I_G__D_A_D_D_Y This request has nothing on yours, but we should be getting close to finishing up the changes you asked for. 😃
 
@Granditos have you tried changing the /delay 10 to 20 yet? Does it make a difference? If you notice the /while () loop it tries 3 time before aborting the pull. what I would do is increase the number of time through the loop.

Change:
/if (${int_triedSending}>2) /break
To:
/if (${int_triedSending}>4) /break

That is how I would try and lengthen the wait time of that loop.

Yea @B_I_G__D_A_D_D_Y This request has nothing on yours, but we should be getting close to finishing up the changes you asked for. 😃
I’ll play with it today and report back. If it fixes the problem we can add it to the normal build.
 
@Granditos have you tried changing the /delay 10 to 20 yet? Does it make a difference? If you notice the /while () loop it tries 3 time before aborting the pull. what I would do is increase the number of time through the loop.

Change:
/if (${int_triedSending}>2) /break
To:
/if (${int_triedSending}>4) /break

That is how I would try and lengthen the wait time of that loop.

Yea @B_I_G__D_A_D_D_Y This request has nothing on yours, but we should be getting close to finishing up the changes you asked for. 😃
Fixed it completely! I changed the delay to 20 and the break to 4. Haven't even hit a /break yet. The 20 delay fixes the issue, at least at my current camp.
 
Change it back to 10 and try it with just the change I suggested. your change would increased the wait time from 3 seconds to 6 seconds. My change will increase the wait time from 3 seconds to 5 second. But both changes together increases the wait time from 3 seconds to 10 seconds. Not sure we need to do both.
 
Yeah,
Change it back to 10 and try it with just the change I suggested. your change would increased the wait time from 3 seconds to 6 seconds. My change will increase the wait time from 3 seconds to 5 second. But both changes together increases the wait time from 3 seconds to 10 seconds. Not sure we need to do both.
Avoiding the break is possible is the goal. So would just adjust the delay.
 
But you would rather loop through the code more times than pause longer per loop. I would rather wait 1 second 5 or 6 times than wait 2 seconds 3 times. 1 second can make a lot of difference when trying to check if you need to haul ass back to camp.
 
But you would rather loop through the code more times than pause longer per loop. I would rather wait 1 second 5 or 6 times than wait 2 seconds 3 times. 1 second can make a lot of difference when trying to check if you need to haul ass back to camp.
Hmm fair point. But the /break is too soon originally as I abandon a ton of pulls because of it. I’ll play with it.
 
yes, but the loop only waited for 3 seconds total, with my change it should wait a total of 5 seconds, 2 extra seconds. You can always increase the number of time through the loop every iteration through the loop is delayed/equal to 1 second, so by increasing the max times through the loop(int_triedSending) will extend the wait time.
 
KissAssist Release KissAssist

Users who are viewing this thread

  • W
Back
Top
Cart