Network Play: Ping Feature

Brainstorm ideas of possible additions to the game. Read this before posting!

Moderator: Forum Moderators

Forum rules
Before posting a new idea, you must read the following:
Post Reply
jonathantan86
Posts: 57
Joined: February 26th, 2005, 9:26 am

Network Play: Ping Feature

Post by jonathantan86 »

I think we should have a 'ping' feature, where any player can ping another network player (through the game server) to check if that computer is still connected to the game server. Sometimes we don't know if someone stops moving because he/she is away or because the network is down on their side.

I'm posting this here because I think that this is a "server development", but it might be better off in the Ideas forum.

I have checked the Wiki over here http://www.wesnoth.org/wiki/CommandMode but have found no command to ping another player.
User avatar
irrevenant
Moderator Emeritus
Posts: 3692
Joined: August 15th, 2005, 7:57 am
Location: I'm all around you.

Post by irrevenant »

Does Wesnoth keep track of connect status? If so, (or even if it doesn't!) it seems like it would be easier all round for Wesnoth to automatically report when a dropout occurs. eg. "Network unable to connect to player Irrevenant".
(and presumably) "Network connection to player Irrevenant has resumed".

That way:
(a) The player doesn't have to know about and use the 'ping' function.
(b) The developers don't have add and maintain a ping option and associated parameters.
(c) It 'just works' which is a good UI principle in general.
User avatar
JW
Posts: 5046
Joined: November 10th, 2005, 7:06 am
Location: Chicago-ish, Illinois

Post by JW »

Oh my gosh, I was just about to post a similar idea. I just finished a game where the other player got "ghosted" and it made me think of it.
Soliton
Site Administrator
Posts: 1686
Joined: April 5th, 2005, 3:25 pm
Location: #wesnoth-mp

Post by Soliton »

The server already tells the host about players that disconnected and/or left the game.
In newer versions it also gives a server message informing everyone in the game. Afaik none of the currently running official servers do that though. You're informed the same way about kicks and bans btw.

Nevertheless a 'heartbeat' feature (periodical ping) is probably a good idea and has been talked about before but not implemented yet.
"If gameplay requires it, they can be made to live on Venus." -- scott
Riox
Posts: 13
Joined: February 18th, 2006, 6:34 pm

Post by Riox »

I agree.
Something useful too would be an icon that tell you your network status, using maybe the current time minus the time of the last received packet.

Or maybe a command to ping the server, I found myself typing useless message to see if im still connected.
2d games FTW
Dave
Founding Developer
Posts: 7071
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave »

The main problem is the structure of the network code lacking a 'heartbeat'. This means the server only knows a client has disconnected abnormally when it actually times out, which can take many minutes.

A big portion of the problem is the way our modal dialogs work. If you're in a network game, and you open a dialog box, the game won't process or respond to any incoming network traffic until you close the dialog box. This means that if we had a ping feature it wouldn't be terribly useful now, because the response might be delayed indefinitely simply because the remote player is in a dialog box of some kind.

Resolving this has been on our 'to do' list since before 1.0. Any coders who want to do it (and have the technical skills to do it...it's a little complicated) are welcome to try. :)

David
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming
Post Reply