• 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

Request - Berserker turning off summon axes, stating out of components.

Joined
Jul 20, 2022
RedCents
60¢
Version of KissAssist.mac?
12.002
When did your problem start?
Since attempting to use kissassist and a berserker
Character Role?
  1. Assist
What class is having this issue?
  1. Berserker
How often does this issue occur?
Always
Buff1=Axe of the Mangler|summon|Axe of the Mangler|300

When summoning the axes it will summon once and then stop.

kissassist.mac:4443-4446

Code:
                /if (!${Me.CombatAbility[${SSpell}]}) {
                    /varset SumResult CAST_COMPONENTS
                    /return ${SumResult}
                }

should be

Code:
                /if (!${Me.CombatAbilityReady[${SSpell}]}) {
                    /varset SumResult CAST_NOT_READY
                    /return ${SumResult}
                }

Hope I'm not missing something fundamental.
 
Sorry for bumping an old-ish thread but I'm having an identical issue. I'm using:

Buffs1=Mithril Axe|Summon|Mithril Axe|100 Buffs2=Blunt Axe|Summon|Blunt Axe|100

The toon will summon 1 stack of Mithril, then give the "out of components" message, then summon one stack of Blunt, then give the "out of components" message. I have plenty of components. I wonder if it's not waiting quite long enough for the abilities to refresh before attempting to re-cast? I can generate a log of this behavior if it would be helpful.
 
Here's the relevant portion of the /debug buffs log. I wasn't able to catch it before the Mithril Axes pooped out but the Blunt Axes have the same problem and I did capture that. Maybe it's just not waiting long enough on the recast timer?

[CODE title="Berzerker summon axes debug" highlight="6-20"][2023/03/16 11:50:55] -- Turning off Mithril Axe - Mithril Axe|Summon|Mithril Axe|0
[2023/03/16 11:50:55] I now have 20 of >> Mithril Axe <<
[2023/03/16 11:50:55] BUFFS-025 L:4519 T:25 SummonStuff Leave 50 CAST_COMPONENTS 0
[2023/03/16 11:50:55] You are missing components. Turning off Mithril Axe.
[2023/03/16 11:50:55] BUFFS-025 L:4006 T:25 CheckBuffs End of If Structure. Summon
[2023/03/16 11:50:55] BUFFS-025 L:3838 T:25 CheckBuffs Buff2: Blunt Axe|Summon|Blunt Axe|100
[2023/03/16 11:50:55] BUFFS-025 L:3901 T:25 CheckBuffs 1st:Blunt Axe 2nd: Summon #rd: Blunt Axe Blunt Axe 4th: 100
[2023/03/16 11:50:55] BUFFS-025 L:3913 T:25 CheckBuffs 2 1st: Blunt Axe 2nd: Summon FullText: Blunt Axe|Summon|Blunt Axe|100 Type: Self ReadBuffsTimer: 0 IniNextTimer: 0
[2023/03/16 11:50:55] BUFFS-025 L:3914 T:25 CheckBuffs Skip if Combat: 0 Aggro: 0 IDied: 0 ReadBTimer: 0 Invised: FALSE
[2023/03/16 11:50:55] BUFFS-025 L:3924 T:25 CheckBuffs Start of If Structure. Blunt Axe Summon 0 0
[2023/03/16 11:50:55] BUFFS-025 L:4448 T:25 SummonStuff Enter SSpell: Blunt Axe SumItem: Blunt Axe SumNum: 100
[2023/03/16 11:50:58] BUFFS-025 L:4495 T:28 CheckBuffs summon item cast result CAST_SUCCESS
[2023/03/16 11:50:58] Summoned >> Blunt Axe <<
[2023/03/16 11:51:02] BUFFS-025 L:4495 T:32 CheckBuffs summon item cast result CAST_SUCCESS
[2023/03/16 11:51:07] Summoning >> Blunt Axe << Failed - Check reagents, timer, etc
[2023/03/16 11:51:07] -- Turning off Blunt Axe - Blunt Axe|Summon|Blunt Axe|0
[2023/03/16 11:51:07] I now have 37 of >> Blunt Axe <<
[2023/03/16 11:51:07] BUFFS-025 L:4519 T:37 SummonStuff Leave 50 CAST_COMPONENTS 0
[2023/03/16 11:51:07] You are missing components. Turning off Blunt Axe.
[2023/03/16 11:51:07] BUFFS-025 L:4006 T:37 CheckBuffs End of If Structure. Summon
[2023/03/16 11:51:07] BUFFS-025 L:4309 T:37 CheckBuffs Leave
[2023/03/16 11:51:07] BUFFS-025 L:13125 T:38 CastMana Enter MainLoop
[2023/03/16 11:51:07] BUFFS-025 L:13161 T:38 CastMana Leave MainLoop
[2023/03/16 11:51:07] BUFFS-025 L:3779 T:38 CheckBuffs CheckBuffs: Enter
[2023/03/16 11:51:07] BUFFS-025 L:4309 T:38 CheckBuffs Leave[/CODE]
 
