Friday Facts #43

Regular reports on Factorio development.
devedse
Manual Inserter
Manual Inserter
Posts: 2
Joined: Mon Jul 21, 2014 11:10 pm
Contact:

Re: Friday Facts #43

Post by devedse »

kovarex wrote:
Spoiler added by FreeER for length
The problems you present would only occur in some very naive implementation of the p2p. In our implementation, the true state exists and is very well defined. If A and B order to build the building on the same location in tick 101, the tick is executed in 101+latency (lets say latency is 5), so in tick 106 it is executed, but every player executes tick 106 only when it has inputs from tick 101 from all players confirmed. In that moment, it executes the actions of all players in well defined order.

The host models doesn't avoid desynchronisation by design, still the input actions have to lead to the same game state, and the main problem with host model is, that it doubles the latency, as the message has to go to the host and back to the players.
So basically only the ticks from which information has been received from all clients determine the "true" gamestate while ticks from the current client only determine what he sees and is not guaranteed to be correct? (Just verifying)
rsdworker
Burner Inserter
Burner Inserter
Posts: 6
Joined: Tue Nov 26, 2013 11:50 am
Contact:

Re: Friday Facts #43

Post by rsdworker »

nice - so i have suggestion - when player A is on one area - so player B could ask for permit to build in player A zone or area and allowing connection for example railways
User avatar
cube
Former Staff
Former Staff
Posts: 1111
Joined: Tue Mar 05, 2013 8:14 pm
Contact:

Re: Friday Facts #43

Post by cube »

Rakshasa wrote:Is latency a (possibly dynamic) value, or does it rely on confirmation from all clients that they've completed every tick?
Currently it is fixed to 100ms (AFAIK, this part changes a lot now :-) )
devedse wrote:So basically only the ticks from which information has been received from all clients determine the "true" gamestate while ticks from the current client only determine what he sees and is not guaranteed to be correct? (Just verifying)
That is how we imagine it WILL work. In 0.11.0 only the true gamestate will ever be visible.
rsdworker wrote:nice - so i have suggestion - when player A is on one area - so player B could ask for permit to build in player A zone or area and allowing connection for example railways
That's a thing we will be solving later. For now we will have only co-op game -- every player can build everywhere and they share the defences, research ....
I have no idea what I'm talking about.
Pontiac
Burner Inserter
Burner Inserter
Posts: 13
Joined: Fri May 23, 2014 5:43 pm
Contact:

Re: Friday Facts #43

Post by Pontiac »

It's GREAT that MP is coming out, but, I have my reservations about performance. From the description of what the communication is going to be between clients, why are you going a token-ring kind of network communication topology? The more people you throw into the mix, the worse latency is going get for EVERYONE. Imagine 26 people sitting on the network, waiting for information to get from person A to person Z. Playing 2 player MP is one thing, but when you get up to 20, from a players perspective you're looking at the sum of all latency for all players, not your single latency to a server. Sure the communication back and forth between the server and a single client will double, but it'd still be the latency between the server and the client, not client A + client B + client c + so on and so on. It'd get worse just watching a remote player just MOVE with that kind of waiting.

This also slams the door shut on having any kind of server going in that the 'host' has to be online 100% of the time. I don't know how the communication topology worked, but, if you look at what was going on with Space Engineers, when they built in the MP aspect of the game, it was set up that someone had to be online to host, and that someone would always have the world stored on their drive. Lag was also an issue until they went to a dedicated server setup. Myself, and many others I'm sure, have a lower powered machine compared to their primary gaming rig that is sitting around that hosts a server or 3. I'd rather offload the performance of "serving software" to a machine that isn't going to impact my game performance.
Rakshasa
Long Handed Inserter
Long Handed Inserter
Posts: 97
Joined: Sat May 31, 2014 7:21 pm
Contact:

Re: Friday Facts #43

Post by Rakshasa »

There's no token ring involved in P2P.

The latency would, assuming proper implementation, be limited to that between the pair with the largest delay in transmission.
Laturine
Burner Inserter
Burner Inserter
Posts: 12
Joined: Tue Jul 22, 2014 11:54 pm
Contact:

Re: Friday Facts #43

Post by Laturine »

what happens when a client gets too far away from the gamestate tick? ie. player 1 is on tick 160 and the gamestate tick is on 101. is this what lag is?
slpwnd
Factorio Staff
Factorio Staff
Posts: 1835
Joined: Sun Feb 03, 2013 2:51 pm
Contact:

Re: Friday Facts #43

Post by slpwnd »

