EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Archive::Linux Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=618)
-   -   Zoning problem (https://www.eqemulator.org/forums/showthread.php?t=11306)

_OZZY_ 01-10-2004 05:46 PM

Zoning problem
 
I have a small problem whenever I issue the #zone command. The client locks up and I get the following error message on the server:

[ Error } Zone not found in database zone_id=0, moveing char to arena character :TestChar
Unable to get groupid: #1054: Unknown column `groupid' in `fieldlist'

I am running the MyWorld 53 Alpha 2 database and Shawn's 5.3DR2 source code. The last time I patched was the 4th of January (I have a backup of my EQ directory that was made prior to this patch about one month ago...the 15th or so of December if that is needed).

Strange thing is that if I restart the client, the character appears in the correct zone. This has happened with three zones I've tried so far: qeynos, gfaydark, and poknowledge.

All of this is running on a Linux box running Fedora Core 1. I can give more info as it is needed.

Thanks in advance for your help! :)

jbb 02-08-2004 04:07 AM

I get exactly this too...

I'm looking into the reason but if anyone knows how to fix it that would be a lot easier :)

farce 02-08-2004 07:25 AM

for one, you need to alter your character_ table and add the column groupid.

apparently you did not run his sql update which is on shawn's page.

for the zoning issue... there is code somewhere on the dev forum that seems to clear up the problem.

i'll find the link

farce 02-08-2004 07:29 AM

Quote:

Originally Posted by screamingogre
This is the fix I made to get rid of the ZoneID =0 error.

Add this to the Client.cpp file for the world compile. Under case OP_EnterWorld: // Enter world.

Replace the Current call "charid = database.GetCharacterInfo(char_name, &tmpaccid, &zoneID);" with this


Code:

long LOCounter;
                        do {
                            charid = database.GetCharacterInfo(char_name, &tmpaccid, &zoneID);
                                LOCounter++;
                        }while ((zoneID == 0) && (LOCounter > 10000));

This will call the database until the ZoneID is not equal to 0 or the counter hits 10001. You may need to tweek the counter number for your server depending on how fast or slow it is.

**SO


jbb 02-08-2004 08:17 AM

Thanks. I got it mostly working now

badk0re 02-24-2004 08:09 PM

Works perfect, awesome fix, needs to be bumped for other serverops =)


All times are GMT -4. The time now is 01:21 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.