PDA

View Full Version : Support Request for Unsupported Version! :P


mikenune
04-27-2004, 08:31 AM
I finally broke down and installed a copy of MS Visual Studio .NET (gotta love that MSDNAA thingie! :D) and compiled myself a 5.7-DR2 version of EQEMu after making a few minor code changes.

Now, I'm running into a problem. I can start up my servers fine - both World.exe and 9 dynamic Zone.exes just fine with no errors (except for the missing time.cfg file).

Then, I login to the EQEMu servers and fine mine in the list - mikenune's (Non-Legit) World Server - and connect to it just fine.

I get to the character creation screen and create myself say... a Froglok Pally named Jibber.

Then I go out to my World.exe and see my character created OK (he's in the DB too).

Finally, I try to log in with my newly created character and World.exe IMMEDIATELY crashes! I get the stupid Windows popup box saying "Would you like to send a report to Microsoft" and everything.

When I debug the code, it says the problem is right where World.exe tries to determine my starting point. It looks like I'm getting an error right after I pull the information from the DB.

Has anyone else had this problem?

P.S.
The only changes I made to the code was to correct all the mis-spellings of DUAL_WIELD (used to be DUEL_WIELD). And yes, I got them all, otherwise it wouldn't have compiled or at least given me warnings about having an undefined variable.

I also know that it can read the database fine because, as World.exe loads, it tells me that it has successfully loaded something like 27,000 items from the database.

RexChaos
04-27-2004, 08:37 AM
I don't have a solution for you, but the typos cracked me up. :) Hehe...duel wield...tee hee. :)

Post the output of your files when they boot up and maybe someone has an answer for you based on those...

laerg619
04-27-2004, 11:49 AM
I have this same sort of issue, but cannot retrieve any error messages or anything at this moment (in a hurry to post this ;)).
If I or anyone else that has connected to my server try to create a character, we get through the character creation process all the way up to the point where you go back to the character selection screen and the character should appear, but it doesn't... a few seconds later, world.exe crashes.
When I check my database, it seems a character is created, but it doesn't appear to have any stats or anything, and when world.exe is booted again, it finds the character and deletes it, due to it being corrupted.

mikenune
04-27-2004, 12:16 PM
OK, finally got home from work... Here's the info!

The Windows popup message:
Microsoft Development Environment
Unhandled exception at 0x0044bbe4 in World.exe: 0xC0000005: Access violation reading location 0x00520247.
World.exe
[Status] CURRENT_WORLD_VERSION:EQEMu 0.5.7-DR2
[Status] Loading variables..
[Status] Loading zones..
[Status] Loading items..
[Status] EMuShareMem loaded
[Status] Loading items from database: count=27378, max id=68199
[Status] ./LoginServer.ini read.
[Status] Loading guild ranks..
[Status] Loading ./addon.ini..
[Status] Loading EQ time of day..
[Error] Could not load EQTime file ./eqtime.cfg
[Error] Unable to load ./eqtime.cfg
[Status] Deleted 0 stale player corpses from database
[Status] Deleted 0 stale player backups from database
Warning: Pants may change during online play.
TCP listening on: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:9000
World server listening on: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:9000
Connected to LoginServer: eqlogin3.eqemulator.net:5997
12907 New TCP connection: 127.0.0.1:4899
12907 New TCP connection: 127.0.0.1:4900
12907 New TCP connection: 127.0.0.1:4901
New zoneserver: #1 127.0.0.1:4900
New zoneserver: #2 127.0.0.1:4899
New zoneserver: #3 127.0.0.1:4901
Zoneserver SetConnectInfo: 127.0.0.1:4899: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:7999
Zoneserver SetConnectInfo: 127.0.0.1:4900: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:7998
12969 New TCP connection: 127.0.0.1:4902
12969 New TCP connection: 127.0.0.1:4903
New zoneserver: #4 127.0.0.1:4903
New zoneserver: #5 127.0.0.1:4902
Zoneserver SetConnectInfo: 127.0.0.1:4901: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:7995
Zoneserver SetConnectInfo: 127.0.0.1:4902: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:7996
Zoneserver SetConnectInfo: 127.0.0.1:4903: ipXXX-XXX-XXX-XXX.ks.ok.cox.net:7997
50969 New client from ip: XXX.XXX.XXX.XXX port: 4907
Logged in: FirstLogin LS#51445: mikenune
Got a bogus character (Jibber), deleting it.
PP length =0
DeleteCharacter: successfully deleted 'Jibber' (id 2)
Received unknown opcode: 0x02ee size:0 bytes
Name approval request for:Jibber race:74 class:3
Character creation request from mikenune LS#51445 (XXX.XXX.XXX.XXX:4907) :
Name: Jibber
Race: 330 Class: 3 Gender: 0 Deity: 208 Start zone: 6
STR STA AGI DEX WIS INT CHA Total
80 105 100 100 80 75 60 600
Face: 2 Eye colors: 4 4
Hairstyle: 255 Haircolor: 255
Beard: 255 Beardcolor: 255
Validating char creation info...
Found 0 errors in character creation request
127.0.0.1:4911: TCPConnection::RecvData(): Error: 10053
127.0.0.1:4912: TCPConnection::RecvData(): Error: 10053
127.0.0.1:4913: TCPConnection::RecvData(): Error: 10053
127.0.0.1:4914: TCPConnection::RecvData(): Error: 10053
127.0.0.1:4915: TCPConnection::RecvData(): Error: 10053
It looks like the error is happening somewhere in this code block:

