Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 03-22-2010, 06:48 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Notes on development so far:

The Login Server:

The current problem is that when you try to log into the EQEmu Login Server with the SoD client from Steam, it just sits there waiting to log in and never gets to the Server List. I haven't sniffed the packets for the communication to the Login Server yet, so everything here is pure speculation at this point. My guess is that the problem is 1 of 2 possibilities:

1. It may be that the encryption for the client has been changed. This may be the case, and if so, I don't really know much about that yet, so I can't say much about what may need to be done to allow SoD to log in with new encryption. However, I am leaning toward the problem not being caused by encryption.

2. There may be a new packet that the client is waiting for when logging in that it is not getting. In the patch notes from Dec 23 2008, it is mentioned that they added a new feature that will now send you a message if you already have a character logged in on that account before it lets you log in and kick that character out. My guess is that the client is now waiting for a reply packet that says no character is currently logged in. I am guessing we could just make a generic "OK to log in" response packet to send the client. Most likely, the Titanium and SoF clients would just ignore it, so we could probably just send the new generic packet to all.


I will try to look into this, but I really haven't looked into the LS code at all yet. I also don't have access to even look at the Public Login Server source, so Rogean or KLS may need to assist if possible to help get this functioning. Since we do have an open source Login Server, anyone who may be able to help figure this out is welcome to try to resolve it and get SoD logging in on the open source version. If we can get it working there, then hopefully, we can persuade Rogean to update the Public Login Server to do whatever the SoD client is needing in order to log in.

Basically, for the SoD client development to move forward at this point, I am going to need help from some of the Pros around here like KLS, Derision and Rogean. Otherwise, if anyone else thinks they can figure it out or provide any useful information that might help, please do! I can't really go any further until the Login Server is working with SoD. Though, I can start some prep work for SoD and get the SVN updated with what my guesses are for what will be needed. Maybe by the time the Login Server is working with SoD, the client will be mostly functional already, lol.


Some potential benefits of the SoD client over the SoF client:

1. After SoF was released, SOE did a lot of work to resolve most multi-core CPU issues. This means that more players should be able to play the SoD client on any OS without having to worry about doing anything special for multiple CPU cores. I believe the Steam version of the SoD client may even include some nice tweaks for splitting multi-box sessions between cores better, which may increase performance while multi-boxing too.

2. SoF is unable to lock it's window size while in windowed mode, which can lead to screen lockups or even more crashes than normal, especially while multi-boxing. the SoD client includes an option to disable window resizing and should also have most of the odd crashing issues from SoF resolved.

3. The UIs for SoF are pretty flaky when switching between them or when trying to use a new one. This issue should be corrected in the SoD client.

4. From what I have seen/heard, the SoF client is easier on the servers than the Titanium client is. So, if we can get the SoD client working as good or better than Titanium and start getting the masses to switch to it, it may boost server performance over-all for servers that support the new client.

Other than the new content, there definitely is a good chance that the SoD client may be a complete replacement for the Titanium client for EQEmu. Even though the SoF client works well enough to play and enjoy it, I think the SoD client would be much more stable and bug-free.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 03-22-2010 at 08:58 PM..
Reply With Quote
  #2  
Old 03-23-2010, 01:17 AM
ptarp
Fire Beetle
 
Join Date: Jan 2010
Location: Idaho
Posts: 27
Default

Quote:
Originally Posted by trevius View Post
2. There may be a new packet that the client is waiting for when logging in that it is not getting. In the patch notes from Dec 23 2008, it is mentioned that they added a new feature that will now send you a message if you already have a character logged in on that account before it lets you log in and kick that character out. My guess is that the client is now waiting for a reply packet that says no character is currently logged in. I am guessing we could just make a generic "OK to log in" response packet to send the client. Most likely, the Titanium and SoF clients would just ignore it, so we could probably just send the new generic packet to all.
They changed something in the client to pop up a window if you have a toon logged into the world somewhere.. It was added to allow you to "force" an LD toon off the server faster, so what you're looking for is something that tells the client there's no toon's from the account on the server.
Window text if check shows a toon on server is -
Quote:
You already have a character logged into a world server from this account. You may only 1 character from a single account logged into a server at a time (even across different servers). Would you like to remove this character from the game so you may login?
with NO and YES buttons on the bottom. Hope that helps.
Reply With Quote
  #3  
Old 03-23-2010, 05:51 AM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

I'll have a look at a trace of the current live logon process, which hopefully is the same as SoD, to see if there is a simple fix to get it working with the open source login server.

Hopefully it's just a packet size that has changed, or an extra opcode or two and not the encryption :(
Reply With Quote
  #4  
Old 03-23-2010, 06:37 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Thanks, Ptarp, that is what I had figured as one of the possible causes since that went in right about the same time as the Steam Client version.

Derision, if you want to check it out, but don't have SoD yet, or an account to try it on, I will buy you one if you want to just send me the email address you want it gifted to from Steam We can use all of the help we can get.

KLS, Secrets and I briefly reviewed some collects to compare SoF>EQEmu with SoD>EQEmu and SoD>EQLive and so far they do look pretty similar. It seems 2 extra bytes were added to the end of the second packet that gets sent from the Client (after the OP_SessionReady from the client and the OP_Login from the server). And the server reply to that packet is a bit different in structure. So, at the very least, it looks like they have changed the structure a bit. We are not sure if encryption has been changed yet.

I may try setting up the Open Source LS to just send me a Login Accepted packet no matter what, so I can at least log in with the SoD client to continue work on it while the LS stuff is being worked on.

On a side-note, it looks like SOE may be considering an idea I mentioned a year or 2 ago on their forums to allow custom content created by players. When logging in to collect packets, here is one of the vote options I got:
"Player generated content system - Allow players to place NPCs and traps, set mission types, and turn loose their custom zone for other players to experience and gain points in a scaling reward system"

My idea was for custom player run servers, but this would definitely be a stepping stone toward that!
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
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 06:33 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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3