• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

Plugin - MQ2Twist into MQ2Cast (1 Viewer)

Why was MQ2Twist never integrated into MQ2Cast. They don't play nice together and since MQ2Cast is so prevalent, I was thinking of giving it a shot at combining the two into MQ2Cast that supports twisting.

I think http://www.redguides.com/community/showthread.php/33896-MQ2Medley-Bard-Song-Scheduler could replace mq2twist after an while. It just wont replace mq2twist for low lv toons since it wont exchange instruments - but thats a third world, erm tlp, problem.

Before you invest precious developing time, please take a look at this plugin :)
 
It depends. It works fairly well, it's just not intuitive. I think I am just going to make it export a few functions that I have been using DoCommand for in my MQ2Heals plugin. I'd much rather call the functions I need directly. It shouldn't be too much of a challenge coming from gcc. I am familiar with gcc, and have written a lot of cross-platform programs... Unless you're stuck on something that's stdlib only or gcc-specific, you'll be fine.
 
Why was MQ2Twist never integrated into MQ2Cast. They don't play nice together and since MQ2Cast is so prevalent, I was thinking of giving it a shot at combining the two into MQ2Cast that supports twisting.

because mq2cast uses OnIncomingChat() "You begin to cast.."" to figure out you have started to cast a spell. Bard songs dont give that message. It messes up all the flags. That is why it was never integrated.
 
because mq2cast uses OnIncomingChat() "You begin to cast.."" to figure out you have started to cast a spell. Bard songs dont give that message. It messes up all the flags. That is why it was never integrated.

Is there a better way to determine if someone is casting, or if they can cast (i.e. global cooldown - can cast aas, but not spells)...?
 
My question was intended for regular casters, not bards, so I guess it's off topic, but.... Is there a way to determine the casting state w/o MQ2Cast, and its flags. I'd like to use the MQ2 API directly without scanning incoming chat messages to check for fizzles, whether or not we're casting, and if we're on the global cooldown (to cast AAs between spells and such). With some help from MQ2Cast, and MQ2CastTimer, I have a function to check if we're currently casting, but have no way to determine when global cooldown is over, or if casting fizzles. I suppose for the fizzles, I could use the OnIncomingChat method (though, I'd rather not), and for global cooldown, I could calculate it after the casting is complete (~1.5-1.9s usually, based on some threads I've read). What do you think? New thread?
 
My question was intended for regular casters, not bards, so I guess it's off topic, but.... Is there a way to determine the casting state w/o MQ2Cast, and its flags. I'd like to use the MQ2 API directly without scanning incoming chat messages to check for fizzles, whether or not we're casting, and if we're on the global cooldown (to cast AAs between spells and such). With some help from MQ2Cast, and MQ2CastTimer, I have a function to check if we're currently casting, but have no way to determine when global cooldown is over, or if casting fizzles. I suppose for the fizzles, I could use the OnIncomingChat method (though, I'd rather not), and for global cooldown, I could calculate it after the casting is complete (~1.5-1.9s usually, based on some threads I've read). What do you think? New thread?
you can use all the same datatypes mq2cast is using to determine what is being cast, but the fizzle, begin to cast, etc states are all based off of the OnIncomingChat() flag. global cooldown is already a TLO member as well. mq2cast has the variables you want, it just can't determine bard songs starting to cast.
 
you can use all the same datatypes mq2cast is using to determine what is being cast, but the fizzle, begin to cast, etc states are all based off of the OnIncomingChat() flag. global cooldown is already a TLO member as well. mq2cast has the variables you want, it just can't determine bard songs starting to cast.

Pete! I am glad you pointed that out. I had been trying to find it. In case anyone else cares: it's part of the Character TLO (${Me.SpellInCooldown}). This will make things a lot easier for my plugin. :)

Under Character TLO in MQ2DataTypes.cpp...
case SpellInCooldown:
Dest.DWord = ((PCDISPLAY)pDisplay)->TimeStamp <= ((PSPAWNINFO)pLocalPlayer)->SpellCooldownETA;
Dest.Type = pBoolType;
return true;

I'll just stick with MQ2Cast to determine fizzles, etc...

- - - Updated - - -

You know, I never searched the source code for "cooldown"... It could have saved me a lot of time.
 
Plugin - MQ2Twist into MQ2Cast

Users who are viewing this thread

Back
Top