PDA

View Full Version : Help with server errors (pics)


Eva Aisling
03-03-2010, 07:05 PM
I am interested in having my own private server for me and a few friends to enjoy. I have followed Vales' guide on the wiki (very nice!) and everything *appears* to be installed correctly. However, I cannot connect to my login server (which is me...). Here are my errors:

I get a 10061 error right after launcher starts: http://s135.photobucket.com/albums/q130/Lyrishima/?action=view&current=ServerErrorStart.png

Then it continues on loading database and starts loading zones until I see this: http://s135.photobucket.com/albums/q130/Lyrishima/?action=view&current=ServerError2.png

I got this once, but it might've been because I was trying all sorts of changes with my config files: http://s135.photobucket.com/albums/q130/Lyrishima/?action=view&current=ServerError.png

If I let my server load until I see all 5 dynamic zones in box and try to login, I get an empty server screen and then: http://s135.photobucket.com/albums/q130/Lyrishima/?action=view&current=ServerError.png

I'll give any more info/files needed if anyone needs them to help. I would really like to get this solved and will be checking post regularly. ;)

EDIT: I just wanted to add that I am running Windows 7, every exe file is allowed through firewall, I have already forwarded all ports, I get the same exact error whether I use my static IP or my dyndns address, I am connected through a router, I already contacted my ISP and was informed that my modem uses DHCP and does not include a firewall in itself, and I get the same error even if I turn off firewall and hook my computer directly to modem. I used the guide on a completely fresh, unpatched install several times and outcome is the same. (Deleted folders and everything)

RichardoX
03-03-2010, 07:08 PM
Can you post your config file?

Eva Aisling
03-03-2010, 07:51 PM
Sure thing!

<?xml version="1.0">
<server>
<world>
<shortname>clmty</shortname>
<longname>Calamity</longname>

