• 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
MQ2AFNuke

Release MQ2AFNuke

I crashed because of this plugin again, which is totally random because I’ve been using it flawlessly for days now. So weird.
 
So, How long is it running before it crashes? Are there any weird circumstances? I couldn't get any useful info from the crash dump you sent before (my visual studio debug/release compiles didn't align properly, so it wouldn't load the symbols). Is there a specific VV release you're using, or are you using the latest with the updater?

Edit: I ran it for a few hours w/o incident... Also, the Enaled was a typo in the SaveIni function. I will update it when I finish some other things... :)
 
Last edited:
I’ll have to play with it more. I was running it for a while when it crashed upon zoning.

I also went back to my old .ini settings to get it to work properly again. Whatever I changed to try to get it to not pause on zoning hosed it up something fierce, and then my fixes (including deleting the plugin and repatching to get another one) fucked up a bunch of other shit (not your issue ... the RG updater basically wiped my autologin settings somehow).
 
It should be working. I'll have to do some testing, and see if I can reproduce the problem. I assume it's already mem'd, right?
 
Has anyone figured out an optimal spell setup? I’d be curious to know what you expert wizzies use with this plugin.
 
I'll post mine when I get home.

Edit:

Ethereal Braid
Ethereal Skyfire
Ethereal Icefloe
Claw of Qunard
Cloudburst Thunderbolt
Stormjolt Vortex
Dissident Fire
Ethereal Volley -- For fire immune areas...
Claw of Travenro -- Same as Volley
Misc Spell - Ports, buffs, etc...
Twincast
Musing Harvest (I used Gambit on raids, but musing is fine for group shit)
 
Last edited:
Jimbob, yes braid is memed.

Are you on discoed id like to collaborate on optimizing this plugin with you.

2 dps cycles
A. During itc
Mana burn> Stormjolt>Braid>skyfire>Dissident>volley>Cloudburst(skyblaze depending on ranks)
B. Stormjolt>claw>Braid>skyfire>cloudburst>volley

I have more conditionals to this but I believe this to be near optimal with AA weave.

Thoughts?
 
For groups I recommend arcanomancy for raid. Pyro or cryo if cryo rotation changes again to include eth ice and possibly cold claw.
 
When I am in a zone that does not allow mounts, my wizards just keep standing and sitting over and over when they go to med. Not sure what causes this, but all my wizards do it.
 
You have the current list of what this does for a mage in a group or in a raid? Is there any configurability to this plugin in terms of spell selection for a mage?
 
Also, it still writes Enaled not Enabled.

Does this plugin also cast dps clickies the mages summon?
IE:
- Firebound Orb III
- Summoned: Icebound Shard

Can it be configured to weave in the other clickies we accumulate...
- Dark Shield of the Scholar
- Necromantic Dragon Bone
 
Also, it still writes Enaled not Enabled.

Does this plugin also cast dps clickies the mages summon?
IE:
- Firebound Orb III
- Summoned: Icebound Shard

Can it be configured to weave in the other clickies we accumulate...
- Dark Shield of the Scholar
- Necromantic Dragon Bone

If you run this alongside kissassist (which I and many others do) you can write your clickers into kiss and let this plugin run the nuking and AAs and buffs.
 
Also, it still writes Enaled not Enabled.

Does this plugin also cast dps clickies the mages summon?
IE:
- Firebound Orb III
- Summoned: Icebound Shard

Can it be configured to weave in the other clickies we accumulate...
- Dark Shield of the Scholar
- Necromantic Dragon Bone
Code:
                    if (!ITC && !TC && (tHPs < 81) && Mage->ThaumatizeSpellReady(NukeSpell, dist)) {}
                    else if (!ITC && !TC && GoM && Mage->DichotomicSpellReady(NukeSpell, dist)) {} //Mage->IsSpellReady("Dichotomic Companion") && Mage->GetPetID()) { NukeSpell = "Dichotomic Companion"; }
                    else if (!ITC && Mage->ServantSpellReady(NukeSpell, dist)){}
                    else if (!ITC && Mage->ChaoticSpellReady(NukeSpell, dist)) {}
                    else if (Mage->OfManySpellReady(NukeSpell, dist)) {}
                    else if (Mage->SpearSpellReady(NukeSpell, dist)) {}
                    else if (Mage->BoltSpellReady(NukeSpell, dist)) {}
                    else if (Mage->FickleSpellReady(NukeSpell, dist)) {}
                    else if (DoAE && Mage->FireRainSpellReady(NukeSpell, dist)) {}
                    else if (DoAE && Mage->MagicRainSpellReady(NukeSpell, dist)) {}
                    else if (Mage->MagicNukeSpellReady(NukeSpell, dist)) {}
                    else if (Mage->BoltSpellReady(NukeSpell, dist)) {}
                    else if (Mage->NextItemClicky(NukeSpell, dist)) { item = true; }
 