common\database.cpp:6847-6859
if((rows = mysql_num_rows(result)) == 1)
row = mysql_fetch_row(result);
if(result) mysql_free_result(result);

if(row)
{
LogFile->write(EQEMuLog::Status, "Found starting location in start_zones");
in_pp->x = atoi(row[0]);
in_pp->y = atoi(row[1]);
in_pp->z = atoi(row[2]);
in_pp->zone_id = atoi(row[3]);
in_pp->bind_zone_id = atoi(row[4]);
}

bUsh
04-27-2004, 12:37 PM
I had the exact same problem, took a variety of re-sourcing my database to get it to run.

I believe it has something to do with the database changes from 5.6 to 5.7-DR2 (which I'm still trying to figure out).

To get it successfully working, I sourced the latest db.sql and dumpeditems.sql. Then I did a mass find\replace of "create table" and "insert into" to "alter table" and "replace into" on both alpha versions of the MW database.

Everything's running fine as of now (aside from a problem with external connections, but that's a network issue).

eq_addict_08
04-27-2004, 12:47 PM
May be an issue with the start coords in Gutka. Do you have up to date .cfg files? Also try making another char, human in qeynos or something and doing a #movechar. See if you can log into it then. If I remember I had issues with frogs too, and always issues with lizards. Also search on error # and see what others have found out.

mikenune
04-27-2004, 07:05 PM
I tried resourcing my DB just like you said.

No go. :(

I tried re-compiling an unaltered version of the source code.

No go. :(

I tried logging in as several different race/class combinations (and different starting cities).

No go. :(

And, unfortunately, I don't have any different .cfg files to use because there aren't any copies of the 0.5.7 configs out yet. I've been trying the ones for 0.5.5 and 0.5.6. :(

Looks like I'm stuck with you schmucks until a stable binary is released! :P

RangerDown
04-28-2004, 02:06 AM
My guess is that one of the fields from the starting_points table that the server's trying to query is NULL. If atoi() is called on a NULL string then you'll get a crash.

Check your starting_points table and see if any fields are NULL. If they are, make em be something and try again.

Gossamer
04-28-2004, 03:06 AM
I too just compiled DR2 and lucky for me everything went ok. May I suggest you just source in only the MW2 database and try that. Do NOT source in db.sql before it, just mw2 and see what happens. I am finding that when sourcing in db.sql also it creates problems. Also, myra db does not stack with the mw2 database well.

mikenune
04-28-2004, 06:56 AM
My guess is that one of the fields from the starting_points table that the server's trying to query is NULL. If atoi() is called on a NULL string then you'll get a crash.

Check your starting_points table and see if any fields are NULL. If they are, make em be something and try again.
I tried that too. No go. :(

Then I switched Visual Studio's debugger to "disassembly mode" and noticed that it's not even getting ot the atoi() function calls. It's crapping out on the "if (row)"! i can't tell exactly what's causing this but it's looking like the program thinks that the row variable doesn't even exist! Which is weird... :?

bUsh
04-28-2004, 07:37 AM
Seriously, try this:

First, source db.sql and dumpeditems.sql.
Next, download Find & Replace 1.0 - It's a command prompt app that will replace strings in a text file at lightning speeds. I was able to parse alpha1 and 2 in about 4 seconds each.
(http://www.lencom.com/desc/indexN1380.html)

Then, parse alpha1 and 2 changing all "create table" and "insert into" to "alter table" and "replace into".

Finally, source the parsed alpha1 and 2 files.

mikenune
04-28-2004, 08:55 AM
Bah! Find and Replace is for pansies! I use grep and sed! :P

But seriously, I'll give that a try. Last time, I just sourced db.sql and dumpeditems.sql. I didn't include the TCMyWorld files at all. . .

Also, When I compile, I've been using "Release" builds of EMuShareMem.dll, World.exe, and Zone.exe. Should I have been making "Debug" builds and then just renaming them?

To my knowledge, "Debug" just adds a lot of extraneous info into the files that slows down execution, but I'm not clear on exactly what it does. . .

AK1122
05-02-2004, 06:31 AM
OK here goes... I've done extensive DB checking.. nothing worked

weird thing is that i compiled 0.5.6 sources and i got the SAME EXACT error hehe

As soon as I create a character, server crashes. Gives me some violation and some weird address...

I then downloaded the precompiled binaries... worked like a charm

weird eh..

I'm compiling with Visual Studio .NET 2003 (had to upgrade project) and I tried with both zlib 1.4.4 and zlib 2.1.4 (probably zlib is the problem) Well there goes, hope this helps

ryder911
05-03-2004, 11:42 AM
Try patching to live.

AK1122
05-07-2004, 08:43 PM
Refer to this please

http://www.eqemulator.net/forums/viewtopic.php?t=14672