Are you getting an EQ warning message at all? Hard for me to believe that ${Me.CombatAbility[Blunt Axe]} would return false if you have the ability and the ability is not ready. If that is the case, then there is an MQ issue not returning the correct value for ${Me.CombatAbility[Blunt Axe]}.
 
Are you getting an EQ warning message at all? Hard for me to believe that ${Me.CombatAbility[Blunt Axe]} would return false if you have the ability and the ability is not ready. If that is the case, then there is an MQ issue not returning the correct value for ${Me.CombatAbility[Blunt Axe]}.
So I did try to see if /echo ${Me.CombatAbilityReady[Blunt Axe]} was properly returning the correct boolean value when the ability was on cooldown vs not; it seems to be reporting correctly. (Using ${Me.CombatAbility[Blunt Axe]} just returns a number.)

Regarding EQ warning messages - right around the same time KA turns off the ability, EQ says "You can use the ability Blunt Axe again in 0 minute(s) 5 seconds." This suggests to me maybe the macro is trying to re-use the ability too early? I don't know if other abilities do this but the cooldown for the Axes starts after the cast completes, not when the button is pressed.

Also, adding the above condition to the Buffs line did not seem to make a difference at all in the macro's behavior.
 
OK. I added an additional check for Me.CombatAbilityReady when summing axes You can replace the routine or just copy and paste the additional lines.

Let me know how this works for you.

Code:
    Sub SummonStuff(SSpell,SumItem,int SumNum,int CondNumber)
        /if (${Me.Invis}) /return
        /if (${FindItemCount[=${SumItem}]}>=${SumNum}) /return 0
        /declare SumResult string local FALSE
        /declare SummonAttempts int local 0
        /declare CurrentCount int local 0
        /declare OriginalCount int local ${FindItemCount[=${SumItem}]}
        DEBUGBUFF SummonStuff Enter SSpell: ${SSpell} SumItem: ${SumItem} SumNum: ${SumNum}
        /if (${CondNumber} && ${If[${Cond[${CondNumber}]},0,1]}) /return 0
        /while (${FindItemCount[=${SumItem}]}<${SumNum}) {
            /if (${Me.FreeInventory}==0) {
                /echo No room in inventory skipping summoning >> ${SumItem} <<.
                /break
            }
            /varset CurrentCount ${FindItemCount[=${SumItem}]}
            | Summon axes for zerkers had to be hard coded because spell is same name as the item summoned.
            /if (${Select[${Me.Class.ShortName},BER]} && ${SSpell.Find[axe]}) {
                /doevents flush Missing
                /if (!${Me.CombatAbility[${SSpell}]}) {
                    /varset SumResult CAST_COMPONENTS
                    /return ${SumResult}
                } else /if (!${Me.CombatAbilityReady[${SSpell}]}) {
                    DEBUGBUFF ${SSpell} Combat Ability not ready skipping
                    /varset SumResult CAST_NOT_READY
                    /return ${SumResult}
                }
                /if (${Cursor.ID}) /call CheckCursor SummonStuff 1
                /docommand /disc ${SSpell}
                /varset MissingComponent 0
                /call CastWait "${SSpell}" SummonStuff
                /doevents Missing
                /if (!${MissingComponent} && !${Cursor.ID}) {
                    /delay 20 ${Cursor.ID}
                }
                /if (${Cursor.ID}) {
                    /varcalc SummonAttempts ${SummonAttempts}+1
                    /varset SumResult CAST_SUCCESS
                } else {
                    /if (!${MissingComponent}) {
                        /doevents Missing
                    } else {
                        /varset SumResult CAST_COMPONENTS
                    }
                }
            } else {
                | Check if summoning from an item
                /if (${FindItemCount[=${SSpell}]} > 0) {
                    | Check if item is ready to cast
                    /if (${FindItem[=${SSpell}].Timer}!=0) {
                        DEBUGBUFF ${SSpell} Item not ready yet skipping
                        /varset SumResult CAST_NOT_READY
                        /return ${SumResult}
                    }
                }
                /if (${Cursor.ID}) /call CheckCursor SummonStuff 1
                /call CastWhat "${SSpell}" ${Me.ID} SummonStuff-nomem 0 0
                /varset SumResult ${Macro.Return}
            }
            DEBUGBUFF CheckBuffs summon item cast result ${Macro.Return} ${SumResult}
            /if (${SumResult.Equal[CAST_SUCCESS]}) {
                /delay 5s ${Cursor.ID}
                /if (${Cursor.ID}) {
                    /echo Summoned  >> ${SumItem} <<
                    /varcalc SummonAttempts ${SummonAttempts}+1
                    /call CheckCursor SummonStuff 1
                } else /if (${FindItemCount[=${SumItem}]}==${CurrentCount} && ${SummonAttempts}>0) {
                    /echo Summoning >> ${SumItem} << Failed - Check reagents, timer, etc
                    /echo -- Turning off ${SSpell} - ${SSpell}|Summon|${SumItem}|0
                    /varset SummonAttempts 0
                    /varset SumResult CAST_COMPONENTS
                    /break
                }
            } else /if (${SumResult.Equal[CAST_COMPONENTS]}) {
                /echo You are missing components. Turning Off ${SSpell}.
                /break
            } else /if (${Select[${SumResult},CAST_NO_RESULT,CAST_RECOVER]}) {
                /break
            }
            /if (${SummonAttempts}>5) /break
        }
        /if (${Cursor.ID}) /call CheckCursor SummonStuff 0
        /if (${FindItemCount[=${SumItem}]}>${OriginalCount}) /echo I now have ${FindItemCount[=${SumItem}]} of >> ${SumItem} <<
        DEBUGBUFF SummonStuff Leave ${Me.FreeInventory} ${SumResult} ${SummonAttempts}
    /return ${SumResult}
 