Jimbob,

A couple of questions
1. I can't seem to get AFNuke to cast 'Twincast' .. it is Rk. III and memmed in Gem3
2. I want to use FD and AD sequentially rather than together - so I have MegaBurn=0. Is that correct?
3. I want to use FD and AD when ITC or TC is up on any mob (not just a namer). If TC is active will FD or AD fire (even if I have WaitForITC=1)?
4. Will Manaburn be used if DoAANukes=1 and MegaBurn=0 or does MegaBurn need to be set to 1 ? Else do i need to trigger ManaBurn with KA or manually myself ?
5. I assume i need KA or to manually fire 'Fury of the Gods' and 'Arcane Fury'. Is that correct? Although i did read in the earlier pages you had a typo on Fury of the Gods (that was subsequently fixed). Is it ?

Thanks in advance

Hylander

My settings are as follows
Code:
[MQ2AFNuke]
Enaled=1
CampFireRez=0
DoReviveMerc=0
PauseOnZone=0
MemSpells=0
DoMed=0
DoMez=0
DoBurn=1
MobBurnThreshold=0
DoAANukes=1
Harvest=1
ManualAssist=0
BreakInvis=0
AssistAt=99
HarvestAt=75
DoMount=0
Dummy=0
MezThreshold=2
MedPct=98
StopAt=0
MountItem=Armored Snow Puma Saddle
MegaBurn=0
DoGlyph=0
BuyGlyph=1
NukesOn=1
MedToFull=0
DoBuffs=0
WaitForITC=1
SingleForce=0
DoAE=0
Fire=1
Ice=1
Magic=1
Debug=0
 
Last edited:
1: Right now, it will only use spell twincast when burning.
2: You are correct.
3: FD and AD will not fire on Spell TC if WaitForITC is set. They won't cast until ITC is ready and cast.
4: MQ2AFNuke won't use Manaburn at all. I may add it in the future.
5: MQ2AFNuke will use both fury AAs with burns.

Sorry for the delay in reply. I've been a little busy lately. :)
 
1: Right now, it will only use spell twincast when burning.
2: You are correct.
3: FD and AD will not fire on Spell TC if WaitForITC is set. They won't cast until ITC is ready and cast.
4: MQ2AFNuke won't use Manaburn at all. I may add it in the future.
5: MQ2AFNuke will use both fury AAs with burns.

Sorry for the delay in reply. I've been a little busy lately. :)
@jimbob , thanks heaps for the clarifications. Using AFNuke my Wizzie is poking his nose into the upper half of recent raid parses. **happy dance**

Hylander
 
Code:
                    if (!ITC && !TC && (tHPs < 81) && Mage->ThaumatizeSpellReady(NukeSpell, dist)) {}
                    else if (!ITC && !TC && GoM && Mage->DichotomicSpellReady(NukeSpell, dist)) {} //Mage->IsSpellReady("Dichotomic Companion") && Mage->GetPetID()) { NukeSpell = "Dichotomic Companion"; }
                    else if (!ITC && Mage->ServantSpellReady(NukeSpell, dist)){}
                    else if (!ITC && Mage->ChaoticSpellReady(NukeSpell, dist)) {}
                    else if (Mage->OfManySpellReady(NukeSpell, dist)) {}
                    else if (Mage->SpearSpellReady(NukeSpell, dist)) {}
                    else if (Mage->BoltSpellReady(NukeSpell, dist)) {}
                    else if (Mage->FickleSpellReady(NukeSpell, dist)) {}
                    else if (DoAE && Mage->FireRainSpellReady(NukeSpell, dist)) {}
                    else if (DoAE && Mage->MagicRainSpellReady(NukeSpell, dist)) {}
                    else if (Mage->MagicNukeSpellReady(NukeSpell, dist)) {}
                    else if (Mage->BoltSpellReady(NukeSpell, dist)) {}
                    else if (Mage->NextItemClicky(NukeSpell, dist)) { item = true; }
