Sign in to follow this  
  • entries
    557
  • comments
    1237
  • views
    421605

Sod Huffman...

Sign in to follow this  
Evil Steve

105 views

Ok, so I gave up with huffman encoding, after I discovered that the slow way of decoding a value (traverse the tree) was horribly slow, and I don't understand the fast way (table-based). I'll come back to it later. Much later. The username and password info wouldn't be any shorter anyway, since the password is 128 hex digits, and 0..9 have fairly low priority.

Anyway, I did however get a lot of stuff done. Game servers now connect to the login server to expose themselfs. The login server will then reply with a list of all servers (Including the one that just connected), and will give the server name, IP, port, capacity and approx current users.
The login server also pings each server once a minute to check it's still there. If it isn't, it notifies all the other game servers that it's gone. If a server joins, the login server also notifies all the game servers.
I'm not sure if a game server needs to know about all the other game servers, but it's probably a handy thing to have kicking around. It'd allow me to let users change servers without logging out, etc etc (Well, maybe).
I'm going to add some more features to the web interface now, so I can view details of all the servers, and their ping times, etc. I'll also look at shutting down servers through the web admin, but that might be pointless.

I'm going to DC Studios on the 10th March now, the Friday before I start, so things will be fresh in my mind. So obviously I didn't end up going today.


RANDOM LOG SEGMENT:

[01/03/2006 23:32:12] Database connected (MySQL version 4.0.20a-nt)
[01/03/2006 23:32:12] Socket manager initialized
[01/03/2006 23:32:12] Loaded settings. "I am a Server!" will listen on port 13372 for up to 1000 users
[01/03/2006 23:32:12] Logging in to login server...
[01/03/2006 23:32:12] Connected to login server
[01/03/2006 23:32:12] Recieving server list (1 servers):
[01/03/2006 23:32:12] * I am a Server!: 82.41.27.86:13372
[01/03/2006 23:32:12] === Server ready ===
[01/03/2006 23:32:20] Discovered new game server: "Stain Server" at 82.41.27.86:13373




And from the other server:

[01/03/2006 23:50:05] Database connected (MySQL version 4.0.20a-nt)
[01/03/2006 23:50:05] Socket manager initialized
[01/03/2006 23:50:05] Loaded settings. "Stain Server" will listen on port 13373 for up to 100 users
[01/03/2006 23:50:05] Logging in to login server...
[01/03/2006 23:50:05] Connected to login server
[01/03/2006 23:50:06] Recieving server list (2 servers):
[01/03/2006 23:50:06] I am a Server!: 82.41.27.86:13372
[01/03/2006 23:50:06] * Stain Server: 82.41.27.86:13373
[01/03/2006 23:50:06] === Server ready ===



Yes. My server's clock is 20 minutes out. It's verging on the erotic now.
Sign in to follow this  


3 Comments


Recommended Comments

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now