Ticket #69 (new enhancement)

Opened 7 years ago

Last modified 7 months ago

Enhance Multiplayer Experience

Reported by: stuart Owned by:
Priority: Must Have Milestone: Backlog
Component: Core engine Keywords:
Cc:

Description (last modified by historic_bruno) (diff)

Latency Adjustment

Currently the networking code is hard-coded to a 200ms turn length, with commands scheduled for execution 2 turns ahead. This causes jerky motion if the RTT for any player is >200ms.

We ought to do some combination of dynamically adjusting the turn length (which allows fine-tuning and reduces simulation CPU load, but large values will result in very variable responsiveness depending on whether the player clicks near the start or end of a turn), and dynamically adjusting the number of turns ahead (which allows more consistent responsiveness, but is a coarse adjustment).

Player disconnections

I believe if a non-host player is disconnected, it'll display a message already, saying the player left?

However, if a client does not hear from a host for ~5 seconds, it should display a "waiting for host" message to the player (with an "exit game" button on it), and then either go back to normal or go to the "connection lost" message on network timeout.

Auto-Reconnect

If a player is kicked, allow them to try to reconnect via a button (in the case where their (the players) internet was cut off, but the host is still running the game, and the player rejoins the same I.P. and takes control of their units).

Observer Mode

Players who can join a game, but don't have a civ to play (full or doesn't want to play), can just watch (like a real-time Replay).

They get full view of the map (no SoD or FoW). Sometimes called 'God Mode'.

Change History

comment:1 Changed 3 years ago by anonymous

  • Milestone Advanced Multiplayer Demo deleted

Milestone Advanced Multiplayer Demo deleted

comment:2 Changed 3 years ago by wacko

  • Owner set to wacko
  • Milestone set to Backlog

comment:3 Changed 3 years ago by ImG

  • Milestone changed from Backlog to Alpha 4

comment:4 Changed 2 years ago by historic_bruno

  • Owner wacko deleted

comment:5 Changed 2 years ago by k776

  • Priority changed from major to critical
  • Type changed from task to enhancement
  • Description modified (diff)
  • Summary changed from Network - Advanced to Enhance Multiplayer Experience

comment:6 Changed 2 years ago by k776

  • Milestone changed from Alpha 4 to Alpha 5

comment:7 Changed 2 years ago by k776

  • Milestone changed from Alpha 5 to Alpha 6

comment:8 Changed 2 years ago by k776

  • Milestone changed from Alpha 6 to Alpha 7

comment:9 Changed 23 months ago by k776

  • Milestone changed from Alpha 7 to Backlog

comment:10 Changed 21 months ago by historic_bruno

How about ping/latency indicator in setup and also in-game, to help identify slow connections and players.

comment:11 Changed 17 months ago by Syntaxial

"Auto-reconnect"

Or how about having the last IP automatically filled when going into multiplayer mode, or even the ability to 'bookmark' different IPs?

comment:12 Changed 17 months ago by historic_bruno

  • Description modified (diff)

comment:13 Changed 7 months ago by FeXoR

If an observer mode is added all players have to see that it is enabled (like all other game settings) and confirm on them befor the game starts (because a user in observer mode can tell one of the players what's going on on the map).

Otherwise I like this.

comment:14 Changed 7 months ago by feneur

Only if they are able to chat ;) (Of course they could use some other kind of communication though, which we never can stop, so it might be a good idea to make sure the players are aware of it in either case :) )

Note: See TracTickets for help on using tickets.