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.

| ************************* General **************************************|
| Edit settings in your KissAssist_ToonName.ini file
/call LoadIni General Role string Assist
/call LoadIni General CampRadius int 30
/call LoadIni General CampRadiusExceed int 400
/call LoadIni General ReturnToCamp int 0
/call LoadIni General ChaseAssist int 0
/call LoadIni General ChaseDistance int 25
/call LoadIni General MedOn int 1
/call LoadIni General MedStart int 25
/call LoadIni General MedCombat int 0
/call LoadIni General LootOn int 0
/call LoadIni General RezAcceptOn int 0
/call LoadIni General AcceptInvitesOn int 1
/call LoadIni General GroupWatchOn int 1
/call LoadIni General EQBCOn string 0
/declare EQBCSay string outer bc
/if (${EQBCOn.Arg[2,|].Length} && ${EQBCOn.Arg[1,|].Equal[2]}) {
/if (${Debug}) /echo ${EQBCOn} ${EQBCOn.Arg[1,|]} ${EQBCOn.Arg[2,|]}
/varset EQBCSay bct ${EQBCOn.Arg[2,|]}
/varset EQBCOn 2
}
/call LoadIni General IRCOn int 0
/call LoadIni General MiscGem int 8
/call LoadIni General HoTTOn int 0
/call LoadIni General CampfireOn int 0
/if (${Select[${Me.Class.ShortName},WIZ,DRU]}) {
/call LoadIni General GroupEscapeOn int 0
}
/call LoadIni General ForceToCamp int 0
Sub CheckForCombat(int SkipCombat, string FromWhere)
/declare RTCTemp int local
/if (${Debug} || ${DebugCombat}) /echo CheckForCombat Enter SkipCombat: ${SkipCombat} ChainPull: ${ChainPull} Role: ${Role} ${FromWhere}
/if (${SkipCombat}) /goto :SkipMelee
:CombatTop
/if (${Debug}) /delay 5
/if ((${DMZ} && ${Me.InInstance}==FALSE) || ${Me.Hovering} || ${IAmDead} || (!${MobCount} && !${AggroTargetID}) || (!${DPSOn} && !${MeleeOn})) /return
/if (${Debug} || ${DebugCombat}) /echo CheckForCombat: Assist/Combat Begin ${If[!${SkipCombat},Normal,CheckForAdds]}
/call Assist
/call Combat
/if (${Debug} || ${DebugCombat}) /echo CheckForCombat: Assist/Combat End ${If[!${SkipCombat},Normal,CheckForAdds]}
/if (${ChainPull}==2) /return
:SkipMelee
/call CheckForAdds CheckForCombat
/if (${Role.Equal[tank]}) {
| If tank is assisting puller and in chase mode
/if (${MainAssist.NotEqual[${Me}]} && ${ChaseAssist}) /call DoWeMove
/if (${ReturnToCamp} && !${MobCount} && ${Math.Distance[${CampYLoc},${CampXLoc}]}>10 || (${MobCount}==1 && ${AggroTargetID} && ${Math.Distance[${CampYLoc},${CampXLoc}]}>75)) /call DoWeMove
/if ((${MobCount} && ${AggroTargetID}) || ${TankTimer}) /goto :CombatTop
}
/if (${Debug} || ${DebugCombat}) /echo CheckForCombat MobCount: ${MobCount} AggroTargetID: ${AggroTargetID} ChainPull: ${ChainPull}
/if (${ForceToCamp} && ${Math.Distance[${CampYLoc},${CampXLoc}]}>10) {
/varset RTCTemp ReturnToCamp
/varset ReturnToCamp 1
/call DoWeMove
/varset ReturnToCamp RTCTemp
}
/if ((${AggroTargetID} && !${ChainPull}) || (${MobCount}>1 && ${ChainPull})) /goto :CombatTop
/if (${MobCount}==1 && ${ChainPull}) /return
/if (${ReturnToCamp} && ${Math.Distance[${CampYLoc},${CampXLoc}]}>10) {
/if (${MainAssist.NotEqual[${Me}]}) /delay ${Math.Calc[${Math.Rand[1]}+1]}s
/if (${MobCount}<=0) /call DoWeMove
}
/if (${Debug} || ${DebugCombat}) /echo CheckForCombat Exit.
/return