Works like a dream! No errors whatsoever. I also appreciate you sharing the code; I learned a lot from going through it line-by-line.
 
Hi, I'm having issues with summoning axes I tried replacing those codes and it still isn't working for me, keeps saying I don't have components but I do have them.

here's my line of code.


[Buffs]
BuffsOn=1
BuffsSize=20
Buffs1=Bloodlust Aura
Buffs2=Axe of the Destoyer|Summon|Axe of the Destroyer|100
Buffs3=NULL
Buffs4=NULL
Buffs5=NULL
Buffs6=NULL
Buffs7=NULL
Buffs8=NULL
Buffs9=NULL
Buffs10=NULL
Buffs11=NULL
Buffs12=NULL
Buffs13=NULL
Buffs14=NULL
Buffs15=NULL
Buffs16=NULL
Buffs17=NULL
Buffs18=NULL
Buffs19=NULL
Buffs20=NULL
RebuffOn=1
CheckBuffsTimer=1
PowerSource=NULL
 
Hi, I'm having issues with summoning axes I tried replacing those codes and it still isn't working for me, keeps saying I don't have components but I do have them.

here's my line of code.


[Buffs]
BuffsOn=1
BuffsSize=20
Buffs1=Bloodlust Aura
Buffs2=Axe of the Destoyer|Summon|Axe of the Destroyer|100
Buffs3=NULL
Buffs4=NULL
Buffs5=NULL
Buffs6=NULL
Buffs7=NULL
Buffs8=NULL
Buffs9=NULL
Buffs10=NULL
Buffs11=NULL
Buffs12=NULL
Buffs13=NULL
Buffs14=NULL
Buffs15=NULL
Buffs16=NULL
Buffs17=NULL
Buffs18=NULL
Buffs19=NULL
Buffs20=NULL
RebuffOn=1
CheckBuffsTimer=1
PowerSource=NULL
This components check is event based. Meaning it would have had to try and cast it and been told it didn't have the components for it to fail. Try casting manually and see if it works. Probably won't.
There are various different kinds of axe components. It's possible you have components but for the wrong axe summon.
 
Request - Berserker turning off summon axes, stating out of components.

Users who are viewing this thread

Back
Top
Cart