Page 3 of 4

Posted: Wed Jun 11, 2003 6:08 pm
by Amadeus
Jaerin,

I'm really terrible at debugging a running application, but if you'd like an executable to test to see what's wrong..I can send you one.

Posted: Wed Jun 11, 2003 6:13 pm
by Pragma
iI have expanded the detour variable to hold more offsets, and I am crashing exactly the same way, with the send bug report error box. I am using VC6.0 on winxp.

Posted: Wed Jun 11, 2003 6:21 pm
by Amadeus
What does the send bug error details message say? (You should be able to see it without sending to MS)

Posted: Wed Jun 11, 2003 6:23 pm
by Pragma
ill check brb :)

Posted: Wed Jun 11, 2003 6:34 pm
by Jaerin
Wild Goose chase...

This is something totally bazaar with the setup. Because I just downloaded a totally virgin copy of the source straight from CVS and compiled it. Completely removed all traces of my working MQ. Used all of the files from the compile and it works just fine.

Jaerin

Posted: Wed Jun 11, 2003 6:34 pm
by Pragma
Major breakthrough. The error message I got this time was with a Debug button and a Cancel button. It said eqgame.exe has commited an error and needs to close. I clicked bebug: then got a MessageBox from VS6.0 saying: Unhandled Exception in eqgame.exe (EQLIB.DLL) : 0xC0000005: Access Violation.

Sure enough 0xC0000005 is the line memcpy(....) for building my detour list. This would explain why things are going wrong but the game isnt halting, the offsets are not being detoured.

This question of the day is: why the hell is my memcpy routine crashing all of the sudden?????

Posted: Wed Jun 11, 2003 7:01 pm
by Pragma
Another issue. I fixed the memset on detours problem, that was my own fault, the new crash resolves to this line in eqlib_interp.cpp:

for (i=0;pCmdListOrig.fAddress != 0;i++) {

Could an offset be wrong there? Mabey the EQADDR_CMDLIST offset?

Posted: Wed Jun 11, 2003 7:10 pm
by Amadeus
lol...yea, I'd say that there is something inherently wrong with
CommandList=0053da8
we seem to be missing a digit ;)

...let's try:

Code: Select all

CommandList=005b3da8

Posted: Wed Jun 11, 2003 7:13 pm
by Pragma
ummmmm someone major fubared. Look at this: CommandList=0053da8

Thats only 7 hexes long....

I just looked at the dissaembled source and got this: 005 ***B*** 3DA8 Note the B!!!! Testing now

Posted: Wed Jun 11, 2003 7:14 pm
by Pragma
You beat me to it Amedeus :) Was finding the offset as you posted hehe. Now im praying...

Posted: Wed Jun 11, 2003 7:22 pm
by Pragma
all i can say it BOOOO-YA-KA-SHAAAA

It works.


Edit the page one offset list, the commandlist offset is bad!

Make it this:

CommandList=005b3da8

Working well for me now.

The question remains though.. .... how the hell did Jaerin get it to work when an offset was wrong???

Posted: Wed Jun 11, 2003 7:22 pm
by Amadeus
That fixed it for me! I am also not getting any errors on 'who npc corpse' as was reported before.

I would suggest to those that are ok with altering their source, to integrate the changes posted at http://macroquest2.com/phpBB2/viewtopic.php?t=2470 (especially charinfo) ....I'll get them in the CVS in a day or so when we've finished debugging.

Works for me!

Posted: Wed Jun 11, 2003 7:25 pm
by Shocks
The offset change works great. Thanks again guys for all the great work!

Posted: Thu Jun 12, 2003 12:50 am
by Glasscoin
Hmmmm, the number of items in a stack isn't being returned with $cursor(stack) anymore... is that because of the missing HSliderItem offset, or because of the fact that some iteminfo structs have changed and I didn't download a fresh copy of MQ off of the CVS?

Thanks in advance!

Posted: Thu Jun 12, 2003 2:25 am
by Amadeus
Did you check out the link I provided earlier in this thread? I'm not assuring that it will fix it...but it won't hurt.