Skip to content

Commit

Permalink
Small Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
meta53 committed Nov 2, 2023
1 parent d052d9e commit 0a5d935
Show file tree
Hide file tree
Showing 19 changed files with 252 additions and 142 deletions.
2 changes: 1 addition & 1 deletion bot_bst.mac
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/if (${${DEBUFF_Total}}) /call chkDebuffsOnSingleTarget ${int_targetID}

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack

|-- melee library
/if (!${mq2meleeEnabled}) /call chkCA_${Me.Class.ShortName}
Expand Down
2 changes: 1 addition & 1 deletion bot_enc.mac
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/if (${${DEBUFF_Total}}) /call chkDebuffsOnSingleTarget ${int_targetID}

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack
/if (${int_cmbtBuffTotal} && !${bln_hasCharmedPet}) /call cmbtBuffGRP

|-- dps library (caster)
Expand Down
2 changes: 1 addition & 1 deletion bot_mag.mac
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/if (${${DEBUFF_Total}}) /call chkDebuffsOnSingleTarget ${int_targetID}

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack
/if (${bln_cmbtBuffUse} && ${int_cmbtBuffTotal}) /call cmbtBuffMT

|-- dps library (AE caster)
Expand Down
15 changes: 13 additions & 2 deletions bot_melee.mac
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,18 @@ REQUIRED INCLUDES

#TURBO 120

#EVENT FIRE_WARCRY "#1# tells the group#*#'FireWarCry #2#'"
#EVENT FIRE_WARCRY "#1# tells you#*#'FireWarCry #2#'"
#EVENT FIRE_WARCRY "#1# tells the raid#*#FireWarCry #2#'"
#EVENT FIRE_WARCRY "[ #1# #*#]#*#FireWarCry #2#"

Sub InitEvents_Class
|/call RegisterClassEvents Events_AllMelee 0
/if (${Me.Class.ShortName.Equal[BER]}) /call RegisterClassEvents Events_Class_BER 1
/return

Sub Events_AllMelee
Sub Events_Class_BER
/doevents FIRE_WARCRY
/return

Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint, string _assistArgs)
Expand Down Expand Up @@ -141,9 +148,13 @@ Sub chkUtils
|-- Standard Methods
/call chkSit
/varset timer_check_utilities 20s

/return

Sub EVENT_FIRE_WARCRY(_line, _chatSender, _eventParams)
/shout I am Firing Warcry on ${Spawn[id ${_eventParams}].Name} (${_eventParams});
/call TrueTarget ${_eventParams}
/if (${Me.CombatAbilityReady[Ancient: Cry of Chaos]}) /doability "Ancient: Cry of Chaos"
/return

|**
----------------------------
Expand Down
2 changes: 1 addition & 1 deletion bot_nec.mac
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/if (${${DEBUFF_Total}}) /call chkDebuffsOnSingleTarget ${int_targetID}

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack
/if (${bln_lifetapUse} && (${Me.PctHPs} <= ${int_lifetapHP})) /call chkLifetap
/call chkFeignDeath

Expand Down
2 changes: 1 addition & 1 deletion bot_shd.mac
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/call RunAllEvents

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack
/if (${bln_lifetapUse} && (${Me.PctHPs} <= ${int_lifetapHP})) /call chkLifetap
/if (!${bln_tanking}) /call chkFeignDeath

