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

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

Reply
 
Thread Tools Display Modes
  #16  
Old 02-01-2019, 01:29 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

It happens with multiple characters, from different accounts.

Also, World.exe seems to get it right:

[02-01-2019 :: 11:06:08] [MySQL Query] SELECT `id`, `account_id`, `zone_id`, `zone_instance`, `x`, `y`, `z` FROM `character_data` WHERE `name` = 'Pokay' (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT `id`, name, `level`, last_login FROM character_data WHERE `account_id` = 89277 ORDER BY `name` LIMIT 12 (4 rows returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT is_global FROM instance_list WHERE id = 5 LIMIT 1 (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT start_time, duration, never_expires FROM instance_list WHERE id=5 (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT id FROM instance_list where id=5 AND zone=344 (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] delete from group_id where charid=683595 and name='Pokay' and ismerc=0 (0 rows affected)
[02-01-2019 :: 11:06:08] [MySQL Query] update `character_data` SET `lfp` = 0, `lfg` = 0, `firstlogon` = 1 WHERE `id` = 683595 (1 row affected)
[02-01-2019 :: 11:06:08] [MySQL Query] UPDATE character_data SET mailkey = '7100000A0BA648B3' WHERE id = '683595' (1 row affected)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT is_global FROM instance_list WHERE id = 5 LIMIT 1 (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT start_time, duration, never_expires FROM instance_list WHERE id=5 (1 row returned)
[02-01-2019 :: 11:06:08] [MySQL Query] SELECT id FROM instance_list where id=5 AND zone=344 (1 row returned)
Reply With Quote
  #17  
Old 02-01-2019, 01:44 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

I think I got the issue, the line 604 in ucs/clientlist.cpp declares char MailBox[64]; The value attempted to put into that string is "SOE.EQ.!The King's Lair (Solo Tuned EQEmu Server).Pokay" which is 65 characters assuming a terminator. So its read in as SOE.EQ.!The King's Lair (Solo Tuned EQEmu Server).Poka and its all downhill from there. As a workaround, i assume I can rename something regarding the server. Is this string beign read from the "shortname" in eqemu_config.json?

Also, if I rename that, will all the clients ini file names no longer match resetting all their UI placement?
Reply With Quote
  #18  
Old 02-01-2019, 02:04 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

Looking much better after shortening the server shortname. And it did reset the UI, but no big deal. Now I just have an IP mismatch issue I believe because I tested from a client on the local lan. DB has my local lan IP and the client key is using public IP. Not sure how to proceed now. I guess I can disable the IP matching?

[02-01-2019 :: 12:58:14] [MySQL Query] SELECT `value` FROM `variables` WHERE `varname` = 'RuleSet' (0 rows returned)
[02-01-2019 :: 12:58:14] [MySQL Query] SELECT ruleset_id FROM rule_sets WHERE name='default' (1 row returned)
[02-01-2019 :: 12:58:14] [MySQL Query] SELECT rule_name, rule_value FROM rule_values WHERE ruleset_id=1 (620 rows returned)
[02-01-2019 :: 12:58:14] [UCS Server] Loaded default rule set 'default'
[02-01-2019 :: 12:58:14] [UCS Server] Initialized dynamic dictionary entries
[02-01-2019 :: 12:58:14] [UCS Server] Expiring mail...
[02-01-2019 :: 12:58:14] [MySQL Query] SELECT COUNT(*) FROM `mail` (1 row returned)
[02-01-2019 :: 12:58:14] [UCS Server] There are 0 messages in the database.
[02-01-2019 :: 12:58:14] [MySQL Query] DELETE FROM `mail` WHERE `status`=4 AND `timestamp` < 1549043894 (0 rows affected)
[02-01-2019 :: 12:58:14] [UCS Server] Expired 0 trash messages.
[02-01-2019 :: 12:58:14] [MySQL Query] DELETE FROM `mail` WHERE `status` = 3 AND `timestamp` < 1517507894 (0 rows affected)
[02-01-2019 :: 12:58:14] [UCS Server] Expired 0 read messages.
[02-01-2019 :: 12:58:14] [MySQL Query] DELETE FROM `mail` WHERE `status`=1 AND `timestamp` < 1517507894 (0 rows affected)
[02-01-2019 :: 12:58:14] [UCS Server] Expired 0 unread messages.
[02-01-2019 :: 12:58:14] [UCS Server] Loading chat channels from the database.
[02-01-2019 :: 12:58:14] [MySQL Query] SELECT `name`, `owner`, `password`, `minstatus` FROM `chatchannels` (0 rows returned)
[02-01-2019 :: 12:59:04] [UCS Server] Connection type is Combined (RoF2)
[02-01-2019 :: 12:59:04] [UCS Server] Received login for user SOE.EQ.!TKLairSolo).Ssthis with key 5C3A13A9
[02-01-2019 :: 12:59:04] [MySQL Query] SELECT `mailkey` FROM `character_data` WHERE `name`='Ssthis' LIMIT 1 (1 row returned)
[02-01-2019 :: 12:59:04] [UCS Server] DB key is [7100000A5C3A13A9], Client key is [33C9614C5C3A13A9]
[02-01-2019 :: 12:59:04] [UCS Server] Chat Key for SOE.EQ.!TKLairSolo).Ssthis does not match, closing connection.
[02-01-2019 :: 12:59:04] [UCS Server] Force disconnecting client: 76.97.201.51:41962, KeyValid=0, GetForceDisconnect()=0
Reply With Quote
  #19  
Old 02-01-2019, 02:26 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

Finally working! I used my public DNS hostname in eqemu_config.json for the mail and chat servers, and placed that in the clients host file with the local lan IP of server for the client that was running locally and its now working. So in the end I think the main issue was the shortname server name length in eqemu_config.json must by 63 characters or less.
Reply With Quote
  #20  
Old 02-01-2019, 02:33 PM
spiritchaser
Fire Beetle
 
Join Date: Jan 2019
Posts: 29
Default

Yes, the server shortname is what that goes by, just as the client UI's do. But it's usually common practice to keep the shortname of server to one full name, no spaces. Like `thekingslair`, for example, instead of `The King's Lair`. Spaces and special characters in the shortname have been known to cause problems.
Reply With Quote
  #21  
Old 02-01-2019, 02:38 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

Agreed, that is exactly what I did but there is still a bug here. It should not crash and burn if the shortname is too long. It should handle it gracefully . Personally I had no idea there was any limit as to its length.
Reply With Quote
  #22  
Old 02-01-2019, 03:11 PM
chrsschb's Avatar
chrsschb
Dragon
 
Join Date: Nov 2008
Location: GA
Posts: 905
Default

Glad you figured it out!
Reply With Quote
  #23  
Old 02-01-2019, 03:20 PM
spiritchaser
Fire Beetle
 
Join Date: Jan 2019
Posts: 29
Default

As far as the players go, the shortname is somewhat trivial, since it's the long name they see on the server list anyways and don't really see the shortname unless they look at the ini's that get generated when they logon.
Reply With Quote
  #24  
Old 02-01-2019, 06:32 PM
Techungry
Fire Beetle
 
Join Date: Jan 2019
Location: Georgia
Posts: 25
Default

Minor correction for anyone that sees this in the future. The entire string of SOE.EQ+servername+character name read in by UCS at login needs to be less than 64 characters or crash happens. For example "SOE.EQ.!The King's Lair (Solo Tuned EQEmu Server).Test" works, "SOE.EQ.!The King's Lair (Solo Tuned EQEmu Server).Tester" does not.
Reply With Quote
  #25  
Old 02-01-2019, 09:22 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

I would only amend that statement to say the length of "SOE.EQ+servername+character name [max length]" since there is no way to know how long a character's name will be.

So, "servername" would appear to need a max length to play nice.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
Reply

Thread Tools
Display Modes

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 04:30 AM.


 

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