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.

If your running a macro with your MA, you can't get him to change targets, he just changes back.
Normally that only happens if your using MQ2Melee. Kiss itself won't do that.
https://www.redguides.com/community/threads/kissassist-manual-role.65777/Negative. I will look into how and give it a try.
Some research: https://www.redguides.com/community...-accomplish-a-set-of-goals.67109/#post-366139
This SK is looking for the same thing I am talking bout. Looks like he wasn't having much luck either.
Manual mode: https://www.redguides.com/community/threads/kissassist-manual-role.65777/.
yes it will
Sub CombatTargetCheck
| If mob is dead return
/if (${Spawn[${MyTargetID}].Type.Equal[Corpse]} || !${Spawn[${MyTargetID}].ID} || ${DPSPaused}) /return
/declare CMyTargetID int Local ${MyTargetID}
| Check target matches MA if group mainassist assigned and MA is in group
/if (${Spawn[=${MainAssist}].ID} && ${Group.MainAssist.ID} && ${Spawn[=${MainAssist}].ID}==${Group.MainAssist.ID}) {
/if (${Target.ID}!=${Me.GroupAssistTarget.ID} && ${Group.MainAssist.ID}!=${Me.ID}) {
/if (${MyTargetID}!=${Me.GroupAssistTarget.ID} && ${Spawn[id ${Me.GroupAssistTarget.ID} npc].ID}) {
/echo My target does not match MA's. Switching to new target.
/varset MyTargetID ${Me.GroupAssistTarget.ID}
/varset MyTargetName ${Spawn[id ${Me.GroupAssistTarget.ID}].CleanName}
}
} else /if (${Group.MainAssist.ID}==${Me.ID} && ${Target.ID}!=${MyTargetID}) {
/echo I am MA, and I switched to new Target.
/varset MyTargetID ${Target.ID}
/varset MyTargetName ${Target.CleanName}
}
}
/if (${CMyTargetID}!=${MyTargetID} && ${Target.ID}!=${MyTargetID} && ${Spawn[${MyTargetID}].ID}) {
/squelch /target id ${MyTargetID}
/delay 10 ${Target.ID}==${MyTargetID}
/if (!${Group.Member[${MainAssist}].Index} && ${Target.Type.NotEqual[PC]}) /xtarget set ${XTSlot} currenttarget
}
/return
I stand corrected. I see where it is enforcing keeping MyTargetID as you current target. Would only take about 4 lines of code to allow for the MA to freely switch mobs, but I am not sure what it would break.
You can try it out if you want. Just replace your CombatTargetCheck Routine with this:
Code:Sub CombatTargetCheck | If mob is dead return /if (${Spawn[${MyTargetID}].Type.Equal[Corpse]} || !${Spawn[${MyTargetID}].ID} || ${DPSPaused}) /return /declare CMyTargetID int Local ${MyTargetID} | Check target matches MA if group mainassist assigned and MA is in group /if (${Spawn[=${MainAssist}].ID} && ${Group.MainAssist.ID} && ${Spawn[=${MainAssist}].ID}==${Group.MainAssist.ID}) { /if (${Target.ID}!=${Me.GroupAssistTarget.ID} && ${Group.MainAssist.ID}!=${Me.ID}) { /if (${MyTargetID}!=${Me.GroupAssistTarget.ID} && ${Spawn[id ${Me.GroupAssistTarget.ID} npc].ID}) { /echo My target does not match MA's. Switching to new target. /varset MyTargetID ${Me.GroupAssistTarget.ID} /varset MyTargetName ${Spawn[id ${Me.GroupAssistTarget.ID}].CleanName} } } else /if (${Group.MainAssist.ID}==${Me.ID} && ${Target.ID}!=${MyTargetID}) { /echo I am MA, and I switched to new Target. /varset MyTargetID ${Target.ID} /varset MyTargetName ${Target.CleanName} } } /if (${CMyTargetID}!=${MyTargetID} && ${Target.ID}!=${MyTargetID} && ${Spawn[${MyTargetID}].ID}) { /squelch /target id ${MyTargetID} /delay 10 ${Target.ID}==${MyTargetID} /if (!${Group.Member[${MainAssist}].Index} && ${Target.Type.NotEqual[PC]}) /xtarget set ${XTSlot} currenttarget } /return
This should allow your Group Main Assist to switch targets. There is still 1 line of code in the Combat routine that could switch you back if you click on a new target after the CombatTargetCheck routine. Would need to add a flag to manage this in a way, so turning on and off this function can be controlled by the user.
Will that code mod also fix this one? Tank in manual-mode & DPS off, if KA sees a Named, it will lock on the Named. Or is that a Burn code thing.
If this ever gets traction and gets a "option" to allow a MA to switch targets and KA not switch you back. Let me know! I have been hoping for this for a long time.
I stand corrected. I see where it is enforcing keeping MyTargetID as you current target. Would only take about 4 lines of code to allow for the MA to freely switch mobs, but I am not sure what it would break.
You can try it out if you want. Just replace your CombatTargetCheck Routine with this:
Code:Sub CombatTargetCheck | If mob is dead return /if (${Spawn[${MyTargetID}].Type.Equal[Corpse]} || !${Spawn[${MyTargetID}].ID} || ${DPSPaused}) /return /declare CMyTargetID int Local ${MyTargetID} | Check target matches MA if group mainassist assigned and MA is in group /if (${Spawn[=${MainAssist}].ID} && ${Group.MainAssist.ID} && ${Spawn[=${MainAssist}].ID}==${Group.MainAssist.ID}) { /if (${Target.ID}!=${Me.GroupAssistTarget.ID} && ${Group.MainAssist.ID}!=${Me.ID}) { /if (${MyTargetID}!=${Me.GroupAssistTarget.ID} && ${Spawn[id ${Me.GroupAssistTarget.ID} npc].ID}) { /echo My target does not match MA's. Switching to new target. /varset MyTargetID ${Me.GroupAssistTarget.ID} /varset MyTargetName ${Spawn[id ${Me.GroupAssistTarget.ID}].CleanName} } } else /if (${Group.MainAssist.ID}==${Me.ID} && ${Target.ID}!=${MyTargetID}) { /echo I am MA, and I switched to new Target. /varset MyTargetID ${Target.ID} /varset MyTargetName ${Target.CleanName} } } /if (${CMyTargetID}!=${MyTargetID} && ${Target.ID}!=${MyTargetID} && ${Spawn[${MyTargetID}].ID}) { /squelch /target id ${MyTargetID} /delay 10 ${Target.ID}==${MyTargetID} /if (!${Group.Member[${MainAssist}].Index} && ${Target.Type.NotEqual[PC]}) /xtarget set ${XTSlot} currenttarget } /return
This should allow your Group Main Assist to switch targets. There is still 1 line of code in the Combat routine that could switch you back if you click on a new target after the CombatTargetCheck routine. Would need to add a flag to manage this in a way, so turning on and off this function can be controlled by the user.
LOL. That does not sound like Keep It Simple Stupid to me. I will put it on my list of things to look at.
@Cytaylor22 There is an issue when using Kissassist1004e15 with the above code. If you are using the Bandolier section, the macro ends in an error: Subroutine Dobandolier wasn't found. Once I turned off that section, it works.
@ctaylor22 doesn’t support that mod of kissassist as its not the “official” Redguides version. That mac is supported by @eqmule.
I stand corrected. I see where it is enforcing keeping MyTargetID as you current target. Would only take about 4 lines of code to allow for the MA to freely switch mobs, but I am not sure what it would break.
You can try it out if you want. Just replace your CombatTargetCheck Routine with this:
Code:Sub CombatTargetCheck | If mob is dead return /if (${Spawn[${MyTargetID}].Type.Equal[Corpse]} || !${Spawn[${MyTargetID}].ID} || ${DPSPaused}) /return /declare CMyTargetID int Local ${MyTargetID} | Check target matches MA if group mainassist assigned and MA is in group /if (${Spawn[=${MainAssist}].ID} && ${Group.MainAssist.ID} && ${Spawn[=${MainAssist}].ID}==${Group.MainAssist.ID}) { /if (${Target.ID}!=${Me.GroupAssistTarget.ID} && ${Group.MainAssist.ID}!=${Me.ID}) { /if (${MyTargetID}!=${Me.GroupAssistTarget.ID} && ${Spawn[id ${Me.GroupAssistTarget.ID} npc].ID}) { /echo My target does not match MA's. Switching to new target. /varset MyTargetID ${Me.GroupAssistTarget.ID} /varset MyTargetName ${Spawn[id ${Me.GroupAssistTarget.ID}].CleanName} } } else /if (${Group.MainAssist.ID}==${Me.ID} && ${Target.ID}!=${MyTargetID}) { /echo I am MA, and I switched to new Target. /varset MyTargetID ${Target.ID} /varset MyTargetName ${Target.CleanName} } } /if (${CMyTargetID}!=${MyTargetID} && ${Target.ID}!=${MyTargetID} && ${Spawn[${MyTargetID}].ID}) { /squelch /target id ${MyTargetID} /delay 10 ${Target.ID}==${MyTargetID} /if (!${Group.Member[${MainAssist}].Index} && ${Target.Type.NotEqual[PC]}) /xtarget set ${XTSlot} currenttarget } /return
This should allow your Group Main Assist to switch targets. There is still 1 line of code in the Combat routine that could switch you back if you click on a new target after the CombatTargetCheck routine. Would need to add a flag to manage this in a way, so turning on and off this function can be controlled by the user.
Can this still be added to the latest Kiss ? Would love this.I stand corrected. I see where it is enforcing keeping MyTargetID as you current target. Would only take about 4 lines of code to allow for the MA to freely switch mobs, but I am not sure what it would break.
You can try it out if you want. Just replace your CombatTargetCheck Routine with this:
Code:Sub CombatTargetCheck | If mob is dead return /if (${Spawn[${MyTargetID}].Type.Equal[Corpse]} || !${Spawn[${MyTargetID}].ID} || ${DPSPaused}) /return /declare CMyTargetID int Local ${MyTargetID} | Check target matches MA if group mainassist assigned and MA is in group /if (${Spawn[=${MainAssist}].ID} && ${Group.MainAssist.ID} && ${Spawn[=${MainAssist}].ID}==${Group.MainAssist.ID}) { /if (${Target.ID}!=${Me.GroupAssistTarget.ID} && ${Group.MainAssist.ID}!=${Me.ID}) { /if (${MyTargetID}!=${Me.GroupAssistTarget.ID} && ${Spawn[id ${Me.GroupAssistTarget.ID} npc].ID}) { /echo My target does not match MA's. Switching to new target. /varset MyTargetID ${Me.GroupAssistTarget.ID} /varset MyTargetName ${Spawn[id ${Me.GroupAssistTarget.ID}].CleanName} } } else /if (${Group.MainAssist.ID}==${Me.ID} && ${Target.ID}!=${MyTargetID}) { /echo I am MA, and I switched to new Target. /varset MyTargetID ${Target.ID} /varset MyTargetName ${Target.CleanName} } } /if (${CMyTargetID}!=${MyTargetID} && ${Target.ID}!=${MyTargetID} && ${Spawn[${MyTargetID}].ID}) { /squelch /target id ${MyTargetID} /delay 10 ${Target.ID}==${MyTargetID} /if (!${Group.Member[${MainAssist}].Index} && ${Target.Type.NotEqual[PC]}) /xtarget set ${XTSlot} currenttarget } /return
This should allow your Group Main Assist to switch targets. There is still 1 line of code in the Combat routine that could switch you back if you click on a new target after the CombatTargetCheck routine. Would need to add a flag to manage this in a way, so turning on and off this function can be controlled by the user.
Thanks will turn TargetSwitchingOn tonight. CUrrently running DanNetThat functionality is built into the current version of kissassist. You just have to be using EQBC or DanNet and have TargetSwitchingOn Turned on in your MA's ini file.
ctaylor22That functionality is built into the current version of kissassist. You just have to be using EQBC or DanNet and have TargetSwitchingOn Turned on in your MA's ini file.
That functionality is built into the current version of kissassist. You just have to be using EQBC or DanNet and have TargetSwitchingOn Turned on in your MA's ini file.
