Hey Everyone,
I don't write often about problems that I'm having... but I've been at this for days researching this problem. First, you must know that the structure of my server is much like CoEmu. It is split up into two servers: a login server and a world server. Secondly, you must know that my socket system problem isn't just one problem, but many huge problems that I can't find the root of.
This is what I have found out through backtracking:
1. The problem isn't with the login server. The login server sends the correct key and information to the world server successfully every time.
2. The world server picks up the key and information correctly and sets the ASocket in the connection request handler.
3. The Connection Request system then picks it up successfully and records the key for research use.
4. It then adds the key to Authenticated Logins after checking to see if it's already in the system. The user is entering the game server now and the client starts to initialize... This is where it goes wrong.
5. The Login Handler now starts... if the information did not make it, then it stops the client at "initializing" and never enters the game server. The case that handles the login handler in the packet processor is case 1052. This is meant to end the authorization process and load the character into the game server.
If it doesn't pick it up... the client process bar will not move and the server will report that the connection is being dismissed (Timed Out in CoEmu talk). This is just one of the major problems with the login process of Conquer Online New Dawn.
Help is appreciated.
-Fang
PS: What happens if you run 32,577 threads on the server? What is the comparison to running 18? I know this is extreme... but that's what my server can hold. Thanks.
I don't write often about problems that I'm having... but I've been at this for days researching this problem. First, you must know that the structure of my server is much like CoEmu. It is split up into two servers: a login server and a world server. Secondly, you must know that my socket system problem isn't just one problem, but many huge problems that I can't find the root of.
This is what I have found out through backtracking:
1. The problem isn't with the login server. The login server sends the correct key and information to the world server successfully every time.
2. The world server picks up the key and information correctly and sets the ASocket in the connection request handler.
3. The Connection Request system then picks it up successfully and records the key for research use.
4. It then adds the key to Authenticated Logins after checking to see if it's already in the system. The user is entering the game server now and the client starts to initialize... This is where it goes wrong.
5. The Login Handler now starts... if the information did not make it, then it stops the client at "initializing" and never enters the game server. The case that handles the login handler in the packet processor is case 1052. This is meant to end the authorization process and load the character into the game server.
If it doesn't pick it up... the client process bar will not move and the server will report that the connection is being dismissed (Timed Out in CoEmu talk). This is just one of the major problems with the login process of Conquer Online New Dawn.
Help is appreciated.
-Fang
PS: What happens if you run 32,577 threads on the server? What is the comparison to running 18? I know this is extreme... but that's what my server can hold. Thanks.