<!-- Only specify these two if you really think you need to. (read: You don't) -->
<address>clmtyserver.dnsalias.com</address>
<localaddress>192.168.x.xxx</localaddress>

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>clmtyserver.dnsalias.com</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver>

<!-- Server status. Default is unlocked -->
<!--<locked/>-->
<!-- <unlocked/> -->

<!-- Sets the ip/port for the tcp connections. Both zones and console (if enabled). Defaults are shown -->
<tcp ip="localhost" port="9000" telnet="disable"/>

<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>some long random string</key>

<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http port="9080" enabled="false" mimefile="mime.types" />
</world>

<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>channels.eqemulator.net</host>
<port>7778</port>
</chatserver>

<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>channels.eqemulator.net</host>
<port>7779</port>
</mailserver>

<zones>
<defaultstatus>0</defaultstatus>

<!-- Sets port range for world to use to auto configure zones -->
<ports low="7000" high="7100"/>
</zones>

<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>root</username>
<password>***************</password>
<db>peq</db>
</database>

<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000"> -->
</launcher>

<!-- File locations. Defaults shown -->
<files>
<!-- <spells>spells_us.txt</spells> -->
<!-- <opcodes>opcodes.conf</opcodes> -->
<!-- <logsettings>log.ini</logsettings> -->
<!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
<!-- Directory locations. Defaults shown -->
<directories>
<!-- <maps>Maps</maps> -->
<!-- <quests>quests</quests> -->
<!-- <plugins>plugins</plugins> -->
</directories>
</server>

EDIT: Is there a way to link a txt file here? I marked and saved my entire launch windows in case it was useful.

I used the port scanner from this link: http://www.eqemulator.org/forums/showpost.php?p=180051&postcount=2 and it says port 5998 doesn't respond. It's set on router, firewall is disabled, and I play just fine on public server with that port. I don't understand.

Eva Aisling
03-04-2010, 10:02 AM
I changed my config file a bit and now loginserver exe doesn't go nonresponsive when I try to login, but my server screen is blank.

Also, I still get a 10061 error just one time at the beginning of eqlaunch, but then it says its connected to localhost and begins loading zones. Here's what it says:
[Debug] Starting Log: logs/eqemu_debug_4936.log
[Debug] [LAUNCHER__INIT] Loading server configuration..
[Debug] [NET__WORLD] WorldConnection connect: Connecting to the server localhost
:9000 failed: TCPConnection::Connect(): connect() failed. Error: 10061
[Debug] [LAUNCHER__ERROR] worldserver.Connect() FAILED! Will retry.
[Debug] [LAUNCHER__INIT] Starting main loop...
[Debug] [NET__WORLD] Connected to World: localhost:9000
[Debug] [LAUNCHER__WORLD] World told us to start zone dynamic_01.
[Debug] [LAUNCHER__WORLD] World told us to start zone dynamic_02.
[Debug] [LAUNCHER__WORLD] World told us to start zone dynamic_03.
[Debug] [LAUNCHER__WORLD] World told us to start zone dynamic_04.
[Debug] [LAUNCHER__WORLD] World told us to start zone dynamic_05.

It continues to load as if it's working properly, but my server screen is blank so I can't select it.

If I select Quick Connect at login screen (I named my private server the same as my public one), it hangs on a black screen and I get this message in my World.exe window: [Debug] [WORLD__CLIENT_ERR] NOCLE: Bad/Expired session key '2'

This is my new config:
<?xml version="1.0">
<server>
<world>
<shortname>clmty</shortname>
<longname>Calamity</longname>

<!-- Only specify these two if you really think you need to. (read: You don't) -->
<address>clmtyserver.dnsalias.com</address>
<localaddress>192.168.x.xxx</localaddress>

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>clmtyserver.dnsalias.com</host>
<port>5998</port>
<account>MyAdminAccountName</account>
<password>MyAdminAccountPassword</password>
</loginserver>

<!-- Server status. Default is unlocked -->
<!--<locked/>-->
<!-- <unlocked/> -->

<!-- Sets the ip/port for the tcp connections. Both zones and console (if enabled). Defaults are shown -->
<tcp ip="localhost" port="9000" telnet="enable"/>

<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>ALongRandomKeyIGenerated</key>

<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http port="9080" enabled="true" mimefile="mime.types" />
</world>

<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>channels.eqemulator.net</host>
<port>7778</port>
</chatserver>

<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>channels.eqemulator.net</host>
<port>7779</port>
</mailserver>

<zones>
<defaultstatus>0</defaultstatus>

<!-- Sets port range for world to use to auto configure zones -->
<ports low="7000" high="7100"/>
</zones>

<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>MyMySQLLogin</username>
<password>MyMySQLPassword</password>
<db>peq</db>
</database>

<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000"> -->
</launcher>

<!-- File locations. Defaults shown -->
<files>
<!-- <spells>spells_us.txt</spells> -->
<!-- <opcodes>opcodes.conf</opcodes> -->
<!-- <logsettings>log.ini</logsettings> -->
<!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
<!-- Directory locations. Defaults shown -->
<directories>
<!-- <maps>Maps</maps> -->
<!-- <quests>quests</quests> -->
<!-- <plugins>plugins</plugins> -->
</directories>
</server>

Please note that I can log into my public server just fine and don't get a blank server screen.

Derision
03-04-2010, 10:24 AM
Also, I still get a 10061 error just one time at the beginning of eqlaunch, but then it says its connected to localhost and begins loading zones. Here's what it says:
[Debug] Starting Log: logs/eqemu_debug_4936.log
[Debug] [LAUNCHER__INIT] Loading server configuration..
[Debug] [NET__WORLD] WorldConnection connect: Connecting to the server localhost
:9000 failed: TCPConnection::Connect(): connect() failed. Error: 10061
[Debug] [LAUNCHER__ERROR] worldserver.Connect() FAILED! Will retry.
[Debug] [LAUNCHER__INIT] Starting main loop...
[Debug] [NET__WORLD] Connected to World: localhost:9000


That 10061 error is not a problem, it's just that the launcher tries to connect to world before world is ready. You can see it successfully connects shortly afterwards by the [NET__WORLD] Connected to World: localhost:9000 message.


<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>clmtyserver.dnsalias.com</host>
<port>5998</port>
<account>MyAdminAccountName</account>
<password>MyAdminAccountPassword</password>
</loginserver>


If you are running EQEmuLoginServer on the same PC as world, then I would put localhost or 127.0.0.1 or your internal IP (192.168.x.x) in the <host> part of the loginserver section. Also, I don't think you need to specify an account or password for the loginserver.

It sounds like world is not connecting to the loginserver. If you switch to the command window in which EQEmuLoginServer.exe is running, you should see a message along the lines of 'New server connection from a.b.c.d' when world connects to it, or you might have some error messages in there.

In addition, look at the output of world.exe, does it say connected to loginserver, or are there error messages there as well ?

Eva Aisling
03-04-2010, 10:45 AM
First, I tried just changing the dns address to my local IP as you suggested. When the zones are loaded up in the sleeping window, this is what is in world.exe:

[Debug] [WORLD__LS] Connecting to login server...
[Debug] [WORLD__LS] Connected to Loginserver: 192.168.x.xxx:5998
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62069
[Debug] [WORLD__CONSOLE] New launcher from 127.0.0.1:62069
[Debug] [WORLD__LAUNCH] Adding pending launcher 1
[Debug] [WORLD__LAUNCH] Launcher Identified itself as 'zone'. Loading zone list.

[Debug] [WORLD__LAUNCH] Removing pending launcher 1. Adding zone to active list.

[Debug] [WORLD__LAUNCH] zone: dynamic_01 reported state STARTED (1 starts)
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62071
[Debug] [WORLD__CONSOLE] New zoneserver #1 from 127.0.0.1:62071
[Debug] [WORLD__ZONE] [1] Zone started with name dynamic_01 by launcher zone
[Debug] [WORLD__ZONE] [1] Auto zone port configuration. Telling zone to use por
t 7000
[Debug] [WORLD__LAUNCH] zone: dynamic_02 reported state STARTED (1 starts)
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62073
[Debug] [WORLD__CONSOLE] New zoneserver #2 from 127.0.0.1:62073
[Debug] [WORLD__ZONE] [2] Zone started with name dynamic_02 by launcher zone
[Debug] [WORLD__ZONE] [2] Auto zone port configuration. Telling zone to use por
t 7001
[Debug] [WORLD__LAUNCH] zone: dynamic_03 reported state STARTED (1 starts)
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62075
[Debug] [WORLD__CONSOLE] New zoneserver #3 from 127.0.0.1:62075
[Debug] [WORLD__ZONE] [3] Zone started with name dynamic_03 by launcher zone
[Debug] [WORLD__ZONE] [3] Auto zone port configuration. Telling zone to use por
t 7002
[Debug] [WORLD__LAUNCH] zone: dynamic_04 reported state STARTED (1 starts)
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62077
[Debug] [WORLD__CONSOLE] New zoneserver #4 from 127.0.0.1:62077
[Debug] [WORLD__ZONE] [4] Zone started with name dynamic_04 by launcher zone
[Debug] [WORLD__ZONE] [4] Auto zone port configuration. Telling zone to use por
t 7003
[Debug] [WORLD__LAUNCH] zone: dynamic_05 reported state STARTED (1 starts)
[Debug] [WORLD__ZONE] New TCP connection from 127.0.0.1:62079
[Debug] [WORLD__CONSOLE] New zoneserver #5 from 127.0.0.1:62079
[Debug] [WORLD__ZONE] [5] Zone started with name dynamic_05 by launcher zone
[Debug] [WORLD__ZONE] [5] Auto zone port configuration. Telling zone to use por
t 7004

Tried logging in but still get blank screen.

Second, I tried removing my account and password info under login as you suggested. World.exe window again said it was connected to my IP. I tried logging in and got this error and launcher crashed: http://i135.photobucket.com/albums/q130/Lyrishima/EQ%20Emu/DebugError2.png

EDIT: It seems that I always get that C++ Debug Error when I try to log in without entering my account name and password into config file, but the number changes.

EDIT: ROFLMAO! I hit [Ignore] for debug, rather than just closing game and my server popped up in list! I tried logging in with my account info and my husband's and it hung forever and in the World window I got a duplicate name message. Perhaps this is because I registered us with the same name we used for eqemu? I decided to make a new one and try logging in and it worked!

If the Devs want any more information to try and post a workaround for the debug error just let me know. I have no idea if it's just me or an issue with Windows 7 or what. Thanks for help!

Eva Aisling
03-04-2010, 12:19 PM
I apologize for double-post, but I couldn't edit again.

I just entered a new account into MySQL and didn't get a debug error when logging in. Server was already in list. I have no idea why...

I made a new account for my husband and imported it into the database, but he can't login. I have port forwarded on router for his internal IP and changed his eqhost file to read :
[LoginServer]
Host=clmtyserver.dnsalias.com:5998

He can see the server Up with no debug error. I log in with his info and the screen is black for a minute or two before telling me that it could not connect to the server. We are on LAN.

Derision
03-04-2010, 02:01 PM
Try putting an entry in the c:\windows\system32\drivers\etc\hosts file on his PC to map clmtyserver.dnsalias.com to the internal IP address of your server, i.e.


192.168.x.x clmtyserver.dnsalias.com


This will mean his connection will stay completely internal to your LAN, rather than going into your router and back to your LAN.

Eva Aisling
03-04-2010, 03:37 PM
I set permissions and tried that, but it didn't work. :-?

I'm currently wading through dozens of posts looking for a solution that's already been posted...

Steel
03-04-2010, 05:26 PM
Im getting the same error setup as you.How did you fix that?

Atm for the life of me i cant fig out what to put where you put "clmtyserver.dnsalias.com" in address and host.I have no online anything and i think the guide said to put the server machines internal ip there which i did.But like i said im getting the same error as you.

Eva Aisling
03-04-2010, 06:23 PM
Steel - Have you tried using my config settings with the changes that Dev mentioned? I don't know if it's exactly right or not, because I can connect to my server properly, but someone on my same LAN cannot. I haven't had anyone else try outside of my LAN yet.

That dnsalias address is just a Dyndns address that I used to ensure my external IP stays updated. Any time you reset your router, your IP changes if you don't have a static IP. Setting your IP as static in the Control Panel isn't the same thing, although it is still a good idea to do. When you activate a dyndns address, it hosts an address for you that tells everyone you direct to it what your current IP is so that they are still able to connect when it changes. At least that's what I understand, but I am just learning these things too. It's a free service if you want to try it. Just google "dyndns".

People use different settings in different areas where you see clmtyserver.dnsalias.com, so I don't know exactly what will work. All it does is show people my external IP, so you shouldn't use it for areas in config that needs your internal IP. Honestly, I've just been going through forums for more than a week and trying different suggestions to get this far. Good ol' trial and error.

Eva Aisling
03-05-2010, 08:19 AM
I had a friend try to join my server and he got the 1017 error as well. I know this is probably obvious to all of you, but could you explain port forwarding to me? Everywhere I read just says it opens ports and directs them to your computer, but does that close those ports off to someone else on your same LAN? If everything is being directed to my computer, will my husband still be able to access it? Do I need to forward those ports to [I]both[I] of our internal IPs? I do know how range forwarding is done on my router.

I cannot, for the life of me, figure out why others can't connect. :confused:

Derision
03-05-2010, 03:00 PM
could you explain port forwarding to me?

I'll try :)

Things you need to understand first (which you probably do):

Each device (e.g. PC) on your LAN at home has an IP address, e.g. PC1 has address 192.168.1.100, PC2 has address 192.168.1.101, etc).

These are your internal IP addresses.

Your router will also have an internal IP address, e.g. it might be 192.168.1.1. This is the address your PCs forward packets to that need to get to the Internet.

Usually, your router will only have one external (Internet facing) IP address, e.g. it might be 88.50.30.20.

Packets leaving your LAN and heading out onto the Internet undergo Network Address Translation (NAT), i.e. when your PC1 sends a packet to, say google, before your router transmits that packet out onto the Internet, it replaces the source address of PC1 (192.168.1.100), with it's own Internet facing address (88.50.30.20 in my example). It also puts a unique source port address, so it knows, when Google replies to the packet, that it is PC1 that the reply has to go to.

OK, now, when you are running an EQEmu server, each component of the server 'listens' for incoming connections on specific ports, e.g. the LoginServer on 5998, world on 9000, zones on 7000+.

Because the connection to these components is initiated from outside your network, when your router receives a packet from the Internet, it will have your routers IP address (80.50.30.20 say) as the destination address, and, say destination port 5998, if someone wants to connect to your login server.

You need to tell the router which PC on your local LAN is to deal with incoming requests on port 5998. This is what people refer to as 'port forwarding' or 'opening ports'. In most cases you will have one PC running the loginserver, world and the zones, so you would tell your router to forward incoming traffic to all these ports to the internal IP address of your server.

Hope that makes sense. For PCs within your home network, accessing your local server, no port forwarding is required, it is only for inbound connections from the Internet to your server.

Eva Aisling
03-05-2010, 03:26 PM
Thanks, Der. I think I understand.

It seems like my config has the correct addresses in all the correct places, but no one but me can connect. I tried disabling my firewall, anti-virus, and setting my comp as DMZ and it [I]still[I] didn't work. I also tried disabling the "Block Anonymous Internet Requests" option on my router. I added my IP and dyndns address in my husband's hosts file as suggested, but even he can't connect. I've tried different settings in my config file, but there's really not that much in there to change. I've tried to find a reason why dyndns might not be reporting my external IP correctly, or just not linking to it, but I can't find information about that.

I am completely out of ideas and am suffering from eyestrain, so I have resorted to using hamachi (which works, for whatever reason). I'd rather not have to use an external application, so I will be checking here if anyone has a clue. I'm tapped. Perhaps I will try posting at dyndns forums soon, but I just don't have it in me atm. On the bright side, I did learn a few things! I think I'm a techie at heart!

Thanks all for your time! Let me know if you think of anything please!

Also, let me know if I can fix those debug errors. There are links above that give examples. They report a HEAP CORRUPTION in C++, so I wonder if maybe something didn't compile correctly. I'm using the rev1180a-Bots version already made available. I have C++ installed, but I don't know how to use it. :D

Eva Aisling
03-06-2010, 09:25 PM
My husband can connect with hamachi, but my friend crashes at character select. He can make a char, but not enter world. I received a message in my server window that said "Unhandled server packet 0x3007" right before his client closed. His status in hamachi is good. I am running it thru a separate port. Any ideas?

When he first tried to join, the enter world button wasn't even clickable. he would click it, it would stay popped up, then he would hang. I noticed in server window that it tried to send him to tutorialb right before he crashed, so I used Navicat to disable tutorial button and that's when the unhandled packet happened. I did restart the server after changing settings.

We are both running SoF on a fresh install and I installed EQEmu-Rev1180a-Bots this morning with a new database.

Eva Aisling
03-10-2010, 04:09 PM
Hamachi only worked for us through the weekend, then wouldn't get a stable enough connection for husband to log in. I uninstalled it and changed my husband's Window hosts file from:
< my internal IP > clmtyserver.dnsalias.com

To:
< my internal IP > < my external IP >

My config looks like this:

<?xml version="1.0">
<server>
<world>
<shortname>clmty</shortname>
<longname>Calamity</longname>

<!-- Only specify these two if you really think you need to. (read: You don't) -->
<address>clmtyserver.dnsalias.com</address>
<localaddress>192.168.x.xxx</localaddress>

<!-- Loginserver information. -->
<loginserver>
<host>clmtyserver.dnsalias.com</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver>

Both of our eqhost files read:
[LoginServer]
Host=clmtyserver.dnsalias.com:5998

My husband and I can both finally log in! I have no idea if anyone outside of our LAN can connect yet, because my friends are at work. Using my dyndns address in his Windows hosts file did not work for some reason. I don't entirely understand what goes on with the host file, to be honest.

I am still getting a Debug Error nearly every time either of us log in or out, but at least it works. I find it best to let him log in first before I log in, so that I can go ahead and watch for the error message. I'm going to post about it in another section of forum to see if I can get it worked out.

Hope this helps someone else out there!

Dunmord
03-11-2010, 11:22 AM
My husband can connect with hamachi, but my friend crashes at character select. He can make a char, but not enter world. I received a message in my server window that said "Unhandled server packet 0x3007" right before his client closed.

When that "Unhandled packet" occurs. Does the server crashes too or just the client?

I had a similar problem, only difference is that I was crashing when I tried to create an LDoN adventure(inside game). Here is my post: http://www.eqemulator.org/forums/showthread.php?t=30609&highlight=ldon.

Eva Aisling
03-13-2010, 10:35 AM
Just the client crashes.

Phoenix_79
10-08-2010, 12:52 PM
I'll try :)

Things you need to understand first (which you probably do):

Each device (e.g. PC) on your LAN at home has an IP address, e.g. PC1 has address 192.168.1.100, PC2 has address 192.168.1.101, etc).

These are your internal IP addresses.

Your router will also have an internal IP address, e.g. it might be 192.168.1.1. This is the address your PCs forward packets to that need to get to the Internet.

Usually, your router will only have one external (Internet facing) IP address, e.g. it might be 88.50.30.20.

Packets leaving your LAN and heading out onto the Internet undergo Network Address Translation (NAT), i.e. when your PC1 sends a packet to, say google, before your router transmits that packet out onto the Internet, it replaces the source address of PC1 (192.168.1.100), with it's own Internet facing address (88.50.30.20 in my example). It also puts a unique source port address, so it knows, when Google replies to the packet, that it is PC1 that the reply has to go to.

OK, now, when you are running an EQEmu server, each component of the server 'listens' for incoming connections on specific ports, e.g. the LoginServer on 5998, world on 9000, zones on 7000+.

Because the connection to these components is initiated from outside your network, when your router receives a packet from the Internet, it will have your routers IP address (80.50.30.20 say) as the destination address, and, say destination port 5998, if someone wants to connect to your login server.

You need to tell the router which PC on your local LAN is to deal with incoming requests on port 5998. This is what people refer to as 'port forwarding' or 'opening ports'. In most cases you will have one PC running the loginserver, world and the zones, so you would tell your router to forward incoming traffic to all these ports to the internal IP address of your server.

Hope that makes sense. For PCs within your home network, accessing your local server, no port forwarding is required, it is only for inbound connections from the Internet to your server.

I just wanted to send a "Thank You!" your way for this excellent post!