Jump to content
XCOMUFO & Xenocide

How Often Does The Server Check If A Player Is Connected Any Longer?


7Saturn

Recommended Posts

OK, it happened now the second time that the game crashed, resp. Windows had hung up. My question is, how long does the server need, to find out that a User isn't logged on any more?

 

I think it takes about 15 Minutes (or more) until you can log on again because the server even thinks, that you are allready logged on. Was that thought so? I think some players may feel annoyed, If I disapear and it looks like I'm logged on and don't react to anything.

Link to comment
Share on other sites

it happens. My record is five aliases of me on the server at once. Rebooting your computer seems to clear them.

 

I don't think so. Last week my Windows hung up <_< , and I NEEDED to reboot my computer, but anyway the server thought I was logged on. So rebooting doesn't solve the problem. So I must wait the 15 Minutes or whatever it takes, until the server decides I lost connection. But thank you for the tip. =b

Link to comment
Share on other sites

Hmm, since there is allready a method in the existing code to check wether or not a player is still connected, how hard could it be to change it from 15minutes to... say 2?

 

I don't know if this is the current situation (I've never read any part of the source code, I just used the installer :hideit: ). If this is so easy, I recommend it. 2 Minutes are really enough, and it's time enough too, to restart the computer, and resume a possible running game (by pressing F3). At least quite better than waiting so long. :boohoo:

Edited by 7Saturn
Link to comment
Share on other sites

but what happens if a player goes AFK during a battle to get a coffee or somthing? when he comes back, the server will no longer recognise him
Link to comment
Share on other sites

Ok, if the player goes AFK, the server will "ping" the client (not literally, some internal UFO2000 ping-like function) and if the player didn't close UFO2000 the client will "pong" back, so no disconnections. If however you crash, the server pings UFO2000, but it's not running on your computer, so it doesn't respond. If you are in battle, the opponent gets a message "The oher player crashed or something..." and your nickname get's released, so you can come back onto the server. Also, in IRC if the nickname is allready taken, as long as you know the password, you can ghost that user. Maybe something like this except automatic? I dunno. I'm hungry.

 

Edit: 7Saturn posted a few seconds after I did, check out the similarities :)

Edited by Brick-To-Face
Link to comment
Share on other sites

Does it make any difference if you do nothing (no typing, klicking or scrolling with the mouse), or if you weren't any more connected? I don't know about the kind of identifing the involved clients. Does the server give a kind of "ping" out to the client to check if he is connected, or something like this?

 

A possible solution would be the following:

The server receives a kind of "I'm-Online-Signal" in the main chat-menu and an additionally session-ID generated by itself and repeated by the clients when playing a game. If this signal is not received for example about 2 minutes, the server kicks the client/user/nick. So spite of the user doing nothing, the client sends the signal further on, and the server knows that the connection isn't lost pemanently. And you can rejoin a possibly broken connection, because the server knows you by your session-ID. But in case of beeing permanently logged off, because for example you feel pissed of by an already lost running game or system-crash, the server kicks the player, and terminates the running match (with an appropriate error-message to the other player).

Edited by 7Saturn
Link to comment
Share on other sites

I'm not sure how long it originally is. However, when the user is disconnected and not informed whatsoever is just as annoying to the user than it is for other players looking for a match.

 

Now concerning the server pinging you timely... Really, it shouldn't be automatic for battles. It should be manual, but restricted within time. ie: Player 1 hits the ping button to distress to the server that his/her opponent may have lost connection. Player 2 has two minutes to react from the server's ping (player 2 also isn't affected, meaning nothing to aware him/her. This will prevent abuse). This way, your opponent will trust you to not ping him after he/she informs you that they went afk for a cup of coffee. And if you can't trust your opponent, then why play them? And if it was an accident, why get mad?

Link to comment
Share on other sites

I'm not sure how long it originally is. However, when the user is disconnected and not informed whatsoever is just as annoying to the user than it is for other players looking for a match.

I totally agree. I didn't see the other side, but you're right! Also annoying to the others, who think you are ready to play...

Player 2 has two minutes to react from the server's ping (player 2 also isn't affected, meaning nothing to aware him/her.

I'm not sure, but you meant the players client or the player himself? The players client reacting would be OK.

But how should it work? I haven't used it yet, but does the game return to the disconnected match directly (F3), without the opponent knowing, you were away? In this case it would reach out, when the server only "pings" 2 minutes after the player used the "ping-button". If the opponent has returned, nothing happens then, and the game is resuming, as nothing special had happened meanwhile.

This way, your opponent will trust you to not ping him after he/she informs you that they went afk for a cup of coffee. And if you can't trust your opponent, then why play them? And if it was an accident, why get mad?

This seems to be logical. If you aren't willing to wait until your opponent is back to keyboard you can exit the match, instead of pinging him. Otherwise it doesn't make sense to ping (and in this case to kick) a player who is just afk for a longer time then the examplary 2 minutes...

OK, then the players might better tell the others that they are gone for a moment :doh:

Link to comment
Share on other sites

I love the ping button idea, wen you press it your client tells the server to ping the opponent's client, so if they went AFK and didn't tell you it's ok and you know that ufo2000 is still running fine, but if they crashed, or the ISP quit on them, you know that the ufo2000 client is no longer accessible.

 

The only problem is people holding down the ping button, for whatever stupid reasons they can think of. Limiting 1 ping/2 seconds should solve this.

Link to comment
Share on other sites

I think the simplest method to solve this would be to check the server for existing connections from the same computer.

 

This can be done in two ways.

 

One is to check if the user's ip is the same as another user in logged in and to remove the older one.

 

The other method is to check the name/pw of a user logging in and if both are valid and one instance of that nickname is already online, remove the older one.

 

This is a whole lot more to the point than merely increasing the checking interval.

Link to comment
Share on other sites

The other method is to check the name/pw of a user logging in and if both are valid and one instance of that nickname is already online, remove the older one.

 

This is a whole lot more to the point than merely increasing the checking interval.

That's really the finest way, to solve the problem for the connecting user. =b He's not bothered by "Failed to connect" any more. Would be great if this were implemented in the next stable version. :fingerscrossed:

Link to comment
Share on other sites

better yet, have the server add "(Inactive)" to the end of their name and grey them out if they do not respond - that way those of us who are waiting for players we have arranged matchs with or are busy doing somthing dont have to keep logging in.

 

That would get very annoying

Link to comment
Share on other sites

  • 1 month later...

I need to insist on solving this problem! As fast as possible. :master:

 

If you take the attachement (its totally genuine! just saved with firefox), you will see that our server HAS a really BIG problem. I won't be this poor guy with the one day-period... :crying1: And I'm sure he didn't play for one whole day.

 

I'm sorry, if I seem to be angry. I'm not angry. But this is a real infliction. I would go mad, if I couldn't connect for a whole day with MY nickname, because the server doesn't give me the chance.

 

UFO2000_Matchmaker.htm

Link to comment
Share on other sites

I need to insist on solving this problem! As fast as possible. :master:

 

Can't see the bug in the bugtracker.

Do your homework before even thinking about 'insisting' and 'as fast as possible'.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...