Satisfactory Wiki
(Undo revision 28649 by 173.23.10.254 (talk) I assume that the minimal value should be less than the maximum value; additionally, you left it unchanged in Scalability.ini. If you believe this is correct, start a section on the talk page.)
Tag: Undo
(Undo revision 38289 by Irist5892D (talk) vandalism)
Tag: Undo
(39 intermediate revisions by 20 users not shown)
Line 1: Line 1:
{{Cleanup|Elaborate on how can players join each other in different ways}}{{Outdated}}[[File:Clapping Engineers E3.png|thumb|4 players in multiplayer.]]
+
[[File:Clapping Engineers E3.png|thumb|Four players in a multiplayer session.]]
''Satisfactory'' can be played in '''multiplayer''', with up to 4 players officially supported, but with no hard player-limit.<ref name=":0">https://www.youtube.com/watch?v=W1E6EWrAsII&t=258</ref> The game is coop only and there will be no PvP elements.<ref>https://techraptor.net/content/satisfactory-interview-oscar-jilsen</ref> Currently, there are no dedicated servers, meaning that servers are hosted on the machine of one of the players, while they are playing, but there are plans to add them.<ref name=":0" /> As of February 2019, Multiplayer is in the alpha.<ref>https://www.youtube.com/watch?v=Dtm6xIj-wM4</ref>
+
''Satisfactory'' can be played in '''multiplayer''', with up to four players officially supported, but with no hard player-limit <small>[[#Sessions with more than 4 players|see below]]</small>.<ref name=":0">[https://www.youtube.com/watch?v=W1E6EWrAsII&t=258 YouTube - Q&A #2: Satisfactory Multiplayer, mods, lizard doggo plushies, and more!]</ref> The game is co-op only and there will be no PvP elements, although engineers can damage each other.<ref>[https://techraptor.net/content/satisfactory-interview-oscar-jilsen TechRaptor - Satisfactory Interview - Oscar Jilsén, Orbital Elevators, And The Nitty Gritty]</ref> This means that [[HUB]], [[MAM]] and [[Space Elevator]] progress is shared among all players.
   
 
Cross-platform multiplayer is available across Steam and Epic Games.
 
Cross-platform multiplayer is available across Steam and Epic Games.
   
== Server options ==
+
== Hosting a session ==
  +
Currently, sessions can only be hosted by players. The session host cannot leave the session without disconnecting other players.
When hosting a multiplayer server you can choose the following settings:
 
=== Privacy ===
 
   
  +
To start a multiplayer session, the host has to start an online session (a normal session like when playing in single-player, as long as the host has internet access and authentication servers are working normally) and then allow other players to join, or to invite those players (see sections below).
* Friends Only - Anyone on your friends' list can join your game without invitation. This also allows Session ID to be used.
 
  +
* Private - Players can only join your server if sent an invite.
 
  +
=== Session privacy ===
  +
The following session privacy settings are available:
  +
 
* Friends Only - Allows anyone in the host's client list to join the hosted session from the Join Game menu without invitation. This also allows Session ID to be used, regardless of friend list status.
  +
* Private - Clients can only join the hosted session if invited using in-game invites. Attempting to join the session via Session ID will result in it not being found.
   
 
There are no plans for a "Public" option, due to griefing concerns.<ref name=":0" />
 
There are no plans for a "Public" option, due to griefing concerns.<ref name=":0" />
   
=== Network Ports ===
+
=== Network configuration ===
  +
It might be necessary to configure the network in some scenarios, notably on NAT: Strict, which disallows hosting sessions and allows joining sessions only on NAT: Open. Should both the host and client/s have NAT: Moderate or Open, joining sessions should be normally possible.
While network configuration shouldn't be necessary, you may open these ports to aid in troubleshooting network connections.
 
  +
  +
The game uses the following ports:
 
* 5222 TCP & UDP{{citation needed}}
 
* 6666 TCP & UDP{{citation needed}}
  +
* 7777-7827 UDP<ref>[https://discordapp.com/channels/370472939054956546/588704774086721536/588705065251110968 Discord - #multiplayer-troubleshooting channel - Message of Jace]</ref>
  +
  +
Additionally, ensure Windows Firewall rules weren't refused when asked for permission.
  +
 
=== Sessions with more than 4 players ===
  +
<!-- Avoid changing the heading above -->
 
For more than four players to be able to play in one session simultaneously, the game's config has to be edited.
  +
 
The host has to navigate to <code>%localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\Game.ini</code> and add the following lines to the end of that file:
 
[/Script/Engine.GameSession]
  +
MaxPlayers=REPLACE_WITH_NUMBER
 
where REPLACE_WITH_NUMBER corresponds to the desired maximum amount of players.
  +
  +
=== Dedicated servers ===
  +
Dedicated servers are currently being worked on at higher priority<ref name=":1">[https://www.youtube.com/watch?v=dSnqRq1hLZY&t=103 YouTube - Update 4 news + FAN FORGE challenge!]</ref> with no set release date.<ref>[https://www.youtube.com/watch?v=tHUqAoOXffs YouTube - Q&A: Dedicated Servers?]</ref>
   
  +
Some information about them is already known:
* 5222 TCP & UDP
 
  +
* Time will not stop if there are no players on the server, therefore factories will keep on working.<ref>[https://www.youtube.com/watch?v=1RgR6JDSoPg YouTube - Q&A: How will time run on the Dedicated Servers?]</ref>
* 6666 TCP & UDP
 
  +
** However, the server (regardless of player activity) will need to be restarted every 24 or 48 hours, which might happen automatically.
  +
* Linux support is wanted, but not yet confirmed, Windows is the initial platform they are being worked on for.<ref>[https://www.youtube.com/watch?v=299eeYGePHM YouTube - Q&A: Will Dedicated Servers run on Linux?]</ref>
  +
* The release isn't linked to a major update, it will be released alongside just a patch in the experimental branch once ready.<ref name=":1" /><ref>[https://www.youtube.com/watch?v=BRvjOB3hRaE YouTube - Q&A: Dedicated Servers don't need to wait for an Update?]</ref>
  +
* Dedicated servers will not cost anything (meaning that the software itself will be free, but server providers will likely charge for their services).<ref>[https://www.youtube.com/watch?v=12nA53wOK6w YouTube - Q&A: Are there server files when I want to host my own Dedicated Server?]</ref><ref>[https://www.youtube.com/watch?v=BRvjOB3hRaE&t=30 YouTube - Q&A: Dedicated Servers don't need to wait for an Update?]</ref>
   
  +
== Joining a session ==
Also, make sure you didn't accidentally refuse the Windows firewall rules.
 
  +
=== Join Game menu ===
  +
Players can join online sessions of players in their friend list from the Join Game menu. As mentioned above, an invitation may or may not be required based on the session privacy setting. It is easy to join players on the same platform this way, to crossplay, Steam players must have linked their Epic account upon prompted.
   
 
=== Session ID ===
 
=== Session ID ===
Line 30: Line 59:
 
* Press {{Key|Esc}}.
 
* Press {{Key|Esc}}.
 
* In the menu, click on 'Manage Session', then click on 'Session Settings'.
 
* In the menu, click on 'Manage Session', then click on 'Session Settings'.
* Here, the session ID can be edited or copied it to the clipboard.
+
* Here, the session ID can be edited or copied to the clipboard.
   
The host of the session can then share this session ID in order for both Epic and Steam players to be able to join the session.
+
The host of the session can then share this session ID for both Epic and Steam players to be able to join the session.
 
== Sessions with more than 4 players ==
 
In order for more than 4 players to be able to play in one session simultaneously, the game's config has to be edited.
 
 
The host has to navigate to <code>%localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\Game.ini</code> and add the following lines to the end of that file:
 
[/Script/Engine.GameSession]
 
MaxPlayers=X
 
where X corresponds to the desired maximum amount of players.
 
   
 
== Other options ==
 
== Other options ==
  +
=== Performance improvements ===
* Have the host and all clients choose <code>Network Quality: Ultra</code> in the Options.
 
* If you are experiencing high latency, try un-ticking <code>Send Gameplay Data</code> in the Options.
+
* Have the host and all clients choose <code>Network Quality: Ultra</code> in the options.
  +
* If experiencing high latency, try unchecking <code>Send Gameplay Data</code> in the options.
   
 
=== Temporary lag solution ===
 
=== Temporary lag solution ===
  +
<!-- Avoid changing the heading above -->
There is a way to decrease rubberbanding at the cost of increasing bandwith by adding the following lines to the bottom of game's config files found in <code>%localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\</code>.<ref>https://questions.satisfactorygame.com/post/5f4245f06f3c82fe950bc3f8</ref>
 
  +
{{Hatnote|''Please read this section thoroughly to avoid improperly editing the config files.''}}
 
There is a way to decrease rubber-banding at the cost of increasing bandwidth by adding the following lines to the game's config files found in <code>%localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\</code>.<ref>[https://questions.satisfactorygame.com/post/5f4245f06f3c82fe950bc3f8 Satisfactory Q&A - Temporary Multiplayer Lag Solution - At Own Risk]</ref> Before adding the lines to the config files, ensure they aren't already in place but with different values if so, replace them instead of having duplicates.
   
By default, the game's maximum bandwith appears to be throttled at 64 KB/s. By editing the config files, this limit is increased to about 100 MB/s.
+
By default, the game's maximum bandwidth appears to be throttled at 64 KB/s. By editing the config files, this limit is increased to 800 Mbit/s.<br />At lower-end machines or internet connections, use <code>480000</code> everywhere there is <code>104857600</code>, this sets the limit to 480 KB/s or ~3.66 Mbit/s.
   
This has to be done by all players (both the host and client/s) to have effect. The increased bandwith can be even 5 times as much as it was before, therefore a stable internet connection is required.
+
This has to be done by all players (both the host and client/s) to have an effect. The increased bandwidth can be even five times as much as it was before, therefore a stable internet connection is required.
   
 
==== Engine.ini ====
 
==== Engine.ini ====
  +
This file should be {{Tooltip|set as 'read only'|Right-click the file, select Properties and mark it as Read only at the bottom of the window under Attributes.}} to prevent the game from overwriting it.
 
[/Script/Engine.Player]
 
[/Script/Engine.Player]
 
ConfiguredInternetSpeed=104857600
 
ConfiguredInternetSpeed=104857600
Line 67: Line 92:
   
 
==== Game.ini ====
 
==== Game.ini ====
  +
This file should be {{Tooltip|set as 'read only'|Right-click the file, select Properties and mark it as Read only at the bottom of the window under Attributes.}} to prevent the game from overwriting it.
 
[/Script/Engine.GameNetworkManager]
 
[/Script/Engine.GameNetworkManager]
 
TotalNetBandwidth=104857600
 
TotalNetBandwidth=104857600
 
MaxDynamicBandwidth=104857600
 
MaxDynamicBandwidth=104857600
 
MinDynamicBandwidth=10485760
 
MinDynamicBandwidth=10485760
  +
  +
Note: If increasing the bandwitdh to 480 kbit/s, set MinDynamicBandwidth to <code>200000</code>
   
 
==== Scalability.ini ====
 
==== Scalability.ini ====
Line 79: Line 107:
 
MinDynamicBandwidth=10485760
 
MinDynamicBandwidth=10485760
   
  +
Note: If increasing the bandwitdh to 480 kbit/s, set MinDynamicBandwidth to <code>200000</code>
==References==
 
  +
  +
== Trivia ==
  +
* A total of 128 session participants is currently possible as a signed byte is used to track sessions, but [[Snutt]] had remarked that switching to an unsigned byte would enable up to 255 participants.{{Citation needed}}
  +
  +
== History ==
  +
''Due to the extensive length of multiplayer history, it was [[Multiplayer/History|moved to a separate page]].''
  +
 
== References ==
 
{{Reflist}}
 
{{Reflist}}
  +
{{EngineerNav}}
 
  +
{{PioneerNav}}
  +
 
[[Category:Gameplay mechanics]]
 
[[Category:Gameplay mechanics]]
 
[[Category:Satisfactory]]
 
[[Category:Satisfactory]]

Revision as of 06:40, 18 July 2021

Clapping Engineers E3

Four players in a multiplayer session.

Satisfactory can be played in multiplayer, with up to four players officially supported, but with no hard player-limit see below.[1] The game is co-op only and there will be no PvP elements, although engineers can damage each other.[2] This means that HUB, MAM and Space Elevator progress is shared among all players.

Cross-platform multiplayer is available across Steam and Epic Games.

Hosting a session

Currently, sessions can only be hosted by players. The session host cannot leave the session without disconnecting other players.

To start a multiplayer session, the host has to start an online session (a normal session like when playing in single-player, as long as the host has internet access and authentication servers are working normally) and then allow other players to join, or to invite those players (see sections below).

Session privacy

The following session privacy settings are available:

  • Friends Only - Allows anyone in the host's client list to join the hosted session from the Join Game menu without invitation. This also allows Session ID to be used, regardless of friend list status.
  • Private - Clients can only join the hosted session if invited using in-game invites. Attempting to join the session via Session ID will result in it not being found.

There are no plans for a "Public" option, due to griefing concerns.[1]

Network configuration

It might be necessary to configure the network in some scenarios, notably on NAT: Strict, which disallows hosting sessions and allows joining sessions only on NAT: Open. Should both the host and client/s have NAT: Moderate or Open, joining sessions should be normally possible.

The game uses the following ports:

Additionally, ensure Windows Firewall rules weren't refused when asked for permission.

Sessions with more than 4 players

For more than four players to be able to play in one session simultaneously, the game's config has to be edited.

The host has to navigate to %localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\Game.ini and add the following lines to the end of that file:

[/Script/Engine.GameSession]
MaxPlayers=REPLACE_WITH_NUMBER

where REPLACE_WITH_NUMBER corresponds to the desired maximum amount of players.

Dedicated servers

Dedicated servers are currently being worked on at higher priority[4] with no set release date.[5]

Some information about them is already known:

  • Time will not stop if there are no players on the server, therefore factories will keep on working.[6]
    • However, the server (regardless of player activity) will need to be restarted every 24 or 48 hours, which might happen automatically.
  • Linux support is wanted, but not yet confirmed, Windows is the initial platform they are being worked on for.[7]
  • The release isn't linked to a major update, it will be released alongside just a patch in the experimental branch once ready.[4][8]
  • Dedicated servers will not cost anything (meaning that the software itself will be free, but server providers will likely charge for their services).[9][10]

Joining a session

Join Game menu

Players can join online sessions of players in their friend list from the Join Game menu. As mentioned above, an invitation may or may not be required based on the session privacy setting. It is easy to join players on the same platform this way, to crossplay, Steam players must have linked their Epic account upon prompted.

Session ID

Every online session has a set Session ID. Anyone who has access to this ID can join the session, as long as its privacy is set to Friends Only (despite the name, neither user does actually have to be in each other's friend list on either Epic or Steam).

This ID is unique to each session and is reset once the game is quit to the main menu or entirely.

The session ID can be found by doing the following:

  • Press Esc.
  • In the menu, click on 'Manage Session', then click on 'Session Settings'.
  • Here, the session ID can be edited or copied to the clipboard.

The host of the session can then share this session ID for both Epic and Steam players to be able to join the session.

Other options

Performance improvements

  • Have the host and all clients choose Network Quality: Ultra in the options.
  • If experiencing high latency, try unchecking Send Gameplay Data in the options.

Temporary lag solution

Please read this section thoroughly to avoid improperly editing the config files.

There is a way to decrease rubber-banding at the cost of increasing bandwidth by adding the following lines to the game's config files found in %localappdata%\FactoryGame\Saved\Config\WindowsNoEditor\.[11] Before adding the lines to the config files, ensure they aren't already in place but with different values if so, replace them instead of having duplicates.

By default, the game's maximum bandwidth appears to be throttled at 64 KB/s. By editing the config files, this limit is increased to 800 Mbit/s.
At lower-end machines or internet connections, use 480000 everywhere there is 104857600, this sets the limit to 480 KB/s or ~3.66 Mbit/s.

This has to be done by all players (both the host and client/s) to have an effect. The increased bandwidth can be even five times as much as it was before, therefore a stable internet connection is required.

Engine.ini

This file should be set as 'read only' to prevent the game from overwriting it.

[/Script/Engine.Player]
ConfiguredInternetSpeed=104857600
ConfiguredLanSpeed=104857600

[/Script/OnlineSubsystemUtils.IpNetDriver]
MaxClientRate=104857600
MaxInternetClientRate=104857600

[/Script/SocketSubsystemEpic.EpicNetDriver]
MaxClientRate=104857600
MaxInternetClientRate=104857600

Game.ini

This file should be set as 'read only' to prevent the game from overwriting it.

[/Script/Engine.GameNetworkManager]
TotalNetBandwidth=104857600
MaxDynamicBandwidth=104857600
MinDynamicBandwidth=10485760

Note: If increasing the bandwitdh to 480 kbit/s, set MinDynamicBandwidth to 200000

Scalability.ini

This file will be initially blank and has to be set as 'read only' to prevent the game from overwriting it.

[NetworkQuality@3]
TotalNetBandwidth=104857600
MaxDynamicBandwidth=104857600
MinDynamicBandwidth=10485760

Note: If increasing the bandwitdh to 480 kbit/s, set MinDynamicBandwidth to 200000

Trivia

  • A total of 128 session participants is currently possible as a signed byte is used to track sessions, but Snutt had remarked that switching to an unsigned byte would enable up to 255 participants.[citation needed]

History

Due to the extensive length of multiplayer history, it was moved to a separate page.

References