Rakshasa wrote:The latency would, assuming proper implementation, be limited to that between the pair with the largest delay in transmission.
This is correct. In theory.
Laturine wrote:what happens when a client gets too far away from the gamestate tick? ie. player 1 is on tick 160 and the gamestate tick is on 101. is this what lag is?
The solution we have devised is such that the players can't get too far away.

Very simply put:

You need tick closures from all the peers for tick 95 (example) to finish tick 100. Until you get it your map is stopped at tick 100. This also implies that no other peer can get further than tick 105 (because they are waiting for you).
ataaron
Long Handed Inserter
Long Handed Inserter
Posts: 60
Joined: Sat Dec 21, 2013 12:54 am
Contact:

Re: Friday Facts #43

Post by ataaron »

F5
Voqar
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sat Feb 08, 2014 10:37 am
Contact:

Re: Friday Facts #43

Post by Voqar »

We're far more interested in co-op than pvp. All cool survival/builder type games should be made co-op to begin with. ;)

Lantern Forge is another game we play that doesn't have co-op and it's the same thing for us, we say, this is a really cool game...BUT it doesn't have co-op. And the co-op factor just ramps up the goodness so much that it's hard to not dwell on it (or lack of it, that is).
MF-
Smart Inserter
Smart Inserter
Posts: 1235
Joined: Sun Feb 24, 2013 12:07 am
Contact:

Re: Friday Facts #43

Post by MF- »

@ vanishing players.

I thought you had perfect replays.
When a player drops, can't remaining players vote what was the last input they got from him....
... and have everyone revert to that tick and recompute without his input?

Not saying how the impact on latency would be.
But it definitely sounds easier..

+ I'm sure you've considered this. I'd like to know your reasons :)
MF-
Smart Inserter
Smart Inserter
Posts: 1235
Joined: Sun Feb 24, 2013 12:07 am
Contact:

Re: Friday Facts #43

Post by MF- »

right... noone is going to read a remark on 14+ days old fff. Tab closed.
maysjw
Burner Inserter
Burner Inserter
Posts: 13
Joined: Fri Jun 06, 2014 9:19 pm
Contact:

Re: Friday Facts #43

Post by maysjw »

MF- wrote:right... noone is going to read a remark on 14+ days old fff. Tab closed.
I'm quite sure that others "DO" read them as noted by an unread post when we login to the forums. Don't be so daft.
MF-
Smart Inserter
Smart Inserter
Posts: 1235
Joined: Sun Feb 24, 2013 12:07 am
Contact:

Re: Friday Facts #43

Post by MF- »

maysjw wrote: I'm quite sure that others "DO" read them as noted by an unread post when we login to the forums. Don't be so daft.
You proved me wrong :)
It just not those who the comment was aimed at.

BTW: I do read all comments in the news section via the RSS feed.
And you remined me that I might register a feed for the updates=fff section as well.

I just figured out I might be able to get a topic-headline feed for subforums (general, support, factorio direction, contributions)
But unless i want to cut the whole contributions subforum to stop mod-related topics from reaching me, there's no way.
EDIT: nope, mode=topics always fetches new topics from the entire forum, option f=123 gets ignored
maysjw
Burner Inserter
Burner Inserter
Posts: 13
Joined: Fri Jun 06, 2014 9:19 pm
Contact:

Re: Friday Facts #43

Post by maysjw »

MF- wrote:
maysjw wrote: I'm quite sure that others "DO" read them as noted by an unread post when we login to the forums. Don't be so daft.
You proved me wrong :)
It just not those who the comment was aimed at.

BTW: I do read all comments in the news section via the RSS feed.
And you remined me that I might register a feed for the updates=fff section as well.

I just figured out I might be able to get a topic-headline feed for subforums (general, support, factorio direction, contributions)
But unless i want to cut the whole contributions subforum to stop mod-related topics from reaching me, there's no way.
EDIT: nope, mode=topics always fetches new topics from the entire forum, option f=123 gets ignored
It's too bad the PHPBB forums API isn't a bit more, how shall we say, modern ;) Maybe with enough playing around you might be able to find a way to do what you are looking for, but probably not without using a very smart RSS reader.
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12889
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Friday Facts #43

Post by ssilk »

You know, there is the news section in the wiki, which we (wiki-users) try to keep uptodate.

https://forums.factorio.com/wiki/inde ... =Main_Page
which includes
https://forums.factorio.com/wiki/index.php?title=News

... sometimes with two or three days delay due to weekend or other things, nevertheless useful I think...
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Post Reply

Return to “News”