Hi, Jimbo
After reading you mage logic, some questions to discuss with you:
1. hope you can promte firerain and magicrain because the 2 rains have longer cd
If i memorize chaotic/ofmany/spear/swarm/rain, the current cast order is swarm-chaotic-ofmany-spear and swarm again(because previous spells cd are gone). The rain line has no chance to be casted.
The better cast order I think is rain-swarm-chaotic-ofmany-spear-rain.
2. swarm should be casted during ITC
reason1: swarm no longer comsumes ITC times
reason2: swarm is very important for mage dps. DPS ratio(mage self/swarm/waterpet) is about 2:2:1 according to my parse, swarm usually does as much dps as mage self.
reason3: mage needs swarms to keep ofmany at its best base damage
3. maybe item clicky is of too low priotity, my afnuke never casts Firebound Orb III .
4. since mage's dissident mana consumption is not that high as wiz's, you can consider remove the GOM check for dissident
5. I saw 2 " else if (Mage->MagicNukeSpellReady(NukeSpell, dist)) {}" in your logic snippet, dont know what's the different?
 
DBG will change fade ability of all class in the next patch. The cost using fade will be 8% of max mana for casters and priests. I noticed that mq2afnuke and mq2heals will actively use fade ability. Is it possible to remove the fade use from the plugin or to give a on/off switch because the mana consumption is too high now, maybe it is better to fade manually. Also I am worried that the plugin will spam fade when characters have not sufficient mana to cast fade after next patch.
 
I guess it's not accepting a partial match for the orb... I'll see what I can do about it.

I think I found a solution for the firebound orb issue...
Also added a DoFade option to enable/disable fade abilities.
 
Last edited:
The "" are around Firebound Orb... The rest of the string is enclosed in '
I think that just /casting doesn't take RK I, RK II, and RK III into account, so I added some code to get the item name back from the item search. That should help. So if it searches for "Firebound Orb" and finds "Firebound Orb Rk. III", it should work.
 
I've started using /useitem instead of /casting. Not sure if you'd be interested in that transition.

C++:
void UseItem(PCHAR szItem) {
    if (GlobalLastTimeUsed >= GetTickCount64()) return;
    char temp[MAX_STRING] = "/useitem \"";
    strcat_s(temp, MAX_STRING, szItem);
    char temp2[MAX_STRING] = "\"";
    strcat_s(temp, MAX_STRING, temp2);
    EzCommand(temp);
    WriteChatf("%sUsing Item: \ay%s", pluginmsg.c_str(), szItem);
    GlobalLastTimeUsed = GetTickCount64() + GlobalSkillDelay;
}

essentially does a /useitem "name of the item here"
 
Although that may decrease cast time and get me a little closer to getting away from MQ2Cast, it wouldn't have fixed the issue above. The issue was due to looking up the item in inventory (allowing for a partial match), then proceeding to cast using the item name hardcoded in MQ2AFNuke, which does not include the item/spell rank name.
 
use item accepts a partial match as far as i know. However, not entirely sure it applies if the partial match is enclosed in "quotes"

In fact I know it accepts partial match. /useitem for the berzerker's epic was finding the ornamentation on the zerker's primary weapon before it was finding the epic itself in the inventory, which is why I added wrapping my /useitem in quotes. If you want to use a partial match, do it without quotes.
 
I have a hotkey :
/plugin mq2afnuke
/nuke resume
/nuke memorize
/nuke doburn on

that is insta crashing my toon. did something change? it was working fine, though i havent played in about a week. yes, i ran the updater....
 
Yeah, /nuke memorize was broken several patches ago, and I haven't gotten around to fixing it yet. The rest should work fine though.
 
Release MQ2AFNuke

Users who are viewing this thread

Back
Top
Cart