Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 09-05-2015, 02:48 PM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default queryserv.exe stuck on "Connecting To Mysql"

Alrighty. Forgive me if this is a novice error, but I can't figure out what's causing the problem.



And here's a copy of my eqemu_config.xml
Code:
<?xml version="1.0"?>
<server>
	<world>
		<shortname>Barannach</shortname>
		<longname>Barannach Messersink Fabrenast</longname>

		<!-- Only specify these two if you really think you need to.  (read: You don't) -->
		<!-- <address>some.server.com</address> -->
		<!-- <localaddress>192.168.0.5</localaddress> -->

		<!-- Loginserver information.  Defaults shown -->
		<loginserver>
			<host>login.eqemulator.net</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>I have a different key. Not supposed to share the real one, aye?</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>7778</port>
	</mailserver>

	<zones>
		<defaultstatus>20</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>Yes, I changed the username.</username>
		<password>Yes, I changed the password. Don't worry.</password>
		<db>peq</db>
	</database>

	<qsdatabase>
		<host>localhost</host>
		<port>3306</port>
		<username>Yes, I changed the username.</username>
		<password>Yes, I changed the password. Don't worry.</password>
		<db>peq</db>
	</qsdatabase>

	<!-- 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>
Here's a paste of all the files in my EQEmuServer folder:

Code:
"J:\EQ\EQEmuServer\db_update"
"J:\EQ\EQEmuServer\logs"
"J:\EQ\EQEmuServer\lua_modules"
"J:\EQ\EQEmuServer\Maps"
"J:\EQ\EQEmuServer\plugins"
"J:\EQ\EQEmuServer\quests"
"J:\EQ\EQEmuServer\shared"
"J:\EQ\EQEmuServer\templates"
"J:\EQ\EQEmuServer\updated_templates"
"J:\EQ\EQEmuServer\commands.pl"
"J:\EQ\EQEmuServer\common.lib"
"J:\EQ\EQEmuServer\db_dumper.pl"
"J:\EQ\EQEmuServer\eqemu_config.xml"
"J:\EQ\EQEmuServer\eqemu_update.pl"
"J:\EQ\EQEmuServer\eqlaunch.exe"
"J:\EQ\EQEmuServer\eqlaunch.ilk"
"J:\EQ\EQEmuServer\eqlaunch.pdb"
"J:\EQ\EQEmuServer\eqtime.cfg"
"J:\EQ\EQEmuServer\export_client_files.exe"
"J:\EQ\EQEmuServer\export_client_files.ilk"
"J:\EQ\EQEmuServer\export_client_files.pdb"
"J:\EQ\EQEmuServer\import_client_files.exe"
"J:\EQ\EQEmuServer\import_client_files.ilk"
"J:\EQ\EQEmuServer\import_client_files.pdb"
"J:\EQ\EQEmuServer\log.ini"
"J:\EQ\EQEmuServer\lua51.dll"
"J:\EQ\EQEmuServer\luabind.lib"
"J:\EQ\EQEmuServer\mail_opcodes.conf"
"J:\EQ\EQEmuServer\mime.types"
"J:\EQ\EQEmuServer\opcodes.conf"
"J:\EQ\EQEmuServer\patch_RoF.conf"
"J:\EQ\EQEmuServer\patch_RoF2.conf"
"J:\EQ\EQEmuServer\patch_SoD.conf"
"J:\EQ\EQEmuServer\patch_SoF.conf"
"J:\EQ\EQEmuServer\patch_Titanium.conf"
"J:\EQ\EQEmuServer\patch_UF.conf"
"J:\EQ\EQEmuServer\plugin.pl"
"J:\EQ\EQEmuServer\queryserv.exe"
"J:\EQ\EQEmuServer\queryserv.ilk"
"J:\EQ\EQEmuServer\queryserv.pdb"
"J:\EQ\EQEmuServer\shared_memory.exe"
"J:\EQ\EQEmuServer\shared_memory.ilk"
"J:\EQ\EQEmuServer\shared_memory.pdb"
"J:\EQ\EQEmuServer\Start Server.bat"
"J:\EQ\EQEmuServer\ucs.exe"
"J:\EQ\EQEmuServer\ucs.ilk"
"J:\EQ\EQEmuServer\ucs.pdb"
"J:\EQ\EQEmuServer\world.exe"
"J:\EQ\EQEmuServer\world.ilk"
"J:\EQ\EQEmuServer\world.pdb"
"J:\EQ\EQEmuServer\worldui.pl"
"J:\EQ\EQEmuServer\zone.exe"
"J:\EQ\EQEmuServer\zone.ilk"
"J:\EQ\EQEmuServer\zone.pdb"
"J:\EQ\EQEmuServer\backups"
As you can see, queryserv.exe is stuck on connecting to MySQL. It's been like that for 30 minutes, and no change.

The log files in EQEmuServer have nothing in them; they are literally 0 bytes.

No errors occur when launching world.exe on it's own.

Yes, the MySQL server is up. XAMPP says 'tis. I'm also able to connect via command prompt using the uroot login and password, as well as the second account to be used for the config file.

So, uh, any idea what the problem is?
Reply With Quote
  #2  
Old 09-06-2015, 12:58 AM
Nightrider84's Avatar
Nightrider84
Discordant
 
Join Date: Aug 2010
Location: Colorado
Posts: 410
Default

Could be your start.bat file that's missing something. Although looking at it I'd say your server isn't connecting to your mysql either. You running Windows 7 ect? Couls also be a bad compile aswell. Just some thoughts for you. I'd post you start.bat file so we can see it
Reply With Quote
  #3  
Old 09-06-2015, 08:42 AM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default

Edit: Aye, I'm using Windows 7 64bit, but compiled everything in 32 bit, as per the guide. Used Visual Studio Ultimate 2013.

Just for the record, I can access the peq database just fine through HeidiSQL, so it might not be a database problem?

*Mumble grumble* this forum needs support for [spoiler][/spoiler]

The start.bat is the one provided with the official guide.

Code:
@echo off
shared_memory.exe
start world.exe
echo waiting for the world to finish before starting zone...
ping -n 10 127.0.0.1 > nul
start queryserv.exe
start ucs.exe
start eqlaunch.exe zone
exit
I found that if I start the programs manually through command prompt, ucs.exe outputs another line.

Here's what I typed:

Code:
start sharedmemory.exe
start world.exe
start queryserv.exe
start ucs.exe
start eqlaunch.exe zone
And yes, I literally typed "zone" after eqlaunch.exe. Is that a bad thing?

In the bat file, shared_memory.exe does not have a start command. I launched it by typing "start shared_memory.exe" which then outputted a couple lines such as "loading items...", and after a few seconds, it closed.

Just realized I can copy-paste the text in command prompt, so 'ere we go.

World.exe:

Code:
[World Server] Loading server configuration..
[World Server] CURRENT_VERSION: 1.1.3
[World Server] Added loginserver login.eqemulator.net:5998
[World Server] Connecting to MySQL...
[Status] Starting File Log 'logs/world_3452.log'
[World Server] HTTP world service disabled.
[World Server] Checking Database Conversions..
[Upgrade Script] No script update necessary
Perl Version is 5.12.3
Warning: Using a password on the command line interface can be insecure.
Warning: Using a password on the command line interface can be insecure.
Warning: Using a password on the command line interface can be insecure.
============================================================
           EQEmu: Automatic Upgrade Check
============================================================
        (Windows) MySQL is in system path
        Path = C:\xampp\mysql\bin/mysql
============================================================
        Binary Database Version: (9086)
        Local Database Version: (9086)

        Database up to Date: Continuing World Bootup...
============================================================
[World Server] Loading variables..
[World Server] Loading zones..
[World Server] Clearing groups..
[World Server] Clearing raids..
[World Server] Loading items..
[World Server] Loading skill caps..
[World Server] Loading guilds..
[World Server] Loaded default rule set 'default'
[World Server] Loading EQ time of day..
[World Server] Loading launcher list..
[World Server] Reboot zone modes OFF
[World Server] Deleted 0 stale player corpses from database
[World Server] Loading adventures...
[World Server] Purging expired instances
[World Server] Loading char create info...
[World Server] Zone (TCP) listener started.
[World Server] Client (UDP) listener started.
[World Server] New TCP connection from 127.0.0.1:1183
[World Server] New TCP connection from 127.0.0.1:1185
[World Server] New TCP connection from 127.0.0.1:1186

Queryserv.exe:

Code:
[QS Server] Starting EQEmu QueryServ.
[QS Server] Connecting to MySQL...
[Status] Starting File Log 'logs/query_server_4992.log'

ucs.exe:

Code:
[UCS Server] Starting EQEmu Universal Chat Server.
[UCS Server] Connecting to MySQL...
[Status] Starting File Log 'logs/ucs_4856.log'
[UCS Server] Loaded default rule set 'default'

eqlaunch.exe:

Code:

Yes, eqlaunch.exe has no text displayed.

Now, since I started the programs through command prompt, I've also got a couple log files:

Code:
"J:\EQ\EQEmuServer\logs\world_3452.log" 2KB
"J:\EQ\EQEmuServer\logs\world_3980.log" 2KB
"J:\EQ\EQEmuServer\logs\zone-dynamic_01.log" 0KB
"J:\EQ\EQEmuServer\logs\zone-dynamic_02.log" 0KB
"J:\EQ\EQEmuServer\logs\zone-dynamic_03.log" 0KB
"J:\EQ\EQEmuServer\logs\query_server_408.log" 0KB
"J:\EQ\EQEmuServer\logs\query_server_4992.log" 0KB
"J:\EQ\EQEmuServer\logs\ucs_4856.log" 1KB
"J:\EQ\EQEmuServer\logs\ucs_5568.log" 1KB
"J:\EQ\EQEmuServer\logs\world_2684.log" 2KB
The world logs are the same, sans differing IP addresses. Here's the most recent log:

World_3452.log:

Code:
[09-06-2015 :: 13:26:38] [World Server] HTTP world service disabled.
[09-06-2015 :: 13:26:38] [World Server] Checking Database Conversions..
[09-06-2015 :: 13:26:38] [World Server] Loading variables..
[09-06-2015 :: 13:26:38] [World Server] Loading zones..
[09-06-2015 :: 13:26:38] [World Server] Clearing groups..
[09-06-2015 :: 13:26:38] [World Server] Clearing raids..
[09-06-2015 :: 13:26:38] [World Server] Loading items..
[09-06-2015 :: 13:26:38] [World Server] Loading skill caps..
[09-06-2015 :: 13:26:38] [World Server] Loading guilds..
[09-06-2015 :: 13:26:38] [World Server] Loaded default rule set 'default'
[09-06-2015 :: 13:26:38] [World Server] Loading EQ time of day..
[09-06-2015 :: 13:26:38] [World Server] Loading launcher list..
[09-06-2015 :: 13:26:38] [World Server] Reboot zone modes OFF
[09-06-2015 :: 13:26:38] [World Server] Deleted 0 stale player corpses from database
[09-06-2015 :: 13:26:38] [World Server] Loading adventures...
[09-06-2015 :: 13:26:38] [World Server] Purging expired instances
[09-06-2015 :: 13:26:38] [World Server] Loading char create info...
[09-06-2015 :: 13:26:38] [World Server] Zone (TCP) listener started.
[09-06-2015 :: 13:26:38] [World Server] Client (UDP) listener started.
[09-06-2015 :: 13:26:57] [World Server] New TCP connection from 127.0.0.1:1183
[09-06-2015 :: 13:27:07] [World Server] New TCP connection from 127.0.0.1:1185
[09-06-2015 :: 13:27:19] [World Server] New TCP connection from 127.0.0.1:1186

ucs_4856.log:

Code:
[09-06-2015 :: 13:27:07] [UCS Server] Loaded default rule set 'default'

One peculiar thing that's happening, is that the server shows up in the server listing, but is listed as locked. I can join, but am greeted with just a black screen.

The client I'm using is the one provided with Steam, sans the updates (downloaded the client, but never launched it; moved the game folder and deleted the Everquest entry from Steam).
Reply With Quote
  #4  
Old 09-06-2015, 12:32 PM
AdrianD
Discordant
 
Join Date: Dec 2013
Posts: 297
Default

Hello. I'm far from an expert of computer stuff. I just like to try and solve problems.

It seems like there may be an issue with zone. If zone were connecting, you would see in the world window something similar to "[World Server] New TCP connection from 127.0.0.1:1186" and several more listings than you have based on what you set in your `launcher` table in your database.

I also noticed there are lines in your config file which are uncommented and vary from the default file. I'm not sure if this would affect anything.

I didn't see it mentioned whether this was a fresh install. I assume it is.
Reply With Quote
  #5  
Old 09-06-2015, 12:53 PM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default

Quote:
Originally Posted by Shendare View Post
Ahh... when did you download the client from Steam?

Daybreak updated the Steam client from the supported RoF version to a new, unsupported TDS version in mid-June. The myriad undocumented changes haven't yet been reverse-engineered and added into the server code to get the latest version working.
Just downloaded it around three days ago.

And bah, I even just finished re-downloading, making sure to stop Steam from updating it.

From what I've read, the reason we cannot share the client is because, uh, that would be sharing the files.

Gonna go make a new thread discussing XDelta, and how we can use that to make patches for the various clients kicking around, allowing everyone to be able to get the optimal version.


Quote:
Originally Posted by AdrianD View Post
Hello. I'm far from an expert of computer stuff. I just like to try and solve problems.

It seems like there may be an issue with zone. If zone were connecting, you would see in the world window something similar to "[World Server] New TCP connection from 127.0.0.1:1186" and several more listings than you have based on what you set in your `launcher` table in your database.

I also noticed there are lines in your config file which are uncommented and vary from the default file. I'm not sure if this would affect anything.

I didn't see it mentioned whether this was a fresh install. I assume it is.
All the lines in the .ini were there by default, I just un-commented them to make sure that everything was set to the default settings.

Aye, it's a fresh install.


I found that if I do the following:

Code:
Windows + R -> cmd
type in the following:
shared_memory.exe
start world.exe
start zone.exe
start ucs.exe
start queryserv.exe
start eqlaunch.exe zone
My server is listed on the server list as unlocked (I.E, it no longer says "locked", it now says 0), and a couple people have even joined it. I still get the black screen though, which I assume is because my client is too new.


So yeah. The guide on setting up a server for Windows 7 needs to be updated.
Reply With Quote
  #6  
Old 09-06-2015, 01:13 PM
AdrianD
Discordant
 
Join Date: Dec 2013
Posts: 297
Default

Try putting the comments back for this section.

Code:
	<!-- 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>
Quote for the guide on the wiki.
Code:
<launcher>
        <exe>zone.exe</exe>
        <!-- or... -->
        <exe>./zone</exe>
</launcher>
This option allows you to specify which zone binary the launcher will run. If you build your zone with perl support into ZonePerl.exe instead of Zone.exe, you can specify that here.

<launcher>
        <timers initial="20000" interval="2000" restart="10000" reterminate="10000">
</timers></launcher>
This element lets you configure various timers that the launcher uses. All values are in milliseconds.

restart - This is the time between when a zone goes down, and when it is started back up again.
reterminate - This is how long we wait after sending a kill signal to a zone before killing it again.
initial - This is the time we wait after booting the first zone on the machine before booting any more zones (to let shared memory load).
interval - This is the time between booting each subsequent zone.

<!-- File locations.  Defaults shown -->
<files>
        <!-- <spells>spells_us.txt</spells> -->
        <!-- <opcodes>opcodes.conf</opcodes> -->
        <!-- <logsettings>log.ini</logsettings> -->
        <!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
These entries are provided if you need to override the names or locations of the needed files. You probably don't need to change these settings.

<!-- Directory locations.  Defaults shown -->
<directories>
        <!-- <maps>Maps</maps> -->
        <!-- <quests>quests</quests> -->
        <!-- <plugins>plugins</plugins> -->
</directories>
These entries are provided if you need to override the names or locations of the needed directories. You probably don't need to change these settings.
Comment out the launcher lines, specifically.

If you know what you are doing, by all means uncomment, comment, change, do whatever you want. If you are a novice like me, I suggest leaving things as they are UNTIL you get things up and running.
Reply With Quote
  #7  
Old 09-06-2015, 01:20 PM
AdrianD
Discordant
 
Join Date: Dec 2013
Posts: 297
Default

Quote:
My server is listed on the server list as unlocked (I.E, it no longer says "locked", it now says 0), and a couple people have even joined it. I still get the black screen though, which I assume is because my client is too new.
If you log in to the loginserver within a few seconds of starting up your server, your server will show locked. Waiting a short time will show different. Either way, it doesn't matter if your system is running proper, you should be able to log in.
Reply With Quote
  #8  
Old 09-06-2015, 01:20 PM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default

Quote:
Originally Posted by AdrianD View Post
Try putting the comments back for this section.

Comment out the launcher lines, specifically.

If you know what you are doing, by all means uncomment, comment, change, do whatever you want. If you are a novice like me, I suggest leaving things as they are UNTIL you get things up and running.
As I said, nothing about 'em was changed; I just un-commented them to ensure that the defaults were being applied.


It seems that the server itself is working, as two people with working clients joined it, which led to World.exe printing a bunch of stuff on the command line, unlike when I tried to join with the Steam client.
Reply With Quote
  #9  
Old 09-06-2015, 12:28 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

Ahh... when did you download the client from Steam?

Daybreak updated the Steam client from the supported RoF version to a new, unsupported TDS version in mid-June. The myriad undocumented changes haven't yet been reverse-engineered and added into the server code to get the latest version working.
Reply With Quote
  #10  
Old 09-06-2015, 06:59 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

Unfortunately, Titanium Edition and Secrets of Feydwar are the only legally obtainable clients at the moment,
since they were available as disc sets.

Hopefully, the newer steam client will be implemented in the near future - there were a lot of changes between RoF2 and TDS...
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #11  
Old 09-06-2015, 07:58 PM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default

Quote:
Originally Posted by Uleat View Post
Unfortunately, Titanium Edition and Secrets of Feydwar are the only legally obtainable clients at the moment,
since they were available as disc sets.

Hopefully, the newer steam client will be implemented in the near future - there were a lot of changes between RoF2 and TDS...
Surely the use of XDelta should resolve the client issue? I've given an outline as to why and how in the General Discussions forum.

Edit: On a different note, I made a much better .bat for starting a server.

Code:
shared_memory.exe
start world.exe
Echo 'Wait 10 seconds for World.exe to finish'
timeout /t 10 /nobreak
start zone.exe
timeout /t 5 /nobreak
start ucs.exe
timeout /t 5 /nobreak
start queryserv.exe
timeout /t 5 /nobreak
start eqlaunch.exe zone
pause
Reply With Quote
  #12  
Old 09-06-2015, 09:08 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

The subject of a client delta is being discussed - both good and bad.

While this topic doesn't quite infringe on the discussion of distributing actual binaries, it doesn't clearly expunge itself from the realm of a C&D, either...


I'm placing an injunction on the posting of delta files, or links there-to, until a decision can be reached and made public - or until another developer or
administrator removes it.


I'm not stopping the conversation on this topic because a point-of-view is valid and may help us in determining how we proceed.

However, precautions have to be taken until we can find a resolution.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #13  
Old 09-06-2015, 09:39 PM
MajinCry's Avatar
MajinCry
Sarnak
 
Join Date: Sep 2015
Location: Scotland
Posts: 33
Default

Quote:
Originally Posted by Uleat View Post
-snip-
Seeing as how there would need to be a rather definite guarantee of there being no legal action taken, are administrators and/or the developers of EqeEmulator in contact with the developers/publishers of Everquest?
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 08:16 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3