<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.factorio.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chaoswolf</id>
	<title>Official Factorio Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.factorio.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chaoswolf"/>
	<link rel="alternate" type="text/html" href="https://wiki.factorio.com/Special:Contributions/Chaoswolf"/>
	<updated>2026-04-22T20:07:01Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Download_API&amp;diff=203777</id>
		<title>Download API</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Download_API&amp;diff=203777"/>
		<updated>2024-10-29T15:01:07Z</updated>

		<summary type="html">&lt;p&gt;Chaoswolf: Add new `expansion` string for `build` parameter&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div align=&amp;quot;center&amp;quot; class=&amp;quot;stub&amp;quot;&amp;gt;&#039;&#039;&#039;Category:&#039;&#039;&#039; [[Factorio_HTTP_API_usage_guidelines#Internal|Internal API]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This API allows you to download official releases of stand-alone Factorio from the Factorio servers. It&#039;s not so much of an API as it is web scraping, but it&#039;s documented here for completeness. Please update this page if you utilize it and the information becomes outdated. Also note that&#039;s there&#039;s a separate, (semi)official API for upgrading between releases, which should be used when possible to lighten the load on the Factorio servers. (I&#039;ll document that later, promise!)&lt;br /&gt;
&lt;br /&gt;
== Authenticating ==&lt;br /&gt;
&lt;br /&gt;
Downloading Factorio requires an authenticated session with the web server, which is different than the typical API authentication mechanism. Authentication uses the HTML endpoint at&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/login&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login in procedure:&lt;br /&gt;
&lt;br /&gt;
# Create an HTTP session and send a GET request. You&#039;ll get some HTML in return.&amp;lt;br&amp;gt;There&#039;s a [[:Wikipedia:Cross-site_request_forgery#Synchronizer_token_pattern|CSRF token]] you&#039;ll need to grab which can be found using one of the following selectors:&lt;br /&gt;
#* CSS1: &amp;lt;code&amp;gt;input[name=csrf_token]&amp;lt;/code&amp;gt; (and then take the &amp;quot;value&amp;quot; attribute).&lt;br /&gt;
#* XPATH1: &amp;lt;code&amp;gt;//input[@name=&amp;quot;csrf_token&amp;quot;]/@value&amp;lt;/code&amp;gt;&lt;br /&gt;
# Then send a POST request with the following parameters:&lt;br /&gt;
#* &amp;lt;code&amp;gt;csrf_token&amp;lt;/code&amp;gt;: the CSRF token you grabbed earlier.&lt;br /&gt;
#* &amp;lt;code&amp;gt;username_or_email&amp;lt;/code&amp;gt;: your username or email address.&lt;br /&gt;
#* &amp;lt;code&amp;gt;password&amp;lt;/code&amp;gt;: your password.&lt;br /&gt;
&lt;br /&gt;
== Downloading ==&lt;br /&gt;
&lt;br /&gt;
Download Factorio releases at&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/get-download/{version}/{build}/{distro}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Where {version} is the version string of the release you wish to grab - e.g. &amp;quot;0.15.31&amp;quot;. Use &amp;quot;latest&amp;quot; instead to default to the latest version for that build.&lt;br /&gt;
* {build} is the release build, which currently comprises of:&lt;br /&gt;
** &amp;lt;code&amp;gt;alpha&amp;lt;/code&amp;gt; - the current standard full-featured build without the space age expansion.&lt;br /&gt;
** &amp;lt;code&amp;gt;expansion&amp;lt;/code&amp;gt; - the current standard full-featured build with the space age expansion.&lt;br /&gt;
** &amp;lt;code&amp;gt;demo&amp;lt;/code&amp;gt; - the free, publicly accessible demo versions.&lt;br /&gt;
** &amp;lt;code&amp;gt;headless&amp;lt;/code&amp;gt; - for running servers on machines without graphical interface. &lt;br /&gt;
* and {distro} is the os / type of release you wish to download, currently:&lt;br /&gt;
** &amp;lt;code&amp;gt;win64&amp;lt;/code&amp;gt; - EXE installer for 64 bit Windows.&lt;br /&gt;
** &amp;lt;code&amp;gt;win64-manual&amp;lt;/code&amp;gt; - ZIP package for 64 bit Windows.&lt;br /&gt;
** &amp;lt;code&amp;gt;win32&amp;lt;/code&amp;gt; - EXE installer for 32 bit Windows. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;win32-manual&amp;lt;/code&amp;gt; - ZIP package for 32 bit Windows. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;osx&amp;lt;/code&amp;gt; - DMG package for 64 bit Mac OS.&lt;br /&gt;
** &amp;lt;code&amp;gt;linux64&amp;lt;/code&amp;gt; - tar.gz or tar.xz package for 64 bit Linux.&lt;br /&gt;
** &amp;lt;code&amp;gt;linux32&amp;lt;/code&amp;gt; - tar.gz or tar.xz package for 32 bit Linux. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Factorio servers will correctly respond with a 404 if the requested download isn&#039;t available. Experimental builds are taken down quickly after they become obsolete, so it&#039;s best to check what versions are available before hand (documented below).&lt;br /&gt;
&lt;br /&gt;
Note: Windows 32 bit and 64 bit installers are [https://en.wikipedia.org/wiki/Inno_Setup Inno Setup] formatted packages (I&#039;ll document that somewhere someday).&lt;br /&gt;
&lt;br /&gt;
=== Using cURL to download Factorio ===&lt;br /&gt;
&lt;br /&gt;
Another way to download factorio is by sending a HTTP GET request with &amp;lt;code&amp;gt;username&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;token&amp;lt;/code&amp;gt; parameters to the download URL.&lt;br /&gt;
The authentication token can be found on the factorio website after logging into your account.&lt;br /&gt;
Note that the authentication token is a sensitive piece of information and should be kept secret.&lt;br /&gt;
&lt;br /&gt;
The cURL command would look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl https://www.factorio.com/get-download/{version}/{build}/{distro}?username={username}&amp;amp;token={token} -L --output /path/to/output/directory/factorio.tar.xz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And here is a filled in example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl https://www.factorio.com/get-download/0.15.31/alpha/linux64?username=exampleUser&amp;amp;token=0123456789abcdef -L --output /tmp/factorio.tar.xz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Version Listings ==&lt;br /&gt;
There is an API endpoint to find the latest version number at &amp;lt;code&amp;gt;https://factorio.com/api/latest-releases&amp;lt;/code&amp;gt;. This can be polled to automatically detect when a new update was released.&lt;br /&gt;
&lt;br /&gt;
Due to changes in the Factorio website, all Factorio versions are now available on the HTML page at this location:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/download/archive&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: This endpoint require an authenticated session as mentioned above.&lt;br /&gt;
&lt;br /&gt;
You could the grab all the informations you need by parsing the HTML using selectors but I would recommend only searching for the pattern &amp;lt;code&amp;gt;href=&amp;quot;/get-download/*&amp;quot;&amp;lt;/code&amp;gt; and then parse the relative link according to the &amp;lt;code&amp;gt;/get-download/{version}/{build}/{distro}&amp;lt;/code&amp;gt; structure described in the section above. The second method has a clear advantage of reliability through potential HTML structure changes and simplicity.&lt;br /&gt;
&lt;br /&gt;
It is also better to rely on the &amp;lt;code&amp;gt;https://factorio.com/api/latest-releases&amp;lt;/code&amp;gt; endpoint and version number comparisons to distinguish between stable and experimental versions than to extract that information from the download HTML page with selectors.&lt;br /&gt;
&lt;br /&gt;
The previous endpoints for experimental and headless releases &amp;lt;code&amp;gt;https://www.factorio.com/download/experimental&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;https://www.factorio.com/download-headless&amp;lt;/code&amp;gt; now both redirect to this page containing only the latest releases:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/download&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selectors used to retrieve version numbers and build combinations are presented below, but they are probably obsolete. I will check them later and update this section accordingly.&lt;br /&gt;
* CSS1: &amp;lt;code&amp;gt;h3&amp;lt;/code&amp;gt;&lt;br /&gt;
* XPATH1: &amp;lt;code&amp;gt;//h3&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A list of available update packages is provided at &amp;lt;code&amp;gt;https://updater.factorio.com/get-available-versions&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;/div&gt;</summary>
		<author><name>Chaoswolf</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Download_API&amp;diff=199591</id>
		<title>Download API</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Download_API&amp;diff=199591"/>
		<updated>2024-09-11T19:30:00Z</updated>

		<summary type="html">&lt;p&gt;Chaoswolf: Add cURL download example using the authentication token&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div align=&amp;quot;center&amp;quot; class=&amp;quot;stub&amp;quot;&amp;gt;&#039;&#039;&#039;Category:&#039;&#039;&#039; [[Factorio_HTTP_API_usage_guidelines#Internal|Internal API]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This API allows you to download official releases of stand-alone Factorio from the Factorio servers. It&#039;s not so much of an API as it is web scraping, but it&#039;s documented here for completeness. Please update this page if you utilize it and the information becomes outdated. Also note that&#039;s there&#039;s a separate, (semi)official API for upgrading between releases, which should be used when possible to lighten the load on the Factorio servers. (I&#039;ll document that later, promise!)&lt;br /&gt;
&lt;br /&gt;
== Authenticating ==&lt;br /&gt;
&lt;br /&gt;
Downloading Factorio requires an authenticated session with the web server, which is different than the typical API authentication mechanism. Authentication uses the HTML endpoint at&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/login&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Login in procedure:&lt;br /&gt;
&lt;br /&gt;
# Create an HTTP session and send a GET request. You&#039;ll get some HTML in return.&amp;lt;br&amp;gt;There&#039;s a [[:Wikipedia:Cross-site_request_forgery#Synchronizer_token_pattern|CSRF token]] you&#039;ll need to grab which can be found using one of the following selectors:&lt;br /&gt;
#* CSS1: &amp;lt;code&amp;gt;input[name=csrf_token]&amp;lt;/code&amp;gt; (and then take the &amp;quot;value&amp;quot; attribute).&lt;br /&gt;
#* XPATH1: &amp;lt;code&amp;gt;//input[@name=&amp;quot;csrf_token&amp;quot;]/@value&amp;lt;/code&amp;gt;&lt;br /&gt;
# Then send a POST request with the following parameters:&lt;br /&gt;
#* &amp;lt;code&amp;gt;csrf_token&amp;lt;/code&amp;gt;: the CSRF token you grabbed earlier.&lt;br /&gt;
#* &amp;lt;code&amp;gt;username_or_email&amp;lt;/code&amp;gt;: your username or email address.&lt;br /&gt;
#* &amp;lt;code&amp;gt;password&amp;lt;/code&amp;gt;: your password.&lt;br /&gt;
&lt;br /&gt;
== Downloading ==&lt;br /&gt;
&lt;br /&gt;
Download Factorio releases at&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/get-download/{version}/{build}/{distro}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Where {version} is the version string of the release you wish to grab - e.g. &amp;quot;0.15.31&amp;quot;. Use &amp;quot;latest&amp;quot; instead to default to the latest version for that build.&lt;br /&gt;
* {build} is the release build, which currently comprises of:&lt;br /&gt;
** &amp;lt;code&amp;gt;alpha&amp;lt;/code&amp;gt; - the current standard full-featured build.&lt;br /&gt;
** &amp;lt;code&amp;gt;demo&amp;lt;/code&amp;gt; - the free, publicly accessible demo versions.&lt;br /&gt;
** &amp;lt;code&amp;gt;headless&amp;lt;/code&amp;gt; - for running servers on machines without graphical interface. &lt;br /&gt;
* and {distro} is the os / type of release you wish to download, currently:&lt;br /&gt;
** &amp;lt;code&amp;gt;win64&amp;lt;/code&amp;gt; - EXE installer for 64 bit Windows.&lt;br /&gt;
** &amp;lt;code&amp;gt;win64-manual&amp;lt;/code&amp;gt; - ZIP package for 64 bit Windows.&lt;br /&gt;
** &amp;lt;code&amp;gt;win32&amp;lt;/code&amp;gt; - EXE installer for 32 bit Windows. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;win32-manual&amp;lt;/code&amp;gt; - ZIP package for 32 bit Windows. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;osx&amp;lt;/code&amp;gt; - DMG package for 64 bit Mac OS.&lt;br /&gt;
** &amp;lt;code&amp;gt;linux64&amp;lt;/code&amp;gt; - tar.gz or tar.xz package for 64 bit Linux.&lt;br /&gt;
** &amp;lt;code&amp;gt;linux32&amp;lt;/code&amp;gt; - tar.gz or tar.xz package for 32 bit Linux. &#039;&#039;No longer supported.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Factorio servers will correctly respond with a 404 if the requested download isn&#039;t available. Experimental builds are taken down quickly after they become obsolete, so it&#039;s best to check what versions are available before hand (documented below).&lt;br /&gt;
&lt;br /&gt;
Note: Windows 32 bit and 64 bit installers are [https://en.wikipedia.org/wiki/Inno_Setup Inno Setup] formatted packages (I&#039;ll document that somewhere someday).&lt;br /&gt;
&lt;br /&gt;
=== Using cURL to download Factorio ===&lt;br /&gt;
&lt;br /&gt;
Another way to download factorio is by sending a HTTP GET request with &amp;lt;code&amp;gt;username&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;token&amp;lt;/code&amp;gt; parameters to the download URL.&lt;br /&gt;
The authentication token can be found on the factorio website after logging into your account.&lt;br /&gt;
Note that the authentication token is a sensitive piece of information and should be kept secret.&lt;br /&gt;
&lt;br /&gt;
The cURL command would look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl https://www.factorio.com/get-download/{version}/{build}/{distro}?username={username}&amp;amp;token={token} -L --output /path/to/output/directory/factorio.tar.xz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And here is a filled in example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl https://www.factorio.com/get-download/0.15.31/alpha/linux64?username=exampleUser&amp;amp;token=0123456789abcdef -L --output /tmp/factorio.tar.xz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Version Listings ==&lt;br /&gt;
There is an API endpoint to find the latest version number at &amp;lt;code&amp;gt;https://factorio.com/api/latest-releases&amp;lt;/code&amp;gt;. This can be polled to automatically detect when a new update was released.&lt;br /&gt;
&lt;br /&gt;
Due to changes in the Factorio website, all Factorio versions are now available on the HTML page at this location:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/download/archive&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: This endpoint require an authenticated session as mentioned above.&lt;br /&gt;
&lt;br /&gt;
You could the grab all the informations you need by parsing the HTML using selectors but I would recommend only searching for the pattern &amp;lt;code&amp;gt;href=&amp;quot;/get-download/*&amp;quot;&amp;lt;/code&amp;gt; and then parse the relative link according to the &amp;lt;code&amp;gt;/get-download/{version}/{build}/{distro}&amp;lt;/code&amp;gt; structure described in the section above. The second method has a clear advantage of reliability through potential HTML structure changes and simplicity.&lt;br /&gt;
&lt;br /&gt;
It is also better to rely on the &amp;lt;code&amp;gt;https://factorio.com/api/latest-releases&amp;lt;/code&amp;gt; endpoint and version number comparisons to distinguish between stable and experimental versions than to extract that information from the download HTML page with selectors.&lt;br /&gt;
&lt;br /&gt;
The previous endpoints for experimental and headless releases &amp;lt;code&amp;gt;https://www.factorio.com/download/experimental&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;https://www.factorio.com/download-headless&amp;lt;/code&amp;gt; now both redirect to this page containing only the latest releases:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;https://www.factorio.com/download&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selectors used to retrieve version numbers and build combinations are presented below, but they are probably obsolete. I will check them later and update this section accordingly.&lt;br /&gt;
* CSS1: &amp;lt;code&amp;gt;h3&amp;lt;/code&amp;gt;&lt;br /&gt;
* XPATH1: &amp;lt;code&amp;gt;//h3&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A list of available update packages is provided at &amp;lt;code&amp;gt;https://updater.factorio.com/get-available-versions&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;/div&gt;</summary>
		<author><name>Chaoswolf</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Replay_system&amp;diff=195945</id>
		<title>Replay system</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Replay_system&amp;diff=195945"/>
		<updated>2024-01-15T15:07:12Z</updated>

		<summary type="html">&lt;p&gt;Chaoswolf: Move sentences describing the GUI back to the replay GUI section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
A replay is a file stored within the game save, containing any information needed to repeat (replay) a game from start, in a movie-like fashion. This feature is to allow players to view how their world came to be.&lt;br /&gt;
&lt;br /&gt;
== Creating &amp;amp; playing a replay ==&lt;br /&gt;
&lt;br /&gt;
Replays can be automatically generated as the map is played, behind the scenes. To enable this, the &amp;quot;Record replay&amp;quot; option needs to be checked when starting a new game. This setting is in the top right when selecting game modes (freeplay, scenarioes, etc.) before map settings. Replays have rather strong limitations, see below.&lt;br /&gt;
&lt;br /&gt;
Playing a replay will play back in chronological order the actions taken in the world, as if the player was recording. The speed of playback can be increased or decreased to fine-tune the viewing experience. &lt;br /&gt;
&lt;br /&gt;
To view a replay, from the main menu go to Single player → Load game, then find the ▶ Start replay button in the upper right. &lt;br /&gt;
&lt;br /&gt;
=== The replay GUI ===&lt;br /&gt;
&lt;br /&gt;
A simple control GUI is available to control replay playback:&lt;br /&gt;
&lt;br /&gt;
[[File:replay GUI.png]]&lt;br /&gt;
&lt;br /&gt;
The top bar shows the position in the replay out of the total time of the replay. The buttons allow to:&lt;br /&gt;
* Pause/play the replay &lt;br /&gt;
* Slow down playback &lt;br /&gt;
* Speed up playback &lt;br /&gt;
&lt;br /&gt;
In multiplayer replays it is also possible to change the viewpoint player via the dropdown. Furthermore, {{Keybinding|F10}} can be used to switch to the next viewpoint player in the list.&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer ===&lt;br /&gt;
&lt;br /&gt;
Creating a save with replay enabled must be done within the GUI.&lt;br /&gt;
Not choosing freeplay in step 1 or changing certain map settings in step 2 [[Achievements#Disabling_achievements|disables achievements]].&lt;br /&gt;
&lt;br /&gt;
# Main menu → Single player → New game → Select the game mode → Check &amp;quot;Record replay&amp;quot; in the top right → Next&lt;br /&gt;
# Change map settings if desired → Play&lt;br /&gt;
# Enter the Game menu instantly → Save game → Quit game&lt;br /&gt;
# Copy the created save game to the headless game server directory&lt;br /&gt;
# Launch the server with the copied file&lt;br /&gt;
&lt;br /&gt;
== Limitations ==&lt;br /&gt;
&lt;br /&gt;
* Replays for worlds created in older versions cannot be played. Downgrading is needed to view the replay.&lt;br /&gt;
* Adding/removing mods to the save will also break the replay.&lt;br /&gt;
* Playback view is locked to the character in singleplayer.&lt;br /&gt;
* There is no way to skip ahead, the entire replay must be watched up until the point of interest.&lt;br /&gt;
* Re-winding (A.K.A. Going backwards in time ) is not possible.&lt;br /&gt;
* The save file needs to be created within the GUI. The headless version cannot enable replay.&lt;br /&gt;
&lt;br /&gt;
== Advanced features ==&lt;br /&gt;
&lt;br /&gt;
* The game can be saved at any time during playback, thus it is possible to play again from any time during the replay.&lt;br /&gt;
** This also allows to inspect the state at that point in time without zoom or movement limitations.&lt;br /&gt;
* Changing the script files inside the save will not invalidate the replay. This can be used to add scripts that do not affect the game state, such as taking screenshots in the background as the replay runs. Scripts that affect the game state (e.g. creating entities) will break the replay.&lt;br /&gt;
* Converting a save to a scenario and then starting a new game from that scenario restarts the replay at that point. This can be used to begin recording from a point after initial save creation, e.g. after mod or version changes have invalidated the previous replay. These are the steps to convert a save to a scenario and then start a new save game with replay enable:&lt;br /&gt;
** Main menu → Map editor → Convert save → Select the save file → Convert&lt;br /&gt;
** Main menu → Single player → New game → Select the scenario with the save name in the &amp;quot;User scenarios&amp;quot; → Check &amp;quot;Record replay&amp;quot; in the top right → Play&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Multiplayer]]&lt;br /&gt;
* [[Application directory]]&lt;br /&gt;
&lt;br /&gt;
{{C|Main}}&lt;/div&gt;</summary>
		<author><name>Chaoswolf</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Replay_system&amp;diff=195944</id>
		<title>Replay system</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Replay_system&amp;diff=195944"/>
		<updated>2024-01-15T15:02:02Z</updated>

		<summary type="html">&lt;p&gt;Chaoswolf: Add step by step instructions for creating a multiplayer server with replay enabled&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
A replay is a file stored within the game save, containing any information needed to repeat (replay) a game from start, in a movie-like fashion. This feature is to allow players to view how their world came to be.&lt;br /&gt;
&lt;br /&gt;
== Creating &amp;amp; playing a replay ==&lt;br /&gt;
&lt;br /&gt;
Replays can be automatically generated as the map is played, behind the scenes. To enable this, the &amp;quot;Record replay&amp;quot; option needs to be checked when starting a new game. This setting is in the top right when selecting game modes (freeplay, scenarioes, etc.) before map settings. Replays have rather strong limitations, see below.&lt;br /&gt;
&lt;br /&gt;
Playing a replay will play back in chronological order the actions taken in the world, as if the player was recording. The speed of playback can be increased or decreased to fine-tune the viewing experience. &lt;br /&gt;
&lt;br /&gt;
To view a replay, from the main menu go to Single player → Load game, then find the ▶ Start replay button in the upper right. &lt;br /&gt;
&lt;br /&gt;
=== The replay GUI ===&lt;br /&gt;
&lt;br /&gt;
A simple control GUI is available to control replay playback:&lt;br /&gt;
&lt;br /&gt;
[[File:replay GUI.png]]&lt;br /&gt;
&lt;br /&gt;
The top bar shows the position in the replay out of the total time of the replay. The buttons allow to:&lt;br /&gt;
* Pause/play the replay &lt;br /&gt;
* Slow down playback &lt;br /&gt;
* Speed up playback &lt;br /&gt;
&lt;br /&gt;
=== Multiplayer ===&lt;br /&gt;
&lt;br /&gt;
Creating a save with replay enabled must be done within the GUI.&lt;br /&gt;
Not choosing freeplay in step 1 or changing certain map settings in step 2 [[Achievements#Disabling_achievements|disables achievements]].&lt;br /&gt;
&lt;br /&gt;
# Main menu → Single player → New game → Select the game mode → Check &amp;quot;Record replay&amp;quot; in the top right → Next&lt;br /&gt;
# Change map settings if desired → Play&lt;br /&gt;
# Enter the Game menu instantly → Save game → Quit game&lt;br /&gt;
# Copy the created save game to the headless game server directory&lt;br /&gt;
# Launch the server with the copied file&lt;br /&gt;
&lt;br /&gt;
In multiplayer replays it is also possible to change the viewpoint player via the dropdown. Furthermore, {{Keybinding|F10}} can be used to switch to the next viewpoint player in the list.&lt;br /&gt;
&lt;br /&gt;
== Limitations ==&lt;br /&gt;
&lt;br /&gt;
* Replays for worlds created in older versions cannot be played. Downgrading is needed to view the replay.&lt;br /&gt;
* Adding/removing mods to the save will also break the replay.&lt;br /&gt;
* Playback view is locked to the character in singleplayer.&lt;br /&gt;
* There is no way to skip ahead, the entire replay must be watched up until the point of interest.&lt;br /&gt;
* Re-winding (A.K.A. Going backwards in time ) is not possible.&lt;br /&gt;
* The save file needs to be created within the GUI. The headless version cannot enable replay.&lt;br /&gt;
&lt;br /&gt;
== Advanced features ==&lt;br /&gt;
&lt;br /&gt;
* The game can be saved at any time during playback, thus it is possible to play again from any time during the replay.&lt;br /&gt;
** This also allows to inspect the state at that point in time without zoom or movement limitations.&lt;br /&gt;
* Changing the script files inside the save will not invalidate the replay. This can be used to add scripts that do not affect the game state, such as taking screenshots in the background as the replay runs. Scripts that affect the game state (e.g. creating entities) will break the replay.&lt;br /&gt;
* Converting a save to a scenario and then starting a new game from that scenario restarts the replay at that point. This can be used to begin recording from a point after initial save creation, e.g. after mod or version changes have invalidated the previous replay. These are the steps to convert a save to a scenario and then start a new save game with replay enable:&lt;br /&gt;
** Main menu → Map editor → Convert save → Select the save file → Convert&lt;br /&gt;
** Main menu → Single player → New game → Select the scenario with the save name in the &amp;quot;User scenarios&amp;quot; → Check &amp;quot;Record replay&amp;quot; in the top right → Play&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[Multiplayer]]&lt;br /&gt;
* [[Application directory]]&lt;br /&gt;
&lt;br /&gt;
{{C|Main}}&lt;/div&gt;</summary>
		<author><name>Chaoswolf</name></author>
	</entry>
</feed>