View Issue Details

IDProjectCategoryLast Update
0024291AI War 2Gameplay IdeaDec 31, 2020 2:34 pm
ReporterHecsa Assigned ToChris_McElligottPark  
Status resolvedResolutionfixed 
Product Version2.711 Deep Memories 
Fixed in Version2.712 Civilian Pause 
Summary0024291: Pausing in Multiplayer
DescriptionIn multiplayer, because both players are able to pause simultaneously, they can cancel each other out. This can be especially awkward when in a tough situation. I have two ideas for how this issue can be resolved.

1. Separate the pause button into two different buttons, a pause and an unpause button. This would mean that when both players go to pause, it can only pause and not unpause.

2. Have a 1-2 second server wide timer for pauses (although, in my opinion this would be less preferable solution).
TagsNo tags attached.

Activities

Arides

Dec 31, 2020 4:34 am

reporter   ~0060201

+1, catching that short moment when zenith trader peeks into your home planet before disappearing back where he came from is impossible on client.

Chris_McElligottPark

Dec 31, 2020 2:26 pm

administrator   ~0060204

Can you elaborate on why it's impossible on the client? Is it because of input lag, or because several people are pausing at once?

It does take a bit longer for the client's commands to get executed, depending on how far behind their sim is in particular.

I could see some sort of "Pausing..." message get thrown up center screen and block input for a bit, potentially. I am wondering if maybe the client is sometimes double-pausing themselves, thinking the first didn't take, based on Arides comment.

Chris_McElligottPark

Dec 31, 2020 2:34 pm

administrator   ~0060205

Thanks!

* Under the hood, the game has always had a "toggle pause" command that basically says "whatever the state of pause is when I execute, invert it."
** This was problematic in multiplayer, as several people might hit pause at the same time, or might repeatedly hit pause if there's a lag situation, and this would cause lots of confusing inversions.
** Now what happens is that if it's unpaused locally, it sends a pause command. If it's paused, it sends an unpause command. This way, even if 16 people hit pause all at once, it will be 16 pause commands, 15 of which are redundant. It won't be 16 state flip-flops with a result of unpaused since it was an even number.
** Hopefully this solves all of the pausing woes in multiplayer, but if not then please let us know and we can consider some more harsh methods that might subtly irritate people if we're not careful (things like "can't change pause state for a short time after it was just changed, etc"). The latter can always be a tuneable option if that's where we have to take it.

Issue History

Date Modified Username Field Change
Dec 31, 2020 1:37 am Hecsa New Issue
Dec 31, 2020 4:34 am Arides Note Added: 0060201
Dec 31, 2020 2:26 pm Chris_McElligottPark Note Added: 0060204
Dec 31, 2020 2:34 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Dec 31, 2020 2:34 pm Chris_McElligottPark Status new => resolved
Dec 31, 2020 2:34 pm Chris_McElligottPark Resolution open => fixed
Dec 31, 2020 2:34 pm Chris_McElligottPark Fixed in Version => 2.712 Civilian Pause
Dec 31, 2020 2:34 pm Chris_McElligottPark Note Added: 0060205