Plugin: MQ2Rez

additional info.

Line number 270 is the source of the issue.

"DoCommand(GetCharInfo()->pSpawn,"/multiline ; /corpse ; /pause 2 ; /loot");"

For some reason it is not seeing /pause 2 .. but /pausee 2

Sent a pm to Vlad to ask if the source got accidentially edited ... stranger things have happened by accident.
 
Last edited:
There's no reason for that to suddenly stop working -- I didn't mess around with that portion of the code at all. Could be a problem on your end? Did you try using Vlad's DLL?

*edit* But the rez % feature is working, then, I guess? Whoever reported it broken must have been mistaken.
 
Thanks, JJ! Looks like it was working, after all, but if someone has an issue, that should help a bit.
 
The rez and accept% features work fine... I never reported they didnt work. The looting portion is not working because the compile vlad posted errors out. The error is what i posted a few posts up ....

MQ2 window displays a command call for: Pausee 2

( thats exactly as it was spelled out )

With the following error below it:
DoCommand - Couldn't parse 'e 2'
( thats a 'e<singlespace>2' )

This is specific to the compile vlad made of your altered code.

I don't compile .. so i leave it in the hands of vlad to check that line with the multiline command in it.. and verify there wasnt an extra E stuck in his copy of the source before he compiled. Because thats what it looks like... that the program is seeing "/pausee 2" and nit "/pause 2".

If we can get vlad to check his copy of the source and attempt another re-compile.. maybe we can clear this up and get it working with the function to loot all.



There's no reason for that to suddenly stop working -- I didn't mess around with that portion of the code at all. Could be a problem on your end? Did you try using Vlad's DLL?

*edit* But the rez % feature is working, then, I guess? Whoever reported it broken must have been mistaken.
 
I compiled then posted the code from it above. I have no idea what is wrong. Just in case, I recompiled it with the latest mq2. I doubt its different, but here you go.
 

Attachments

  • MQ2Rez.dll
    132 KB · Views: 4
Testing

Still getting the same error on the newest re-compile Vlad did yesterday.

I would humbly ask ANYONE else to please test this .dll and post their results as well.

I have tested on two different accounts, some tests using WinEQ2 some not using WinEQ2. The results are the same. The dll causes an error in MQ2 and breaks at the point in the multiline command when attempting to do the /pause 2 just before the /loot command.

Command sent to MQ2 window is PAUSEE 2 ... and of course the MQ2 window reports that is could not parse "e 2" and aborts.

Can someone else please confirm this issue by doing at least 1 test.

Or perhaps if someone can compile the latest source provided by Thez in a vanilia compile.

TY
 
Last edited:
THD,

I use this plugin on 5 computers, some running multiple accounts, some with Wineq2, some without, and none of them have any issues with it. Accepts rezzes that are 93% or higher and autoloots, every time.
 
Someone has to ask.. :)

Are you running a completely clean install? All old DLLs etc deleted?
 
Heck, it's probably something in his /alias settings, if it's a personal problem for him.
 
Same problem here

I'm using the newest complile (Dec 9th).