Expand Down
2 changes: 1 addition & 1 deletion bot_shm.mac
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ Sub Main(string _tank1Name, string _tank2Name, string _tank3Name, int _healPoint
/if (${${DEBUFF_Total}}) /call chkDebuffsOnSingleTarget ${int_targetID}

|-- class specific
/if (${Me.Pet.ID}) /call chkPetAttack
/if (${Pet.ID}) /call chkPetAttack
/if (${int_cmbtBuffTotal}) /call cmbtBuffGRP

|-- dps library (priest)
Expand Down
43 changes: 25 additions & 18 deletions ldon_guild.mac
Original file line number Diff line number Diff line change
Expand Up @@ -805,35 +805,42 @@ Sub getTarget
Sub chkTargetValid
/echo chkTargetValid ${Target.Name}
/if (${Target.Type.NotEqual[NPC]}) /return

|--check to see if its a corpse
/if (${Target.Name.Find['s_corpse]}) {
/echo \arINVALID \awTarget is a corpse!
/call setTGTAlert
/return
}

|--check if there is a path to the target
/if (!${Navigation.PathExists[target]}) {
/echo INVALID No Path to Target
/echo \arINVALID \awNo Path to Target
/call setTGTAlert
/return
}

|--check my target is the apropriate level
/if ((${Target.ID}) && (${Target.Level} < ${int_minTLevel})) {
/echo target too low of a level
/echo \arINVALID \awTarget too low of a level
/call setTGTAlert
/return
}
/if (${Target.Underwater}) {
/echo target is underwater
/echo \arINVALID \awTarget is underwater
/call setTGTAlert
/return
}

|--check my target is the above the apropriate z-radius floor
/if ((${Target.ID}) && ${Int[${Target.Z}]}<${int_minZHeight}) {
/echo target below z floor
/echo \arINVALID \awTarget below z floor
/call setTGTAlert
/return
}
|--check my target is the above the apropriate z-radius ceiling
/if ((${Target.ID}) &&${Int[${Target.Z}]}>${int_maxZHeight}) {
/echo target below z ceiling
/echo \arINVALID \awTarget below z ceiling
/call setTGTAlert
/return
}
Expand Down Expand Up @@ -865,15 +872,16 @@ Sub pullTarget


:pullLoop
/if (!${bln_validTGT}) /goto :return
/if (!${Target.ID}) /goto :return
/if (${Target.Type.NotEqual[NPC]}) /goto :return
/if (!${bln_validTGT}) /goto :return
/if (!${Target.ID}) /goto :return
/if (${Target.Type.NotEqual[NPC]}) /goto :return
/if (${Target.Name.Find['s_corpse]}) /goto :return

| Start the pull by running to the target
:RunningToTarget
/if (${Navigation.PathExists[target]}) {
/if (!${Navigation.Active}) /navigate target
/delay 10
/delay 15
} else {
/call clearNavStuck
/goto :RunningToTarget
Expand Down Expand Up @@ -915,6 +923,7 @@ Sub pullTarget
/call AggroTarget
/varcalc attempt ${attempt} + 1
/echo \aoAggro Attempt return ${Macro.Return}
/if (${Macro.Return.Equal[FAILED]}) /goto :AggroCheck
/if (${Me.TargetOfTarget.Name.Equal[${Me.Name}]}) /goto :ReturnWithPull
/if (${Macro.Return.Equal[NOLOS]}) /goto :RunningToTarget
/if (${Macro.Return.Equal[CAST_FIZZLE]}) /goto :AggroCheck
Expand Down Expand Up @@ -986,11 +995,10 @@ Sub AggroTarget
} else {
/if (${Me.PctMana} > 10) {
/call chkSpellMemorized "${spell_pull}" TRUE ${spell_pullGem}
/echo ${Me.SpellReady[${spell_pull}]} Cast "${spell_pull}" ${spell_pullGem} 2s
/echo \awReady?\ag${Me.SpellReady[${spell_pull}]} \awCasting \ag"${spell_pull}" \ap${spell_pullGem} \aw2s
/call MQ2Cast "${spell_pull}" ${spell_pullGem} 2s
/doevents NoLOS


/if (${bln_noLOS}) /varset ret NOLOS
/if (${Macro.Return.Equal[CAST_SUCCESS]}) /varset ret SUCCESS
/if (${Macro.Return.Equal[CAST_CANNOTSEE]}) /varset ret NOLOS
Expand Down Expand Up @@ -1056,9 +1064,8 @@ Sub killTarget
}

:killMob
/echo \aoIssuing Kill Command
|--issue kill command


/docommand /${announceChannel} KillMob ${Target.ID} "${Target.Name}" ${Time.Time24}
/call ResetCastTimers
/face fast
Expand All @@ -1079,9 +1086,9 @@ Sub killTarget
|--while in combat do these things
:combatLoop
/call chkCombatState
/if (${int_targetID} != ${Target.ID}) /return
/if (${Target.Type.NotEqual[NPC]}) /return
/if (${Target.Distance} > ${int_campRadius}) /goto :distanceWaitLoop
/if (${int_targetID} != ${Target.ID}) /goto :return
/if (${Target.Type.NotEqual[NPC]}) /goto :return
/if (${Target.Distance} > ${int_campRadius}) /goto :distanceWaitLoop

/if (!${bln_TGTDead}) {
/if ((${Me.TargetOfTarget.ID} != ${Me.ID}) && !${Target.Fleeing}) {
Expand All @@ -1101,8 +1108,8 @@ Sub killTarget
} else {
/echo \agTarget is dead, return
}


:return
/hidecorpse npc
/return

Sub chkLDONCompletion
Expand Down
2 changes: 1 addition & 1 deletion xiris_class_ini/BOT_BER_Ophesia.ini
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ br= **|

[BURN]
;_Burn|_Type|_Use|_AfterIndex|_MGB
BURN_Total=4
BURN_Total=8
BURN_Group=1

BURN_1="Ancient: Cry of Chaos"|combat|TRUE|0|FALSE
Expand Down
11 changes: 6 additions & 5 deletions xiris_class_ini/BOT_ENC_Erisa.ini
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,10 @@ br= **|
DEBUFF_3="Synapsis Spasm"|TRUE|5|1|TRUE|100|10|Disease|FALSE|0
DEBUFF_3_Type=CRIPPLE
[INVENTORY]
leftfinger=Ring of Disdain
rightfinger=Ring of the Serpent
face=Mask of Forbidden Rites
leftear=Earring of Dark Conflict
rightear=Loop of Entropic Hues
leftfinger=Ring of Disdain
rightfinger=Ring of the Serpent
face=Mask of Forbidden Rites
leftear=Earring of Dark Conflict
rightear=Loop of Entropic Hues
3 changes: 2 additions & 1 deletion xiris_class_ini/BOT_WAR_Xiris.ini
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,11 @@
piercing=Soulskive|mainhand,Hardened Bone Spike|offhand
[Downflags]
downflagCount=3
downflagCount=4
downflag1=Form of Defense III|47286 item
downflag2=Frost Guard|69130 item
downflag3=Taelosian Guard|69131 item
downflag4=Pestilence Shock|20898 item
[Holyflags]
holyflagCount=0
Expand Down
6 changes: 3 additions & 3 deletions xiris_common/xiris_casting.inc
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ Sub chkNuke
/if ((${Me.Casting.ID} && ${Me.Class.ShortName.NotEqual[BRD]}) || ${Me.Moving} || ${Me.Invis} || ${ExcludeList.Find[${Spawn[${Target.CleanName}]}]}) /return

|-- press pet attack for funsies
/if (${Me.Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack
/if (${Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack

|-- named check
:named_check
Expand Down Expand Up @@ -210,7 +210,7 @@ Sub chkQNuke
/if ((${Me.Casting.ID} && ${Me.Class.ShortName.NotEqual[BRD]}) || ${Me.Moving} || ${Me.Invis} || ${ExcludeList.Find[${Spawn[${Target.CleanName}]}]}) /return

|-- press pet attack for funsies
/if (${Me.Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack
/if (${Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack

|-- named check
:named_check
Expand Down Expand Up @@ -456,7 +456,7 @@ Sub chkDOT
/if ((${Me.Casting.ID} && ${Me.Class.ShortName.NotEqual[BRD]}) || ${Me.Moving} || ${Me.Invis} || ${ExcludeList.Find[${Spawn[${Target.CleanName}]}]}) /return

|-- press pet attack for funsies
/if (${Me.Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack
/if (${Pet.ID} && ${bln_petUse} && !${Me.Pet.Combat}) /call chkPetAttack

|-- named check
:named_check
Expand Down
59 changes: 29 additions & 30 deletions xiris_common/xiris_charm.inc
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,18 @@ REVISION HISTORY
#EVENT CharmON "#*#CharmON#*#"
#EVENT CharmOFF "#*#CharmOFF#*#"
#EVENT CharmON "#*#CharmON#*#"
#EVENT CharmOFF "#*#CharmOFF#*#"
#EVENT CharmNPCByID "#1# tells the group#*#'CharmNPCByID #2#'"
#EVENT CharmNPCByID "#1# tells you#*#'CharmNPCByID #2#'"
#EVENT CharmNPCByID "#1# tells the raid#*#CharmNPCByID #2#'"
#EVENT CharmNPCByID "[ #1# #*#]#*#CharmNPCByID #2#"
#EVENT CharmNPCByID "#1# tells the group#*#'CharmNPCByID #2#'"
#EVENT CharmNPCByID "#1# tells you#*#'CharmNPCByID #2#'"
#EVENT CharmNPCByID "#1# tells the raid#*#CharmNPCByID #2#'"
#EVENT CharmNPCByID "[ #1# #*#]#*#CharmNPCByID #2#"
#EVENT CharmNPCByName "#1# tells the group#*#'CharmNPCByName #2#'"
#EVENT CharmNPCByName "#1# tells you#*#'CharmNPCByName #2#'"
#EVENT CharmNPCByName "#1# tells the raid#*#CharmNPCByName #2#'"
#EVENT CharmNPCByName "[ #1# #*#]#*#CharmNPCByName #2#"
#EVENT CharmNPCByName "#1# tells the group#*#'CharmNPCByName #2#'"
#EVENT CharmNPCByName "#1# tells you#*#'CharmNPCByName #2#'"
#EVENT CharmNPCByName "#1# tells the raid#*#CharmNPCByName #2#'"
#EVENT CharmNPCByName "[ #1# #*#]#*#CharmNPCByName #2#"
Sub InitEvents_Charm
/if (${Me.Class.ShortName.NotEqual[BRD]} && ${Me.Class.ShortName.NotEqual[ENC]} && ${Me.Class.ShortName.NotEqual[NEC]}) /return
Expand Down Expand Up @@ -64,32 +64,31 @@ Sub EVENT_CharmNPCByName(_line, _chatSender,_eventParams)
Sub CharmNPC(int _targetID, bool _forced, bool _attack, int _attackID)
/echo \aoCharmNPC\aw(\ag${_targetID}\aw ${bln_activeCharming})
/echo \aoCharmNPC\aw(\ag${_targetID}\aw) Forced? \ag${_forced} \awAttack? \ag${_attack} \awTarget? \ag${_attackID})
/if (!${bln_activeCharming} && !${_forced}) /return
/if (${Me.Pet.ID}) /return
/if (${Pet.ID}) /return
/varset bln_hasCharmedPet FALSE
| /declare CHARM_Template string outer _Spell|_Gem|_MaxTries|_KeepAlive|_Resist|_RecastTimer
| Check the logic in charm (ie: if we can use ancient if enc, etc)
:charmTarget
/declare i int local 2
/for i 1 to ${CHARM_Total}
/if (${Me.Pet.ID}) /return
/if (${Pet.ID}) /return
/call TrueTarget ${_targetID}
| Trigger Check based on type (Calls chkCharmTrigger)
/call chkCharmTrigger ${CHARM_${i}_Type}
/echo \ayChkCharmTrigger: \ao${CHARM_${i}_Type} \ar${Macro.Return} "${CHARM_${i}_Spell}"
/if (!${Macro.Return}) {
/if (${i} < ${CHARM_Total}) {
/echo \aoGoing to next charm since first failed!
/goto :nextCharm
} else {
/echo \aoChkCharmTrigger FAILED
/goto :return
}
}
| /call chkCharmTrigger ${CHARM_${i}_Type}
| /echo \ayChkCharmTrigger: \ao${CHARM_${i}_Type} \ar${Macro.Return} "${CHARM_${i}_Spell}"
| /if (!${Macro.Return}) {
| /if (${i} < ${CHARM_Total}) {
| /echo \aoGoing to next charm since first failed!
| /goto :nextCharm
| } else {
| /echo \aoChkCharmTrigger FAILED
| /goto :return
| }
| }
| Checks passed, check if the spell is memorized. Skip if not
:charmSpellMemorized
Expand All @@ -110,7 +109,7 @@ Sub CharmNPC(int _targetID, bool _forced, bool _attack, int _attackID)
/call MQ2Medley SONG "${CHARM_${i}_Spell}" ${_targetID} TRUE
/goto :return
} else {
/call CastCharm "${CHARM_${i}_Spell}" ${CHARM_${db}_Gem} ${CHARM_${i}_MaxTries} ${Target.ID} ${_forced}
/call CastCharm "${CHARM_${i}_Spell}" ${CHARM_${i}_Gem} ${CHARM_${i}_MaxTries} ${Target.ID} ${_forced}
/goto :return
}
/call RunRaidEvents
Expand All @@ -120,7 +119,7 @@ Sub CharmNPC(int _targetID, bool _forced, bool _attack, int _attackID)
/next i
:return
/if (${Me.Pet.ID} ) {
/if (${Pet.ID} ) {
/varset bln_hasCharmedPet TRUE
/if (${_attack}) {
/echo \awEngaging Target(\ag${_attackID}\aw) with Charmed Pet \ag${Me.Pet.Name}!
Expand Down Expand Up @@ -217,11 +216,11 @@ Sub CreateCharmLineup
Sub chkCharmTrigger(string _key)
/if (${Me.Class.ShortName.Equal[ENC]}) {
| Charm 1 "Ancient: Voice of Muram"
/if (${_key.Equal[ANCIENT]} && (!${Me.Pet.ID} || ${Target.Charmed.Duration.TotalSeconds} < 6) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
/if (${_key.Equal[ANCIENT]} && (!${Pet.ID} || ${Target.Charmed.Duration.TotalSeconds} < 6) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
| Charm 2 "True Name"
/if (${_key.Equal[NORMAL]} && (!${Me.Pet.ID} || ${Target.Buff[${CHARM_1_SPELL}].Duration.TotalSeconds} < 5) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
/if (${_key.Equal[NORMAL]} && (!${Pet.ID} || ${Target.Buff[${CHARM_1_SPELL}].Duration.TotalSeconds} < 5) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
} else /if (${Me.Class.ShortName.Equal[BRD]}) {
/if (${_key.Equal[NORMAL]} && (!${Me.Pet.ID} || ${Target.Charmed.Duration.TotalSeconds} < 6) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
/if (${_key.Equal[NORMAL]} && (!${Pet.ID} || ${Target.Charmed.Duration.TotalSeconds} < 6) && ${Me.SpellReady[${CHARM_1_Spell}]}) /return TRUE
}
/return FALSE
Expand Down
Loading

0 comments on commit 0a5d935

Please sign in to comment.