MQ2Rez doesn't work correct for me either with the newest complile (I was thinking that is had to do with the new /lootall command). I would get the couldn't parse the /pause 2 command (didn't notice and extra e) and then it won't loot. It just sits there. I went into the source code and changed the command to /timed 2s and I stopped getting the error message, but it still won't loot properly.

I just had to add in my 2cp so you guys know that it's not an isolated issue.
 
yup

I have had issues with it also, what he said, and then the next npc corpse i try and loot it tries to loot all, spams me good.
 
I'm using the newest complile (Dec 9th).

MQ2Rez doesn't work correct for me either with the newest complile (I was thinking that is had to do with the new /lootall command). I would get the couldn't parse the /pause 2 command (didn't notice and extra e) and then it won't loot. It just sits there. I went into the source code and changed the command to /timed 2s and I stopped getting the error message, but it still won't loot properly.

I just had to add in my 2cp so you guys know that it's not an isolated issue.

/timed work the same way in plugins as it does in macros? if so it would not work good using /timed in place of /pause. One would hold for X time other just carries out the command in X time regardless of what has happend since the command was issued.
 
Not sure (newbie)

I'm not sure about the /timed command -- I stole it from another plugin that uses it (I figured if it's good enough for one plugin, why not another). Yeah -- I know I'm a newb when it comes to coding. It's been many a year since I last even tried to code anything (and that was in pascal if that tells you anything).

At any rate, I forgot to mention the other part of the bug (which Ech0b0y mentioned) which is any time you try and loot a npc corpse from then on, it spams the "MQ2Rez: looting <corpse>" message and the "Loot all, are you sure" confirmation dialog appears (and re-appears until the corpse is looted). I'm still 99% sure this is related to the new /lootall command that was added to the MQ2 source code on 12/9. I would think that anyone not using the newest compile would not notice this bug, but I'm thinking that after today's patch when the new compile comes out, it'll become a thorn in everyone's side.

I may try my hand at fixing the source code as I don't think it'll require a whole lot of coding, but I'm sure someone else could do it quicker and better. Besides anytime I mess with the code I forget to back it up when i download the new source code and always end up overwriting it. Then I have to go back and try and figure it out all over again.

Like I said, I'm an idiot! :D

EDIT: After a little bit of testing, it seems as though the problem is definately at the /loot command. Keeping it as
Code:
DoCommand(GetCharInfo()->pSpawn,"/multiline ; /corpse ; /timed 2s ; /loot");
the character will target his corpse and open the corpse but it will hang there and not loot. I changed that line to read:
Code:
 DoCommand(GetCharInfo()->pSpawn,"/multiline ; /corpse ; /timed 2s ; /lootall");
and the character will go ahead and loot his corpse of all items. Either way, the plugin is not recognizing that you've looted your corpse because no matter which way you use, it continues to spam "Looting <corpse>" and giving the "Loot all?" dialog box whenever you try to loot a npc corpse (ironically, if you do not loot your corpse the first time, and open your corpse again, it still does nothing). I hope that gives a little clue to someone out there who has more knowledge than me to maybe fix this with this patch. Thanks!
 
Last edited:
Thank you !

At least we know its not just me getting that error in this new version. THought I was going nutz and I was the only one getting the issue.


I'm using the newest complile (Dec 9th).

MQ2Rez doesn't work correct for me either with the newest complile (I was thinking that is had to do with the new /lootall command). I would get the couldn't parse the /pause 2 command (didn't notice and extra e) and then it won't loot. It just sits there. I went into the source code and changed the command to /timed 2s and I stopped getting the error message, but it still won't loot properly.

I just had to add in my 2cp so you guys know that it's not an isolated issue.
 
Found two errors, feel like a retard.
Line 283:

Code:
Updated on first page.
 
Last edited:
Okay! Beta version with the /lootall command. Let me know how it works. I took out some of the delaying stuff, so the timing might be a bit off.

Code:
Updated on first page.
 
Last edited:
Got this compiling it

Code:
Warning	1	warning C4800: 'BOOL' : forcing value to bool 'true' or 'false' (performance warning)	e:\svn4\MQ2Rez\MQ2Rez.cpp	108	
Error	2	error C2660: 'Rezzy' : function does not take 0 arguments	e:\svn4\MQ2Rez\MQ2Rez.cpp	253	
Error	3	error C2143: syntax error : missing ')' before ';'	e:\svn4\MQ2Rez\MQ2Rez.cpp	264	
Error	4	error C2059: syntax error : ')'	e:\svn4\MQ2Rez\MQ2Rez.cpp	264	
Warning	5	warning C4390: ';' : empty controlled statement found; is this the intent?	e:\svn4\MQ2Rez\MQ2Rez.cpp	264
 
Haven't tested yet, but ...

Thez -

I tried to compile your code this evening and here's the output I got:
Code:
------ Build started: Project: MQ2Rez, Configuration: Release Win32 ------
Compiling...
MQ2Rez.cpp
EQLIB_IMPORTS
.\MQ2Rez.cpp(108) : warning C4800: 'BOOL' : forcing value to bool 'true' or 'false' (performance warning)
.\MQ2Rez.cpp(253) : error C2660: 'Rezzy' : function does not take 0 arguments
.\MQ2Rez.cpp(264) : error C2143: syntax error : missing ')' before ';'
.\MQ2Rez.cpp(264) : error C2059: syntax error : ')'
.\MQ2Rez.cpp(264) : warning C4390: ';' : empty controlled statement found; is this the intent?
Build log was saved at "file://c:\Documents and Settings\mynamegoeshere\My Documents\MQ2 Precompiled\MQ2Rez\Intermediate\BuildLog.htm"
MQ2Rez - 3 error(s), 2 warning(s)
========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

I haven't been able to get into EQ yet to test the MQ2Rez that's included with the 12/12 compile. Is it working does anyone know? Did this verson make it into the compile or is it the old one? (before I copied over your new code, it appeared as though the old code was the one included with the compile).

I'll test it though and let you know I guess.

EDIT: Damn you Fry! :D Ninja'd while I was typing everything out!