<?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=Luc</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=Luc"/>
	<link rel="alternate" type="text/html" href="https://wiki.factorio.com/Special:Contributions/Luc"/>
	<updated>2026-06-22T13:49:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Version_history/0.12.0&amp;diff=216869</id>
		<title>Version history/0.12.0</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Version_history/0.12.0&amp;diff=216869"/>
		<updated>2025-12-26T17:44:06Z</updated>

		<summary type="html">&lt;p&gt;Luc: fix that all hyphens in the text were replaced by asterisks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== 0.12.35 ==&lt;br /&gt;
&lt;br /&gt;
===Bug Fixes===&lt;br /&gt;
* Fixed the missing title in character logistics window.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.34 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Polished/Updated the New hope campaign maps&lt;br /&gt;
* LuaGameScript::server_save silently does nothing if used on a single player game instead of giving an error.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed the fuel inventory of the car in the New Hope campaign missions. ([https://forums.factorio.com/24923 more])&lt;br /&gt;
* Fixed crash when exiting from an error during the on_robot_built_entity event. ([https://forums.factorio.com/24837 more])&lt;br /&gt;
* Fixed crash when removing and re-creating forces. ([https://forums.factorio.com/25111 more])&lt;br /&gt;
* Fixed crash after changing the type of a style currently applied to a custom GUI element when loading a save. ([https://forums.factorio.com/23969 more])&lt;br /&gt;
* Fixed crash when calling LuaPlayer::teleport on a disconnected player. ([https://forums.factorio.com/25203 more])&lt;br /&gt;
* Fixed crash after running LuaGameScript::server_save from a mod. ([https://forums.factorio.com/25443 more])&lt;br /&gt;
* Fixed crash when changing the force of an offline player with personal roboport equipment. ([https://forums.factorio.com/25417 more])&lt;br /&gt;
* Fixed crash when trying to merge a force into its self. ([https://forums.factorio.com/25518 more])&lt;br /&gt;
* Fixed underground belt position in blueprint preview. ([https://forums.factorio.com/24970 more])&lt;br /&gt;
* Fixed map transfer speed dropping to zero ([https://forums.factorio.com/25178 more])&lt;br /&gt;
* Fixed logistic description counts with the same counts getting displayed in random order ([https://forums.factorio.com/25670 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.33 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed tiles in blueprints. ([https://forums.factorio.com/24676 more])&lt;br /&gt;
* Fixed the duplicated message on load error in multiplayer. ([https://forums.factorio.com/24561 more])&lt;br /&gt;
* Fluid values are rounded to the closest value instead of rounding down when transmitted to circuit network. ([https://forums.factorio.com/24558 more])&lt;br /&gt;
* Fixed that switching brush shape in the map editor didn&#039;t update the selected icon highlight. ([https://forums.factorio.com/24688 more])&lt;br /&gt;
* Fixed that label/check box padding was applied twice, moving the rendered text to be out of place. ([https://forums.factorio.com/24102 more])&lt;br /&gt;
* Fixed that map (chart) wasn&#039;t properly updated when existing map was edited in the map editor. ([https://forums.factorio.com/23861 more])&lt;br /&gt;
* Fixed crash when the character would die from mining something. ([https://forums.factorio.com/24566 more])&lt;br /&gt;
* Fixed crash when robot can&#039;t find charging spot when stationing. ([https://forums.factorio.com/24768 more])&lt;br /&gt;
* Fixed crash in multiplayer that could happen when 2 people are editing the same train schedule. ([https://forums.factorio.com/24781 more])&lt;br /&gt;
* Unified the electric network statistics production/consumption values to be average of the shown timeframe. ([https://forums.factorio.com/24807 more])&lt;br /&gt;
* Solved small numerical text box editing issue. ([https://forums.factorio.com/24809 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Added LuaStyle::cell_padding/horizontal_spacing/vertical_spacing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.32 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed loading of electric network of pre 0.12 saves.&lt;br /&gt;
* Fixed blueprint building. Blueprints are migrated as long as you load the version 0.12.30 or earlier, existing blueprints might be off if you resaved in 0.12.31 already.&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Lua interface to create blueprint now expects the entity positions to be relative to center exactly, so in rail-less blueprints, the position 0.0 translates to center of the tile&lt;br /&gt;
when the blueprint is built.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.31 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed crash when script errors occurs while loading game while in game. ([https://forums.factorio.com/23222 more])&lt;br /&gt;
* Fixed that attempting to connect to Factorio 0.12.30 with an old client wouldn&#039;t produce the correct error message. ([https://forums.factorio.com/23177 more])&lt;br /&gt;
* Fixed that modded roboports with no charging slots were still considering as charging candidates. ([https://forums.factorio.com/23289 more])&lt;br /&gt;
* Fixed that item icon variant for dark background was not used when showing cargo of logistic robots. ([https://forums.factorio.com/23286 more])&lt;br /&gt;
* Fixed crash with &amp;quot;Unblock sendto failed: The operation completed successfully.&amp;quot; ([https://forums.factorio.com/23206 more])&lt;br /&gt;
* Human readable error notice when multiplayer connection wasn&#039;t successful. ([https://forums.factorio.com/23132 more])&lt;br /&gt;
* Fixed that headless server wouldn&#039;t save the map after Control-C. ([https://forums.factorio.com/23342 more])&lt;br /&gt;
* Fixed that attacking biters with a mining tool wouldn&#039;t aggro them.&lt;br /&gt;
* Improved map download speed when connecting to multiplayer game. ([https://forums.factorio.com/20532 more])&lt;br /&gt;
* Fixed that assigning units to a unit group of a different force would corrupt the save. ([https://forums.factorio.com/23699 more])&lt;br /&gt;
* Fixed crash when using can_insert on the quickbar from the Lua API.&lt;br /&gt;
* Fixed tight spot scenario crash. ([https://forums.factorio.com/23731 more])&lt;br /&gt;
* Fixed sort order for recipes in the recipe display.&lt;br /&gt;
* Fixed incorrect error message, when setting the number of filters on an inserter ([https://forums.factorio.com/23496 more]).&lt;br /&gt;
* Fixed flame from refineries that are marked for deconstruction was frozen in mid air. ([https://forums.factorio.com/23733 more])&lt;br /&gt;
* Fixed incorrect error message, when setting the number of filters on an inserter. ([https://forums.factorio.com/23496 more])&lt;br /&gt;
* Fixed flame from refineries that are marked for deconstruction was frozen in mid air. ([https://forums.factorio.com/23733 more])&lt;br /&gt;
* Fixed that odd sized blueprints were shifted when rotated. ([https://forums.factorio.com/24036 more])&lt;br /&gt;
* Fixed crash when clearing modded blueprint that doesn&#039;t need item to be cleared. ([https://forums.factorio.com/24035 more])&lt;br /&gt;
* Fixed crash in arithmetic combinator when calculating -2147483648/-1. ([https://forums.factorio.com/23551 more])&lt;br /&gt;
* Fixed crash when assigning a character as a passenger of a vehicle when that character already is a passenger of another vehicle. ([https://forums.factorio.com/24142 more])&lt;br /&gt;
* Fixed dealing damage could sometimes corrupt game state and saves. ([https://forums.factorio.com/23965 more])&lt;br /&gt;
* Fixed modded save could not be loaded when a modded inserter gained abilities of smart inserter. ([https://forums.factorio.com/23698 more])&lt;br /&gt;
* Fixed unknown-key message on the third level of first-steps. ([https://forums.factorio.com/23362 more])&lt;br /&gt;
* Fixed cursor-split transfer (right click) not working when putting items into assembling machine stacks over normal stack size. ([https://forums.factorio.com/23771 more])&lt;br /&gt;
* Fixed remote.call() from within the same mod. ([https://forums.factorio.com/23587 more])&lt;br /&gt;
* Fixed inconsistent inserter behaviour when inserting into a splitter from the side. ([https://forums.factorio.com/23669 more])&lt;br /&gt;
* Fixed train trying to turn around on a single rail. ([https://forums.factorio.com/23371 more])&lt;br /&gt;
* Fixed internal electric network problems when mod specified irregular number as supply reach of power pole. ([https://forums.factorio.com/23524 more])&lt;br /&gt;
* Fixed crash when Lua script appears in specific state in multiplayer. ([https://forums.factorio.com/23568 more])&lt;br /&gt;
* Fixed another crash than can happen when train destroys itself. ([https://forums.factorio.com/23416 more])&lt;br /&gt;
* Fixed rare multiplayer crash &amp;quot;server is missing in the crcs&amp;quot;. ([https://forums.factorio.com/23376 more])&lt;br /&gt;
* Fixed several GUI problems on high DPI displays ([https://forums.factorio.com/23593 more])&lt;br /&gt;
=== Optimizations ===&lt;br /&gt;
* Improved performance when using landmines. ([https://forums.factorio.com/23267 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* LuaUnitGroup::add_member now requires that the new member&#039;s force be the same as the UnitGroup&#039;s.&lt;br /&gt;
* Added LuaUnitGroup::force read-only attribute.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.30 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Mod checksums are calculated when the game starts and are compared with other peers when joining a multiplayer game. This is to ensure everyone has exactly the same mod in order to prevent desyncs caused by local changes made to mod files.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed strange outer corner rendering for terrains with the same layer. ([https://forums.factorio.com/22159 more])&lt;br /&gt;
* Fixed Factorio timing out of a multiplayer game when closed by pressing the X button. ([https://forums.factorio.com/22106 more])&lt;br /&gt;
* Building things after quitting a multiplayer game is no longer possible and no longer crashes the game. ([https://forums.factorio.com/21743 more])&lt;br /&gt;
* Fixed memory leak with special signals in the circuit network.&lt;br /&gt;
* Fixed crash when killing the player in on_built_entity. ([https://forums.factorio.com/22228 more])&lt;br /&gt;
* Fixed crash when making blueprints of ghosts with some now-invalid circuit connections to other ghosts. ([https://forums.factorio.com/22272 more])&lt;br /&gt;
* Fixed player&#039;s shooting target not updating properly when the target&#039;s force became friendly ([https://forums.factorio.com/22319 more])&lt;br /&gt;
* Fixed the documentation of CircuitCondition ([https://forums.factorio.com/22230 more])&lt;br /&gt;
* Fixed that the ignore_planner field of Command would expect an integer instead of a Boolean. ([https://forums.factorio.com/22332 more])&lt;br /&gt;
* Starting value of progress bar is now properly set based on the input. ([https://forums.factorio.com/22434 more])&lt;br /&gt;
* Fixed crash when destroying entity with empty corpse string. ([https://forums.factorio.com/22254 more])&lt;br /&gt;
* Fixed mining drills getting stuck when built pointing at rails and then rotated. ([https://forums.factorio.com/22764 more])&lt;br /&gt;
* Fixed remote.call() within the same mod passing invalid data. ([https://forums.factorio.com/22459 more])&lt;br /&gt;
* Fixed the typo in the error &amp;quot;multiplayer.cannot-load-downloaded-map&amp;quot;, the cause of the error wasn&#039;t displayed because of it. ([https://forums.factorio.com/22169 more])&lt;br /&gt;
* Fixed that the server could get desynced and in a state where he has no one to download from. ([https://forums.factorio.com/22206 more])&lt;br /&gt;
* Fixed that the train tooltip was showing the current station as the next one when in the station. ([https://forums.factorio.com/22280 more])&lt;br /&gt;
* Fixed crash when a Lua function was used as a value in a table in data.raw. ([https://forums.factorio.com/22992 more])&lt;br /&gt;
* Fixed the tooltip of the inventory limit feature to &amp;quot;Limit the inventory part to be filled by machines.&amp;quot;, so it is clear, it limits only input, but not output.&lt;br /&gt;
* Fixed that cancelling a recipe in the crafting queue would reset the crafting timer unnecessarily. ([https://forums.factorio.com/22823 more])&lt;br /&gt;
* Fixed crash when a force other than player, enemy or neutral was used in autoplace specification. ([https://forums.factorio.com/22935 more])&lt;br /&gt;
* Fixed crash when a network interface is deactivated during multiplayer game. ([https://forums.factorio.com/20078 more])&lt;br /&gt;
* Fixed white bar on top of the screen was sometimes present in fullscreen on OS X. ([https://forums.factorio.com/16720 more])&lt;br /&gt;
* Unified the processing of savegame name in --load-game --start-server and --mp-load-game. It can all be supplied with or without the .zip&lt;br /&gt;
* Fixed that collision with point wasn&#039;t working properly for curved rail. ([https://forums.factorio.com/22997 more])&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Added LuaEntity::unit_group read-only attribute&lt;br /&gt;
* Proper error message when subgroup specified by empty string. ([https://forums.factorio.com/22216 more])&lt;br /&gt;
* Fixed projectiles with negative acceleration would turn around, fly back and break the game. ([https://forums.factorio.com/23127 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.29 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* When the game starts with the base mod disabled, it asks you, if you want to enable it.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed construction robot crash. ([https://forums.factorio.com/22026 more])&lt;br /&gt;
* Fixed that multiplayer progress bar windows were blocked by currently opened window. ([https://forums.factorio.com/21529 more])&lt;br /&gt;
* Fixed another inconsistency with zero signals in combinators ([https://forums.factorio.com/21892 more])&lt;br /&gt;
* Fixed crash when Steam API initialization failed. ([https://forums.factorio.com/21805 more])&lt;br /&gt;
* Fixed random crashes when mining/closing and autosave happens at the same tick.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.28 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Added --port to specify which network port the game should use, when hosting with --start-server or --mp-load-game. This overrides the port specified in the config file.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Explosion sounds are now not deafeningly loud, when multiple things explode at once.&lt;br /&gt;
* Fixed LuaForce::clear_chart() would crash game if called while chart was refreshing. ([https://forums.factorio.com/21834 more])&lt;br /&gt;
* Fixed crash when refreshing chart while Direct3D device is lost. ([https://forums.factorio.com/21942 more])&lt;br /&gt;
* Fixed --config option not complaining about nonexistent file. ([https://forums.factorio.com/21777 more])&lt;br /&gt;
* Fixed crash when clicking on electric pole that was still in latency state ([https://forums.factorio.com/21786 more])&lt;br /&gt;
* Fixed freeze of server with more than 255 different players in the savegame.&lt;br /&gt;
* Fixed crash when exiting the map editor while holding power armor on the cursor. ([https://forums.factorio.com/21762 more])&lt;br /&gt;
* Fixed map exchange string not using segmentation or water size correctly. ([https://forums.factorio.com/21918 more])&lt;br /&gt;
* Fixed Lua game_view_settings::showentityinfo read/write issues. ([https://forums.factorio.com/21969 more])&lt;br /&gt;
* Fixed fog-of-war does not work correctly in New Hope level 1. ([https://forums.factorio.com/21971 more])&lt;br /&gt;
* Fixed inconsistent Offshore Pump collision when building. ([https://forums.factorio.com/21801 more])&lt;br /&gt;
* Fixed desync reports were not generated. ([https://forums.factorio.com/21951 more])&lt;br /&gt;
* Fixed that non destructible entities get attacked, so biters could get stuck while trying to attack rails under train. ([https://forums.factorio.com/21985 more])&lt;br /&gt;
* Control settings window is now scrollable when it can&#039;t fit the window. ([https://forums.factorio.com/21553 more])&lt;br /&gt;
* Fixed Factorio hanging on exit on Linux after copying or pasting ([https://forums.factorio.com/21832 more]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.27 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* The area of 400X400 tiles is explored when the game starts.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that merging two electric network didn&#039;t merge the statistics. ([https://forums.factorio.com/21662 more])&lt;br /&gt;
* Fixed the cyclic/overlapping win/lost sound sample when the game is finished in multiplayer. ([https://forums.factorio.com/21686 more])&lt;br /&gt;
* Fixed that extra pipe covers could be drawn on top of connected pipes. ([https://forums.factorio.com/20843 more])&lt;br /&gt;
* Fixed misaligned turrets in the 4. New hope mission. ([https://forums.factorio.com/20998 more])&lt;br /&gt;
* Fixed some inconsistencies related to zero-signals in circuit networks. ([https://forums.factorio.com/20991 more])&lt;br /&gt;
* Fixed inconsistency between the way inserters and logistic robots picked items from inventories. Logistic robots now prefer items at the end of the inventory and ignore inventory limit. ([https://forums.factorio.com/21002 more])&lt;br /&gt;
* Fixed LuaForce::clear_chart() would crash game. ([https://forums.factorio.com/20975 more])&lt;br /&gt;
* The report of different mods when trying to connect to multiplayer game is now scrollable when needed. ([https://forums.factorio.com/20915 more])&lt;br /&gt;
* Fixed Cargo Wagon Inserter input output inconsistency. ([https://forums.factorio.com/19604 more])&lt;br /&gt;
* Fixed the mod difference reporting when connecting to multiplayer game. ([https://forums.factorio.com/21035 more])&lt;br /&gt;
* Found workaround for issue in Visual C++ math library that was causing crashes on unpatched Windows 7. Service Pack 1 for Windows 7 is no longer required.&lt;br /&gt;
* Fixed that placing a rotated blueprint containing a splitter was not possible in some cases ([https://forums.factorio.com/21243 more]).&lt;br /&gt;
* Fixed crash after revive by player port when personal roboport is equipped ([https://forums.factorio.com/21130 more]).&lt;br /&gt;
* Optimized the map bitmap refresh logic 16 times. (the freeze after loading a game or resizing window while playing big saves).&lt;br /&gt;
* Fixed that the &amp;quot;you joined a paused game&amp;quot; message would display on all peers, rather than just the peer who just joined ([https://forums.factorio.com/21259 more]).&lt;br /&gt;
* Fixed slow sprite loading on Direct3D ([https://forums.factorio.com/21343 more]).&lt;br /&gt;
* Fixed the documentation of LuaGameScript::show_message_dialog ([https://forums.factorio.com/21394 more]).&lt;br /&gt;
* Fixed the order of parameters of some functions in the documentation ([https://forums.factorio.com/21404 more]).&lt;br /&gt;
* Fixed that the research screen would pre-select Automation even though it was disabled ([https://forums.factorio.com/21421 more]).&lt;br /&gt;
* Fixed rare crash that could happen when assembling machine recipe was reset the same tick as autosave started. ([https://forums.factorio.com/21441 more])&lt;br /&gt;
* Fixed the laser/discharge defense names in the set filter dialog. ([https://forums.factorio.com/21445 more])&lt;br /&gt;
* Better error when wrong bounding box definition is given. ([https://forums.factorio.com/21444 more])&lt;br /&gt;
* Creating message dialog with non existent image doesn&#039;t crash the game anymore. ([https://forums.factorio.com/21395 more])&lt;br /&gt;
* Localization errors will no longer stop the game, the result string will just contain the error. ([https://forums.factorio.com/21426 more])&lt;br /&gt;
* Fixed that the stone wall research was disabled in the New hope campaign level 4, so gates weren&#039;t researchable. ([https://forums.factorio.com/21318 more])&lt;br /&gt;
* The starting value of text property of textfield is properly set based on the input. ([https://forums.factorio.com/21372 more])&lt;br /&gt;
* Fixed map exchange string problems with mods ([https://forums.factorio.com/21397 more]).&lt;br /&gt;
* Fixed freezes on exit with recent NVidia drivers on Gentoo and Arch Linux ([https://forums.factorio.com/20583 more])&lt;br /&gt;
* Proper notification when quick bar slot can&#039;t be selected as there is no place to put the item in the cursor.&lt;br /&gt;
* Fixed crash on Linux after running xrandr --off ([https://forums.factorio.com/21532 more]).&lt;br /&gt;
* Fixed Rocket Silo GUI skipping 53%. ([https://forums.factorio.com/21548 more])&lt;br /&gt;
* Another attempt at fixing X11 copy/paste ([https://forums.factorio.com/18956 more]).&lt;br /&gt;
* Better message when the server leaves a multiplayer game ([https://forums.factorio.com/21521 more]).&lt;br /&gt;
* Fixed the bad values of defines.furnace_source, defines.furnace_result and added missing defines.furnace_modules. ([https://forums.factorio.com/21627 more])&lt;br /&gt;
* Fixed that modded saves could get unloadable without mods when they have entities removed in the loading transitions that were in more than one network.&lt;br /&gt;
* Fixed that it was possible to have unlimited range with melee weapon after running out of ammo. ([https://forums.factorio.com/21750 more])&lt;br /&gt;
* Fixed that LuaPlayer::remove_item didn&#039;t remove from cursor stack when the player was using god controller. This also fixes the bug in the tight spot scenario. ([https://forums.factorio.com/21737 more])&lt;br /&gt;
* Fixed black screen after UAC popped up in main menu ([https://forums.factorio.com/16792 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Documented extra unit group status return values. ([https://forums.factorio.com/21723 more])&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Added action_range to mining tool prototype (with the default of 1.5).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.26 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed the corrupted level 2 of the New hope campaign, that was producing corrupted saves. If you are already playing this level, you have to start it over, I&#039;m sorry for the trouble.&lt;br /&gt;
* Fixed the performance issue in the same level after train transport is researched.&lt;br /&gt;
* Fixed that the game reported the error to be related to overlay always when it crashed.&lt;br /&gt;
* Fixed rare crash related to splitting item in entity that is just about to be destroyed. ([https://forums.factorio.com/20818 more])&lt;br /&gt;
* Sending random packets to Factorio port can still crash the server eventually, the probability will just be lower. ([https://forums.factorio.com/20154 more])&lt;br /&gt;
* Running biters over with a car or tank will make them aggressive in peaceful mode ([https://forums.factorio.com/20866 more]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.25 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed quickbar selection handling when accepting blueprint with item in cursor. ([https://forums.factorio.com/20564 more])&lt;br /&gt;
* Train stations in the new hope level 2 had neutral force, so they weren&#039;t selectable as part of the schedule. ([https://forums.factorio.com/20521 more])&lt;br /&gt;
* Fixed that wall Graphics variations were not randomized when built by robots. ([https://forums.factorio.com/20364 more])&lt;br /&gt;
* Fixed that rail signals were not visible under remnants. They are drawn above now. ([https://forums.factorio.com/20370 more])&lt;br /&gt;
* Fixed that the multiplayer menu would allow one to resume the game as the game was already being disconnected, which would inevitably lead to a crash ([https://forums.factorio.com/20382 more]).&lt;br /&gt;
* Possible fix of rare Lua garbage collector error. Report: [https://forums.factorio.com/20313 more] Fix: [http://www.lua.org/bugs.html#5.2.3-2 more]&lt;br /&gt;
* Fixed Combinator special signals not summing the inputs correctly(again). ([https://forums.factorio.com/20461 more])&lt;br /&gt;
* Fixed green circuit network signals icons in power pole tooltip.&lt;br /&gt;
* Fixed that multiplayer-specific options were available in the demo build of Factorio (such as --start-server) ([https://forums.factorio.com/20580 more]).&lt;br /&gt;
* Fixed crash when using screens connected to both AMD and Intel Graphics cards ([https://forums.factorio.com/20544 more]).&lt;br /&gt;
* Fixed very rare chance of a bug when window is closed at the same moment when autosave starts.&lt;br /&gt;
* Fixed two sources of rounding errors related to research. ([https://forums.factorio.com/20691 more])&lt;br /&gt;
* Fixed that replaying multiplayer game ended once any player died. ([https://forums.factorio.com/20664 more])&lt;br /&gt;
* Fixed the ungraceful error message when version/mods don&#039;t match in multiplayer. ([https://forums.factorio.com/20427 more])&lt;br /&gt;
* Fixed game not restarting when mods were changed ([https://forums.factorio.com/20565 more]).&lt;br /&gt;
* Fixed headless server not working with the Steam version ([https://forums.factorio.com/20510 more]).&lt;br /&gt;
* Fixed that destroying a chain signal in the same tick as it was created crashed the game ([https://forums.factorio.com/20421 more]).&lt;br /&gt;
* Fixed fullscreen issues on multimonitor configurations ([https://forums.factorio.com/20635 more]).&lt;br /&gt;
* Fixed crash when canceling crafting of a recipe who&#039;s ingredients have changed in the meantime ([https://forums.factorio.com/20706 more]).&lt;br /&gt;
* Fixed update of stand-alone ZIP package should not require elevated rights on Windows ([https://forums.factorio.com/20760 more]).&lt;br /&gt;
* Fixed specific crash in replay viewing. ([https://forums.factorio.com/20703 more])&lt;br /&gt;
* Fixed game ignoring local changes in config when using Steam Cloud.&lt;br /&gt;
* Fixed double key in smart inserter definition, causing it to be slower than fast inserter. ([https://forums.factorio.com/20804 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.24 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Updated sountrack.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed corrupted player-data.json message on startup.&lt;br /&gt;
* Fixed unnecessary game restart when no mods were changed.&lt;br /&gt;
* Fixed crash due to electric network migration during load of some more complex games. ([https://forums.factorio.com/20347 more])&lt;br /&gt;
* Fixed very long belt lines would crash game ([https://forums.factorio.com/20392 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.23 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Scenario pack was moved to the base game package.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Any changes in the mods settings will automatically trigger the game to be restarted. ([https://forums.factorio.com/20026 more])&lt;br /&gt;
* The alerts are disabled when player or combat robots get hurt/destroyed. (It was especially annoying in multiplayer).&lt;br /&gt;
* Underground belt connection visualization in the &amp;quot;to build preview&amp;quot; wasn&#039;t proper. ([https://forums.factorio.com/19491 more])&lt;br /&gt;
* Fixed that picked up item event wasn&#039;t fired when picking items from the belt. ([https://forums.factorio.com/19506 more])&lt;br /&gt;
* Fixed that technology list and preview weren&#039;t updated when technology was researched in multiplayer. ([https://forums.factorio.com/19449 more])&lt;br /&gt;
* Fixed a crash after merging forces when the destroyed force&#039;s labs were researching ([https://forums.factorio.com/19650 more]).&lt;br /&gt;
* Fixed that it looked like it was possible to repair a tree in multiplayer. ([https://forums.factorio.com/19512 more])&lt;br /&gt;
* Fixed that the max health instead of current health was used for crash calculations. ([https://forums.factorio.com/19875 more])&lt;br /&gt;
* Fixed that the game could desync when someone joined while someone else was shooting.&lt;br /&gt;
* Fixed that trains were Signaling No Path after update ([https://forums.factorio.com/19443 more]).&lt;br /&gt;
* Fixed that accumulators kept their energy when destroyed and rebuilt by robots. ([https://forums.factorio.com/20107 more])&lt;br /&gt;
* Fixed the occasional 1pixel gap between vertical steam engine and a pipe.&lt;br /&gt;
* Fixed beacon would not re-activate when its deconstruction order was canceled.&lt;br /&gt;
* Fixed various desynchronizations in multiplayer caused by beacon. ([https://forums.factorio.com/19756 more])&lt;br /&gt;
* Fixed Combinator &amp;quot;each&amp;quot; special signal not summing the inputs correctly ([https://forums.factorio.com/20120 more])&lt;br /&gt;
* Fixed players in multiplayer game would not see progress of new player downloading a map in server/client configuration.&lt;br /&gt;
* Fixed crash when checksum error was detected while connecting to multiplayer game. ([https://forums.factorio.com/19856 more])&lt;br /&gt;
* Fixed that the full mod change info for recipes wouldn&#039;t display if only the counts were modified on the recipe. ([https://forums.factorio.com/20308 more])&lt;br /&gt;
* Fixed crash when car collided with decorative entity in object layer. ([https://forums.factorio.com/20293 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Fixed that game.load (inner load) crashed the game in multiplayer. It still causes disconnect though.&lt;br /&gt;
* Removed the screen2realposition and real2screenposition methods from Lua API.&lt;br /&gt;
=== Sound ===&lt;br /&gt;
* Extended the soundtrack.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.22 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that save is not loadable when mod changes type of entity. ([https://forums.factorio.com/19053 more])&lt;br /&gt;
* Fixed that enemy train stops were visible in the rename station GUI. ([https://forums.factorio.com/19023 more])&lt;br /&gt;
* Fixed freeze when there is no place to put character when he exits the vehicle and there is no exit point. ([https://forums.factorio.com/19056 more])&lt;br /&gt;
* Fixed internally inconsistent data state after cancelling deconstruction from script in a certain way. ([https://forums.factorio.com/19209 more])&lt;br /&gt;
* Fixed that map/minimap wasn&#039;t updated when settiles was used. ([https://forums.factorio.com/19355 more])&lt;br /&gt;
* Fixed the Graphics inconsistencies related to belt versus inserter drawing. ([https://forums.factorio.com/19231 more])&lt;br /&gt;
* Files starting with dot are ignored when opening locale files to ignore garbage files that mac is leaving around. ([https://forums.factorio.com/19237 more])&lt;br /&gt;
* Fixed the line trigger target specification. ([https://forums.factorio.com/19065 more])&lt;br /&gt;
* Fixed that neutral entities were shown red on the map. (Applies mainly in the campaign)&lt;br /&gt;
* Fixed sorting of item groups in the crafting window.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.21 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Dropped support for OS X 10.6 Snow Leopard.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed random crash with &amp;quot;Trying to make chunk at unreasonable position&amp;quot; ([https://forums.factorio.com/18161 more])&lt;br /&gt;
* Fixed crash when calling the set_tiles with non existent terrain parameter. ([https://forums.factorio.com/18219 more])&lt;br /&gt;
* Fixed that label could go out of the window in other settings. ([https://forums.factorio.com/18186 more])&lt;br /&gt;
* Fixed that the energy progress bar was missing on personal roboport equipment. ([https://forums.factorio.com/18263 more])&lt;br /&gt;
* Cannon shells will not have plural in the item name to be consistent with other items. [https://forums.factorio.com/18237 more])&lt;br /&gt;
* Fixed slight direction bias with the flamethrower ([https://forums.factorio.com/18361 more]).&lt;br /&gt;
* Fixed items in logistic GUI sometimes disappearing or reappearing.([https://forums.factorio.com/18486 more])&lt;br /&gt;
* Fixed copy&amp;amp;paste on Linux, again ([https://forums.factorio.com/18577 more]).&lt;br /&gt;
* Fixed controls settings GUI bad alignment in some situations([https://forums.factorio.com/18484 more]).&lt;br /&gt;
* Fixed the scripting error in the 3rd level of the transport belt madness.&lt;br /&gt;
* Fixed various scripting errors in the tight-spot scenario.&lt;br /&gt;
* Fixed that enemy train stations were selectable when setting train destination. ([https://forums.factorio.com/18485 more])&lt;br /&gt;
* Fixed crash that could happen when logistic networks are disconnected. ([https://forums.factorio.com/18607 more])&lt;br /&gt;
* Fixed invalid GUI pointing messages (visible namely in the first demo level).&lt;br /&gt;
* Fixed that entities could overlap wrongly in blueprint preview. ([https://forums.factorio.com/18483 more])&lt;br /&gt;
* Fixed that roboport sound continued even when it was out of power.&lt;br /&gt;
* Fixed that train could crash a gate by accelerating too fast. ([https://forums.factorio.com/18639 more])&lt;br /&gt;
* Fixed construction robots would lose their charging destination when roboport is activated/deactivated ([https://forums.factorio.com/18614 more])&lt;br /&gt;
* Fixed that entities marked for deconstruction would be instead rebuilt if they were destroyed before the actual deconstruction ([https://forums.factorio.com/18875 more]).&lt;br /&gt;
* Fixed undefined behaviour (crashes) when manually (from script) deactivated entity was killed and rebuilt by construction robot. ([https://forums.factorio.com/18792 more])&lt;br /&gt;
* Fixed the scripting bug in the first tutorial level. ([https://forums.factorio.com/18902 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Fixed the defines.circuitconditionindex.inserter_logistic value (should be 2 not 1).&lt;br /&gt;
* Fixed crash when accessing item on the ground inserted into belt. ([https://forums.factorio.com/18331 more])&lt;br /&gt;
* When attacking a player in a tank, the tank will be attacked instead of the player directly ([https://forums.factorio.com/18930 more])&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Better error message when specifying list of filenames instead of one in rotated sprite. ([https://forums.factorio.com/18204 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.20 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed crash when attempting to set font color on styles that don&#039;t support it. ([https://forums.factorio.com/18051 more])&lt;br /&gt;
* Fixed Lua stack overflow when data.raw got too big ([https://forums.factorio.com/18106 more]).&lt;br /&gt;
* Fixed units sometimes getting stuck at the end of their paths ([https://forums.factorio.com/18038 more]).&lt;br /&gt;
* Fixed clicking on mod GUI in replay would crash the game ([https://forums.factorio.com/18057 more]).&lt;br /&gt;
* Fixed inventory slots with filters did not have hover and click style ([https://forums.factorio.com/18087 more]).&lt;br /&gt;
* Fixed the inconstancy between personal/normal roboport power consumption description. ([https://forums.factorio.com/18061 more])&lt;br /&gt;
* The right part of the research window is also scrollable when it doesn&#039;t fit the screen. ([https://forums.factorio.com/18062 more])&lt;br /&gt;
* Fixed that the west/east rotation Graphics of chemical was reversed. ([https://forums.factorio.com/18127 more])&lt;br /&gt;
* Fixed crash when merging a force with disconnected player ([https://forums.factorio.com/18154 more])&lt;br /&gt;
* Fixed Production/Electric network statistics windows resetting position every few seconds. ([https://forums.factorio.com/18144 more])&lt;br /&gt;
* Fixed the preview drawing boxes of some entities.&lt;br /&gt;
* Fixed chain signal not preventing crash when a train passed twice through one block ([https://forums.factorio.com/18036 more]).&lt;br /&gt;
* Fixed crash when loading a game saved by the server with only one player that is currently disconnected.&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Technology prototypes now have optional integer property &amp;quot;icon_size&amp;quot;. Default value for non-base mods is 64 (and 128 for base mod).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.19 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed Optics technology icon was corrupted sometimes on OSX. ([https://forums.factorio.com/17776 more])&lt;br /&gt;
* Fixed crash in GroupBehavior ([https://forums.factorio.com/17971 more]).&lt;br /&gt;
* Ingame changelog only shows changes since the last stable release.&lt;br /&gt;
* Fixed beam weapon and turret issues ([https://forums.factorio.com/17781 more]).&lt;br /&gt;
* Fixed rocket silo inserters sometimes getting stuck ([https://forums.factorio.com/17956 more]).&lt;br /&gt;
* Fixed ghost trains appearing on minimap.&lt;br /&gt;
* Fixed manual crafting bug that could be exploited to get resources ([https://forums.factorio.com/17947 more]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.18 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed replay of a game created from another replay would crash the game. ([https://forums.factorio.com/17703 more])&lt;br /&gt;
* Fixed that rotating an unpaired underground transport belt wouldn&#039;t make its items go back ([https://forums.factorio.com/17663 more]).&lt;br /&gt;
* Fixed construction robots sometimes not picking up an underground transport belt whilst deconstructing it if it contains items ([https://forums.factorio.com/17663 more]).&lt;br /&gt;
* Fixed all personal construction robots could get stuck waiting for trees to be gathered ([https://forums.factorio.com/17755 more]).&lt;br /&gt;
* Fixed crash caused by allowing mods to order units to attack a disconnected player&#039;s character ([https://forums.factorio.com/17801 more]).&lt;br /&gt;
* Fixed rare crash with construction robot. ([https://forums.factorio.com/17851 more])&lt;br /&gt;
* Fixed the info about the energy consumption of personal roboport, to show the maximum consumption as other machines.&lt;br /&gt;
* Inventories with limit (chests) can get scroll bars when they are too big as well. ([https://forums.factorio.com/17849 more])&lt;br /&gt;
* Fixed, that the train could get stuck when it has to accelerate to get to station that is very close. ([https://forums.factorio.com/17748 more])&lt;br /&gt;
* Fixed map exchange strings not being accepted when the quote sequence contains spaces ([https://forums.factorio.com/17699 more])&lt;br /&gt;
* Fixed locomotive not centered on rails. ([https://forums.factorio.com/16455 more])&lt;br /&gt;
* Fixed train lights were further away than they should be. ([https://forums.factorio.com/16455 more])&lt;br /&gt;
* Fixed spitters freezing in some cases ([https://forums.factorio.com/17830 more]).&lt;br /&gt;
* Fixed crash when trying to load replay from save that doesn&#039;t contain level-init.dat ([https://forums.factorio.com/17884 more]).&lt;br /&gt;
* Fixed incorrect default request amounts for shield and battery equipment due to typo ([https://forums.factorio.com/17879 more]).&lt;br /&gt;
* Fixed save with modded roboport could become unloadable without the mod ([https://forums.factorio.com/17882 more]).&lt;br /&gt;
* Fixed beam animations for modded weapons ([https://forums.factorio.com/17781 more]).&lt;br /&gt;
* Fixed that reconnecting train in special case lead to corruption of the rail state. ([https://forums.factorio.com/17627 more])&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Improved formatting of map exchange string.&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Reading or writing LuaPlayer::character will now fail if the LuaPlayer isn&#039;t connected (see LuaPlayer::connected).&lt;br /&gt;
* Lua API documentation is included in release packages (directory doc-html)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.17 ==&lt;br /&gt;
&lt;br /&gt;
=== Graphics ===&lt;br /&gt;
* New technology Icons!&lt;br /&gt;
* New item group icons.&lt;br /&gt;
* Updated the icons of rocket silo, beacon, sulfur, armors, stone brick and radar.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that assembling machines/furnaces could get stuck after changing mod configuration that affects their recipe. ([https://forums.factorio.com/16787 more])&lt;br /&gt;
* Fixed that the window title was &amp;quot;Allegro&amp;quot; on mac os. ([https://forums.factorio.com/16390 more])&lt;br /&gt;
* Fixed crash on exit with Steam overlay. ([https://forums.factorio.com/17486 more])&lt;br /&gt;
* Fixed displaying of update unavailable message with disabled experimental updates.&lt;br /&gt;
* Added workaround for problem with AMD drivers that could cause missing or corrupted textures on some systems. ([https://forums.factorio.com/16911 more])&lt;br /&gt;
* Fixed that making a blueprint of a ghost was not saving circuit connections.&lt;br /&gt;
* Fixed occasional crash during update after UAC dialog pops-up. ([https://forums.factorio.com/16045 more])&lt;br /&gt;
* Fixed that the value of the checkbox in tips and tricks wasn&#039;t set up properly.([https://forums.factorio.com/17629 more])&lt;br /&gt;
* Fixed that rocket silo electric energy drain was applied twice. ([https://forums.factorio.com/17609 more])&lt;br /&gt;
* Fixed chain signals getting stuck on red ([https://forums.factorio.com/17403 more])&lt;br /&gt;
* Fixed crash while rotating locomotives that crashed into something ([https://forums.factorio.com/17664 more])&lt;br /&gt;
* Fixed an issue causing desync. ([https://forums.factorio.com/17625 more])&lt;br /&gt;
* Fixed crash when loading save with Lua tables that are nested more than expected. ([https://forums.factorio.com/17707 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Added global log method that can be used to debug script problems.&lt;br /&gt;
* Added LuaFluidPrototype::localised_name property.&lt;br /&gt;
* Fixed that LuaInventory::insert didn&#039;t follow the slot restrictions. ([https://forums.factorio.com/17347 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.16 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed chain signal state propagation ([https://forums.factorio.com/14103 more]).&lt;br /&gt;
* Added &amp;quot;markers&amp;quot; that will be recognized by nVidia and AMD drivers as hints to run Factorio on high performance GPU if switchable Graphics technology is present. ([https://forums.factorio.com/17288 more])&lt;br /&gt;
* Improved burner inserter&#039;s fuel searching logic; it will now search both transport belt lines for fuel ([https://forums.factorio.com/17342 more]).&lt;br /&gt;
* Fixed crash when building locomotive on the junction. ([https://forums.factorio.com/17372 more])&lt;br /&gt;
* Fixed crash when the first lab is built by construction robots. ([https://forums.factorio.com/17411 more])&lt;br /&gt;
* Fixed crash related to train stopping for auto control. ([https://forums.factorio.com/17406 more])&lt;br /&gt;
* Removed the limit of 800 pixels height of the recipe GUI. ([https://forums.factorio.com/17059 more])&lt;br /&gt;
* Fixed problems with too big character windows with too big inventory (modded) on screens that can&#039;t hold it, by making it scrollable.&lt;br /&gt;
* Fixed problem with night vision effect on some PC configurations. ([https://forums.factorio.com/17317 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.15 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that it wasn&#039;t possible to execute UI actions while the game was stopped (research, tips and tricks etc.)&lt;br /&gt;
* Fix of fix of loading of game containing Lua objects.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.14 ==&lt;br /&gt;
&lt;br /&gt;
=== Graphics ===&lt;br /&gt;
* Added new smoke Graphics&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed loading of game containing duplicate Lua tables. ([https://forums.factorio.com/17275 more])&lt;br /&gt;
* Fixed flickering light intensity at the edge of the screen when moving.&lt;br /&gt;
* Fixed crash when pasting from empty clipboard into console on OS X.&lt;br /&gt;
* Fixed crash when reviving train stop that was connected to rail while destroyed while the rail no longer exists.&lt;br /&gt;
* Some UI actions made while the game was being saved were actually not executed although it looked like it. ([https://forums.factorio.com/16866 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.13 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that blueprint gates were colliding with ghost gates with same type and direction. ([https://forums.factorio.com/17151 more])&lt;br /&gt;
* Fixed that LuaEntity::clear_request_slot and set_request_slot wouldn&#039;t update the logistics GUI if it happened to be opened at the same time. This time it&#039;s fixed for logistic chests as well. ([https://forums.factorio.com/17196 more])&lt;br /&gt;
* Fixed crash when trying to open car GUIs in the map editor. ([https://forums.factorio.com/17148 more])&lt;br /&gt;
* Fixed the desync issues related to converting floating point numbers to string in Lua. ([https://forums.factorio.com/16638 more]) Note: until 0.13 other special values like nan, inf etc. are not solved properly, so they shouldn&#039;t be used.&lt;br /&gt;
* Fixed crash when loading a savegame with self recursive table elements. ([https://forums.factorio.com/17204 more])&lt;br /&gt;
* Fixed that furnaces deactivated improperly when switching products. ([https://forums.factorio.com/17146 more])&lt;br /&gt;
* Fixed crashes on Linux (when download failed, after Lua error, ...)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.12 ==&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed another solar panel counting error. ([https://forums.factorio.com/17138 more])&lt;br /&gt;
* Fixed that locale values in zip packages weren&#039;t loaded. ([http://www.factorioforums.com/forum/posting.php?t=17098 more])&lt;br /&gt;
* Fixed pushing of compound localized strings into Lua. ([https://forums.factorio.com/17134 more])&lt;br /&gt;
* Tweaked train path finding values for trains waiting on signals ([https://forums.factorio.com/17069 more]).&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* game.get_localised_entity_name is replaced by LuaEntityPrototype::localised_name read property. The same for technology and item.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.11 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Added --no-auto-pause: When running as a server, --no-auto-pause will prevent stopping the game when no players are connected.&lt;br /&gt;
=== Optimizations ===&lt;br /&gt;
* Optimised the particle performance. Helps during heavy fights.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Showing the log file location when the game crashes, so it is easier to find when reporting the bug.&lt;br /&gt;
* The &amp;quot;graphics.force-opengl&amp;quot; option default value is true when AMD Graphics card is present.&lt;br /&gt;
&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that multiple electric networks connected to a solar panel could be exploited to generate more energy. ([https://forums.factorio.com/16778 more]) The energy of the solar panel is now fractioned between all the networks it is connected to.&lt;br /&gt;
* Fixed character entities disconnected from players not working correctly when in vehicles. ([https://forums.factorio.com/16812 more])&lt;br /&gt;
* Fixed small-pump and offshore-pump not saving/restoring circuit conditions in LuaItemStack::get_blueprint_entities/set_blueprint_entities. ([https://forums.factorio.com/16715 more])&lt;br /&gt;
* Fixed threading issue when loading games. ([https://forums.factorio.com/16808 more])&lt;br /&gt;
* Fixed OS X Finder argument crashing the game on startup ([https://forums.factorio.com/16719 more]).&lt;br /&gt;
* Burner inserter now grabs fuel for itself even if the target doesn&#039;t need it.&lt;br /&gt;
* Fixed active sound playing on machines without power ([https://forums.factorio.com/16754 more]).&lt;br /&gt;
* Fixed empty unit groups crashing the game ([https://forums.factorio.com/16371 more]).&lt;br /&gt;
* Fixed crash when building locomotives in latency hiding.&lt;br /&gt;
* Fixed cannot load save with modded rails when a rail mod is disabled (will work only on 0.12.11+ saves) ([https://forums.factorio.com/16834 more]).&lt;br /&gt;
* Fixed crash when setting filters in the tank/car while riding in them. ([https://forums.factorio.com/16910 more])&lt;br /&gt;
* Fixed crash when migrating/removing entities marked for deconstruction. ([https://forums.factorio.com/16726 more])&lt;br /&gt;
* Removed one possible logical deadlock in the tutorial. ([https://forums.factorio.com/16980 more])&lt;br /&gt;
* Fixed that remove_item didn&#039;t remove from player ammo, gun, tool and armor slots. ([https://forums.factorio.com/16960 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Changed LuaSurface::set_multi_command signature. Now the function takes a table with following keys: command(required), unit_count(required), force(optional), unit_search_distance(optional) This solves issue with not finding any enemies to attack: [https://forums.factorio.com/16541 more]&lt;br /&gt;
* Removed game.on_save function. There should be no need for it and it was causing too many problems.&lt;br /&gt;
* Lua on_load function is not called when saving the game anymore. It is called only on actual load now.&lt;br /&gt;
* Lua API calls &#039;&#039;&#039;on_load&#039;&#039;&#039;, &#039;&#039;&#039;on_init&#039;&#039;&#039;, &#039;&#039;&#039;on_configuration_changed&#039;&#039;&#039;, &#039;&#039;&#039;on_event&#039;&#039;&#039; and &#039;&#039;&#039;generate_event_name&#039;&#039;&#039; have been moved to a new namespace called &#039;&#039;&#039;script&#039;&#039;&#039; (so from now use &#039;&#039;&#039;script.on_load&#039;&#039;&#039;(...)). This will break many mods! The callback registered in &#039;&#039;&#039;on_load&#039;&#039;&#039; function doesn&#039;t have access to the game API. This is to avoid common desyncs. The &#039;&#039;&#039;on_init&#039;&#039;&#039; and &#039;&#039;&#039;on_configuration_changed&#039;&#039;&#039; still retain the access to the game API.&lt;br /&gt;
* &#039;&#039;&#039;on_configuration_changed&#039;&#039;&#039; is fired when the map version changes, a mod version changes, a mod is added, or a mod is removed and passes &amp;quot;data&amp;quot;: Pushes old_version=&amp;quot;x.x.x&amp;quot;, new_version=&amp;quot;x.x.x&amp;quot; when loading map versions other than the current version When a mod version is changed it appears as a table of mod Changes {[&amp;quot;Mod name&amp;quot;] = {old_version=&amp;quot;x.x.x&amp;quot;, new_version=&amp;quot;x.x.x&amp;quot;}, ...} When a mod is added it appears as: [&amp;quot;Mod name&amp;quot;] = {old_version=nil, new_version=&amp;quot;x.x.x&amp;quot;} When a mod is removed it appears as: [&amp;quot;Mod name&amp;quot;] = {old_version=&amp;quot;x.x.x&amp;quot;, new_version=nil}&lt;br /&gt;
* Changed LuaGameScript::makefile to LuaGameScript::&#039;&#039;&#039;write_file&#039;&#039;&#039; and added an optional third parameter bool to append.&lt;br /&gt;
&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Replaced entity type &amp;quot;rail&amp;quot; with types &amp;quot;straight-rail&amp;quot; and &amp;quot;curved-rail&amp;quot;. Property &amp;quot;bending_type&amp;quot; is optional for rail entities, but is still mandatory for rail remnants.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.10 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Script created beam entities will now destroy themselves when the source or target entity becomes invalid.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed crash when research completed in the same tick as inserting equipment into power armor. ([https://forums.factorio.com/16545 more])&lt;br /&gt;
* Fixed hand not refilling with repair packs after a repair pack was consumed ([https://forums.factorio.com/16714 more]).&lt;br /&gt;
* Fixed small pump not saving its condition in a blueprint ([https://forums.factorio.com/16715 more]).&lt;br /&gt;
* Fixed rocket silo GUI bug. ([https://forums.factorio.com/16707 more])&lt;br /&gt;
* Fixed &amp;quot;failed to create display&amp;quot; error on systems with multiple Graphics devices ([https://forums.factorio.com/16730 more]).&lt;br /&gt;
* Fixed the blinking problem in the multiplayer. ([https://forums.factorio.com/16724 more])&lt;br /&gt;
* Fixed units disappearing when they shouldn&#039;t ([https://forums.factorio.com/16779 more]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.9 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Added reset button to the control settings dialog. It will set the controls back to the default.&lt;br /&gt;
=== Graphics ===&lt;br /&gt;
* Destroyer electric beams now use soft additive blend mode.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Added --load-game: Will automatically load a save after initializing Factorio and go straight to the game, skipping main menu.&lt;br /&gt;
* Moved MP / autosave information dialogues to the top half (better visibility of what is happening in the game) and added screen fading.&lt;br /&gt;
* Implemented time-to-live for deconstruction order, if an order is not assigned for 1 hour, it is removed.&lt;br /&gt;
* game.print_entity_statistics() has been moved to player.print_entity_statistics(). ([https://forums.factorio.com/16520 more])&lt;br /&gt;
* Updated the tips and tricks pictures. (+added copy paste)&lt;br /&gt;
* Smoothed map scrolling speed on different zoom levels.&lt;br /&gt;
* Added Resume button to multiplayer game menu.&lt;br /&gt;
=== Optimizations ===&lt;br /&gt;
* Dramatic speedup of loading packages (mods) from the zip files. It is recommended to used only zipped mods from now on, as on non ssd discs, it might even speed up the startup time.&lt;br /&gt;
* Added FPS limiter to main menu screen.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed the shotgun shooting. ([https://forums.factorio.com/16321 more])&lt;br /&gt;
* Fixed the game could get stuck during start on systems with multiple display adapters.&lt;br /&gt;
* Fixed train GUI closing immediately after opening in multiplayer when the player is riding on the train.&lt;br /&gt;
* Fixed train GUI not containing the wait time slider until a station was explicitly selected ([https://forums.factorio.com/16360 more]).&lt;br /&gt;
* Fixed production GUI jumping to undesirable places when resized ([https://forums.factorio.com/16356 more]).&lt;br /&gt;
* Construction robots will be transferred to appropriate network when a logistic network splits ([https://forums.factorio.com/16147 more]).&lt;br /&gt;
* Fixed crash when auto-re-filling ammo in tanks/cars ([https://forums.factorio.com/16375 more]).&lt;br /&gt;
* Fixed wait slider in train GUI editing after deleting a station ([https://forums.factorio.com/16471 more]).&lt;br /&gt;
* Fixed that negative emissions of power source (air filtering mod) could result into negative evolution factor.&lt;br /&gt;
* Fixed the game could hang when writing a message to log ([https://forums.factorio.com/16342 more]).&lt;br /&gt;
* Fixed next save not being selected properly after clicking the Delete Save button ([https://forums.factorio.com/16498 more]).&lt;br /&gt;
* Fixed module icons not showing in alt-view on rocket silos ([https://forums.factorio.com/16381 more]).&lt;br /&gt;
* Fixed mining progress bar staying on screen when not mining in certain situations ([https://forums.factorio.com/16448 more]).&lt;br /&gt;
* Fixed crash when loading 0.10 or older saves ([https://forums.factorio.com/16442 more]).&lt;br /&gt;
* Fixed crash when loading pre-12.7 scenarios with redefined spawn location ([https://forums.factorio.com/16569 more]).&lt;br /&gt;
* Fixed trains sometimes stopping on signals they reserved.&lt;br /&gt;
* Fixed personal roboport taking forever to deconstruct when there are a lot of deconstruction orders.&lt;br /&gt;
* Fixed a crash where the Lua stack would overflow and corrupt Factorio memory ([https://forums.factorio.com/16578 more]).&lt;br /&gt;
* Fixed crash when using player.inventory.clear(). ([https://forums.factorio.com/16579 more])&lt;br /&gt;
* Fixed that --create wouldn&#039;t create a control.Lua, causing the victory dialog not being shown after launching the rocket, or creating new players without giving them the initial inventory ([https://forums.factorio.com/16619 more]).&lt;br /&gt;
* Player &amp;lt;&amp;gt; entity transfer now ignores modules only when the entity has module inventory.&lt;br /&gt;
* Fixed beacons affected steel furnaces ([https://forums.factorio.com/16634 more]).&lt;br /&gt;
* Fixed car starting sound playing when opening it&#039;s GUI.&lt;br /&gt;
* Fixed crash when fast replacing a beacon (modded game only) ([https://forums.factorio.com/16677 more]).&lt;br /&gt;
* Fixed train station names appearing on minimap with certain GUI scale settings.&lt;br /&gt;
* Fixed crash when zooming in the map all the way with the keyboard ([https://forums.factorio.com/16643 more]).&lt;br /&gt;
* Fixed that LuaEntity::clear_request_slot and set_request_slot wouldn&#039;t update the logistics GUI if it happened to be opened at the same time ([https://forums.factorio.com/16660 more]).&lt;br /&gt;
* Fixed width of some progress bars did not respect UI scale configuration ([https://forums.factorio.com/16518 more]).&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Fixed projectiles with direction_only = false didn&#039;t respect direction_deviation configuration.&lt;br /&gt;
* Fixed entity dying explosion with &amp;quot;rotated = true&amp;quot; caused crash ([https://forums.factorio.com/16652 more]).&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Added LuaEntity::get_connected_rail. It takes a table with rail_direction (0 front, 1 back) and rail_connection_direction (0 left, 1 straight, 2 right) and returns a new rail (or nil) following that specification from the given rail entity.&lt;br /&gt;
* LuaTrain::front_rail, LuaTrain::back_rail, LuaTrain::rail_direction_from_front_rail and LuaTrain::rail_direction_from_back_rail None of the methods takes any parameters.&lt;br /&gt;
* LuaEntity::get_output_inventory now returns nil when the inventory doesn&#039;t exist (doesn&#039;t raise an exception as before).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.8 ==&lt;br /&gt;
&lt;br /&gt;
=== Graphics ===&lt;br /&gt;
* New Graphics of the steel furnaces.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that it was possible to spawn inside an entity in multiplayer.&lt;br /&gt;
* Fixed that the amount of slots shown in the right panel didn&#039;t depend on its with. (Which is indirectly dependent on resolution and UI scale.) ([https://forums.factorio.com/15513 more])&lt;br /&gt;
* Fixed desync issue related to mod event registration and saving/loading.&lt;br /&gt;
* Fixed enemy units getting stuck on transport belts ([https://forums.factorio.com/16148 more]).&lt;br /&gt;
* Fixed a crash caused by icon = &amp;quot;&amp;quot; in a prototype definition ([https://forums.factorio.com/16154 more]).&lt;br /&gt;
* Fixed a crash related to assembling machine not being re-setup when recipe changes due to mod changes. ([https://forums.factorio.com/16108 more])&lt;br /&gt;
* Fixed LuaItemStack::set_blueprint_entities(nil) erasing tiles in blueprints.&lt;br /&gt;
* Fixed crash when fast-transferring ammo while in vehicles. ([https://forums.factorio.com/16137 more])&lt;br /&gt;
* Fixed trains stopping on green signals ([https://forums.factorio.com/16033 more]).&lt;br /&gt;
* Fixed crash when changing the force of a player who is currently not connected.&lt;br /&gt;
* Fixed another problem with the missing maximise button after fullscreen. ([https://forums.factorio.com/16123 more])&lt;br /&gt;
* Fixed desync problem related to duplicate order string in inventory groups leading to non-deterministic inventory sorting. ([https://forums.factorio.com/16041 more])&lt;br /&gt;
* Fixed putting a blueprint on transport belt could corrupt game save ([https://forums.factorio.com/16186 more]).&lt;br /&gt;
* Fixed CTD that could happen when removing focused widget (rarely). ([https://forums.factorio.com/16129 more])&lt;br /&gt;
* Fixed that the tank tower rotation center wasn&#039;t aligned with the visible rotation center. ([https://forums.factorio.com/16312 more])&lt;br /&gt;
* Fixed wrong coordination of the tank cannon direction and shooting direction when aiming on near the tank. ([https://forums.factorio.com/16312 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Beams can now be created via create_entity. You need to specify source/source_position and target/target_position, you can also specify duration (ticks), max_length and source_offset (vector). Position of the created entity does not matter.&lt;br /&gt;
* Added LuaItemStack::set_blueprint_tiles/get_blueprint_tiles - the counterpart to get/set_blueprint_entities.&lt;br /&gt;
* LuaEntity::insert/remove_item and LuaInventory::insert/remove now return counts of inserted/removed items.&lt;br /&gt;
* Added LuaTrain::insert, remove_item, get_contents, clear_items_inside, get_item_count methods which interact on the cargo wagons of the train.&lt;br /&gt;
* Added LuaItemStack::cost_to_build - the cost in items to build a given blueprint.&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* The minimal energy_required for a recipe is 0.001 to avoid wrong behavior with values close to 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.7 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Added 5th level of character logistic slots research.&lt;br /&gt;
* New command line options for the headless server: -disallow-commands and --peer-to-peer&lt;br /&gt;
* Entries in the mod list GUI are highlighted in red only when enabled and invalid at the same time.&lt;br /&gt;
* Added natural case-insensitive string ordering for the mod list GUI.&lt;br /&gt;
* There is now only one spawn position per each force and per each surface. This means that only one spawn position can be defined in the map editor as it currently supports only the default surface and the &amp;quot;player&amp;quot; force.&lt;br /&gt;
* Added force-opengl value in config (under Graphics). When set to true, it forces to use opengl on windows instead of D3D.&lt;br /&gt;
* Map scrolling speed now changes with zoom level.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Inserters take items from correct line when the input transport belt is rotated ([https://forums.factorio.com/15127 more]).&lt;br /&gt;
* Solved the &amp;quot;A blocking operation was interrupted by a call to WSACancelBlockingCall&amp;quot; error (hopefully as we can&#039;t reproduce it). ([https://forums.factorio.com/14251 more])&lt;br /&gt;
* Scrolling using the scroll wheel now works much more predictably (not only when the cursor is over scroll bar or the root scrollable element). ([https://forums.factorio.com/9924 more])&lt;br /&gt;
* Fixed crash when a script attempted to access a previously-destroyed GUI element ([https://forums.factorio.com/14802 more]).&lt;br /&gt;
* Fixed that the Graphics.max-texture-size property in the config was removed after Factorio restart.&lt;br /&gt;
* Fixed the tree bounding boxes.&lt;br /&gt;
* Another attempt to fix map transfer problems.&lt;br /&gt;
* Fixed disappearing fonts. ([https://forums.factorio.com/13660 more])&lt;br /&gt;
* Fixed destroying a rail under a train would corrupt future save files. Rail can&#039;t be destroyed or die if a train is on it. ([https://forums.factorio.com/15353 more])&lt;br /&gt;
* Robots can charge from closer roboport when heading to distant roboport for stationing (2.0) ([https://forums.factorio.com/15234 more])&lt;br /&gt;
* Fixed problems with IPv6 on linux when only IPv4 is enabled in kernel. ([https://forums.factorio.com/15162 more])&lt;br /&gt;
* Fixed crash when loading save with modded personal roboport in vanilla game.&lt;br /&gt;
* Fixed opening power armour inside a chest with latency hiding enabled crashing the game ([https://forums.factorio.com/15529 more]).&lt;br /&gt;
* Fixed that distractor robots slowly drifted east.&lt;br /&gt;
* Fixed that that the high overload factor in assembling machines (the effect, that they allow to store more items when they are working very fast) wasn&#039;t taken in to consideration when calculating the slot limit. ([https://forums.factorio.com/15219 more])&lt;br /&gt;
* Fixed desync issue related to inventory sorting and blueprints. ([https://forums.factorio.com/15569 more])&lt;br /&gt;
* Fixed that amount_max in recipe specification actually worked as amount_max -1. ([https://forums.factorio.com/15589 more])&lt;br /&gt;
* Fixed that mining tiles did actually create mining particles+sound on the lastly mined entity.&lt;br /&gt;
* Fixed that the maximize button was disabled when Full screen was turned of in the settings. ([https://forums.factorio.com/15986 more])&lt;br /&gt;
* Fixed accessing the game menu was not possible when some other player paused the game in MP ([https://forums.factorio.com/15591 more]).&lt;br /&gt;
* Fixed a graphical bug where the boiler would still glow after running out of water ([https://forums.factorio.com/16011 more]).&lt;br /&gt;
* Fixed mergable items (repair packs, bullet magazines, ...) could sometimes confuse personal robots.&lt;br /&gt;
* Fixed the inserter sound related crashes. ([https://forums.factorio.com/13832 more])&lt;br /&gt;
* Blind fix of some of the transport belt gap issues. ([https://forums.factorio.com/15979 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* The LuaEntity::logistic_network now returns also primary logistic network of other entities than roboport. (Inserter, Character, logistic chests)&lt;br /&gt;
* Placing stone or concrete floors will now remove most of the bushes ([https://forums.factorio.com/13638 more]).&lt;br /&gt;
* Fixed crash on exit when config file can&#039;t be written ([https://forums.factorio.com/15436 more]).&lt;br /&gt;
* Fixed player changing direction when the game is paused ([https://forums.factorio.com/15233 more]).&lt;br /&gt;
* LuaEntity::belt_to_ground_type also works on a ghost.&lt;br /&gt;
* Increased precision of floating point in save files to prevent some desyncs in multiplayer ([https://forums.factorio.com/15037 more]).&lt;br /&gt;
* Added LuaEntity::revive() - usable on ghost entities to revive them back to normal.&lt;br /&gt;
* Fixed that that the resource amount while creating the entity accepted non-positive values. ([https://forums.factorio.com/15567 more])&lt;br /&gt;
* Added LuaForce::set_spawn_position(surface, position) and LuaForce::get_spawn_position(surface)&lt;br /&gt;
* Fixed that the event queue was never cleared when scripting error occurs while processing it. This lead to processing the same event every update once the game was stopped when error happened. ([https://forums.factorio.com/15564 more])&lt;br /&gt;
* Fixed inserting or removing items from player&#039;s inventory through LuaInventory object didn&#039;t update logistic supply properly. ([https://forums.factorio.com/16007 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.6 ==&lt;br /&gt;
&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category.&lt;br /&gt;
* Ambient settings can be controlled from the config file. By using: sound.ambient_music_pause_mean_seconds (default 60), sound.ambient_music_pause_variance_seconds (default 30) and ambient_music_mode: possible values are main-tracks-only, interleave-main-tracks-with-interludes, randomize-all (default is interleave)&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed setting circuit conditions desyncing/crashing multiplayer games. ([https://forums.factorio.com/15317 more])&lt;br /&gt;
* Fixed reading logistic_network from entities that didn&#039;t have logistic networks returning unknown results. ([https://forums.factorio.com/15360 more])&lt;br /&gt;
* Fixed that opening the Save Game menu after the last used saved was deleted would terminate Factorio ([https://forums.factorio.com/15363 more]).&lt;br /&gt;
* Fixed the behaviour of item on ground, that was created using script to contain many items. The inserter takes only the amount it can hold, and the stack stays there if it contains more ([https://forums.factorio.com/15318 more])&lt;br /&gt;
* Fixed destroying rail with gate would corrupt save file. ([https://forums.factorio.com/15348 more])&lt;br /&gt;
* Fixed two different problems related to loading map with different mod set. ([https://forums.factorio.com/15367 more])&lt;br /&gt;
* Fixed game freeze after desync happens for multiple players in server client mode.&lt;br /&gt;
* Fixed bug with ambient occasionally taking too long.&lt;br /&gt;
* The rotation of cargo wagon player is riding doesn&#039;t affect the riding direction. (While it still affects it while being in locomotive). ([https://forums.factorio.com/15292 more])&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category.&lt;br /&gt;
* Ambient settings can be controlled from the config file. By using: sound.ambient_music_pause_mean_seconds (default 30), sound.ambient_music_pause_variance_seconds (default 30) and ambient_music_mode: possible values are main-tracks-only, interleave-main-tracks-with-interludes, randomize-all (default is interleave)&lt;br /&gt;
* Fixed a performance problem in the pathfinder that would cause complete lack of enemy attacks in certain situations ([https://forums.factorio.com/15238 more]).&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Added LuaItemPrototype::module_effects read.&lt;br /&gt;
* LuaSurface::spill_item_stack will now additionally accept LuaItemStack objects as the stack to drop.&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Lab&#039;s researching speed is now independent of it&#039;s power consumption and can be changed using &amp;quot;researching_speed&amp;quot;. ([https://forums.factorio.com/15350 more])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.5 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* The armor window opening is included in the latency hiding.&lt;br /&gt;
* Multiplayer broadcast (heartbeats) is done via a single message when not using peer2peer.&lt;br /&gt;
* Added some new ambient sounds (wind, slow tunes).&lt;br /&gt;
* Combinators blinking emit light.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Pasting newlines and tabs into Factorio console now no longer strips them. Instead they are replaced by spaces.&lt;br /&gt;
* Continuous zoom is much slower in the chart mode. Only applicable when the zoom is setup to keys rather then scroll wheel. ([http://www.factorioforums.com/forum/posting.php?t=14985 more])&lt;br /&gt;
* Changed open/save dialog and the rail station list to use case insensitive natural ordering.&lt;br /&gt;
* Inserter stack size bonus is added to the assembling machine stack limit, to avoid inserters being stuck in certain situations. ([https://forums.factorio.com/15219 more])&lt;br /&gt;
* Robots can charge from closer roboport when heading to distant roboport for stationing. ([https://forums.factorio.com/15234 more])&lt;br /&gt;
=== Optimizations ===&lt;br /&gt;
* Further Optimizations in size of the Multiplayer heartbeat (message sent every tick).&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed that editing tiles in the map editor on the edge of currently generated map could result in a corrupted scenario.&lt;br /&gt;
* Fixed potential stability problems when fast-replacing roboports (mod related).&lt;br /&gt;
* Fixed non-deterministic armor sorting which could cause desyncs. ([https://forums.factorio.com/14892 more])&lt;br /&gt;
* Fixed crash related to changing recipe prototypes used by entities in inactive chunks. ([https://forums.factorio.com/14713 more])&lt;br /&gt;
* Fixed circuit network contents sometimes being reset when removing connections or merging networks. ([https://forums.factorio.com/14908 more])&lt;br /&gt;
* Fixed crash when Ctrl-clicking items to the player&#039;s main inventory when no character is attached ([https://forums.factorio.com/14952 more]).&lt;br /&gt;
* LatencyState is suspended when player is killed (and waiting for respawn) in the Multiplayer.&lt;br /&gt;
* Fixed crash after finishing the game in MP with headless server ([https://forums.factorio.com/14963 more]).&lt;br /&gt;
* Fixed crash related to displaying alerts from other surfaces ([https://forums.factorio.com/15000 more]).&lt;br /&gt;
* Continuous zoom speed is independent of the game speed ([https://forums.factorio.com/14985 more]).&lt;br /&gt;
* Fixed that it was possible to stack blueprints by inserting them into an assembling machine ([https://forums.factorio.com/14999 more]).&lt;br /&gt;
* Fixed enemy expansion chunks not being updated properly ([https://forums.factorio.com/14980 more]).&lt;br /&gt;
* Fixed trains changing state unnecessarily when reserving a signal when arriving to a station ([https://forums.factorio.com/14758 more]).&lt;br /&gt;
* Fixed smart inserter not waking up when its filter was set from a script ([https://forums.factorio.com/15172 more]).&lt;br /&gt;
* Fixed signal placement problems with diagonal rails ([https://forums.factorio.com/14991 more] [https://forums.factorio.com/14347 more]).&lt;br /&gt;
* Fixed last wagon of long train did not wake up inserter at its end ([https://forums.factorio.com/14042 more]).&lt;br /&gt;
* Additional fix of the puff smoke appearing on different surface. ([https://forums.factorio.com/15117 more])&lt;br /&gt;
* Fixed portions of previous surface visible after respawn when the player died on a different surface than is their spawn surface ([https://forums.factorio.com/15118 more]).&lt;br /&gt;
* Fixed internal roboport connection inconsistency that could happen when migrating from 0.11 version. ([https://forums.factorio.com/14723 more])&lt;br /&gt;
* Fixed train still having path while being in NO_SCHEDULE state ([https://forums.factorio.com/15226 more]).&lt;br /&gt;
* Fixed disconnecting roboport from roboport network caused all construction robots in the network to cancel orders ([https://forums.factorio.com/15187 more]).&lt;br /&gt;
* Fixed that the game could crash when some mod tried to modify the GUI in the on_save event. The game now disallows these kind of modifications while processing the on_save event. ([https://forums.factorio.com/15066 more])&lt;br /&gt;
* Fixed crash when changing recipes (mod related). ([https://forums.factorio.com/15166 more])&lt;br /&gt;
* Fixed solar energy source was not included in electric demand satisfaction. ([https://forums.factorio.com/14927 more])&lt;br /&gt;
* Finishing research should no longer interrupt GUI when &amp;quot;Singleplayer game stops when research is completed&amp;quot; is turned off ([https://forums.factorio.com/14967 more]).&lt;br /&gt;
* Fixed Underground Belts Graphics not tiling correctly.&lt;br /&gt;
* Fixed recipes not displaying in the correct sort order when adding and removing mods from an existing game.&lt;br /&gt;
* Fixed pathfinding penalty for trains with 1 stop in their schedule ([https://forums.factorio.com/15241 more]).&lt;br /&gt;
* Fixed electric furnace still glowing with no power. ([https://forums.factorio.com/15126 more])&lt;br /&gt;
* Fix of loading a map that contains mod with tiles, while the mod is no longer present.&lt;br /&gt;
* Fixed that it was not possible to use fast-replace when player was very close to the building. ([https://forums.factorio.com/8144 more])&lt;br /&gt;
* Right side selection info GUI has fixed size. Description and text properties properly wrap. ([https://forums.factorio.com/15139 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* LuaForce::chart now creates a new chart if one doesn&#039;t exist yet, instead of erroring out ([https://forums.factorio.com/15021 more]).&lt;br /&gt;
* Items now have a new optional attribute &amp;quot;stackable&amp;quot;: When set to false, assembling machines won&#039;t be allowed to create stacks of the item. Currently only used with blueprints, to fix the &amp;quot;crafting machine stacks blueprints&amp;quot; bug.&lt;br /&gt;
* Added LuaEntity::rocket_parts read/write, usable on Rocket Silo.&lt;br /&gt;
* Added LuaEntity::launch_rocket(), usable on Rocket Silo.&lt;br /&gt;
* Added LuaLogisticNetwork - an interface to logistic networks.&lt;br /&gt;
* Added LuaLogisticCell - an interface to logistic cells (roboport/player logistic information).&lt;br /&gt;
* Added LuaTransportLine::get_contents().&lt;br /&gt;
* Added LuaPlayer::connected read - true/false if the player is currently connected to the game.&lt;br /&gt;
* Added LuaForce::kill_counts read, set_kill_count/get_kill_count methods to access and manipulate kill counts per force.&lt;br /&gt;
* Constant combinators now export their wire connections in LuaItemStack::get_blueprint_entities. ([https://forums.factorio.com/15189 more])&lt;br /&gt;
* Added Prototype::order/group/subgroup read + LuaTechnology::order read.&lt;br /&gt;
* Added LuaRecipe::force read - the force that owns recipe reference.&lt;br /&gt;
* Added LuaEntity::chain_signal_state read - the chain state of chain signals.&lt;br /&gt;
* Added LuaEntity::speed read/write - the speed of a car/tank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.4 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Simple mechanism for multiplayer relaying via the server.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Renamed &amp;quot;multisampling&amp;quot; to &amp;quot;multisampling-level&amp;quot; in the config file. This will reset everyone&#039;s multisampling setting to 0.&lt;br /&gt;
* Construction robots take things primary from the main inventory, then quickbar.&lt;br /&gt;
* Reverted the order of inserter slot selection. ([https://forums.factorio.com/14656 more])&lt;br /&gt;
* Added Alt-mode (showing entity info) to the latency hiding.&lt;br /&gt;
* Trains now try to recalculate their path, when waiting over 5 seconds on a signal (only if needed). The recalculation is forced when waiting over 30 seconds.&lt;br /&gt;
* Construction robots will check if their target is still in the network area when they return to personal roboport for charging.([https://forums.factorio.com/14249 more])&lt;br /&gt;
* Tweaked the stuck resolve mechanism. This should solve the [https://forums.factorio.com/14403 more]&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Less annoying glitches when running and shooting in multiplayer with latency hiding.&lt;br /&gt;
* Fixed that the loot wasn&#039;t always properly put on transport belts. ([https://forums.factorio.com/14114 more])&lt;br /&gt;
* Fixed force building specific blueprints. ([https://forums.factorio.com/14622 more])&lt;br /&gt;
* Fixed setting player character to other player&#039;s character crashing the game. ([https://forums.factorio.com/14665 more])&lt;br /&gt;
* Fixed failed --apply-update returning success even when it failed ([https://forums.factorio.com/14681 more]).&lt;br /&gt;
* Fixed the latency hiding inconsistency in the entity transfer action, entity rotation, blueprint selection deconstruction selection and others.([https://forums.factorio.com/14585 more])&lt;br /&gt;
* Fixed ghost inserter arrows being displayed incorrectly ([https://forums.factorio.com/14659 more]).&lt;br /&gt;
* Zooming works comfortably also when mapped on buttons, as holding the button continuously zooms in/out instead of doing just one small zoom step.([https://forums.factorio.com/14662 more])&lt;br /&gt;
* Proper direction filtering (8 way versus 4 way) when building ghosts from script. The direction is now dependent on the ghost inner entity limitation.([https://forums.factorio.com/14625 more])&lt;br /&gt;
* Fixed that the new lamp entity was off-center. ([https://forums.factorio.com/14586 more])&lt;br /&gt;
* Fixed behemoth biter resistance specification. ([https://forums.factorio.com/14614 more])&lt;br /&gt;
* Fixed that the game could crash when connecting train in a junction. ([https://forums.factorio.com/10295 more])&lt;br /&gt;
* Fixed construction robots could cause desync when they used up all repair packs.&lt;br /&gt;
* Rocket silo behaves correctly when out of electricity. ([https://forums.factorio.com/14616 more])&lt;br /&gt;
* Fixed tank cannon shell tooltips. ([https://forums.factorio.com/13545 more])&lt;br /&gt;
* Fixed error message on campaign mission 4 ([https://forums.factorio.com/14510 more])&lt;br /&gt;
* Fixed crash when exiting the game in the map editor with the menu open.&lt;br /&gt;
* Fixed trains not alarming inserters when switched to manual mode when already stopped. ([https://forums.factorio.com/14367 more])&lt;br /&gt;
* Fixed connection failures on windows without IPv6 enabled ([https://forums.factorio.com/14053 more])&lt;br /&gt;
* Solved stuttering while building when max_expansion_distance was set to high values by a mod. ([https://forums.factorio.com/14761 more])&lt;br /&gt;
* Fixed robots getting stuck when trying to store damaged items. ([https://forums.factorio.com/14621 more])&lt;br /&gt;
* Fixed that lot of output in the output console could slow down the game a lot. ([https://forums.factorio.com/14775 more])&lt;br /&gt;
* Fixed that damage to be taken wasn&#039;t cleared when entity was rebuild by robots, so the entity was partially unkillable.&lt;br /&gt;
* Fixed that train stop rebuilt by robots wasn&#039;t working properly. ([https://forums.factorio.com/14364 more])&lt;br /&gt;
* Fixed crashes with invalid locale on Linux&lt;br /&gt;
* Fixed that Save scenario + Save as wasn&#039;t translatable. ([https://forums.factorio.com/14752 more])&lt;br /&gt;
* Changed the default style of custom text field to have not only minimal_width but also maximal_width 150. So all of the text-fields will not get larger on load, until the maximal_width is specified to be larger. ([https://forums.factorio.com/13650 more])&lt;br /&gt;
* Fixed that replay didn&#039;t work on the campaign levels. ([https://forums.factorio.com/14604 more])&lt;br /&gt;
* Fixed determinism issue in logistic network causing desync. ([https://forums.factorio.com/14140 more])&lt;br /&gt;
* Two trains never collide as long as they don&#039;t share a train block, this solves some problematic situations, where the end of the train collided with different track a little, while it was technically on different block already. ([https://forums.factorio.com/14558 more])&lt;br /&gt;
* Fixed copy&amp;amp;pasting filters between cars ([https://forums.factorio.com/14814 more]).&lt;br /&gt;
* Fixed crash in replay of game which was save and then loaded ([https://forums.factorio.com/14523 more])&lt;br /&gt;
* Fixed problems with RTL scripts ... again ([https://forums.factorio.com/12235 more])&lt;br /&gt;
* Fixed the crash when radar was created on a surface that didn&#039;t have chart initialized on the surface for the specific force.([https://forums.factorio.com/14831 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Fixed that inserter didn&#039;t return drop_position.&lt;br /&gt;
* Fixed crash when calling set_command on empty unit groups ([https://forums.factorio.com/14734 more]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.3 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Circuit wire building and repairing is incorporated in the latency hiding logic.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Cars of your own force always render their tags on the map.&lt;br /&gt;
* Multisampling not officially supported from now on.&lt;br /&gt;
  It can still be manually specified in the config, but not in the graphic settings GUI.&lt;br /&gt;
  The main reason is the trouble with tiling which doesn&#039;t really have a simple fix.&lt;br /&gt;
* Changed the console spam-prevention mechanic to check all messages for the last second instead of just the last entered one.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed the Invalid Transport Line Index error. ([https://forums.factorio.com/14358 more])&lt;br /&gt;
* Fixed signal selection window not displaying correctly when &amp;quot;Use item groups&amp;quot; is disabled. ([https://forums.factorio.com/14343 more])&lt;br /&gt;
* Fixed broken accumulator input flow limitation. ([https://forums.factorio.com/14411 more])&lt;br /&gt;
* Fixed trains viewing other trains with schedules with only 1 valid stop as not stopped ([https://forums.factorio.com/12853 more]).&lt;br /&gt;
* Fixed trains sometimes not recalculating their path when a new path opens up.&lt;br /&gt;
* Fixed shotgun damaging objects behind player. ([https://forums.factorio.com/14189 more])&lt;br /&gt;
* Fixed trains not being counted properly, when entering a block multiple times without leaving ([https://forums.factorio.com/13353 more]).&lt;br /&gt;
* Fixed copy&amp;amp;paste on Linux ([https://forums.factorio.com/13884 more])&lt;br /&gt;
* Fixed desync when trying to open an enemy structure ([https://forums.factorio.com/14471 more])&lt;br /&gt;
* Fixed changing forces of damaged entities could corrupt subsequent game saves. ([https://forums.factorio.com/14375 more])&lt;br /&gt;
* Fixed crash when clicking inventory item while dragging wire in latency hiding mode. ([https://forums.factorio.com/14383 more])&lt;br /&gt;
* Fixed that the smoke effect when building something always showed on the viewer surface. ([https://forums.factorio.com/14440 more])&lt;br /&gt;
* Fixed crash related to alerts on multiple surfaces. ([https://forums.factorio.com/14502 more])&lt;br /&gt;
* Fixed copy-paste for cars/tanks. ([https://forums.factorio.com/14513 more])&lt;br /&gt;
* Fixed single locomotives not rendering on the chart view.&lt;br /&gt;
* Fixed the non standard number format of big numbers in the research tooltip GUI. ([https://forums.factorio.com/14517 more])&lt;br /&gt;
* Fixed crash after finishing the game in multiplayer ([https://forums.factorio.com/14508 more]).&lt;br /&gt;
* Fixed construction robots got stuck when trying to take items from logistic trash slots ([https://forums.factorio.com/14554 more]).&lt;br /&gt;
* Fixed productivity bonus being lost with very high productivity values ([https://forums.factorio.com/14005 more])&lt;br /&gt;
* Fixed that script errors didn&#039;t stop the game, and it was possible to possible the game by pressing SEC.&lt;br /&gt;
* Fixed that non-default mods were not loaded during the first start of Factorio after mod-list.json was deleted.&lt;br /&gt;
* Fixed that inserter was always preferring the Left side when picking up from the underground belt. ([http://www.factorioforums.com/forum/posting.php?t=14544 more])&lt;br /&gt;
* Fixed robots from personal roboport would keep transferring items from chest which was ordered for deconstruction&lt;br /&gt;
  even after the chest gets out of the personal robot range. ([https://forums.factorio.com/14412 more])&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Implemented remove_item() for all entities that have items.&lt;br /&gt;
* Added LuaEntityPrototype::autoplace_specification read.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.2 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Enabled swapping held blueprints with other blueprints directly.&lt;br /&gt;
* Force-building blueprints will mark any colliding trees for deconstruction.&lt;br /&gt;
* Added filters to car and tank main inventories.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Inserters will never take more than the maximum stack size of the item.&lt;br /&gt;
* Way more relaxed timeouts for dropping peers during map uploads ([https://forums.factorio.com/14082 more]).&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Factorio with RTL languages no longer crashes on startup because of reversed font path.&lt;br /&gt;
* Fixed crash when removing mods that added/changed recipes ([https://forums.factorio.com/14029&amp;amp;p=94393#p94393 more]).&lt;br /&gt;
* Disabled repairing of combat robots ([https://forums.factorio.com/13984 more]).&lt;br /&gt;
* --start-server and --create now accept filenames with dots in them ([https://forums.factorio.com/13881 more]).&lt;br /&gt;
* Combinators will no longer turn off when no wires are connected ([https://forums.factorio.com/13957 more]).&lt;br /&gt;
* Shift + click will move items into logistic trash slots only in character GUI ([https://forums.factorio.com/14137 more]).&lt;br /&gt;
* Fixed circuit network crash when removing mods that changed the inserter ([https://forums.factorio.com/14141 more]).&lt;br /&gt;
* Fixed crashes related to migrating entities ([https://forums.factorio.com/14141 more]).&lt;br /&gt;
* Inserters and logistic robots no longer extract from enemy chests ([https://forums.factorio.com/14192&amp;amp;p=95512 more]).&lt;br /&gt;
* Fixed health bar display on large entities like the rocket silo ([https://forums.factorio.com/14188 more])&lt;br /&gt;
* Fixed crash when loading some maps that were migrated from early-0.11 versions ([https://forums.factorio.com/14128 more]).&lt;br /&gt;
* Inserters now correctly pick up items from splitters ([https://forums.factorio.com/14120 more], [https://forums.factorio.com/13518 more] more]).&lt;br /&gt;
* Picking up items from curved belts picks up from the correct line ([https://forums.factorio.com/14016 more]).&lt;br /&gt;
* Fixed that electric pole/roboport radius visualization were off-centered in low Graphics mode.&lt;br /&gt;
* Fixed that turrets had too small remnants.&lt;br /&gt;
* Fixed bug when removing roboports during load migration ([https://forums.factorio.com/14017&amp;amp;p=94291#p94291 more]).&lt;br /&gt;
* Empty autoplace tag in mod entity specification doesn&#039;t place entity at all ([https://forums.factorio.com/13420 more]).&lt;br /&gt;
* Fixed blueprints or armors getting erased when inserters move them.&lt;br /&gt;
  Fixed &amp;quot;Attempt to clone non empty blueprint&amp;quot; and &amp;quot;Attempt to clone armor with equipment grid&amp;quot; when inserters move them.&lt;br /&gt;
  ([https://forums.factorio.com/14179 more])&lt;br /&gt;
* Character doesn&#039;t get moved by neighbour transport belt after game load.&lt;br /&gt;
* Crafting entity tooltips show contents in order and now also show fluids ([https://forums.factorio.com/14211 more])&lt;br /&gt;
* Fixed missing belt activation in specific situation ([https://forums.factorio.com/14023 more])&lt;br /&gt;
* Fixed modded spitters could spit very far from their location when trying to destroy a tree ([https://forums.factorio.com/14106 more]).&lt;br /&gt;
* Map editor wire editing works again.&lt;br /&gt;
* Fixed beacons stopping working when the modules where removed and re-inserted ([https://forums.factorio.com/14275 more]).&lt;br /&gt;
* Fixed power armor GUI tooltips not showing sometimes.&lt;br /&gt;
* Fixed v-sync causing framerate to go bellow 60 when Windows Aero theme is enabled ([https://forums.factorio.com/13622 more]).&lt;br /&gt;
* Flame-thrower sounds volume is dependent on the distance of the player now. ([https://forums.factorio.com/13538 more])&lt;br /&gt;
* Tank can turn around without moving forward again. ([https://forums.factorio.com/13936 more])&lt;br /&gt;
* Fixed tile building/removal sometimes removing buildings or killing the player.&lt;br /&gt;
* Fixed tile building/removal sometimes creating or removing water.&lt;br /&gt;
* Fixed tile removal ignoring changes made in map editor.&lt;br /&gt;
* Fixed crashes when mining path tiles while map is generated.&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* get_surface never returns invalid surface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.1 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* Burner inserters start with enough energy to pick up 1 item and fuel them selfs.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Train station names use natural string comparing (station &amp;quot;Iron 10&amp;quot; comes after &amp;quot;Iron 9&amp;quot;, not after &amp;quot;Iron 1&amp;quot;).&lt;br /&gt;
* New command-line parameter: --latency-ms. Allows to set server latency in milliseconds rather than ticks&lt;br /&gt;
* You can copy paste circuit network conditions between Inserter, Lamp, Pump and Offshore Pump.&lt;br /&gt;
* The delete button in Load Game or Save Game dialogues now asks for confirmation before deleting&lt;br /&gt;
* Locomotive on schedule can&#039;t be rotated while moving anymore.&lt;br /&gt;
* Changed fast inventory transfer from the main player inventory so ctrl+clicking empty slots doesn&#039;t move items to the logistic trash slots.&lt;br /&gt;
* Changed Assembling machine&#039;s auto-insertion behaviour when using speed module effects. Faster speed with fast recipes will insert more items sooner.&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Very rough support for RTL languages, the texts are no longer rendered backwards (but the GUI still is and multiline text will cause problems).&lt;br /&gt;
* Fixed Rocket Silo rocket inventory tool tip sticking around when it shouldn&#039;t ([https://forums.factorio.com/13551 more]).&lt;br /&gt;
* Fixed furnaces rendering light when inactive ([https://forums.factorio.com/13532 more]).&lt;br /&gt;
* Fixed transport belt to ground in blueprints when rotating crashing the game ([https://forums.factorio.com/13572 more]).&lt;br /&gt;
* Fixed LuaSurface::can_place_entity checks for rails ([https://forums.factorio.com/13521 more]).&lt;br /&gt;
* Fixed inserters putting items only on left line of underground belts. ([https://forums.factorio.com/13519 more])&lt;br /&gt;
* Fixed ghost building concrete/stone not updating charting ([https://forums.factorio.com/13675 more]).&lt;br /&gt;
* Fixed ghost building concrete/stone distance being restricted ([https://forums.factorio.com/13662 more]).&lt;br /&gt;
* Fixed crash when leaving vehicle while on a transport belt entity ([https://forums.factorio.com/13616 more]).&lt;br /&gt;
* Fixed charging from primary and secondary energy sources (aka shield insta charge) ([https://forums.factorio.com/13564 more], [https://forums.factorio.com/13698 more]).&lt;br /&gt;
* Fixed crash when trying to set filter on vehicle ammo inventories ([https://forums.factorio.com/13684 more]).&lt;br /&gt;
* Fixed mining concrete/tiles sometimes making water where it shouldn&#039;t be ([https://forums.factorio.com/13735 more]).&lt;br /&gt;
* Fixed character-logistic-trash-slots-2 technology prerequisite ([https://forums.factorio.com/13596 more]).&lt;br /&gt;
* Fixed crash when calling game.player.surface.set_multi_command ([https://forums.factorio.com/13621 more])&lt;br /&gt;
* Fixed electric wire rendering on low Graphics quality settings ([https://forums.factorio.com/13520 more]).&lt;br /&gt;
* Fixed unable to load 0.11 savegames with active combat robots ([https://forums.factorio.com/13566 more]).&lt;br /&gt;
* Fixed robots building paths over existing paths not mining the existing paths first ([https://forums.factorio.com/13712 more]).&lt;br /&gt;
* Fixed personal robots would sometimes follow player instead of stationing when they use up all material for terrain building.&lt;br /&gt;
* Fixed splitters/transport belts still running when marked for deconstruction ([https://forums.factorio.com/13772 more]).&lt;br /&gt;
* Fixed death after launching the rocket not ending the game in single player ([https://forums.factorio.com/13701 more]).&lt;br /&gt;
* Fixed crash when disconnecting character from player while crafting ([https://forums.factorio.com/13561 more]).&lt;br /&gt;
* Fixed inserters sometimes not loading Rocket Silo after launch ([https://forums.factorio.com/13703 more]).&lt;br /&gt;
* Fixed circuit network sometimes showing items with no number.&lt;br /&gt;
* Fixed crash when the game attempted to play a sound in headless mode ([https://forums.factorio.com/13720 more])&lt;br /&gt;
* Fixed incorrect gun turret health ([https://forums.factorio.com/13748 more])&lt;br /&gt;
* Copy pasting now works for Small pumps and Offshore Pumps.&lt;br /&gt;
* Fixed crash when loading single-player save in multiplayer without &amp;quot;Allow commands&amp;quot; checked ([https://forums.factorio.com/13584 more]).&lt;br /&gt;
* Fixed not being able to set the UI scale back to normal after accidentally setting it to 200% ([https://forums.factorio.com/13750 more]).&lt;br /&gt;
* Fixed locomotive lights and vehicle indicators being rendered across different surfaces ([https://forums.factorio.com/13846 more]).&lt;br /&gt;
* Fixed not being able to fast-transfer stone bricks and concrete into entities.&lt;br /&gt;
* Fixed splitters giving priority to one input belt ([https://forums.factorio.com/13683 more]).&lt;br /&gt;
* Fixed actions during saves strangeness ([https://forums.factorio.com/13830 more]).&lt;br /&gt;
* Fixed logistic inconsistency when removing mods that added logistic/construction robots ([https://forums.factorio.com/13575 more]).&lt;br /&gt;
* Fixed crash when removing mods that added biter spawners ([https://forums.factorio.com/13575 more]).&lt;br /&gt;
* Fixed crash related to changing forces on units ([https://forums.factorio.com/13742 more]).&lt;br /&gt;
* Fixed assembling machines going to sleep when their fluid output had fluid but the ingredient slot didn&#039;t have enough item ingredients.&lt;br /&gt;
* Fixed crash when trying to read LuaSurface from disconnected player through mods ([https://forums.factorio.com/13910 more]).&lt;br /&gt;
* Fixed train going into automatic mode when hitting something (again) ([https://forums.factorio.com/10220 more]).&lt;br /&gt;
* Fixed laser turrets cause other electric machines to drain more power from accumulators than they should. ([https://forums.factorio.com/13878 more]).&lt;br /&gt;
* Fixed crashes when connecting to MP game on older Ubuntu (and possibly other distributions; [https://forums.factorio.com/13558 more])&lt;br /&gt;
* Fixed crash when projectile with default maximum range doesn&#039;t hit anything and flies forever ([https://forums.factorio.com/13956 more]).&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* LuaSurface::set_multi_command now takes an optional third argument specifying the force to send the command to. Default is the enemy force&lt;br /&gt;
* Default mods are always enabled if mod-list.json is lost (even when enable new mods option is disabled).&lt;br /&gt;
* LuaSurface can be invalid when read from LuaPlayer and Player entity if the player is disconnected from the game (MP disconnect) - use LuaSurface.valid to check.&lt;br /&gt;
  Note: LuaSurface currently never switches between valid and not valid so the check only has to be done when it&#039;s first read from the LuaPlayer.&lt;br /&gt;
* Changed default maximum range of projectiles from 10^308 to 1000.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 0.12.0 ==&lt;br /&gt;
&lt;br /&gt;
=== Features ===&lt;br /&gt;
* The game is now finished by launching the rocket with satellite.&lt;br /&gt;
* Added chain signals, they can be used to make more complicated junctions and stations without deadlocks.&lt;br /&gt;
* Added personal roboport as modular armor equipment. Once it is active, it uses the materials and robots in the players inventory. It supports all the tasks construction robots can do like building blueprints, repairing structures, deconstruction etc.&lt;br /&gt;
* Added logistic trash fields to the character GUI. They supply items into the logistic system in the same way active provider chests do.&lt;br /&gt;
* Added combinators (Arithmetic Combinator, Decider Combinator and Constant combinator). These allow more advanced manipulation with the circuit network logic ([https://www.factorio.com/blog/post/fff-88 more])&lt;br /&gt;
* The Lamp, Storage Tank, Small Pump and Offshore Pump can be connected to the circuit network.&lt;br /&gt;
* Multiplayer latency hiding (gives impression that some common tasks are performed immediately) Applies to character movement, mining buildings, building, fast replacing, opening guis, etc.&lt;br /&gt;
* Stone brick can be used to build stone path. (30% walking speed increase).&lt;br /&gt;
* Concrete can be created. The concrete can be used to build concrete floors (40% walking speed increase).&lt;br /&gt;
* Terrain modifies vehicle friction force (sand: 1.8, grass: 1.6, dirt: 1.4, stone path: 1.1, concrete: 0.8).&lt;br /&gt;
* Trees degenerate slowly when there high pollution levels.&lt;br /&gt;
* Lab research is now continuous. Science packs have progress bars of usage. This means that 20 labs doing research with 10 units will still be faster than 10 labs and the science packs aren&#039;t wasted.&lt;br /&gt;
* Assembling machine input slot can contain more than the usual stack size when the recipe requirement demands it (3 X recipe demand). Example: The rocket silo requires 1000 steel, while the stack size is 100, but the input stack can hold enough.&lt;br /&gt;
* Added / updated sounds for biters, spitters, worm, spawner, flamethrower, tank, lasers, etc.&lt;br /&gt;
* New ambient soundtrack added. Added mechanism that prevents playing track that was played recently. The ambient player alternates between neutral wind/environment sounds and soundtrack songs.&lt;br /&gt;
* Mousing over a train will show you its current path and blocks it can&#039;t enter.&lt;br /&gt;
* Locomotives now show the contents of attached cargo wagons in their tooltip.&lt;br /&gt;
* Trees regenerate health slowly.&lt;br /&gt;
* Added support for transferring contents/settings when fast-replacing all entity types.&lt;br /&gt;
* Added modules to the alt-view for entities that support modules.&lt;br /&gt;
* Factorio can run as a dedicated server without Graphics ([http://www.factorioforums.com/wiki/index.php?title=Multiplayer#Headless_server more]).&lt;br /&gt;
* Basic PvP: New forces can now be created and merged back together; a cease-fire can be agreed upon between forces&lt;br /&gt;
* IPv6 support for multiplayer.&lt;br /&gt;
* DNS names can be used when connecting to multiplayer game.&lt;br /&gt;
* Enabled mining trees/ghosts while holding blueprints to be built.&lt;br /&gt;
* Added explosive cannon shells.&lt;br /&gt;
* Building blueprints over existing ghosts restores the ghost time to live to full.&lt;br /&gt;
=== Changes ===&lt;br /&gt;
* Disabled loading of saves before 0.9.0 version (You can use 0.9.8 to load older saves and re-save them).&lt;br /&gt;
* Removed rocket defense entity.&lt;br /&gt;
* Items on transport belts don&#039;t go off the belt at the end, so the transport belt has to go directly in front of the required inserter.&lt;br /&gt;
* Reduced number of rendered Roboport connections.&lt;br /&gt;
* The trade in the marketplace only happens if the player can accept the trade items.&lt;br /&gt;
* Inserters can now extract from Roboports and Beacons.&lt;br /&gt;
* Inserters now take items from right behind them, not from the center of the pickup target entity.&lt;br /&gt;
* Copy entity settings mechanism now remembers only the last entity copied from. Also mechanism allows copy/paste across different entities of the same type (i.e. assembling machine 1 -&amp;gt; assembling machine 2) and from assembling machines to requester chests (sets filters to 2 x requirements of the assembling machine).&lt;br /&gt;
* Trees have generally smaller bounding boxes, so it is easier to walk through forest.&lt;br /&gt;
* Power armor modules generate and consume 100 times more power in order to be able to charge construction robots.&lt;br /&gt;
* The construction robots don&#039;t build gate in the gap between the rolling stock vehicles. They wait for the train to get away.&lt;br /&gt;
* Player&#039;s logistic filters are now remembered after respawn in multiplayer&lt;br /&gt;
* All turrets are now 2x2 (incorrectly stated as 4x4); laser turrets are 4x more expensive and powerful, gun turrets are 2x more expensive&lt;br /&gt;
* Roboport tooltip now shows correct numbers of construction and logistic robots separately.&lt;br /&gt;
* When a train loses a path and cannot find a new one, it stops immediately. This prevents it from riding into parts of the rail network, from where it can&#039;t find a path.&lt;br /&gt;
* Improvements to circuit network wire connection. You can connect multiple wires of the same color to the same entity.&lt;br /&gt;
* The autosave dialog no longer cancels an active blueprint or deconstruction planner selection if the mouse button is still held after the autosave finishes&lt;br /&gt;
* Number of autosave slots is now configurable through config.ini (no GUI).&lt;br /&gt;
&lt;br /&gt;
=== Optimizations ===&lt;br /&gt;
* Overall optimization of train + belt heavy factories is roughly 66% compared to 0.11, this means that the game runs 3 times faster.&lt;br /&gt;
* Optimised the transport belt movement.&lt;br /&gt;
* Optimised the rotated bounding box collisions checks (trains).&lt;br /&gt;
* Optimised the smoke update.&lt;br /&gt;
* Optimised the solar panel, all the solar panel input is merged, so the count doesn&#039;t matter.&lt;br /&gt;
* Optimised the accumulators by merging then into groups, where typical factory has 1 group per network.&lt;br /&gt;
* Optimised the land mine activation mechanism.&lt;br /&gt;
* Smaller multiplayer heartbeat packet size.&lt;br /&gt;
* Optimised adding/removing of roboport, robots keep their tasks if they can.&lt;br /&gt;
* Path finder will terminate when search is too long. This avoids save explosions (see [https://forums.factorio.com/12580 more]).&lt;br /&gt;
* Optimised rendering for large logistic networks.&lt;br /&gt;
* Fixed that the Graphics were saved twice in the RAM memory.&lt;br /&gt;
=== Graphics ===&lt;br /&gt;
* New Graphics of the combat robots.&lt;br /&gt;
* New Graphics of the laser/gun turrets, their color is now player/force dependent.&lt;br /&gt;
* New Graphics of muzzle flash for player, car, tank and turrets.&lt;br /&gt;
* New tree  Graphics. Trees have 4 levels of leaves and the leafs are color-able.&lt;br /&gt;
* Trees emit leaves (based on the tree color) when being mined and destroyed.&lt;br /&gt;
* Trees emit branches when mined or destroyed.&lt;br /&gt;
* Storage tank has a small window showing the liquid inside.&lt;br /&gt;
* Combat robots attack beam ([https://www.factorio.com/blog/post/fff-84 more])&lt;br /&gt;
* New GUI icons: Weapons, ammo, status icons such as out-of-ammo or out-of-electricity&lt;br /&gt;
=== Bug Fixes ===&lt;br /&gt;
* Fixed wrong item count in the logistic system when handling partially-filled magazines, repair packs or other items with durability&lt;br /&gt;
* Fixed the choppy (not smooth) movement when using the exoskeleton equipment.&lt;br /&gt;
* item-description localization now displays correctly when previewing recipes.&lt;br /&gt;
* entity-description localization now displays on entities.&lt;br /&gt;
* Proper blueprint centering. It is based on the included entities rather then the selection rectangle when the blueprint is created.&lt;br /&gt;
* Very big entities no longer disappear at the edge of the screen&lt;br /&gt;
* When putting things on ground, the first item was never put exactly under the cursor even when the place was empty.&lt;br /&gt;
* Fixed that it wasn&#039;t possible to swap stacks of the same items with different health.&lt;br /&gt;
* Fixed strange behavior of tank/car entering sound.&lt;br /&gt;
* Fixed LuaFluidBox crashing the game when attempting to read fluid from an entity that previously had fluidboxes.&lt;br /&gt;
* Car / Tank ammo inventory is refilled from the trunk / player inventory when exhausted.&lt;br /&gt;
* Fixed writing invalid LuaEntity::selected_gun_index crashing the game.&lt;br /&gt;
* Fixed the power armor battery level indicator getting drawn on top of everything else ([https://forums.factorio.com/8206 more]).&lt;br /&gt;
* Fixed that following robots created through trigger crashed the game.&lt;br /&gt;
* Fixed the train pathfinding issue when the train crashes to something while stopping for signal or station in front of a junction.&lt;br /&gt;
* Fixed that crashing to something while in manual mode in train could switch it to automatic mode.&lt;br /&gt;
* Fixed crashing when setting modded GUI styles in Multiplayer.&lt;br /&gt;
* Fixed crash when trying to read LuaPlayer::opened on a dead player.&lt;br /&gt;
* Fixed crash when canceling deconstruction of a logistic container that was marked for deconstruction after the logistic network it was in lost power and then regained power ([https://forums.factorio.com/10143 more]).&lt;br /&gt;
* Fixed LuaSurface::can_place_entity returning true when checking item-on-ground against item-on-ground ([https://forums.factorio.com/9247 more]).&lt;br /&gt;
* Turrets can now be modded to use shotgun (and other not guided) ammo.&lt;br /&gt;
* Fixed research window appearing behind the selection/minimap pane when shown from research completion ([https://forums.factorio.com/13235 more]).&lt;br /&gt;
* Fix inability to bind some OEM keys on Windows. Added the ability to bind more keys including multimedia keys. ([https://forums.factorio.com/10027 more])&lt;br /&gt;
* Fixed marking a ton of entities for deconstruction outside the construction range of roboports slowing down normal deconstruction rates.&lt;br /&gt;
* Fixed crash when removing electric poles from electric networks or circuit networks with large amounts of poles ([https://forums.factorio.com/13368 more]).&lt;br /&gt;
* Fixed video-memory-usage option on Windows. It is possible to run Factorio on configurations with low VRAM (less then 512MB). Other platforms don&#039;t have this issue.&lt;br /&gt;
* Fixed that control-clicking entire inventory into a machine installed modules.&lt;br /&gt;
* Fixed another instance of the &amp;quot;Trying to make chunk at unreasonable position&amp;quot; bug ([https://forums.factorio.com/13399 more]).&lt;br /&gt;
* Requester chests no longer request more than they can store. E.g. if a requester chest only has one free slot and the requester slider is set to request 20000 iron ore, the chest will only request one stack from the network ([https://forums.factorio.com/4604 more])&lt;br /&gt;
* Console no longer loses focus after an autosave ([https://forums.factorio.com/10025 more])&lt;br /&gt;
* Fixed wrong highlight when crafting ammo in vehicles ([https://forums.factorio.com/9620 more])&lt;br /&gt;
=== Modding ===&lt;br /&gt;
* Ambient sounds are specified as prototypes so they can be extended and modified by mods.&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* Changed all the identifiers/methods/events/parameters. Underscores are used as word delimiter (findentities -&amp;gt; find_entities).&lt;br /&gt;
* Changed glob to global.&lt;br /&gt;
* New object LuaSurface, accessible from player/entity as read property surface.&lt;br /&gt;
* Some commands moved from LuaGame to LuaSurface: get_pollution, can_place_entity, find_entity, find_entities, find_entities_filtered, find_non_colliding_position, find_enemy_units, find_nearest_enemy, set_multi_command, create_entity, create_unit_group, build_enemy_base, get_tile, get_tileproperties, set_tiles, pollute, get_chunks, is_chunk_generated&lt;br /&gt;
* Added LuaGame::local_player console command: when entered through the console it will reference the local player doing the console command. Only works when run through the console.&lt;br /&gt;
* Added LuaFluidPrototype - similar to LuaItemPrototype but for fluids.&lt;br /&gt;
* math.random can now accept negative values for ranges eg x + math.random(-10, 10)&lt;br /&gt;
* Added LuaRecipe::hidden and energy read.&lt;br /&gt;
* New object LuaGroup, accessible from LuaEntityPrototype as read property group/subgroup. LuaGroup contains: name, type, inventory_order, group, subgroups&lt;br /&gt;
* Added several new options to LuaEntityPrototype: mineable_properties, items_to_place_this, collision_box, selection_box, order, group, subgroup, healing_per_tick, emissions_per_tick, corpses, selectable_in_game, weight, resistances, fast_replaceable_group, loot, repair_speed_modifier&lt;br /&gt;
* LuaItemPrototype::group now returns the new LuaGroup object.&lt;br /&gt;
* Added LuaEntity::is_crafting() - returns true/false if the assembling machine or furnace is currently crafting a recipe.&lt;br /&gt;
* Added LuaEntity::crafting_progress/bonus_progress - a percent of 1: the current crafting progress or bonus progress.&lt;br /&gt;
* Added the ability to compare LuaObjects using &amp;quot;==&amp;quot; as in: &amp;quot;if game.player == game.players[1]&amp;quot; for all LuaObjects.&lt;br /&gt;
* Removed all LuaObject::equals(): the == operator can be used in its place.&lt;br /&gt;
* Added new blend modes for sprites using &amp;quot;blend_mode&amp;quot; property. Possible values: &amp;quot;normal&amp;quot;, &amp;quot;additive&amp;quot;, &amp;quot;multiplicative&amp;quot;.&lt;br /&gt;
* Added on_player_driving_changed_state event - passes the player_index who&#039;s driving state changed.&lt;br /&gt;
* Added LuaEntity::belt_to_ground_type - returns the type &amp;quot;input&amp;quot;/&amp;quot;output&amp;quot; of the transport-belt-to-ground.&lt;br /&gt;
* Added several methods for manipulating gates: is_opened, is_opening, is_closed, is_closing, request_to_open, request_to_close.&lt;br /&gt;
* Changed LuaEntity::neighbours:&lt;br /&gt;
  For electric poles: the wire connections: {copper={}, red={}, green={}}&lt;br /&gt;
  For transport-belt-to-ground: the input/output entity it&#039;s connected to (or none)&lt;br /&gt;
  For entities with fluid - the entities the fluid connections connect to indexed by the fluid connection&lt;br /&gt;
* #entity.fluidbox can now be read from any entity and will return the number of fluidboxes the entity has (0 for non-fluid handling entities).&lt;br /&gt;
* Added the ability to specify map colors for all entities: map_color, friendly_map_color, and enemy_map_color&lt;br /&gt;
* Added the ability to disable drawing the station name for train-stop type entities: chart_name = &amp;quot;false&amp;quot; in the prototype.&lt;br /&gt;
* LuaEntity::backer_name can now be read/written for all entities that support backer names (furnace, assembling machine, lab, locomotive, radar, roboport, trainstop).&lt;br /&gt;
* LuaEntity::recipe can now be set to nil to remove the recipe from an assembling machine.&lt;br /&gt;
* Added LuaItemPrototype default_request_amount, resistances, item_to_clear.&lt;br /&gt;
* Added LuaChart::chart_all (charts all the generated parts of the map).&lt;br /&gt;
* Expanded LuaEntity::get_item_count and LuaEntity::clear to work with all transport belt entities.&lt;br /&gt;
* New object LuaTransportLine, accessible from entity as read method get_transport_line(index) - an interface to the items on transport belts.&lt;br /&gt;
* Added LuaSurface::count_entities_filtered - the same as find_entities_filtered but simply returns a count. The benefits being: it&#039;s much faster than find_entities_filtered when the entity references aren&#039;t desired.&lt;br /&gt;
* Added LuaForce::enable_research() - enables research for the force if it was disabled.&lt;br /&gt;
* Added LuaSurface::spill_item_stack() - takes a item_stack and position and drops the items on the ground item bomb style.&lt;br /&gt;
* Changed LuaEntity::stack, LuaEntity::held_stack and LuaPlayer::cursor_stack to return LuaItemStack objects.&lt;br /&gt;
* Changed LuaItemStack to allow reading any inventory slot even when the item in the slot is invalid. LuaItemStack::valid_for_read should be used before accessing the normal properties/methods for a given LuaItemStack.&lt;br /&gt;
* Removed LuaEntity::clear_circuit_condition() - LuaEntity::set_circuit_condition(index, nil) can be used instead.&lt;br /&gt;
* Added &amp;quot;force&amp;quot; option to LuaSurface::find_entities_filtered/count_entities_filtered.&lt;br /&gt;
* ItemStack counts can be excluded and defaults to 1, ItemStacks can be strings and default to a full stack.&lt;br /&gt;
* Added LuaItemStack::count write support.&lt;br /&gt;
* Added LuaItemStack::can_set_stack(), set_stack(), clear() - write support to a specific item stack.&lt;br /&gt;
* Removed LuaEntity::stack, held_stack write support - LuaItemStack::set_stack() can be used.&lt;br /&gt;
* Removed LuaPlayer::cursor_stack write support - LuaItemStack::set_stack() can be used.&lt;br /&gt;
* Added LuaTrain::cargo_wagons read - returns only the cargo wagons for the given train.&lt;br /&gt;
* Added LuaEntity::remove_market_item - takes an index to remove from a Market entity offer list.&lt;br /&gt;
* Added LuaEntity::get_market_items - returns a table of offers the Market entity offers.&lt;br /&gt;
* Added LuaForce::research_progress read/write - a percent of 1 - the current research progress (0 if no research).&lt;br /&gt;
* Added LuaEntityPrototype::turret_range read - the range of a given turret entity prototype.&lt;br /&gt;
* Added player_index to the on_put_item event.&lt;br /&gt;
* Added ghosts from manual building and blueprints to the on_built_entity event.&lt;br /&gt;
* Added LuaPlayer::enable_flashlight() - counterpart to disable_flashlight().&lt;br /&gt;
* Replaced LuaGameScript::kill_all_enemies() by LuaForce::kill_all_units().&lt;br /&gt;
* Changed on_researched events to return the relayed LuaTechnology object.&lt;br /&gt;
* Added LuaTechnology::force read - the LuaForce the technology belongs to.&lt;br /&gt;
* Added LuaGame::create_surface - takes a string name and optionally a table of map gen settings and creates a new surface.&lt;br /&gt;
* Changed LuaPlayer::teleport to allow optionally a surface name, index or object to teleport the player to. The surface must exist.&lt;br /&gt;
* Added LuaSurface::request_to_generate_chunks - takes a position and radius and requests to generate those chunks - will not generate chunks outside the map bounds.&lt;br /&gt;
* Added LuaSurface::map_gen_settings - the current map gen settings for the surface.&lt;br /&gt;
* Added LuaGame::server_save - in a multiplayer game with a server, this will make the server save the game. Only works with a headless server, i.e. one launched through the --start-server option.&lt;br /&gt;
* Added LuaGuiElement::parent read - the parent of the LuaGuiElement if any else nil.&lt;br /&gt;
* Added LuaPlayer::index read - the numeric index of the LuaPlayer object.&lt;br /&gt;
&lt;br /&gt;
{{VersionNav}}&lt;br /&gt;
[[Category:Version history]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Holmium_ore&amp;diff=212949</id>
		<title>Holmium ore</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Holmium_ore&amp;diff=212949"/>
		<updated>2025-03-24T16:51:46Z</updated>

		<summary type="html">&lt;p&gt;Luc: add a gotcha for productivity, since holmium ore can be a bottleneck for most bases and then scrap productivity is important&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{:Infobox:Holmium ore}}&lt;br /&gt;
{{About/Space age}}&lt;br /&gt;
&#039;&#039;&#039;Holmium ore&#039;&#039;&#039; is a rare resource that can only be found on [[Fulgora]]. It has a 1% chance to be extracted from [[scrap recycling]], and can be found in [[fulgorite]] deposits.&lt;br /&gt;
&lt;br /&gt;
The only recipe which consumes holmium ore is [[holmium solution]], which is a [[Fluid system|fluid]]. Because [[quality]] does not apply to fluids, high-quality holmium ore provides no benefits. The holmium solution recipe also requires [[stone]], so to consume holmium ore of a particular quality, stone of equal quality must also be provided.&lt;br /&gt;
&lt;br /&gt;
== Scrap calculation ==&lt;br /&gt;
To get 1 holmium ore, 100 scrap need to be processed on average. This will result in also getting, on average:&lt;br /&gt;
* 1 [[Low density structure]]&lt;br /&gt;
* 2 [[Processing unit]]s&lt;br /&gt;
* 3 [[Advanced circuit]]s&lt;br /&gt;
* 3 [[Copper cable]]s&lt;br /&gt;
* 4 [[Battery|Batteries]]&lt;br /&gt;
* 4 [[Steel plate]]s&lt;br /&gt;
* 4 [[Stone]]&lt;br /&gt;
* 5 [[Ice]]&lt;br /&gt;
* 6 [[Concrete]]&lt;br /&gt;
* 7 [[Solid fuel]]&lt;br /&gt;
* 20 [[Iron gear wheel]]&lt;br /&gt;
&lt;br /&gt;
Note that scrap productivity only works properly if the recycler processes (nearly) only scrap: if you have 50% productivity on scrap recycling and the recycler processes one piece of scrap, the productivity progress bar goes to 50%. If the item directly afterwards is again scrap, it will fill to 100% and you get the bonus. But, if you process something else instead, the progress is lost and starts again at 0%.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
{{history|2.0.7|&lt;br /&gt;
* Introduced in [[Space Age]]{{SA}} expansion.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Fulgora]]{{SA}}&lt;br /&gt;
* [[Recycler]]{{SA}}&lt;br /&gt;
* [[Scrap]]{{SA}}&lt;br /&gt;
&lt;br /&gt;
{{IntermediateNav}}&lt;br /&gt;
{{C|Resources}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Galaxy_of_Fame&amp;diff=211814</id>
		<title>Galaxy of Fame</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Galaxy_of_Fame&amp;diff=211814"/>
		<updated>2025-02-23T03:27:46Z</updated>

		<summary type="html">&lt;p&gt;Luc: /* Star Position */ make coordinate names match how they are afaik shown in the game and galaxy URL; add stats on how many stars are in central quadrants; and it&amp;#039;s not impossible to find your star if you do a naïve bisection search...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
[[File:Galaxy_of_fame.png|thumb|600px|right|The Galaxy of Fame as it appeared on 17 December 2024]]&lt;br /&gt;
{{About/Space age}}&lt;br /&gt;
The [https://factorio.com/galaxy Galaxy of Fame] is a feature available upon beating Factorio: Space Age. It is a database of saves that have beaten the expansion, able to be viewed on the Factorio website. It appears as a vast galaxy of stars of all size and colors. Each star belongs to one particular player who has beaten Space Age. Clicking on a star will bring up a snapshot of that player&#039;s save.&lt;br /&gt;
&lt;br /&gt;
After reaching the [[solar system edge]]{{SA}} and viewing the victory screen, the player will be invited to upload a snapshot of their save to the Galaxy of Fame. Only one snapshot can be uploaded per player; uploading a new snapshot will override the previous one. The player can also include a custom name and comment. After uploading, the game will provide a link to the player&#039;s snapshot on the Factorio website.&lt;br /&gt;
&lt;br /&gt;
After winning, the &amp;quot;Galaxy of Fame&amp;quot; button will appear on the main menu. Clicking it will allow the player to upload a new snapshot, or click the link to the existing snapshot.&lt;br /&gt;
&lt;br /&gt;
== Snapshot ==&lt;br /&gt;
&lt;br /&gt;
[[File:Kovarex_gof.png|thumb|600px|right|The Galaxy of Fame snapshot of lead developer [https://www.factorio.com/galaxy/Iron%20I:%20Alpha1-1.A1W3 kovarex].]]&lt;br /&gt;
&lt;br /&gt;
The Galaxy of Fame includes the following information:&lt;br /&gt;
* A custom name &amp;amp; comment (optional)&lt;br /&gt;
* The date of upload&lt;br /&gt;
* Time played&lt;br /&gt;
* Game version&lt;br /&gt;
* Map seed&lt;br /&gt;
* Player count&lt;br /&gt;
* List of mods&lt;br /&gt;
** This includes both the four mandatory mods (Base, Elevated Rails, Quality, and Space Age) and any user-created mods.&lt;br /&gt;
* Map views of the five planets, in the order they were visited&lt;br /&gt;
* Map views of all [[space platform]]s{{SA}}, in the order they were created&lt;br /&gt;
* A full list of the number of all items produced&lt;br /&gt;
* A full list of the amount of energy produced by each [[power production|power source]]&lt;br /&gt;
* A full list of the number of kills, including all [[asteroids|asteroid]] varieties&lt;br /&gt;
&lt;br /&gt;
== Star Position ==&lt;br /&gt;
The position, color, and size of a player&#039;s star is randomized upon upload. Given the vast number of stars in the galaxy, it can be difficult to locate your own star on the map by searching manually. However, each star&#039;s position is fixed and will always be in the same place.&lt;br /&gt;
&lt;br /&gt;
Each star is placed by a set of coordinates which can be read to reliably locate it on the map. A star&#039;s coordinates can be located within the URL of the snapshot that is provided upon upload. As an example, the following is the coordinates for the snapshot of lead developer Kovarex:&lt;br /&gt;
&lt;br /&gt;
Iron I: Alpha1-1.A1W3&lt;br /&gt;
&lt;br /&gt;
==== Sector ====&lt;br /&gt;
&lt;br /&gt;
The first word of the URL, named after an item, designates one of sixteen sectors within the galaxy, laid out on a grid pattern. The four central sectors, containing the majority of stars (28&#039;900 out of 32&#039;600, as of February 2025), are named Iron, Quantum, Sulfur, and Calcite, and are marked in &#039;&#039;&#039;bold&#039;&#039;&#039; in the chart below.&lt;br /&gt;
The sectors as they are currently known, are laid out like this.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Copper || Ammonia || Fluorine || Carbon&lt;br /&gt;
|-&lt;br /&gt;
| Bioflux || &#039;&#039;&#039;Quantum&#039;&#039;&#039; || &#039;&#039;&#039;Iron&#039;&#039;&#039; || Stone&lt;br /&gt;
|-&lt;br /&gt;
| Lithium || &#039;&#039;&#039;Sulfur&#039;&#039;&#039; || &#039;&#039;&#039;Calcite&#039;&#039;&#039; || Electrolyte&lt;br /&gt;
|-&lt;br /&gt;
| Uranium || Tungsten || Holmium || Yumako&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Quadrant ====&lt;br /&gt;
&lt;br /&gt;
The numeral after the sector name designates one of four numbered quadrants within a sector. The table below shows the layout the quadrants within the Iron sector as an example. Each sector has its quadrants split up in the same pattern, so the quadrant to the immediate left of &amp;quot;Iron III&amp;quot; would be &amp;quot;Quantum IV&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Iron III || Iron IV&lt;br /&gt;
|-&lt;br /&gt;
| Iron I || Iron II&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Region ====&lt;br /&gt;
&lt;br /&gt;
The second word, named after a letter of the Greek alphabet, designates a region within a quadrant. Each quadrant contains 9 regions. Their position within the quadrants are structured as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Eta || Theta || Iota&lt;br /&gt;
|-&lt;br /&gt;
| Delta || Epsilon || Zeta&lt;br /&gt;
|-&lt;br /&gt;
| Alpha || Beta || Gamma&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The two numbers after the region name designate the star&#039;s location within the region. Each number can go between 1 and 7. The first number increases from left to right, while the second increases from bottom to top. The two of them together position the star within a region. For example, a number of 1-1 designates a position within the bottom left of its region; 1-7 in the top left, and so on.&lt;br /&gt;
&lt;br /&gt;
==== Exact position ====&lt;br /&gt;
&lt;br /&gt;
Following the dot, the final pair of letter-number sets designates the exact position within a region. Letters go from A to G (the first letter) and T to Z (the second), and increase from left to right. The first letter will only be advanced by one when the second letter advances through all 26 letters. For example, A1Z1 comes before B1Y1. Numbers once again go between 1 and 7 and increase from bottom to top. The same rule from letters applies to numbers.&lt;br /&gt;
&lt;br /&gt;
As a final example, a coordinate of Quantum II: Gamma5-1.A7Z1 will give a position as follows:&lt;br /&gt;
* Quantum sector&lt;br /&gt;
* Bottom right of Quantum II quadrant&lt;br /&gt;
* Bottom middle of Gamma region&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
{{history|2.0.10|&lt;br /&gt;
* Galaxy of fame. Offered when the game is finished.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Damage&amp;diff=210279</id>
		<title>Damage</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Damage&amp;diff=210279"/>
		<updated>2025-01-27T15:11:10Z</updated>

		<summary type="html">&lt;p&gt;Luc: /* Resistance */ Bottom line up front: first mention how it&amp;#039;s shown in game and what that basically means, before going into details in subsections&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
[[File:player_attacked_by_biters_small.png|thumb|300px|right|Red flashing while taking damage.]]Taking &#039;&#039;&#039;damage&#039;&#039;&#039; is the effect of lowering the health of the [[player]], [[enemies]] or other entities.&lt;br /&gt;
== Overview ==&lt;br /&gt;
In Factorio, entities have health, can die/be destroyed, and have resistances. &#039;&#039;Damage&#039;&#039; is defined as the concept of lowering an entity&#039;s health by using an attack, such as a gun firing at it, or a biter chewing on it. An entity&#039;s resistances will define exactly how much damage the entity will take off of an arbitrary attack.&lt;br /&gt;
&lt;br /&gt;
The player&#039;s maximum health is 250 (without [[energy shield]]s), and this limit can be increased through the [[Health_(research)|Health]]{{SA}} technology. Other entities&#039; health values are listed in their individual entries.&lt;br /&gt;
&lt;br /&gt;
== Achievements ==&lt;br /&gt;
The concept of damage is directly connected to the following achievements:&lt;br /&gt;
{{Achievement|run-forrest-run}}&lt;br /&gt;
{{Achievement|pyromaniac}}&lt;br /&gt;
{{Achievement|steamrolled}}&lt;br /&gt;
{{Achievement|golem}}&lt;br /&gt;
{{Achievement|watch-your-step}}&lt;br /&gt;
&lt;br /&gt;
== Damage types ==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Damage type !! Used by&lt;br /&gt;
|-&lt;br /&gt;
| Physical || {{Icon|Firearm magazine}}{{Icon|piercing rounds magazine}}{{Icon|uranium rounds magazine}}Bullets, {{Icon|shotgun shells}}{{Icon|Piercing shotgun shells}}shotgun shells, {{IconLink|railgun ammo||space-age=yes}}, {{IconLink|defender capsule}}&lt;br /&gt;
[[Enemies#Biters|Biters]] and [[Enemies#Wrigglers|wriggler pentapods]] {{SA}}&lt;br /&gt;
|-&lt;br /&gt;
| Physical and explosion || {{Icon|cannon shell}}{{Icon|explosive cannon shell}}{{Icon|uranium cannon shell}}{{Icon|explosive uranium cannon shell}}Cannon shells, {{IconLink|artillery shell}}&lt;br /&gt;
|-&lt;br /&gt;
| Impact || Collision (of [[Locomotive|train]]/[[car]]/[[tank]])&lt;br /&gt;
|-&lt;br /&gt;
| Fire || {{IconLink|Flamethrower ammo}}, {{IconLink|flamethrower turret}}&lt;br /&gt;
|-&lt;br /&gt;
| Acid || [[Enemies#Spitters|Spitters]], [[Enemies#Worms|worms]], and [[Enemies#Stompers|stomper pentapods]] {{SA}}&lt;br /&gt;
|-&lt;br /&gt;
| Poison || {{IconLink|Poison capsule}}&lt;br /&gt;
[[Enemies#Wrigglers|Wriggler pentapods]] {{SA}}&lt;br /&gt;
|-&lt;br /&gt;
| Explosion || {{Icon|Rocket}}{{Icon|explosive rocket}}{{Icon|atomic bomb}}Rockets, {{Icon|Grenade}}{{Icon|cluster grenade}}grenades, {{IconLink|land mine}}&lt;br /&gt;
[[Enemies#Strafers|Strafer pentapods]] {{SA}}&lt;br /&gt;
|-&lt;br /&gt;
| Laser || {{IconLink|Laser turret}}, {{IconLink|distractor capsule}}, {{IconLink|personal laser defense}}&lt;br /&gt;
|-&lt;br /&gt;
| Electric || {{IconLink|Discharge defense}}, {{IconLink|destroyer capsule}}, {{IconLink|tesla ammo||space-age=yes}}, {{IconLink|tesla turret||space-age=yes}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Piercing power ===&lt;br /&gt;
Piercing power is present with [[tank]] ammunition. It determines how much HP of enemies can a projectile damage before it is no longer able to travel further. To penetrate an enemy, the enemy has to be killed by the projectile, and the damage dealt for the kill must be less than current piercing power.[https://forums.factorio.com/viewtopic.php?f=5&amp;amp;t=30917] The damage dealt also decreases piercing power. For example, shooting medium biters with 75 health with a cannon shell of 300 piercing power means that the shell will pierce through 4 medium biters, killing them, and still destroy/damage one more target.&lt;br /&gt;
&lt;br /&gt;
== Resistance ==&lt;br /&gt;
Resistances to specific damage types can be written in two ways:&lt;br /&gt;
&lt;br /&gt;
* A percentage, such as: &amp;quot;Physical: 10%&amp;quot;. The incoming damage of this type is simply reduced by this percentage.&lt;br /&gt;
* A flat decrease, followed by the percentage, such as: &amp;quot;Physical: 25/10%&amp;quot;. This means that incoming damage is reduced by 25 points first, before reducing it by 10%.&lt;br /&gt;
&lt;br /&gt;
Shooting at an object with a physical resistance of &amp;quot;25/10%&amp;quot; has nearly no effect when the bullets inflict less than 25 damage points each. If each bullet does 45 damage points, then the resistance of 25 is subtracted first, and the remaining 20 damage points are reduced by 10%, resulting in 18 damage points being imparted on the target object.&lt;br /&gt;
&lt;br /&gt;
The following two subsections explain the two resistance calculations in detail.&lt;br /&gt;
&lt;br /&gt;
=== Decrease, or &amp;quot;flat&amp;quot; resistance ===&lt;br /&gt;
Decrease resistance decreases the damage by specified number as long as the resulting damage wouldn&#039;t be less than 1. If the result damage would be less than 1, an alternate formula is used.&lt;br /&gt;
Let R denote the flat resistance value, D the incoming damage, and M the modified damage (that is, the damage after accounting for flat resistance). Then&lt;br /&gt;
&lt;br /&gt;
if R+1&amp;lt;D&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;M=D-R&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
otherwise if D&amp;gt;1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;M=1/(R-D+2)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;M=1/(R+1)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If flat resistance matches or exceeds the raw damage, then modified damage is asymptotic towards 0, as shown by following example table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Damage !! Flat Resistance !! Modified damage (with 0% resistance)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 0 || 5&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 1 || 4&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 2 || 3&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 3 || 2&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 4 || 1&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 5 || 1/2&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 6 || 1/3&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 7 || 1/4&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 8 || 1/5&lt;br /&gt;
|-&lt;br /&gt;
| ... || ... || ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Percentage resistance ===&lt;br /&gt;
&lt;br /&gt;
Percentage resistance reduces the damage by the specified percent. It is applied &#039;&#039;after&#039;&#039; flat/decrease resistances (if both are present) and thus changes the &#039;modified damage&#039; value above, decreasing it by the specified percentage. If the value is 100%, the entity is immune to the damage. This is the only way to have an entity immune to a type of damage, as flat reduction cannot reduce damage to less than 1.&lt;br /&gt;
&lt;br /&gt;
As an example, an entity with 25% resistance to physical damage hit with a bullet dealing 100 physical damage would take 75 damage instead of 100.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The formula used for percentage resistance to damage is as follows:&lt;br /&gt;
&lt;br /&gt;
Let M denote the flat-resistance-modified starter damage, and let P denote the percentage resistance (in decimal form, so 25%=0.25), and let F denote final damage.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;F = M * (1 - P)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Combined formulas ==&lt;br /&gt;
Let D denote the raw incoming damage (of applicable type), R denoted the flat resistance value (against damage of the applicable type), P the percentage resistance (against damage of the same type) in decimal form (e.g. 20%=0.2), and let F denote the final damage (of applicable type) dealt to the target.&lt;br /&gt;
=== If R+1&amp;lt;D ===&lt;br /&gt;
F = (D - R) * (1 - P)&lt;br /&gt;
=== otherwise if D&amp;gt;1 ===&lt;br /&gt;
F = (1 - P) / (R-D+2)&lt;br /&gt;
=== otherwise ===&lt;br /&gt;
F = (1 - P) / (R+1)&lt;br /&gt;
&lt;br /&gt;
{{C|Main}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Command_line_parameters&amp;diff=180204</id>
		<title>Command line parameters</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Command_line_parameters&amp;diff=180204"/>
		<updated>2020-06-11T11:35:38Z</updated>

		<summary type="html">&lt;p&gt;Luc: no shit that --heavy runs it in heavy mode... add some more info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}__TOC__&lt;br /&gt;
&lt;br /&gt;
Command line parameters can be used to set settings in the command line before the game launches, this is useful mainly for advanced users or server hosts. This page pertains to version 0.17.79.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+General options&lt;br /&gt;
|-&lt;br /&gt;
| -h, --help&lt;br /&gt;
| display help&lt;br /&gt;
|-&lt;br /&gt;
| --version&lt;br /&gt;
|show version information&lt;br /&gt;
|-&lt;br /&gt;
| -v, --verbose&lt;br /&gt;
|enable verbose logging&lt;br /&gt;
|-&lt;br /&gt;
| -c, --config PATH&lt;br /&gt;
|config file to use&lt;br /&gt;
|-&lt;br /&gt;
| --no-log-rotation&lt;br /&gt;
|don&#039;t rotate log file&lt;br /&gt;
|-&lt;br /&gt;
| --mod-directory PATH&lt;br /&gt;
|Mod directory to use&lt;br /&gt;
|-&lt;br /&gt;
| --check-unused-prototype-data&lt;br /&gt;
|Print a warning for all prototype values that were not accessed. Note for mod authors: If an entry is unused and is a table that contains the key/value pair &#039;ignore&#039; with the value &#039;true&#039; then the entire entry is ignored.&lt;br /&gt;
|-&lt;br /&gt;
| --executable-path PATH&lt;br /&gt;
|Override autodetected __PATH__executable. Usually not needed except on very weird systems.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Running options&lt;br /&gt;
|-&lt;br /&gt;
| -s, --map2scenario arg&lt;br /&gt;
|map to scenario conversion&lt;br /&gt;
|-&lt;br /&gt;
| -m, --scenario2map arg&lt;br /&gt;
|scenario to map conversion&lt;br /&gt;
|-&lt;br /&gt;
| --apply-update arg&lt;br /&gt;
|immediately apply update package&lt;br /&gt;
|-&lt;br /&gt;
| --create FILE&lt;br /&gt;
|create a new map&lt;br /&gt;
|-&lt;br /&gt;
| --map-gen-settings FILE&lt;br /&gt;
|Map generation settings for use with --create, --start-server-load-scenario or --generate-map-preview. See data/map-gen-settings.example.json&lt;br /&gt;
|-&lt;br /&gt;
| --map-gen-seed SEED&lt;br /&gt;
|Map generation seed for use with --create, --start-server-load-scenario or --generate-map-preview. Will override seed specified in map gen settings&lt;br /&gt;
|-&lt;br /&gt;
| --map-gen-seed-max SEED&lt;br /&gt;
|Map generation seed for use with --generate-map-preview to generate multiple previews using every second seed in the interval from map-gen-seed to map-gen-seed-max.&lt;br /&gt;
|-&lt;br /&gt;
| --map-settings FILE&lt;br /&gt;
|Map settings for use with --create or --start-server-load-scenario. See data/base/prototypes/map-settings.lua&lt;br /&gt;
|-&lt;br /&gt;
| --preset arg&lt;br /&gt;
|Name of the map generation preset to be used.&lt;br /&gt;
|-&lt;br /&gt;
| --generate-map-preview PATH&lt;br /&gt;
|Generate preview images of the map; PATH should name a PNG file or end with a &#039;/&#039; or &#039;\&#039; to indicate a directory.&lt;br /&gt;
|-&lt;br /&gt;
| --generate-map-preview-random COUNT&lt;br /&gt;
|Number of maps to generate with a random seed using --generate-map-preview.&lt;br /&gt;
|-&lt;br /&gt;
| --map-preview-size SCALE&lt;br /&gt;
|Size (in pixels) of map preview (default: 1024)&lt;br /&gt;
|-&lt;br /&gt;
| --map-preview-scale SCALE&lt;br /&gt;
|Scale (meters per pixel) of map preview (default: 1)&lt;br /&gt;
|-&lt;br /&gt;
| --map-preview-offset X,Y&lt;br /&gt;
|Offset of the center of the map, in meters (default: 0,0)&lt;br /&gt;
|-&lt;br /&gt;
| --noise-outputs TAG,TAG...&lt;br /&gt;
|Indicate which variables of noise program to output&lt;br /&gt;
|-&lt;br /&gt;
| --slope-shading SHADEAMOUNT&lt;br /&gt;
|Apply elevation shading to map preview&lt;br /&gt;
|-&lt;br /&gt;
| --slope-shade-property SHADEPROP&lt;br /&gt;
|Property to apply slope shading to (default: elevation)&lt;br /&gt;
|-&lt;br /&gt;
| --report-quantities PROTOTYPE,...&lt;br /&gt;
|When generating map preview, report approximate quantities of the named entity prototypes&lt;br /&gt;
|-&lt;br /&gt;
| --threads THREADCOUNT&lt;br /&gt;
|Number of threads to use when generating map previews&lt;br /&gt;
|-&lt;br /&gt;
| --disable-migration-window&lt;br /&gt;
|Disables the gui that is shown when opening a save with migrated content&lt;br /&gt;
|-&lt;br /&gt;
| --start-server FILE&lt;br /&gt;
|start a multiplayer server&lt;br /&gt;
|-&lt;br /&gt;
| --start-server-load-scenario [MOD/]NAME&lt;br /&gt;
|start a multiplayer server and load the specified scenario. The scenario is looked for inside the given mod. If no mod is given, it is looked for in the top-level scenarios directory.&lt;br /&gt;
|-&lt;br /&gt;
| --start-server-load-latest&lt;br /&gt;
|start a multiplayer server and load the latest available save&lt;br /&gt;
|-&lt;br /&gt;
| --until-tick TICK&lt;br /&gt;
|run a save until given map tick&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark FILE&lt;br /&gt;
|load save and run benchmark&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-ticks N&lt;br /&gt;
|number of ticks for benchmarking. Default is 1000&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-runs N&lt;br /&gt;
|how often the number of ticks will be run, map will reload after each run. Default is 1&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-verbose timings&lt;br /&gt;
|comma separated list of Update timings to output each tick. &amp;quot;all&amp;quot;, &amp;quot;timestamp&amp;quot; as well as all other values seen in the debug show-time-usage view&#039;s Update section are allowed here. An empty string disabled verbose benchmarking.&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-sanitize&lt;br /&gt;
|only output the final benchmark results&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-ignore-paused&lt;br /&gt;
|leaves the game paused if it was paused when saved. By default the game is unpaused when a benchmark starts.&lt;br /&gt;
|-&lt;br /&gt;
| --output-perf-stats FILE&lt;br /&gt;
|path of file to which rendering performance statistics measurements should be saved. Special tags {api}, {hw}, {time} and {tag} will be replaced.&lt;br /&gt;
|-&lt;br /&gt;
| --mp-connect ADDRESS&lt;br /&gt;
|start factorio and connect to address&lt;br /&gt;
|-&lt;br /&gt;
| --heavy&lt;br /&gt;
|run the game in heavy mode if singleplayer with graphics (heavy mode is briefly explained in FFFs [https://www.factorio.com/blog/post/fff-63 63] and [https://www.factorio.com/blog/post/fff-89 89] and seems to be related to investigating desyncs)&lt;br /&gt;
|-&lt;br /&gt;
| --load-game FILE&lt;br /&gt;
|start Factorio and load a game in singleplayer&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-graphics FILE&lt;br /&gt;
|load save and run it with graphics for benchmark-ticks number of ticks as normal game would&lt;br /&gt;
|-&lt;br /&gt;
| --benchmark-frame FILE&lt;br /&gt;
|load save and benchmark graphics rendering of single frame (prepare + render) without updating the game&lt;br /&gt;
|-&lt;br /&gt;
| --force-opengl&lt;br /&gt;
|use OpenGL for rendering (windows only)&lt;br /&gt;
|-&lt;br /&gt;
| --force-d3d&lt;br /&gt;
|use Direct3D for rendering (windows only)&lt;br /&gt;
|-&lt;br /&gt;
| --d3d-adapter ID&lt;br /&gt;
|adapter which should be used to initialized Direct3D (windows only)&lt;br /&gt;
|-&lt;br /&gt;
| --d3d-feature-level&lt;br /&gt;
|override feature level (11, 10.1, 10) (windows only)&lt;br /&gt;
|-&lt;br /&gt;
| --dxgi-blit-model&lt;br /&gt;
|force Blit presentation mode (windows only)&lt;br /&gt;
|-&lt;br /&gt;
| --debug-graphics&lt;br /&gt;
|enables debugging layer for graphics API. If DirectX is used DirectX SDK needs to be installed for this to work.&lt;br /&gt;
|-&lt;br /&gt;
| --fullscreen BOOL&lt;br /&gt;
|start game in windowed mode (saved to configuration)&lt;br /&gt;
|-&lt;br /&gt;
| --max-texture-size N&lt;br /&gt;
|&amp;quot;maximal size of texture that the game can use (saved to configuration). Should be power of two greater than 2048&lt;br /&gt;
|-&lt;br /&gt;
| --graphics-quality arg&lt;br /&gt;
|accepted values: normal, low, very-low&lt;br /&gt;
|-&lt;br /&gt;
| --video-memory-usage arg&lt;br /&gt;
|accepted values: all, high, medium, low&lt;br /&gt;
|-&lt;br /&gt;
| --force-graphics-preset arg&lt;br /&gt;
|accepted values: very-low, low, mac-with-low-ram, medium-with-low-vram, medium, high, very-high, extreme&lt;br /&gt;
|-&lt;br /&gt;
| --gfx-safe-mode&lt;br /&gt;
|resets some graphics settings to values that should work on most configurations&lt;br /&gt;
|-&lt;br /&gt;
| --low-vram&lt;br /&gt;
|sprites that are not put into sprite atlases won&#039;t be allocated as texture objects&lt;br /&gt;
|-&lt;br /&gt;
| --shader&lt;br /&gt;
|enable/disable shader postprocessing (saved to configuration)&lt;br /&gt;
|-&lt;br /&gt;
| --disable-audio&lt;br /&gt;
|Disable audio. Mainly for faster startup during development.&lt;br /&gt;
|-&lt;br /&gt;
| --disable-prototype-history&lt;br /&gt;
|Disables tracking which mod created/changed what prototype. Mainly for faster startup during development.&lt;br /&gt;
|-&lt;br /&gt;
| --window-size arg&lt;br /&gt;
|Desired window resolution. For example &amp;quot;1680x1050&amp;quot;. Or &amp;quot;maximized&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| --single-thread-loading&lt;br /&gt;
|Disables loading of sprites in multiple threads.&lt;br /&gt;
|-&lt;br /&gt;
| --instrument-mod&lt;br /&gt;
|Name of a mod to enable [https://lua-api.factorio.com/latest/Instrument.html Instrument Mode]&lt;br /&gt;
|-&lt;br /&gt;
| --cache-sprite-atlas BOOL&lt;br /&gt;
|Enable/disable sprite atlas cache.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Server options&lt;br /&gt;
|-&lt;br /&gt;
| --port N&lt;br /&gt;
|network port to use&lt;br /&gt;
|-&lt;br /&gt;
| --bind ADDRESS[:PORT]&lt;br /&gt;
|IP address (and optionally port) to bind to&lt;br /&gt;
|-&lt;br /&gt;
| --rcon-port N&lt;br /&gt;
|Port to use for RCON&lt;br /&gt;
|-&lt;br /&gt;
| --rcon-bind ADDRESS:PORT&lt;br /&gt;
|IP address and port to use for RCON&lt;br /&gt;
|-&lt;br /&gt;
| --rcon-password PASSWORD&lt;br /&gt;
|Password for RCON&lt;br /&gt;
|-&lt;br /&gt;
| --server-settings FILE&lt;br /&gt;
|Path to file with server settings. See data/server-settings.example.json&lt;br /&gt;
|-&lt;br /&gt;
| --use-server-whitelist BOOL&lt;br /&gt;
|If the whitelist should be used.&lt;br /&gt;
|-&lt;br /&gt;
| --server-whitelist FILE&lt;br /&gt;
|Path to file with server whitelist.&lt;br /&gt;
|-&lt;br /&gt;
| --server-banlist FILE&lt;br /&gt;
|Path to file with server banlist.&lt;br /&gt;
|-&lt;br /&gt;
| --server-adminlist FILE&lt;br /&gt;
|Path to file with server adminlist.&lt;br /&gt;
|-&lt;br /&gt;
| --console-log FILE&lt;br /&gt;
|Path to file where a copy of the server&#039;s log will be stored&lt;br /&gt;
|-&lt;br /&gt;
| --server-id FILE&lt;br /&gt;
|Path where server ID will be stored or read from&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer ===&lt;br /&gt;
&lt;br /&gt;
  --start-server SAVE&lt;br /&gt;
&lt;br /&gt;
Will start a Headless (Dedicated) server, with no GUI.&lt;br /&gt;
&lt;br /&gt;
  --mp-connect ADDRESS&lt;br /&gt;
ADDRESS is the IP:port of the remote host. Port is optional.&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
  ./factorio --mp-connect 192.168.1.101&lt;br /&gt;
  ./factorio --mp-connect 192.168.1.101:2345&lt;br /&gt;
&lt;br /&gt;
As above, port can be specified by placing the port number after a colon in the address.&lt;br /&gt;
&lt;br /&gt;
=== Creating a map from custom settings ===&lt;br /&gt;
&lt;br /&gt;
Sometimes it&#039;s useful to create a new game with map and/or map generator settings stored in a JSON file rather than going through the in-game map settings screen.&lt;br /&gt;
One reason is that by editing the settings directly it is possible to set settings outside the range normally available from the GUI.&lt;br /&gt;
&lt;br /&gt;
To do this, Factorio is run from the command-line, and a JSON file containing the map generator settings and a JSON file containing map settings (if customizing them) are needed.&lt;br /&gt;
&lt;br /&gt;
Example for custom generator settings:&lt;br /&gt;
&amp;lt;pre&amp;gt;{&lt;br /&gt;
    &amp;quot;terrain_segmentation&amp;quot;: 0.5,&lt;br /&gt;
    &amp;quot;water&amp;quot;: &amp;quot;2&amp;quot;,&lt;br /&gt;
    &amp;quot;width&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;height&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;starting_area&amp;quot;: &amp;quot;normal&amp;quot;,&lt;br /&gt;
    &amp;quot;peaceful_mode&amp;quot;: false,&lt;br /&gt;
    &amp;quot;autoplace_controls&amp;quot;:&lt;br /&gt;
    {&lt;br /&gt;
        &amp;quot;coal&amp;quot;: {&amp;quot;frequency&amp;quot;: 1, &amp;quot;size&amp;quot;: 2, &amp;quot;richness&amp;quot;: 0.5},&lt;br /&gt;
        &amp;quot;copper-ore&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;low&amp;quot;, &amp;quot;size&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;richness&amp;quot;: &amp;quot;high&amp;quot;},&lt;br /&gt;
        &amp;quot;crude-oil&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;size&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;richness&amp;quot;: &amp;quot;normal&amp;quot;},&lt;br /&gt;
        &amp;quot;enemy-base&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;size&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;richness&amp;quot;: &amp;quot;normal&amp;quot;},&lt;br /&gt;
        &amp;quot;iron-ore&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;size&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;richness&amp;quot;: &amp;quot;normal&amp;quot;},&lt;br /&gt;
        &amp;quot;stone&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;size&amp;quot;: 0, &amp;quot;richness&amp;quot;: &amp;quot;normal&amp;quot;},&lt;br /&gt;
        &amp;quot;uranium-ore&amp;quot;: {&amp;quot;frequency&amp;quot;: &amp;quot;normal&amp;quot;, &amp;quot;size&amp;quot;: &amp;quot;none&amp;quot;, &amp;quot;richness&amp;quot;: &amp;quot;normal&amp;quot;}&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;cliff_settings&amp;quot;:&lt;br /&gt;
    {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;cliff&amp;quot;,                &lt;br /&gt;
        &amp;quot;cliff_elevation_0&amp;quot;: 30,        &lt;br /&gt;
        &amp;quot;cliff_elevation_interval&amp;quot;: 20, &lt;br /&gt;
        &amp;quot;richness&amp;quot;: 1                   &lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;property_expression_names&amp;quot;:&lt;br /&gt;
    {&lt;br /&gt;
        &amp;quot;elevation&amp;quot;: &amp;quot;0_16-elevation&amp;quot;,&lt;br /&gt;
        &amp;quot;temperature&amp;quot;: &amp;quot;35&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &lt;br /&gt;
    &amp;quot;seed&amp;quot;: null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this is the same format as [https://lua-api.factorio.com/latest/Concepts.html#MapGenSettings MapGenSettings] that are modifiable from Lua. Everything in the file is optional.&lt;br /&gt;
&lt;br /&gt;
Creating a custom save:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;C:\Program Files\Factorio\bin\x64\Factorio.exe&amp;quot; --create stuff-seed123.zip --map-gen-settings map-gen-settings.json --map-gen-seed 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Generating a map preview:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;C:\Program Files\Factorio\bin\x64\Factorio.exe&amp;quot; --generate-map-preview preview-seed123.png --map-gen-settings map-gen-settings.json --map-gen-seed 123&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Creating the JSON files from a map exchange string ====&lt;br /&gt;
&lt;br /&gt;
It can be useful to create the initial JSON files from a known map exchange string instead of creating them from scratch. To convert the map exchange string to JSON, open the game and run the following command with your map exchange string:&lt;br /&gt;
&lt;br /&gt;
 /c game.write_file(&#039;map.txt&#039;, game.table_to_json(game.parse_map_exchange_string(&amp;lt;your exchange string here&amp;gt;)))&lt;br /&gt;
&lt;br /&gt;
Then open the script_output folder in the [[user data directory]] and open map.txt - it will look like this:&lt;br /&gt;
&lt;br /&gt;
 {&amp;quot;map_settings&amp;quot;:{ ...&amp;lt;MAP_SETTINGS&amp;gt; ... },&amp;quot;map_gen_settings&amp;quot;:{ ...&amp;lt;MAP_GEN_SETTINGS&amp;gt;... }}&lt;br /&gt;
&lt;br /&gt;
Copy the { ...&amp;lt;MAP_SETTINGS&amp;gt; ... } section into a new file called &#039;map-settings.json&#039; in the desired location. Copy the { ...&amp;lt;MAP_GEN_SETTINGS&amp;gt; ... } section section into a new file called &#039;map-gen-settings.json&#039; in the desired location.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Console]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=User_talk:Luc&amp;diff=178321</id>
		<title>User talk:Luc</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=User_talk:Luc&amp;diff=178321"/>
		<updated>2020-03-03T20:14:24Z</updated>

		<summary type="html">&lt;p&gt;Luc: reply to Thejomper&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Welcome to &#039;&#039;factorio&#039;&#039;!&#039;&#039;&#039;&lt;br /&gt;
We hope you will contribute much and well.&lt;br /&gt;
You will probably want to read the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents help pages].&lt;br /&gt;
Again, welcome and have fun! [[User:Klonan|Klonan]] ([[User talk:Klonan|talk]]) 11:33, 4 May 2016 (UTC)&lt;br /&gt;
&lt;br /&gt;
== &amp;quot;Base-breaking changes‎‎&amp;quot; page ==&lt;br /&gt;
&lt;br /&gt;
Hey, as already mentioned in reply to you linking the page on the forums, the &amp;quot;Base-breaking changes&amp;quot; page doesn&#039;t fit on the wiki. The way it is currently written, it is a tutorial and very subjective. Due to this, the page will be removed from the wiki in 3-5 days. I am notifying you here so that you can host the content on a more fitting site, such as the forums, before I delete it. In the future, please follow the [[Factorio:Wiki_rules#Page_creation|rules related to page creation]] before creating pages to avoid putting work into pages that have to be deleted because they don&#039;t fit on the wiki. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;Admin&amp;lt;/span&amp;gt; 14:50, 5 August 2019 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Multiplayer changes ==&lt;br /&gt;
&lt;br /&gt;
Hi&lt;br /&gt;
i can see you removed a change i made on the page (multiplayer) with the reason it was not linux commands. i will inform you if i wrote these commands in the part that belongs to a windows setup and actually just under one of the things i made about there was a title called &amp;quot;Setting up a Linux Factorio server&amp;quot; which i did not change. i dont see what you mean by it is not linux commands as that part does not belong to a linux setup&lt;br /&gt;
&lt;br /&gt;
[https://wiki.factorio.com/Multiplayer multiplayer]&lt;br /&gt;
[https://wiki.factorio.com/Multiplayer#Setting_up_a_Linux_Factorio_server Setting up a Linux Factorio server]&lt;br /&gt;
&lt;br /&gt;
: Hi Thejomper. First off, I&#039;m sorry this happened! I&#039;ll explain my reasoning a bit better than in the commit message / changelog. I should also preface this by saying that I have very little experience having discussions in this sort of multiplayer notepad with magic syntax, so please let me know if I reply in an incorrect manner.&lt;br /&gt;
&lt;br /&gt;
: The section is &amp;quot;dedicated/headless server&amp;quot;, which is only available for Linux. The command examples shown are &amp;lt;tt&amp;gt;./bin/x64/factorio --start-server [etc.]&amp;lt;/tt&amp;gt; which only works using the Linux release of the game (indeed, the headless server is for Linux). For Windows, it would be &amp;lt;tt&amp;gt;bin/x64/factorio.exe&amp;lt;/tt&amp;gt; (and the &amp;lt;tt&amp;gt;start&amp;lt;/tt&amp;gt; command that you added is optional, depending on what behaviour the user wants). Since the commands are used to run a Linux server using a binary that exists only for Linux, I think it would be wrong to add a &amp;quot;start&amp;quot; command that only works on Windows (and is optional even there).&lt;br /&gt;
&lt;br /&gt;
: You added another example that uses &amp;quot;pause&amp;quot;, which is also Windows-only, but didn&#039;t change bin/x64/factorio to bin/x64/factorio.exe, so again this example will not work on any platform. And even if you make it work on Windows, it seems to me that this would be the wrong section.&lt;br /&gt;
&lt;br /&gt;
: Finally, you added a hint about where to find a certain file... specifically for Windows. If a Windows user can&#039;t find this path, they would be unlikely to check the section about the dedicated linux-only server and more likely to search the wiki for &amp;quot;settings directory&amp;quot; which will land them on the dedicated page where it is explained multi-platform: [[Application directory]].&lt;br /&gt;
&lt;br /&gt;
: In short, my reason for reverting was to revert the page state to a state where the examples actually work on the platform for which they were intended.&lt;br /&gt;
&lt;br /&gt;
: I&#039;m sorry I reverted most of your edit. I did look at each change and kept the part that I assume works on all platforms (&amp;quot;This file will be created if you promote a player through the console&amp;quot;), that was a helpful addition because I didn&#039;t know that yet!&lt;br /&gt;
&lt;br /&gt;
: If you want to add examples on how to manage a Windows server, I think a different or new subsection would be more fitting. Section 1 of the page is &amp;quot;Setting up a multiplayer game&amp;quot; with subsections &amp;quot;1.1 dedicated/headless server&amp;quot; (linux-only), &amp;quot;1.2 Setting up a Linux Factorio server&amp;quot;, and 1.3+ with more details about other server-related topics. Maybe your examples would fit better in a new section (inserted above or below the linux server sections) like &amp;quot;Setting up a Windows server&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: I hope this explained my reasoning! [[User:Luc|Luc]] ([[User talk:Luc|talk]]) 20:14, 3 March 2020 (UTC)&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=178071</id>
		<title>Multiplayer</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=178071"/>
		<updated>2020-02-28T18:44:14Z</updated>

		<summary type="html">&lt;p&gt;Luc: Undo revision 178069 by Thejomper (talk) &amp;quot;start&amp;quot; and &amp;quot;pause&amp;quot; are not a thing on linux. Maybe you want to add a variant for Windows with factorio.exe? As it is, this doesn&amp;#039;t work on any platform.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
In addition to being a single-player game, Factorio also supports multiplayer, allowing many players to cooperate and assist each other, or work against each other in pvp. This page documents how to set up a multiplayer game, how to join one, and the Multiplayer Admin features for managing other users and the server. By default, multiplayer games run the CO-OP [[Game modes and options|freeplay scenario]] where all players work together to launch a rocket with a satellite into space. Other scenarios, including PvP maps, are available for download from the [https://forums.factorio.com/viewforum.php?f=36&amp;amp;sid=93d1fbe9336d31d6bac60847b6c97985 Maps and Scenarios forum].&lt;br /&gt;
&lt;br /&gt;
== Setting Up a Multiplayer Game ==&lt;br /&gt;
&lt;br /&gt;
[[File:multiplayer_game_night.png|thumb|250px|A multiplayer game.]]Multiplayer games can be joined, hosted while playing, or hosted by a dedicated server.  Multiplayer games can be advertised to other players on the same LAN or worldwide.&lt;br /&gt;
&lt;br /&gt;
Use the &#039;&#039;Multiplayer&#039;&#039; button in the &#039;&#039;Play&#039;&#039; menu to start playing a multiplayer game, choose &#039;&#039;New&#039;&#039; or &#039;&#039;Load&#039;&#039; or &#039;&#039;Scenarios&#039;&#039; to host and play, or &#039;&#039;Browse&#039;&#039; or &#039;&#039;Play on LAN&#039;&#039; to connect to an already-running game. The host can also choose not to advertise the game at all, in which case you&#039;ll need the server&#039;s (public or otherwise reachable) IP address; you can then &#039;&#039;Connect&#039;&#039; directly to that to join the game.&lt;br /&gt;
&lt;br /&gt;
Notes and tips:&lt;br /&gt;
&lt;br /&gt;
* All game instances need the installation of &#039;&#039;exactly the same&#039;&#039; game-versions and mods.&lt;br /&gt;
* Factorio servers use port &#039;&#039;&#039;34197&#039;&#039;&#039;. The port can be changed in the [[Application directory|config]] file.&lt;br /&gt;
* Factorio uses &#039;&#039;&#039;UDP only&#039;&#039;&#039;. The game builds its own &amp;quot;reliable delivery&amp;quot; layer built on UDP to deal with packet loss and reordering issues.&lt;br /&gt;
** Make sure you configure your router&#039;s port forwarding correctly for port &#039;&#039;&#039;34197&#039;&#039;&#039;.&lt;br /&gt;
** Make sure your router does not [https://doc.pfsense.org/index.php/Static_Port randomize the source port] on packets outbound from &#039;&#039;&#039;34197&#039;&#039;&#039;.  Some routers do this and require [https://forum.pfsense.org/index.php?PHPSESSID=3k4h9n5o2tksgqv910fknf7qt7&amp;amp;topic=142188.msg798594#msg798594 additional configuration] to prevent it.&lt;br /&gt;
** Make sure there is no firewall or anti-virus blocking the UDP-packets.&lt;br /&gt;
* The hard limit for the number of players is [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6481&amp;amp;p=50661#p50586 65,535]. However, practical limit for this is much lower, popular streamers have managed slightly over a hundred players.&lt;br /&gt;
&lt;br /&gt;
=== Dedicated/Headless server ===&lt;br /&gt;
&lt;br /&gt;
As of Factorio version 0.12.0 onwards, a dedicated (or headless) server can be started using the --start-server command line option. You can run factorio --help to get a list of all command-line arguments that Factorio accepts.&lt;br /&gt;
&lt;br /&gt;
In the headless mode:&lt;br /&gt;
* Graphics are not initialized (faster start up, less memory usage, works on completely headless servers)&lt;br /&gt;
* Game starts immediately and loads a save given as a parameter to the command&lt;br /&gt;
* The server has no character in game&lt;br /&gt;
* Game is paused while there are no players connected (though this can be overridden using the no-auto-pause option in the server-settings.json)&lt;br /&gt;
* Saves the game on exit (and autosaves normally)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;0.13 onwards expects --start-server to be followed by a path to a save file.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You will need to create your save file before you start the server, as the dedicated server REQUIRES a save file to be provided. This can easily be done using the --create command-line argument. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bin/x64/factorio --create ./saves/my-save.zip       # This creates a new save, as if by clicking the New Game button in the GUI&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./bin/x64/factorio --start-server ./saves/my-save.zip # This starts a server that will host the file created on the previous line&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are several JSON configuration files that factorio can make use of to change the server and map settings:&lt;br /&gt;
* &#039;&#039;&#039;map-gen-settings&#039;&#039;&#039; to set parameters used by the map generator such as width and height, ore patch frequency and size, etc. (Added in 0.13)&lt;br /&gt;
* &#039;&#039;&#039;map-settings&#039;&#039;&#039; to control pollution spread, biter expansion and evolution, and more (Added in 0.15)&lt;br /&gt;
* &#039;&#039;&#039;server-settings&#039;&#039;&#039; which consolidated several command-line options into a single file (Added in 0.14.12)&lt;br /&gt;
Example files for each of these parameters are included in the data subdirectory.&lt;br /&gt;
&lt;br /&gt;
The --map-gen-settings and --map-settings options must be used with the --create option when you create a new map.  For example:&lt;br /&gt;
&amp;lt;pre&amp;gt;./bin/x64/factorio --create saves/my-save.zip --map-gen-settings my-map-gen-settings.json --map-settings my-map-settings.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Starting the factorio server requires you to specify the location of the server-settings.json file. By default this is in the factorio data folder. For example to start factorio using the most recent saved map, you would run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;./bin/x64/factorio --start-server-load-latest --server-settings ./data/server-settings.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[Command_line_parameters]] for more command line parameters.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Setting up a Linux Factorio server ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Factorio now requires &amp;lt;tt&amp;gt;glibc&amp;lt;/tt&amp;gt; version 2.18, but CentOS/RHEL 7 only ship with version 2.17 so this guide will no longer work without [https://forums.factorio.com/viewtopic.php?t=54654#p324493 manually compiling &amp;lt;tt&amp;gt;glibc&amp;lt;/tt&amp;gt; 2.18].&lt;br /&gt;
&lt;br /&gt;
This step-by-step guide has been verified on fresh CentOS 7 and RHEL 7 installs but should be applicable with little to no changes on most distributions.&lt;br /&gt;
&lt;br /&gt;
The guide assumes you will install the headless server under &#039;&#039;&#039;/opt/factorio&#039;&#039;&#039;, adjust paths according to your own setup. We will also suggest that you run the Factorio server as a separate user to harden security of your setup.&lt;br /&gt;
&lt;br /&gt;
Note that there are two distinct packages for Linux that can be used to run a headless server. First is the usual Linux download, that contains the full game. The other is the special  [https://www.factorio.com/download-headless headless package]. The headless package does not contain any files irrelevant for a pure server, such as graphics and sounds. It is also not linked against libraries that may not be present on a server machine, such as Xlib, libGL or libasound. This option should be selected if running in a 3rd party hosted server.&lt;br /&gt;
&lt;br /&gt;
This guide does not handle firewall/port forwarding since this can be done in various ways on Linux (make sure to read up how this is done as a Linux admin on your particular distribution)&lt;br /&gt;
&lt;br /&gt;
==== Basic installation ====&lt;br /&gt;
&lt;br /&gt;
* Download the selected package -- either full game or the headless package -- and upload the Linux tar.gz or tar.xz package to your server /tmp&lt;br /&gt;
* Extract the package in /tmp to /opt/factorio&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$cd /opt/&lt;br /&gt;
&lt;br /&gt;
$sudo tar -xzf /tmp/factorio.tar.gz # Use the correct file name. It includes the factorio version number&lt;br /&gt;
$sudo tar -xJf /tmp/factorio.tar.xz # if you downloaded a .tar.xz file (ver 0.15.x)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Add a new user to your system and assign ownership of the factorio dir to it (please, do not run as the root user, sudo may be needed)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$useradd factorio&lt;br /&gt;
$chown -R factorio:factorio /opt/factorio&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Try the binary&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$su factorio&lt;br /&gt;
$/opt/factorio/bin/x64/factorio --start-server savename&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As long as it fails saying it cannot find/open the savename.zip you are set! Just upload a save from your own computer and put it in the /opt/factorio/saves directory, or use the --create ./saves/newgame.zip argument.&lt;br /&gt;
&lt;br /&gt;
==== Additional configuration ====&lt;br /&gt;
&lt;br /&gt;
You can use a [https://github.com/Bisa/factorio-init Linux factorio-init script] to start/stop your headless server in a much better way. The script will ensure you only ever use the most recent save when your server starts (even if that was an auto-save) while also letting you set a number of other settings like Autosave frequency and Latency settings. This script can also simplify updating the server when combined with a [https://github.com/narc0tiq/factorio-updater Linux factorio-updater script].&lt;br /&gt;
&lt;br /&gt;
Additionally, if you plan to enable mods on your server a mod updater script can greatly simplify this process. Here are several existing options, or you can write your own!&lt;br /&gt;
* [https://github.com/pdemonaco/factorio-mod-updater Python Mod Updater]&lt;br /&gt;
* [https://github.com/astevens/factorio-mod-updater Ruby Mod Updater]&lt;br /&gt;
&lt;br /&gt;
=== How to list a server-hosted game on the matching server ===&lt;br /&gt;
&lt;br /&gt;
In order to publish the game to the matching server, Factorio needs to be given some more information than just the save file location. These information are provided in a &#039;&#039;server settings file&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
To create a server settings file, look at the example file located in &#039;&#039;&#039;data/server-settings.example.json&#039;&#039;&#039; in the Factorio [[Application directory]]. The recommended way is to make a copy of this example file and edit the copy.&lt;br /&gt;
&lt;br /&gt;
The following values can be changed:&lt;br /&gt;
; Name: This will be the name under which the server will be listed in the server browser&lt;br /&gt;
; Description: A brief description of your server&lt;br /&gt;
; Tags: A list of game tags&lt;br /&gt;
; Max Players: Allows you to limit the number of players that can be connected to the server at the same time. If you want no limit, just set max_players to 0.&lt;br /&gt;
* Visibility for server browser: May be either public, LAN or hidden.&lt;br /&gt;
** Public: The server will appear in the public server list. This requires the login credentials below to be filled in.&lt;br /&gt;
** LAN: The server will not appear in the public server list, but will be available through the Play On LAN button&lt;br /&gt;
** Hidden: Clients will have to connect using the server&#039;s IP address&lt;br /&gt;
* User credentials using a username and password or authentication token (found on the factorio website or in the player-data.json): These are necessary if you wish to make the server public. Otherwise, they can be left empty.&lt;br /&gt;
** For security reasons it is recommended to use authentication token as this document is stored as plain text. Though it should be noted that an authentication token is a sensitive piece of information as well, and you are well-advised to keep it secret.&lt;br /&gt;
* Server Password&lt;br /&gt;
** Field name is game_password&lt;br /&gt;
* Whether to verify user identity&lt;br /&gt;
(There are additional values in v0.14 of factorio.)&lt;br /&gt;
&lt;br /&gt;
=== Technical Implementation Details ===&lt;br /&gt;
&lt;br /&gt;
Notes about some technical details surrounding multiplayer have been published by the development team in several Friday Facts blog posts:&lt;br /&gt;
&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-76 Lock step architecture]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-99 Client-server connections]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-143 NAT punching, introduced in 0.13]&lt;br /&gt;
&lt;br /&gt;
=== More Guides ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.chef.io/blog/2016/03/21/building-a-factorio-multiplayer-server-on-digital-ocean/ How to set up Factorio server with cookbook]&lt;br /&gt;
* [http://youtube.com/watch?v=MqsqRWNsbPM How To set up a Factorio Multiplayer Server | Guide | Tutorial], by Teaspoon&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6720 Tips to connect in multiplayer], by Nondre&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous Tips ===&lt;br /&gt;
* The key for [[Console|console commands]] is also used initiate chat in multiplayer. To execute a command instead of chatting, you need to type &#039;&#039;/c&#039;&#039; before the command. Commands executed are &#039;&#039;visible to all players&#039;&#039;. Additionally, the multiplayer game must have been started with commands allowable for commands to work.&lt;br /&gt;
* Set the player&#039;s color using the command&lt;br /&gt;
 /color r g b a&lt;br /&gt;
r, g and b are for red, green and blue respectively (possible values are between 0 and 1, use [https://www.w3schools.com/colors/colors_converter.asp this site] to convert colors to rgb numbers). a is alpha channel aka transparency of the color to the base texture.&lt;br /&gt;
* To give yourself admin access, you need to create a server-adminlist.json in the same directory as factorio-current.log. The file should contain a list of admins, like so: &amp;lt;code&amp;gt;[ &amp;quot;user1&amp;quot;, &amp;quot;user2&amp;quot; ]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This file will be created if you promote a player through the console.&lt;br /&gt;
&lt;br /&gt;
== Joining a Multiplayer game ==&lt;br /&gt;
&lt;br /&gt;
As of version 0.13, players no longer necessarily have to port-forward to play with others. Players may join each other through Steam, or by just the port-forwarded host.&lt;br /&gt;
&lt;br /&gt;
Players wishing to join a game may do so in multiple ways:&lt;br /&gt;
&lt;br /&gt;
* Joining by directly inputting a public IP and port into Factorio.&lt;br /&gt;
* Selecting the server from the active public server menu.&lt;br /&gt;
* Joining through Steam&#039;s services.&lt;br /&gt;
* Playing a local LAN game.&lt;br /&gt;
&lt;br /&gt;
=== Joining by IP ===&lt;br /&gt;
&lt;br /&gt;
To join a multiplayer game by IP, you will need to know the public IP of a valid server. You can find this through social media, websites, or by word of mouth. After acquiring the IP and port, simply go to play -&amp;gt; Multiplayer -&amp;gt; Connect to server, and provide all the information it asks for.&lt;br /&gt;
&lt;br /&gt;
If the server has been set up correctly to accept public connections, you should be able to join the game.&lt;br /&gt;
&lt;br /&gt;
=== Joining via server list ===&lt;br /&gt;
&lt;br /&gt;
Factorio&#039;s devs keep a list of all public servers that declare themselves to the service, allowing players to join directly through Factorio. Most of these servers will be password-requiring, but many completely public servers can be connected to. To join via server list, go to Play -&amp;gt; Multiplayer -&amp;gt; Browse public games. Provide your Factorio.com login if asked, and a list of public servers will appear. Simply select one.&lt;br /&gt;
&lt;br /&gt;
=== Joining through Steam ===&lt;br /&gt;
&lt;br /&gt;
Steam provides a &amp;quot;game invite&amp;quot; system, simply use that to join. You can find more info about how to use steam in it&#039;s documentation. &#039;&#039;This is the most recommended way for the average player to use multiplayer with their friends, as it allows Steam to handle everything&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Joining a local LAN game ===&lt;br /&gt;
&lt;br /&gt;
If you have some friends on the same internet connection as you (in the same building or network), you may play a LAN game. Simply go to Play -&amp;gt; Multiplayer -&amp;gt; Play on LAN.&lt;br /&gt;
&lt;br /&gt;
=== Finding Other Players ===&lt;br /&gt;
&lt;br /&gt;
* Use the [https://forums.factorio.com/viewforum.php?f=53 multiplayer board in the forum].&lt;br /&gt;
* Many players use other software like Evolve to meet other players. This also has the &amp;quot;advantage&amp;quot; of creating a virtual LAN among the players. See down under software.&lt;br /&gt;
* Some also use [https://forums.factorio.com/viewtopic.php?f=5&amp;amp;t=9136 Steam] to find other players.&lt;br /&gt;
* There is an external [http://serverlist.lgms.nl/ server browser] with various search options.&lt;br /&gt;
* Tell your friends to buy Factorio, then play with them!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connecting to a Server Behind NAT ===&lt;br /&gt;
&lt;br /&gt;
Factorio requires that the server (in client-server mode) have a publicly accessible IP address or that all players are on the same LAN. If you are behind NAT, you must set up port forwarding ([[Multiplayer#Playing_over_LAN_.2F_Internet|see above]] for port number) or use virtual LAN software such as Hamachi or Evolve.&lt;br /&gt;
&lt;br /&gt;
Multiplayer games will be launched in client-server mode (also [http://www.factorio.com/blog/post/fff-99 multiplayer forwarding] mode). In this mode, all clients send their network traffic to the server and the server forwards the traffic to the other clients. The advantage of this is that it allows games where some players are inside a LAN and others are outside. The disadvantage may be slightly more lag as packets must travel an extra hop (through the server).&lt;br /&gt;
&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6393 Forwarding ports without logging into your router]&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=7714 A guide for connecting with Evolve]&lt;br /&gt;
* [http://steamcommunity.com/sharedfiles/filedetails/?id=653628496 A guide for connecting with Hamachi]&lt;br /&gt;
&lt;br /&gt;
== PvP ==&lt;br /&gt;
&lt;br /&gt;
In PvP mode, players can be on different forces. Each force can have one (free-for-all) or more players (teams). Each force has its own independent research progression. Additionally, each force&#039;s [[Military units and structures]] will attack other players as enemies, unless a cease fire is set. Note that, depending on the scenario, cease fires may be unidirectional — setting a cease fire with an opposing force does not guarantee a cease fire from them in return.&lt;br /&gt;
&lt;br /&gt;
To start a PvP game, you can select the &#039;PvP&#039; scenario from the &#039;Play&#039; menu, or download a custom scenario which also supports PvP.&lt;br /&gt;
&lt;br /&gt;
After downloading a PvP scenario, you need to move it to your application directory, and create the multiplayer game using the scenario.&lt;br /&gt;
&lt;br /&gt;
# Download the scenario and place the scenario directory in the &#039;&#039;scenarios&#039;&#039; directory within your [[Application_directory#Directory_locations_by_OS_and_installation_method|user data directory]].&lt;br /&gt;
# Launch Factorio&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Multiplayer&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Scenario&#039;&#039;&lt;br /&gt;
# Choose the PvP scenario you want and click &#039;&#039;Create&#039;&#039;&lt;br /&gt;
# Choose latency and other settings, then click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Other players can now join the game&lt;br /&gt;
&lt;br /&gt;
=== Forces ===&lt;br /&gt;
&lt;br /&gt;
Forces can be manually created via the console. This allows any map/scenario to be used for PvP. This may not be as convenient as a pre-made PvP scenario, as there will be no way for players to turn on/off cease fires other than through the console.&lt;br /&gt;
&lt;br /&gt;
Each created force has its own research progression and different forces may attack each other.&lt;br /&gt;
&lt;br /&gt;
The console commands for setting up and controlling forces are below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
game.create_force(&amp;quot;Name&amp;quot;)&lt;br /&gt;
--Creates the force &amp;quot;Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
game.players[&amp;quot;Player_name&amp;quot;].force = game.forces[&amp;quot;Name&amp;quot;]&lt;br /&gt;
--Sets this player to the new force&lt;br /&gt;
&lt;br /&gt;
game.forces[&amp;quot;Name&amp;quot;].set_cease_fire(&amp;quot;Other_force_name&amp;quot;, true)&lt;br /&gt;
--Sets the new force ceasefire to the &amp;quot;other force&amp;quot;&lt;br /&gt;
&lt;br /&gt;
game.forces[&amp;quot;Name&amp;quot;].set_spawn_position({x = 10, y = 20}, game.surfaces[1])&lt;br /&gt;
--Sets the spawn position of the force&lt;br /&gt;
&lt;br /&gt;
game.print(#game.forces)&lt;br /&gt;
--Prints the number of forces&lt;br /&gt;
&lt;br /&gt;
for name, force in pairs (game.forces) do&lt;br /&gt;
   game.print(name)&lt;br /&gt;
end&lt;br /&gt;
--Prints the name of all the forces&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ability of players and entities belonging to one force to interact with structures belonging to another, non-friendly force is limited. However, some types of interactions are still possible:&lt;br /&gt;
&lt;br /&gt;
;Manual pickup from belts&lt;br /&gt;
: Players can pick up items traveling along a transport belt that belongs to an opposing force. Note however that this can&#039;t be automated: Inserters will &#039;&#039;not&#039;&#039; take items from an opposing force&#039;s belts.&lt;br /&gt;
;Belt network connection&lt;br /&gt;
: Belts will connect to each other regardless of force membership, so it&#039;s possible to extend an opposing force&#039;s belt line, and items will flow to them. It is also possible to side-load into, and place items onto (with inserters) an opposing force&#039;s belt line.&lt;br /&gt;
;Fluid network connection&lt;br /&gt;
: Pipes (and storage tanks, and pumps, &amp;amp;c) will connect to each other regardless of force membership. For example, it&#039;s possible to pump fluids out of or into a storage tank belonging to an opposing force.&lt;br /&gt;
;Power leeching&lt;br /&gt;
: Players can draw power from an opposing force&#039;s electric network, by building structures inside the coverage area of a power pole belonging to an opposing force. Power poles that you build next to a power pole belonging to an opposing force will automatically connect to it, but will be impossible to connect or disconnect manually.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
=== Narrative history ===&lt;br /&gt;
&lt;br /&gt;
Because of the potentially immense amount of activity on a map, the game engine utilizes a [https://www.factorio.com/blog/post/fff-76 lock step architecture]. All instances of the game run full simulations of the entire world and only player actions are transferred across the network.&lt;br /&gt;
&lt;br /&gt;
Multiplayer games were introduced to Factorio with version 0.11.0. The only connection method available was peer-to-peer mode which meant every player had to be able to directly communicate with every other player. In version 0.12.4, a client-server mode of communication was introduced in which the server (either a dedicated one or the player who hosted the game) relays messages to all peers. This means that direct connection between all players is no longer necessary. As of version 0.13, P2P connecting is completely removed.&lt;br /&gt;
&lt;br /&gt;
As of version 0.12.0, the game features &amp;quot;latency hiding&amp;quot; mechanics where the game simulates some of the player&#039;s actions locally to make some common interactions (such as moving the player&#039;s character) more fluid.  Not every action is a part of latency hiding – most notably, car or train driving and shooting are not a part of it.&lt;br /&gt;
&lt;br /&gt;
=== Version history ===&lt;br /&gt;
&lt;br /&gt;
Maintainer note: The following history may not be fully up to date, or comprehensive. Factorio&#039;s multiplayer has undergone a great deal of small changes since its inception, however this history will provide a rough overview.&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.14|&lt;br /&gt;
* Added multiplayer server option &amp;quot;Autosave only on server&amp;quot;.&lt;br /&gt;
* Deconstructing/canceling deconstruction sets the &amp;quot;last user&amp;quot; on an entity.&lt;br /&gt;
* Decreased the size of connection accept message with lot of mod which could help some people with 50+ mod multiplayer games.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.13|&lt;br /&gt;
* Reconnecting to multiplayer game that the player is already in (due to being dropped, most often) instantly closes the previous connection and connects the player.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.11|&lt;br /&gt;
* Multiplayer user names can only consist of letters, and &amp;lt;code&amp;gt; -_. &amp;lt;/code&amp;gt; characters.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.10|&lt;br /&gt;
* Disabled 32bit (x86) multiplayer. All hosts and members must be running the 64bit (x86_64) version of the game.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.8|&lt;br /&gt;
* More than 10 players in one game will reduce the rate the game is saved to the server.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.6|&lt;br /&gt;
* Username is now set to username setting, not email.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.5|&lt;br /&gt;
* Added AFK Auto kick interval to multiplayer host settings (with never as default).}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.3|&lt;br /&gt;
* When save of scenario is loaded in multiplayer, it&#039;s scenario is saved in user scenarios.&lt;br /&gt;
* Added &amp;lt;code&amp;gt;/time&amp;lt;/code&amp;gt; command to print the current map age.&lt;br /&gt;
* Added option to host multiplayer game with scenario (it only had new game/load game there).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.2|&lt;br /&gt;
* Can specify limit of upload speed when hosting.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.14.0|&lt;br /&gt;
* Server doesn&#039;t stop/slow down the game when some client is too slow, stops communicating or saves the game longer than the server.&lt;br /&gt;
* Players automatically quit game after 3 desyncs.&lt;br /&gt;
* Removed the option to enable/disable latency hiding, it is always on on clients (and off on the server).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.13.10|&lt;br /&gt;
* Server stdout messages now contain time stamps and message-type tags}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.13.2|&lt;br /&gt;
* Limit multiplayer player name to 60 characters.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.13.0|&lt;br /&gt;
* Improved Multiplayer game UX&lt;br /&gt;
* Server games are published to the server and clients can browse existing games.&lt;br /&gt;
* Removed multiplayer peer-to-peer mode.&lt;br /&gt;
* Building sound is played also for other players in multiplayer.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.31|&lt;br /&gt;
* Human readable error notice when multiplayer connection wasn&#039;t successful. (https://forums.factorio.com/23132)&lt;br /&gt;
* Improved map download speed when connecting to multiplayer game.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.30|&lt;br /&gt;
* Mod checksums are calculated when the game starts and are compared with other peers when joining a multiplayer game. This is to ensure everyone has exactly the same mod in order to prevent desyncs caused by local changes made to mod files.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.28|&lt;br /&gt;
* Added --port to specify which network port the game should use, when hosting with --start-server or --mp-load-game.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.27|&lt;br /&gt;
* The report of different mods when trying to connect to multiplayer game is now scroll-able when needed.&lt;br /&gt;
* Better message when the server leaves a multiplayer game}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.11|&lt;br /&gt;
* Added --no-auto-pause: When running as a server, --no-auto-pause will prevent stopping the game when no players are connected.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.9|&lt;br /&gt;
* Added resume button to multiplayer game menu}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.7|&lt;br /&gt;
*New command line options for the headless server: --disallow-commands and --peer-to-peer}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.5|&lt;br /&gt;
* Multiplayer broadcast (heartbeats) is done via a single message when not using peer2peer.&lt;br /&gt;
* Further optimizations in size of the Multiplayer heartbeat (message sent every tick).&lt;br /&gt;
* LatencyState is suspended when player is killed (and waiting for respawn) in Multiplayer.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.4|&lt;br /&gt;
* Simple mechanism for multiplayer relaying via the server.&lt;br /&gt;
* Less annoying glitches when running and shooting in multiplayer with latency hiding.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.12.0|&lt;br /&gt;
* Multiplayer latency hiding (gives impression that some common tasks are performed immediately)&lt;br /&gt;
* Factorio can run as a dedicated server without graphics.&lt;br /&gt;
* Basic PvP: New forces can now be created and merged back together; a cease-fire can be agreed upon between forces&lt;br /&gt;
* IPv6 support for multiplayer.&lt;br /&gt;
* DNS names can be used when connecting to multiplayer game.&lt;br /&gt;
* Player&#039;s logistic filters are now remembered after respawn in multiplayer&lt;br /&gt;
* Smaller multiplayer heartbeat packet size.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.11.19|&lt;br /&gt;
* Multiplayer dropping threshold is doubled during map upload / download.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.11.17|&lt;br /&gt;
* Autosaves in multiplayer are performed at the same time by all clients (interval is set by hosting player).&lt;br /&gt;
* Progress bar is shown when non-responsive peers are about to be dropped from the game in the Multiplayer.&lt;br /&gt;
* Progress bar is shown when other peers in multiplayer are saving map.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.11.16|&lt;br /&gt;
* Revived character (after dying in multiplayer) are placed on the spawn point instead of the center of the map.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.11.2|&lt;br /&gt;
*  Mods that don&#039;t affect game state are not needed to be synchronized when playing multiplayer game or replaying game.}}&lt;br /&gt;
&lt;br /&gt;
{{history|0.11.0|&lt;br /&gt;
* Introduced}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Console&amp;diff=166520</id>
		<title>Console</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Console&amp;diff=166520"/>
		<updated>2018-12-23T15:39:18Z</updated>

		<summary type="html">&lt;p&gt;Luc: Add command for killing nearby enemies (I wanted enemies generally on the map, but got tired of making space for a huge solar array)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
The &#039;&#039;&#039;Console&#039;&#039;&#039; is Factorio&#039;s command-line interface.&lt;br /&gt;
&lt;br /&gt;
The in-game console is used for:&lt;br /&gt;
&lt;br /&gt;
* Chatting with other players&lt;br /&gt;
* Running commands / scripts / cheats&lt;br /&gt;
* Occasional status updates&lt;br /&gt;
&lt;br /&gt;
There are three types of commands:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[[#Normal commands|Normal]]&#039;&#039;&#039; - Display information about the game and customize your experience.&lt;br /&gt;
* &#039;&#039;&#039;[[#Multiplayer commands|Multiplayer]]&#039;&#039;&#039; - Message filtering, banning users, etc.&lt;br /&gt;
* &#039;&#039;&#039;[[#Scripting and cheat commands|Scripting/Cheating]]&#039;&#039;&#039; - Run small Lua scripts (but they &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;disable achievements for the save game&amp;lt;/span&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== Using the console ===&lt;br /&gt;
The console display can be toggled with the {{keybinding|/}} (slash) or {{keybinding|~}} (tilde) keys.&lt;br /&gt;
&lt;br /&gt;
You can customize the keys via &#039;&#039;&#039;Options Menu → Keyboard → Toggle Lua console&#039;&#039;&#039;.&lt;br /&gt;
When the console is open, you&#039;ll see a blinking cursor at the bottom of the screen; type your message or command and hit &#039;&#039;&#039;Return&#039;&#039;&#039; to send it (this will also close the console).&lt;br /&gt;
Documentation about message and command prefixes can be found further down this page.&lt;br /&gt;
&lt;br /&gt;
When console is closed, only the most recent messages/commands will be displayed, but they will gradually fade away (opening the console will immediately re-display all recent messages).&lt;br /&gt;
Note that by default, all executed commands are made visible to all users. You can set the fade out time via &#039;&#039;&#039;Options Menu → Other Settings → Message Delay&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you want to immediately hide the console, open the console and then press &#039;&#039;&#039;Escape&#039;&#039;&#039; key (or press &#039;&#039;&#039;Return&#039;&#039;&#039; without entering any message/command).&lt;br /&gt;
This not only closes the console, but it also hides all the recent messages/commands.&lt;br /&gt;
The console can be cleared with the &#039;&#039;&#039;/clear&#039;&#039;&#039; command.&lt;br /&gt;
&lt;br /&gt;
Note that the console can also accept raw Lua code as well as game commands.&lt;br /&gt;
&lt;br /&gt;
=== Console history ===&lt;br /&gt;
&lt;br /&gt;
The console has an inbuilt history; it&#039;s a bit like a text editor where only one line of text is displayed at a time.&lt;br /&gt;
&lt;br /&gt;
Use the {{keybinding|&amp;amp;uarr;}} and {{keybinding|&amp;amp;darr;}} keys to scroll through the console history.&lt;br /&gt;
&lt;br /&gt;
Use the {{keybinding|&amp;amp;larr;}} and {{keybinding|&amp;amp;rarr;}} keys to cursor through the currently displayed message or command, which you can edit (delete, insert, etc.) and resend (by pressing &#039;&#039;&#039;Return&#039;&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
The {{keybinding|Tab}} key will auto-complete commands and player ids.&lt;br /&gt;
&lt;br /&gt;
== Normal commands ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;| Command&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;| Example&lt;br /&gt;
! style=&amp;quot;width:46%&amp;quot;| Description&lt;br /&gt;
! style=&amp;quot;width:4%&amp;quot;| Admin only&lt;br /&gt;
|-&lt;br /&gt;
| /alerts &amp;lt;enable/disable/mute/unmute&amp;gt; &amp;lt;alert&amp;gt;&lt;br /&gt;
| /alerts disable turret_fire&lt;br /&gt;
| Enables, disables, mutes, or unmutes the given alert type. Available alerts: entity_destroyed, entity_under_attack, not_enough_construction_robots, no_material_for_construction, not_enough_repair packs, turret_fire, custom, no_storage.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /clear&lt;br /&gt;
| /clear&lt;br /&gt;
| Clears the console.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /color &amp;lt;color&amp;gt;&lt;br /&gt;
| /color 20 255 255 100&lt;br /&gt;
| Changes your color. Can either be one of the pre-defined colors or [[:Wikipedia:RGBA_color_space|RGBA value]] in the format of “# # # #”. Available colors: default, red, green, blue, orange, yellow, pink, purple, white, black, gray, brown, cyan, acid.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /evolution&lt;br /&gt;
| /evolution&lt;br /&gt;
| Prints info about the alien evolution factor.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /help [command]&lt;br /&gt;
| /help&lt;br /&gt;
| Prints a list of available commands, the optional argument can specify the command that should be described.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /h [command]&lt;br /&gt;
| /h&lt;br /&gt;
| Same as /help.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /mute-programmable-speaker &amp;lt;mute/unmute&amp;gt; &amp;lt;local/everyone&amp;gt;&lt;br /&gt;
| /mute-programmable-speaker mute local&lt;br /&gt;
| Mutes or unmutes the global sounds created by the Programmable Speaker. Use “local” to mute just the local client. Admins can use “everyone” to mute the sounds for everyone on the server.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /perf-avg-frames &amp;lt;number&amp;gt;&lt;br /&gt;
| /perf-avg-frames 100&lt;br /&gt;
| Number of ticks/updates used to average performance counters. Default is 100. Value of 5-10 is recommended for fast convergence, but numbers will jitter more rapidly.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /permissions&lt;br /&gt;
| /permissions&lt;br /&gt;
| Opens the permissions GUI.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /screenshot [x resolution] [y resolution] [zoom]&lt;br /&gt;
| /screenshot&lt;br /&gt;
| Takes a screenshot with the GUI hidden, centered on the player. It is saved in the &amp;quot;script-output&amp;quot; subfolder of your [[User data directory]].  Resolution is optional and defaults to the current window size. Zoom is optional and defaults to 1.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /seed&lt;br /&gt;
| /seed&lt;br /&gt;
| Prints the starting map seed.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /time&lt;br /&gt;
| /time&lt;br /&gt;
| Prints info about how old the map is.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /toggle-action-logging&lt;br /&gt;
| /toggle-action-logging&lt;br /&gt;
| Toggles logging all input actions performed by the game. This value isn’t persisted between game restarts and only affects your local game in multiplayer sessions.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /toggle-heavy-mode&lt;br /&gt;
| /toggle-heavy-mode&lt;br /&gt;
| Used to investigate desyncs. Will slow down the game and make multiplayer unplayable.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /toggle-rockets-sent-gui&lt;br /&gt;
| /toggle-rockets-sent-gui&lt;br /&gt;
| Toggles if the rockets sent button is shown in the upper left corner of the screen.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /version&lt;br /&gt;
| /version&lt;br /&gt;
| Prints the current game version.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Multiplayer commands ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;| Command&lt;br /&gt;
! style=&amp;quot;width:25%&amp;quot;| Example&lt;br /&gt;
! style=&amp;quot;width:46%&amp;quot;| Description&lt;br /&gt;
! style=&amp;quot;width:4%&amp;quot;| Admin only&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;message&amp;gt;&lt;br /&gt;
| Hello team!&lt;br /&gt;
| Console input that does not start with {{keybinding|/}} is shown as a chat message to your team.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /admins&lt;br /&gt;
| /admins&lt;br /&gt;
| Prints a list of game admins.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /ban &amp;lt;player&amp;gt; &amp;lt;reason&amp;gt;&lt;br /&gt;
| /ban xTROLLx Throwing grenades in base&lt;br /&gt;
| Bans the specified player.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /banlist &amp;lt;add/remove/get/clear&amp;gt; &amp;lt;player&amp;gt;&lt;br /&gt;
| /banlist get&lt;br /&gt;
| Adds or removes a player from the banlist. Same as /ban or /unban.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /config &amp;lt;get/set&amp;gt; &amp;lt;option&amp;gt; &amp;lt;value&amp;gt;&lt;br /&gt;
| /config set password hunter2&lt;br /&gt;
| Gets or sets various multiplayer game settings. Available configs are: afk-auto-kick, allow-commands, allow-debug-settings, autosave-interval, autosave-only-on-server, ignore-player-limit-for-returning-players, max-players, max-upload-speed, only-admins-can-pause, password, require-user-verification, visibility-lan, visibility-public.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /delete-blueprint-library &amp;lt;player&amp;gt;&lt;br /&gt;
| /delete-blueprint-library everybody confirm&lt;br /&gt;
| Deletes the blueprint library storage for the given offline player from the save file. Enter “everybody confirm” to delete the storage of all offline players.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /demote &amp;lt;player&amp;gt;&lt;br /&gt;
| /demote AzureDiamond&lt;br /&gt;
| Demotes the player from admin.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /ignore &amp;lt;player&amp;gt;&lt;br /&gt;
| /ignore Cthon98&lt;br /&gt;
| Prevents the chat from showing messages from this player. Admin messages are still shown.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /ignores&lt;br /&gt;
| /ignores&lt;br /&gt;
| Prints a list of ignored players.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /kick &amp;lt;player&amp;gt; &amp;lt;reason&amp;gt;&lt;br /&gt;
| /kick xTROLLx Throwing grenades in base&lt;br /&gt;
| Kicks the specified player.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /mute &amp;lt;player&amp;gt;&lt;br /&gt;
| /mute Cthon98&lt;br /&gt;
| Prevents the player from saying anything in chat.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /mutes&lt;br /&gt;
| /mutes&lt;br /&gt;
| All players that are muted (can’t talk in chat).&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /open &amp;lt;player&amp;gt;&lt;br /&gt;
| /open AzureDiamond&lt;br /&gt;
| Opens another player’s inventory.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /o &amp;lt;player&amp;gt;&lt;br /&gt;
| /o AzureDiamond&lt;br /&gt;
| Same as /open.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /players [online/o/count/c]&lt;br /&gt;
| /players&lt;br /&gt;
| Prints a list of players in the game. (parameter online/o, it prints only players that are online, count/c prints only count)&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /promote &amp;lt;player&amp;gt;&lt;br /&gt;
| /promote AzureDiamond&lt;br /&gt;
| Promotes the player to admin.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /purge &amp;lt;player&amp;gt;&lt;br /&gt;
| /purge Cthon98&lt;br /&gt;
| Clears all the messages from this player from the chat log.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /reply &amp;lt;message&amp;gt;&lt;br /&gt;
| /reply oh, really?&lt;br /&gt;
| Replies to the last player that whispered to you.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /r &amp;lt;message&amp;gt;&lt;br /&gt;
| /r oh, really?&lt;br /&gt;
| Same as /reply.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /server-save&lt;br /&gt;
| /server-save&lt;br /&gt;
| Saves the game on the server in a multiplayer game.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /shout &amp;lt;message&amp;gt;&lt;br /&gt;
| /shout Hello world!&lt;br /&gt;
| Sends a message to all players including other forces.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /s &amp;lt;message&amp;gt;&lt;br /&gt;
| /s Hello world!&lt;br /&gt;
| Same as /shout.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /swap-players &amp;lt;player&amp;gt; [player]&lt;br /&gt;
| /swap-players AzureDiamond&lt;br /&gt;
| Swaps your character with the given player’s character, or if two players are given swaps the two player characters.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /unban &amp;lt;player&amp;gt;&lt;br /&gt;
| /unban xTROLLx&lt;br /&gt;
| Unbans the specified player.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /unignore &amp;lt;player&amp;gt;&lt;br /&gt;
| /unignore Cthon98&lt;br /&gt;
| Allows the chat to show messages from this player.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /unmute &amp;lt;player&amp;gt;&lt;br /&gt;
| /unmute Cthon98&lt;br /&gt;
| Allows the player to talk in chat again.&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| /whisper &amp;lt;player&amp;gt; &amp;lt;message&amp;gt;&lt;br /&gt;
| /whisper AzureDiamond thats what I see&lt;br /&gt;
| Sends a message to the specified player.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /w &amp;lt;player&amp;gt; &amp;lt;message&amp;gt;&lt;br /&gt;
| /w AzureDiamond thats what I see&lt;br /&gt;
| Same as /whisper.&lt;br /&gt;
| No&lt;br /&gt;
|-&lt;br /&gt;
| /whitelist &amp;lt;add/remove/get/clear&amp;gt; [player]&lt;br /&gt;
| /whitelist get&lt;br /&gt;
| Adds or removes a player from the whitelist, where only whitelisted players can join the game. Enter nothing for “player” when using “get” to print a list of all whitelisted players. An empty whitelist disables the whitelist functionality allowing anyone to join.&lt;br /&gt;
| No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Scripting and cheat commands ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Command&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| /c &amp;lt;command&amp;gt;&lt;br /&gt;
| Executes a Lua command.&lt;br /&gt;
|-&lt;br /&gt;
| /command &amp;lt;command&amp;gt;&lt;br /&gt;
| Executes a Lua command.&lt;br /&gt;
|-&lt;br /&gt;
| /measured-command &amp;lt;command&amp;gt;&lt;br /&gt;
| Executes a Lua command and measures time it took.&lt;br /&gt;
|-&lt;br /&gt;
| /silent-command &amp;lt;command&amp;gt;&lt;br /&gt;
| Executes a Lua command without printing it to the console.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This is a very powerful feature, which also allows cheating, and as such &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;achievements will be permanently disabled for the save&amp;lt;/span&amp;gt; as soon as you use a script command.&lt;br /&gt;
&lt;br /&gt;
== Basic example scripts ==&lt;br /&gt;
&lt;br /&gt;
=== Use it as calculator ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.print(1234*5678)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Zoom beyond normal bounds ===&lt;br /&gt;
Note that zooming too far out can cause performance hits. Be careful.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.zoom=0.1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Mine faster ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.manual_mining_speed_modifier=1000&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Craft faster ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.manual_crafting_speed_modifier=1000&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Unlock and research all technologies ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.research_all_technologies()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Undo this with the command in the next section.&lt;br /&gt;
&lt;br /&gt;
=== Unresearch all technologies ===&lt;br /&gt;
This does not reset manually applied bonuses&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c for _, tech in pairs(game.player.force.technologies) do &lt;br /&gt;
	tech.researched=false&lt;br /&gt;
	game.player.force.set_saved_technology_progress(tech, 0)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Cancel current research ===&lt;br /&gt;
Cancels the current research.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.current_research = nil&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Reset your force ===&lt;br /&gt;
This resets all data for your force, including kill and production statistics, technologies, bonuses and charting status.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.reset()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Always show rail block visualization ===&lt;br /&gt;
Permanently show the rail block visualization instead of only when holding a rail signal. Disable by replacing true with false.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.game_view_settings.show_rail_block_visualisation = true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Inventory manipulation scripts ==&lt;br /&gt;
&lt;br /&gt;
=== Cheat mode ===&lt;br /&gt;
Allows for infinite free crafting. Disable by replacing true with false.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.cheat_mode=true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Refill resources (refill oil, iron etc.) ===&lt;br /&gt;
While holding the cursor over a resource tile in-game&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.selected.amount=7500&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively you can refill all resources in the map with the following command. Change ore.amount to the desired value.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c surface = game.player.surface&lt;br /&gt;
for _, ore in pairs(surface.find_entities_filtered({type=&amp;quot;resource&amp;quot;})) do&lt;br /&gt;
    ore.amount = 10000&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Add items to the player&#039;s inventory ===&lt;br /&gt;
Replace iron-plate with the [[data.raw|internal name]] of the item desired.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.insert{name=&amp;quot;iron-plate&amp;quot;, count=100}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For instance, here&#039;s a stack of the god-mode energy system interface:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.insert{name=&amp;quot;electric-energy-interface&amp;quot;}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add a powerful armor with equipment and some tools for construction:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c	local player = game.player&lt;br /&gt;
player.insert{name=&amp;quot;power-armor-mk2&amp;quot;, count = 1}&lt;br /&gt;
local p_armor = player.get_inventory(5)[1].grid&lt;br /&gt;
	p_armor.put({name = &amp;quot;fusion-reactor-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;fusion-reactor-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;fusion-reactor-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;exoskeleton-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;exoskeleton-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;exoskeleton-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;exoskeleton-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;energy-shield-mk2-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;energy-shield-mk2-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;personal-roboport-mk2-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;night-vision-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;battery-mk2-equipment&amp;quot;})&lt;br /&gt;
	p_armor.put({name = &amp;quot;battery-mk2-equipment&amp;quot;})&lt;br /&gt;
player.insert{name=&amp;quot;construction-robot&amp;quot;, count = 25}&lt;br /&gt;
player.insert{name=&amp;quot;blueprint&amp;quot;, count = 3}&lt;br /&gt;
player.insert{name=&amp;quot;deconstruction-planner&amp;quot;, count = 1}&lt;br /&gt;
player.insert{name=&amp;quot;steel-axe&amp;quot;, count = 10}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== World manipulation scripts ==&lt;br /&gt;
&lt;br /&gt;
=== Reveal the map around the player ===&lt;br /&gt;
&lt;br /&gt;
Reveals the map around the player, similar to a [[radar]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local radius=150&lt;br /&gt;
game.player.force.chart(game.player.surface, {{game.player.position.x-radius, game.player.position.y-radius}, {game.player.position.x+radius, game.player.position.y+radius}})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
or from start position&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.forces.player.chart(game.player.surface, {{x = -2000, y = -2000}, {x = 2000, y = 2000}})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Change 150 to the desired radius, higher values take longer.&lt;br /&gt;
&lt;br /&gt;
=== Delete chunks ===&lt;br /&gt;
If much of the map is revealed, it increases the size of the save file. The following command cancels the generation of all chunks that are currently queued for generation and removes chunks outside a 32 chunks radius around 0,0. Note that this will remove player entities if there are any on these chunks.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface = game.player.surface;&lt;br /&gt;
game.player.force.cancel_charting(surface); &lt;br /&gt;
local chunk_radius = 32;&lt;br /&gt;
for chunk in surface.get_chunks() do&lt;br /&gt;
  if (chunk.x &amp;lt; -chunk_radius or chunk.x &amp;gt; chunk_radius or chunk.y &amp;lt; -chunk_radius or chunk.y &amp;gt; chunk_radius) then&lt;br /&gt;
    surface.delete_chunk(chunk)&lt;br /&gt;
  end&lt;br /&gt;
end &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Turn off night ===&lt;br /&gt;
Enables eternal day.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.surface.always_day=true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Change game speed ===&lt;br /&gt;
0.5 is half speed, 1 is default, 2 is double speed, etc. Minimum is 0.01. This can be used for a lot of things like when you know you will have to wait for long periods of time for something to complete. Increasing will decrease performance, be careful.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.speed=X&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Expensive (marathon) or normal mode ===&lt;br /&gt;
To change from normal to expensive mode preset (this changes the research cost and intermediate product cost):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.difficulty_settings.recipe_difficulty=1&lt;br /&gt;
game.difficulty_settings.technology_difficulty=1&lt;br /&gt;
game.difficulty_settings.technology_price_multiplier=4&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To change back to normal:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.difficulty_settings.recipe_difficulty=0&lt;br /&gt;
game.difficulty_settings.technology_difficulty=0&lt;br /&gt;
game.difficulty_settings.technology_price_multiplier=1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Freeze time ===&lt;br /&gt;
Stops the advancement of the time if you replace &amp;quot;BOOL&amp;quot; with &amp;quot;true&amp;quot; or unfreezes it if you replace it with &amp;quot;false&amp;quot;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.surface.freeze_daytime=BOOL&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remove all pollution ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.surface.clear_pollution()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Completely turn off pollution ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c for _, surface in pairs(game.surfaces) do&lt;br /&gt;
  surface.clear_pollution()&lt;br /&gt;
end&lt;br /&gt;
game.map_settings.pollution.enabled = false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Add a lot of pollution ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.surface.pollute(game.player.position, 1000000)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Disable friendly fire for your force ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.friendly_fire = false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Add new resource patch ===&lt;br /&gt;
This creates a new 11×11 patch of resources, centered on the player character, where the ground is not water.&lt;br /&gt;
The patch it creates is perfectly square but it randomizes the amount similar to natural generation, with fewer ore at the edges and more ore in the center.&lt;br /&gt;
The default numbers result in a patch with 2500-3000 ore.&lt;br /&gt;
&lt;br /&gt;
If you want a larger patch, change &amp;quot;local size = 5&amp;quot; to a larger number.&lt;br /&gt;
A larger patch will have exponentially more ore.&lt;br /&gt;
Entering a number above 30 is not recommended.&lt;br /&gt;
&lt;br /&gt;
If you want a richer patch, change &amp;quot;local density = 10&amp;quot; to a larger number.&lt;br /&gt;
Entering a very large number shouldn&#039;t hurt anything but you probably don&#039;t need to go above 100.&lt;br /&gt;
&lt;br /&gt;
To choose which resource is spawned, change &amp;quot;stone&amp;quot; near the bottom to &amp;quot;iron-ore&amp;quot;, &amp;quot;copper-ore&amp;quot;, &amp;quot;coal&amp;quot;, or &amp;quot;uranium-ore&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface=game.player.surface&lt;br /&gt;
local ore=nil&lt;br /&gt;
local size=5&lt;br /&gt;
local density=10&lt;br /&gt;
for y=-size, size do&lt;br /&gt;
	for x=-size, size do&lt;br /&gt;
		a=(size+1-math.abs(x))*10&lt;br /&gt;
		b=(size+1-math.abs(y))*10&lt;br /&gt;
		if a&amp;lt;b then&lt;br /&gt;
			ore=math.random(a*density-a*(density-8), a*density+a*(density-8))&lt;br /&gt;
		end&lt;br /&gt;
		if b&amp;lt;a then&lt;br /&gt;
			ore=math.random(b*density-b*(density-8), b*density+b*(density-8))&lt;br /&gt;
		end&lt;br /&gt;
		if surface.get_tile(game.player.position.x+x, game.player.position.y+y).collides_with(&amp;quot;ground-tile&amp;quot;) then&lt;br /&gt;
			surface.create_entity({name=&amp;quot;stone&amp;quot;, amount=ore, position={game.player.position.x+x, game.player.position.y+y}})&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Add new oil patch ===&lt;br /&gt;
This creates 9 crude oil patches in a 3×3 square.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c for y=0,2 do&lt;br /&gt;
	for x=0,2 do&lt;br /&gt;
		game.player.surface.create_entity({name=&amp;quot;crude-oil&amp;quot;, amount=100000, position={game.player.position.x+x*7-7, game.player.position.y+y*7-7}})&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or randomly without any collision:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local position=nil&lt;br /&gt;
for i=1,9 do&lt;br /&gt;
	position=game.player.surface.find_non_colliding_position(&amp;quot;crude-oil&amp;quot;, game.player.position, 0, i/2+1.5)&lt;br /&gt;
	if position then &lt;br /&gt;
		game.player.surface.create_entity({name=&amp;quot;crude-oil&amp;quot;, amount=100000, position=position})&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Count entities ===&lt;br /&gt;
Counts all entities whose name includes the string in local entity.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local entity=&amp;quot;belt&amp;quot;&lt;br /&gt;
local surface=game.player.surface&lt;br /&gt;
local count=0&lt;br /&gt;
for key, ent in pairs(surface.find_entities_filtered({force=game.player.force})) do&lt;br /&gt;
	if string.find(ent.name,entity) then&lt;br /&gt;
		count=count+1&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
game.player.print(count)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Emptying all pipes, underground pipes and pumps ===&lt;br /&gt;
Useful when pipes contain a fluid you dont want.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface = game.player.surface&lt;br /&gt;
local deleted=0&lt;br /&gt;
for key, entity in pairs(surface.find_entities_filtered({force=game.player.force})) do&lt;br /&gt;
	if string.find(entity.name, &amp;quot;pipe&amp;quot;) or &lt;br /&gt;
		string.find(entity.name, &amp;quot;pump&amp;quot;) &lt;br /&gt;
	then&lt;br /&gt;
		for i=1,#entity.fluidbox do&lt;br /&gt;
			deleted = deleted + 1&lt;br /&gt;
			entity.fluidbox[i] = nil;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
game.player.print(&amp;quot;Fluids removed from &amp;quot;..deleted ..&amp;quot; entities&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Turn off cliff generation ===&lt;br /&gt;
Sets size to &amp;quot;none&amp;quot;. Only effective on chunks that are generated after using this command. Use [[#Remove all cliffs]] to delete existing cliffs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local mgs = game.player.surface.map_gen_settings&lt;br /&gt;
mgs.cliff_settings.cliff_elevation_0 = 1024&lt;br /&gt;
game.player.surface.map_gen_settings = mgs&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remove all cliffs ===&lt;br /&gt;
Removes all cliffs existing cliffs from the world. Use [[#Turn off cliff generation]] to turn off cliff generation in new chunks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c for _, v in pairs(game.player.surface.find_entities_filtered{type=&amp;quot;cliff&amp;quot;}) do&lt;br /&gt;
  v.destroy()&lt;br /&gt;
end&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Delete all decoratives ===&lt;br /&gt;
Delete the decoratives that can be found in the world.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface = game.player.surface&lt;br /&gt;
for c in surface.get_chunks() do&lt;br /&gt;
	surface.destroy_decoratives({{c.x*32, c.y*32}, {c.x*32+32, c.y*32+32}})&lt;br /&gt;
end&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Change map generation settings ===&lt;br /&gt;
This allows to change the map generation settings for new chunks; it does not alter already generated chunks. [[#Delete chunks|Deleted chunks]] are affected by the setting change because they are newly generated when they get explored again.&lt;br /&gt;
&lt;br /&gt;
To change resource generation settings, replace &amp;quot;iron-ore&amp;quot; with the [[Data.raw#resource|resource]] that should be changed and replace &amp;quot;very-high&amp;quot; with the desired [https://lua-api.factorio.com/latest/Concepts.html#MapGenSize MapGenSize] in the following command. Replace &amp;quot;iron-ore&amp;quot; with &amp;quot;enemy-base&amp;quot; to change the enemy base generation settings. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface = game.player.surface&lt;br /&gt;
local resource = &amp;quot;iron-ore&amp;quot;&lt;br /&gt;
local autoplace = surface.map_gen_settings.autoplace_controls&lt;br /&gt;
autoplace[resource].size = &amp;quot;very-high&amp;quot;&lt;br /&gt;
autoplace[resource].frequency = &amp;quot;very-high&amp;quot;&lt;br /&gt;
autoplace[resource].richness = &amp;quot;very-high&amp;quot;&lt;br /&gt;
surface.map_gen_settings.autoplace_controls = autoplace&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To change water generation settings, replace &amp;quot;very-high&amp;quot; with the desired [https://lua-api.factorio.com/latest/Concepts.html#MapGenSize MapGenSize] in the following command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface = game.player.surface&lt;br /&gt;
local mgs = surface.map_gen_settings&lt;br /&gt;
mgs.water = &amp;quot;very-high&amp;quot; -- size&lt;br /&gt;
mgs.terrain_segmentation  = &amp;quot;very-high&amp;quot; -- frequency&lt;br /&gt;
surface.map_gen_settings = mgs &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Enemy/evolution scripts ==&lt;br /&gt;
&lt;br /&gt;
=== Set evolution factor ===&lt;br /&gt;
Ranges from 0 (new game) to 1.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.forces[&amp;quot;enemy&amp;quot;].evolution_factor=X&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Disable time-based evolution &amp;amp; increases pollution-based evolution ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.map_settings.enemy_evolution.time_factor=0&lt;br /&gt;
/c game.map_settings.enemy_evolution.pollution_factor=game.map_settings.enemy_evolution.pollution_factor*2&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;2&amp;quot; at the end of the last command will double the default pollution factor. You can substitute another number to increase (or decrease) the pollution factor further.&lt;br /&gt;
&lt;br /&gt;
=== Kill all biters on the &amp;quot;enemy&amp;quot; force ===&lt;br /&gt;
Note that this will kill only mobile units, spawners will not be killed.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.forces[&amp;quot;enemy&amp;quot;].kill_all_units()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Kill all enemies ===&lt;br /&gt;
This will kill all biters, bases and worms. Anything that is an enemy will be completely destroyed. This only affects enemies in the explored world, so any unexplored parts of the map which still need to be generated will still have enemies.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local surface=game.player.surface&lt;br /&gt;
for key, entity in pairs(surface.find_entities_filtered({force=&amp;quot;enemy&amp;quot;})) do&lt;br /&gt;
	entity.destroy()&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Kill all nearby enemies ===&lt;br /&gt;
&lt;br /&gt;
This will kill all biters, bases and worms in a configurable radius. The default, 250 tiles, is about two zoomed-out screen widths on full HD. After destruction, it shows how many objects were destroyed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local radius = 250&lt;br /&gt;
local surface=game.player.surface&lt;br /&gt;
local pp = game.player.position&lt;br /&gt;
local cnt = 0&lt;br /&gt;
for key, entity in pairs(surface.find_entities_filtered({force=&amp;quot;enemy&amp;quot;})) do&lt;br /&gt;
    if entity.position.x &amp;gt; pp.x - radius and entity.position.x &amp;lt; pp.x + radius&lt;br /&gt;
        and entity.position.y &amp;gt; pp.y - radius and entity.position.y &amp;lt; pp.y + radius then&lt;br /&gt;
        cnt = cnt+1&lt;br /&gt;
        entity.destroy()&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
game.player.print(cnt)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Enable/Disable peaceful mode ===&lt;br /&gt;
Enabling peaceful mode prevents biter attacks until provoked. Substitute true for false to disable. Already existing biters are not affected by this command so attacks could continue for a while after activating peaceful mode.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.surface.peaceful_mode = true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Enable/Disable biter expansion ===&lt;br /&gt;
Biter expansion allows biters to create new nests, it is enabled by default. Substitute true for false to disable.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.map_settings.enemy_expansion.enabled = true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Player character scripts ==&lt;br /&gt;
Commands concerning the player directly.&lt;br /&gt;
=== Get player position ===&lt;br /&gt;
Prints coordinates of your current position.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.print(game.player.position.x .. &amp;quot;, &amp;quot; .. game.player.position.y)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Teleport player ===&lt;br /&gt;
Moves the player to the specified location. You should be able to teleport to a specific player if you obtain their coordinates via them executing the previous command and giving them to you.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.teleport({X, Y})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To teleport to the world&#039;s origin, use 0,0.&lt;br /&gt;
&lt;br /&gt;
=== Enable god mode ===&lt;br /&gt;
God mode removes your player character allowing you to fly over obstacles and take no damage.&lt;br /&gt;
&lt;br /&gt;
Disassociate your controls from the player:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.character=nil&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, hover the mouse over the useless player and destroy it by typing:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.selected.destroy()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To undo, spawn a player character. This will spawn a new player at the spawn point of the world, and connect your controls to it.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.create_character()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Research scripts ==&lt;br /&gt;
&lt;br /&gt;
=== Enable faster research ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.laboratory_speed_modifier=1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
1 is normal speed, 2 is double speed 3 is triple etc.&lt;br /&gt;
&lt;br /&gt;
=== Research specific technologies ===&lt;br /&gt;
The internal technology names can be found in the infoboxes on their respective pages.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.technologies[&#039;electric-energy-distribution-1&#039;].researched=true&lt;br /&gt;
/c game.player.force.technologies[&#039;steel-processing&#039;].researched=true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Unresearch specific technologies ===&lt;br /&gt;
The internal technology names can be found in the infoboxes on their respective pages.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.technologies[&#039;electric-energy-distribution-1&#039;].researched=false; game.player.force.set_saved_technology_progress(&#039;electric-energy-distribution-1&#039;, 0)&lt;br /&gt;
/c game.player.force.technologies[&#039;steel-processing&#039;].researched=false; game.player.force.set_saved_technology_progress(&#039;steel-processing&#039;, 0)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Enabling specific recipes ===&lt;br /&gt;
The internal recipe/item names can be found in the infoboxes on their respective pages.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.force.recipes[&amp;quot;electric-energy-interface&amp;quot;].enabled=true&lt;br /&gt;
/c game.player.force.recipes[&amp;quot;rocket-silo&amp;quot;].enabled=true&lt;br /&gt;
/c game.player.force.recipes.loader.enabled=true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Enable all recipes ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c for name, recipe in pairs(game.player.force.recipes) do recipe.enabled = true end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Command line parameters ==&lt;br /&gt;
&#039;&#039;&#039;As of Game Version 0.15.13&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Command line parameters can be used to set settings in the command line before the game launches, this is useful mainly for advanced users or server hosts.&lt;br /&gt;
&lt;br /&gt;
General options:&lt;br /&gt;
  -h [ --help ]                      display help&lt;br /&gt;
  --version                          show version information&lt;br /&gt;
  -v [ --verbose ]                   enable verbose logging&lt;br /&gt;
  -c [ --config ] PATH               config file to use&lt;br /&gt;
  --no-log-rotation                  don&#039;t rotate log file&lt;br /&gt;
  --mod-directory PATH               Mod directory to use&lt;br /&gt;
  --check-unused-prototype-data      Print a warning for all prototype values that were not accessed&lt;br /&gt;
&lt;br /&gt;
Running options:&lt;br /&gt;
  -s [ --map2scenario ] arg          map to scenario conversion&lt;br /&gt;
  -m [ --scenario2map ] arg          scenario to map conversion&lt;br /&gt;
  --apply-update arg                 immediately apply update package&lt;br /&gt;
  --create FILE                      create a new map&lt;br /&gt;
  --map-gen-settings FILE            Map generation settings for use with --create. See data/map-gen-settings.example.json&lt;br /&gt;
  --map-settings FILE                Map settings for use with --create. See data/base/prototypes/map-settings.lua&lt;br /&gt;
  --preset arg                       Name of the map generation preset to be used.&lt;br /&gt;
  --generate-map-preview FILE        Generate preview images of the map&lt;br /&gt;
  --map-preview-size SCALE (=1,024)  Size (in pixels) of map preview&lt;br /&gt;
  --map-preview-scale SCALE (=1)     Scale (meters per pixel) of map preview&lt;br /&gt;
  --map-preview-offset X,Y (=0,0)    Offset of the center of the map, in meters&lt;br /&gt;
  --start-server FILE                start a multiplayer server&lt;br /&gt;
  --start-server-load-scenario FILE  start a multiplayer server and load the specified scenario&lt;br /&gt;
  --start-server-load-latest         start a multiplayer server and load the latest available save&lt;br /&gt;
  --until-tick TICK                  run a save until given map tick&lt;br /&gt;
  --mp-connect ADDRESS               start factorio and connect to address&lt;br /&gt;
  --load-game FILE                   start Factorio and load a game in singleplayer&lt;br /&gt;
  --benchmark FILE                   load save and run benchmark&lt;br /&gt;
  --benchmark-ticks N (=1,000)       number of ticks for benchmarking. Default is 1000&lt;br /&gt;
  --force-opengl                     use OpenGL for rendering&lt;br /&gt;
  --force-d3d                        use Direct3D for rendering&lt;br /&gt;
  --fullscreen BOOL                  start game in windowed mode (saved to configuration)&lt;br /&gt;
  --max-texture-size N               maximal size of texture that the game can use (saved to configuration). Should be power of two greater than 2048&lt;br /&gt;
  --graphics-quality arg             accepted values: normal, low, very-low&lt;br /&gt;
  --video-memory-usage arg           accepted values: all, high, medium, low&lt;br /&gt;
  --gfx-safe-mode                    resets some graphics settings to values that should work on most configurations&lt;br /&gt;
  --shader arg                       enable/disable shader postprocessing (saved to configuration)&lt;br /&gt;
  --disable-audio                    Disable audio. Mainly for faster startup during development.&lt;br /&gt;
&lt;br /&gt;
Server options:&lt;br /&gt;
  --port N                           network port to use&lt;br /&gt;
  --bind ADDRESS[:PORT]              IP address (and optionally port) to bind to&lt;br /&gt;
  --rcon-port N                      Port to use for RCON&lt;br /&gt;
  --rcon-password PASSWORD           Password for RCON&lt;br /&gt;
  --server-settings FILE             Path to file with server settings. See data/server-settings.example.json&lt;br /&gt;
  --server-whitelist FILE            Path to file with server whitelist.&lt;br /&gt;
  --server-banlist FILE              Path to file with server banlist.&lt;br /&gt;
  --console-log FILE                 Path to file where a copy of the server&#039;s log will be stored&lt;br /&gt;
  --server-id FILE                   Path where server ID will be stored or read from&lt;br /&gt;
&lt;br /&gt;
=== Multiplayer ===&lt;br /&gt;
&lt;br /&gt;
  --start-server SAVE&lt;br /&gt;
&lt;br /&gt;
Will start a Headless (Dedicated) server, with no GUI.&lt;br /&gt;
&lt;br /&gt;
  --mp-connect ADDRESS&lt;br /&gt;
ADDRESS is the IP:port of the remote host. Port is optional.&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
  ./factorio --mp-connect 192.168.1.101&lt;br /&gt;
  ./factorio --mp-connect 192.168.1.101:2345&lt;br /&gt;
&lt;br /&gt;
As above, port can be specified by placing the port number after a colon in the address.&lt;br /&gt;
&lt;br /&gt;
  --map2scenario SAVE&lt;br /&gt;
Converts a save game to a User Scenario, allows saved game state to be loaded into map editor.&lt;br /&gt;
Assuming that save game name is &amp;quot;foo.zip&amp;quot;, executing &#039;./factorio --map2scenario s1&#039; will result in Factorio loading, opening the save file, and saving the scenario into the scenario folder.&lt;br /&gt;
&lt;br /&gt;
== Modding tools ==&lt;br /&gt;
A list of the internal names of most things in the vanilla game can also be found on [[data.raw]].&lt;br /&gt;
&lt;br /&gt;
=== Print to console which tile are you have under the player position ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c game.player.print(game.player.surface.get_tile(game.player.position.x, game.player.position.y).name)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Write all researched technologies to file ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local list = {}&lt;br /&gt;
for _, tech in pairs(game.player.force.technologies) do &lt;br /&gt;
	if tech.researched then&lt;br /&gt;
    list[#list+1] = tech.name&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
game.write_file(&amp;quot;techs.lua&amp;quot;, serpent.block(list) .. &amp;quot;\n&amp;quot;, true)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Write all enabled recipes to file ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/c local list = {}&lt;br /&gt;
for _, recipe in pairs(game.player.force.recipes) do &lt;br /&gt;
	if recipe.enabled then&lt;br /&gt;
    list[#list+1] = recipe.name&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
game.write_file(&amp;quot;recipes.lua&amp;quot;, serpent.block(list) .. &amp;quot;\n&amp;quot;, true)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* http://lua-api.factorio.com/latest/ - Factorio API reference for latest version&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&amp;diff=145945</id>
		<title>Tutorial:Nuclear power</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&amp;diff=145945"/>
		<updated>2017-08-28T23:49:48Z</updated>

		<summary type="html">&lt;p&gt;Luc: My mistake (I&amp;#039;m correcting my previous edit): each U-235 turns into 10 fuel cells, not one. Modified the sentence to make that clear.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It&#039;s a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.&lt;br /&gt;
&lt;br /&gt;
This guide is written for people who want to know exactly how nuclear power works, but don&#039;t necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn&#039;t tell you what to do or exactly how to solve the problems.&lt;br /&gt;
&lt;br /&gt;
== First steps ==&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Technology required:&#039;&#039;&#039; [[Nuclear power (research)|Nuclear power]]&lt;br /&gt;
:&#039;&#039;You can mine uranium ore sooner, but you&#039;ll need the nuclear power technology to do anything useful with it.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== [[Uranium ore]] ===&lt;br /&gt;
To start, you&#039;ll need uranium ore. It glows green, so you can&#039;t miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.&lt;br /&gt;
&lt;br /&gt;
Like every other ore in the game, you can mine it with a [[electric mining drill|mining drill]]. Unlike every other ore, however, you&#039;ll need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Mixed ores:&#039;&#039;&#039; If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.&lt;br /&gt;
&lt;br /&gt;
=== [[Uranium processing|Ore processing]] ===&lt;br /&gt;
Once you&#039;ve got raw uranium ore, you&#039;ll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.&lt;br /&gt;
&lt;br /&gt;
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.&lt;br /&gt;
&lt;br /&gt;
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Count !! Product &lt;br /&gt;
|-&lt;br /&gt;
| 7 || U-235 &lt;br /&gt;
|-&lt;br /&gt;
| 993 || U-238&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won&#039;t matter so much. However, when you first start out, this will be an important bottleneck.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Regarding averages:&#039;&#039;&#039; Be aware, random is random. These values are &#039;&#039;average&#039;&#039; values. Which means that over the long term, they work out to about these figures. In reality, you&#039;ll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won&#039;t matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don&#039;t find yourself without power when you hit an unlucky stretch.&lt;br /&gt;
&lt;br /&gt;
=== Fuel ===&lt;br /&gt;
Before you can burn it in a reactor, you need to create [[uranium fuel cell]]s. You&#039;ll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.&lt;br /&gt;
&lt;br /&gt;
You won&#039;t want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You&#039;re going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.&lt;br /&gt;
&lt;br /&gt;
Each reaction requires 1 U-235, 19 U-238, and 10 iron plate; it produces 10 fuel cells that can be burned in a nuclear reactor.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Tip:&#039;&#039;&#039; It isn&#039;t a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won&#039;t run out before you get bots and replace it with a requester.&lt;br /&gt;
&lt;br /&gt;
Each fuel cell has a nominal energy value of 8 GJ, but it&#039;s possible to make them go even farther with reactor neighbor bonuses (more on that later).&lt;br /&gt;
&lt;br /&gt;
=== [[Nuclear reactor]] ===&lt;br /&gt;
Once you&#039;ve got fuel, you&#039;ll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.&lt;br /&gt;
&lt;br /&gt;
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.&lt;br /&gt;
&lt;br /&gt;
Once expended, reactors will produce a &amp;quot;[[used up uranium fuel cell]]&amp;quot;, which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Working backward:&#039;&#039;&#039; A reactor consumes a fuel cell every 200 seconds and each U-235 gives 10 fuel cells, so every U-235 provides 2000 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you&#039;ll need about one processing centrifuges per reactor.&lt;br /&gt;
&lt;br /&gt;
=== [[Heat exchanger]] ===&lt;br /&gt;
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you&#039;re placing it.&lt;br /&gt;
&lt;br /&gt;
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).&lt;br /&gt;
&lt;br /&gt;
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.&lt;br /&gt;
&lt;br /&gt;
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they&#039;ve reached it.&lt;br /&gt;
&lt;br /&gt;
Heat exchangers transfer 10 MW of power, so you&#039;ll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)&lt;br /&gt;
&lt;br /&gt;
==== [[Heat pipe]]s ====&lt;br /&gt;
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. &lt;br /&gt;
&lt;br /&gt;
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don&#039;t block movement, though, so you can walk right over them.&lt;br /&gt;
&lt;br /&gt;
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous &amp;quot;Heat pump&amp;quot;. Here are some rough limits on transfer distance:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Power !! Distance&lt;br /&gt;
|-&lt;br /&gt;
| 40 MW || ~140&lt;br /&gt;
|-&lt;br /&gt;
| 80 MW || ~80&lt;br /&gt;
|-&lt;br /&gt;
| 120 MW || ~55&lt;br /&gt;
|-&lt;br /&gt;
| 160 MW || ~45&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Heat pipe storage:&#039;&#039;&#039; Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It&#039;s very easy to lose more power than you store with an inefficient design.&lt;br /&gt;
&lt;br /&gt;
=== [[Steam turbine]] ===&lt;br /&gt;
These are the steam engine&#039;s beefy big brother. Using regular fluid pipes, you&#039;ll pipe the steam produced by heat exchangers into these turbines.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Perfect matches:&#039;&#039;&#039; The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it&#039;s very wasteful and there&#039;s no real reason to do it.&lt;br /&gt;
&lt;br /&gt;
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You&#039;ll require a separate pump for every 20 turbines.&lt;br /&gt;
&lt;br /&gt;
=== Simplest thing that works ===&lt;br /&gt;
At this point, you have all the parts to build your very first reactor:&lt;br /&gt;
&lt;br /&gt;
* A few uranium miners, supplied with sulfuric acid&lt;br /&gt;
* 1 Centrifuge, processing uranium ore&lt;br /&gt;
* 1 Assembling machine, making uranium fuel cells&lt;br /&gt;
* 1 Nuclear reactor&lt;br /&gt;
* 4 Heat exchangers, supplied by a single off-shore pump&lt;br /&gt;
* 8 Steam turbines&lt;br /&gt;
&lt;br /&gt;
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.&lt;br /&gt;
&lt;br /&gt;
== Moving forward ==&lt;br /&gt;
Past your simplest reactor, there are some additional nuclear features of which you should be aware.&lt;br /&gt;
&lt;br /&gt;
=== Neighbor bonus ===&lt;br /&gt;
This is a critical part of how nuclear designs scale, but it&#039;s not complicated. Simply put:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Every reactor gets +100% heating power for every active neighboring reactor.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.&lt;br /&gt;
&lt;br /&gt;
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!&lt;br /&gt;
&lt;br /&gt;
This, of course, means you&#039;ll need more heat exchangers and steam turbines to turn that heat into electricity.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor&lt;br /&gt;
|-&lt;br /&gt;
| Single || 1 || 4 || 7 || 40MW || 40MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x1 || 2 || 16 || 28 || 160MW || 80MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x2 || 4 || 48 || 83 || 480MW || 120MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x3 || 6 || 80 || 138 || 800MW || 133MW&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to count heat exchangers:&#039;&#039;&#039; Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That&#039;s your count of Heat Exchangers. You&#039;ll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.&lt;br /&gt;
&lt;br /&gt;
=== Always on! ===&lt;br /&gt;
Unlike every other power generation technique, nuclear reactors &#039;&#039;&#039;DO NOT&#039;&#039;&#039; scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.&lt;br /&gt;
&lt;br /&gt;
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.&lt;br /&gt;
&lt;br /&gt;
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won&#039;t consume heat if there&#039;s nowhere to put the steam.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Turbines and engines:&#039;&#039;&#039; Be aware that steam turbines and steam engines are both the same &amp;quot;class&amp;quot; of energy producer, so they&#039;ll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!&lt;br /&gt;
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.&lt;br /&gt;
&lt;br /&gt;
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the &amp;quot;fill gauge&amp;quot;; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.&lt;br /&gt;
&lt;br /&gt;
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won&#039;t get full neighbor bonuses. If you can&#039;t keep it from over-fueling, you can also add extra tanks to lengthen the cycle.&lt;br /&gt;
&lt;br /&gt;
=== Enrichment ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Kovarex enrichment process (research)|Kovarex enrichment process]]&lt;br /&gt;
:&#039;&#039;Kovarex Enrichment allows you to turn some U-238 into U-235, but it&#039;s slow and takes a lot of U-235 as catalyst.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.&lt;br /&gt;
&lt;br /&gt;
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;All the things!:&#039;&#039;&#039; Before you &#039;&#039;enrich all the things!&#039;&#039;, be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.&lt;br /&gt;
&lt;br /&gt;
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.&lt;br /&gt;
&lt;br /&gt;
=== Reprocessing fuel ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]&lt;br /&gt;
:&#039;&#039;Reprocessing turns your spent fuel into U-238.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.&lt;br /&gt;
&lt;br /&gt;
=== Weapons ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]&lt;br /&gt;
:&#039;&#039;Better bullets / Bigger bombs&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you&#039;ve probably got plenty of it lying around.&lt;br /&gt;
&lt;br /&gt;
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it&#039;s advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they&#039;re an expensive weapon.&lt;br /&gt;
&lt;br /&gt;
== Version ==&lt;br /&gt;
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;License:&#039;&#039;&#039; [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]&lt;br /&gt;
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&amp;diff=145944</id>
		<title>Tutorial:Nuclear power</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Tutorial:Nuclear_power&amp;diff=145944"/>
		<updated>2017-08-28T23:43:16Z</updated>

		<summary type="html">&lt;p&gt;Luc: Sentence didn&amp;#039;t make sense logically. I very much doubt the author tested this, and from my experience it can&amp;#039;t be right (but I didn&amp;#039;t explicitly test it either)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Nuclear power]] is a major new feature introduced in version 0.15. It requires higher level technology compared to either solar power or steam boiler power, but it offers very high power output in exchange. It&#039;s a great solution for middle- to end-game power generation and it works well in combination with other power generation techniques.&lt;br /&gt;
&lt;br /&gt;
This guide is written for people who want to know exactly how nuclear power works, but don&#039;t necessarily want all the solutions. It focuses on what you should do and what you should know to get Nuclear up and running, but doesn&#039;t tell you what to do or exactly how to solve the problems.&lt;br /&gt;
&lt;br /&gt;
== First steps ==&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Technology required:&#039;&#039;&#039; [[Nuclear power (research)|Nuclear power]]&lt;br /&gt;
:&#039;&#039;You can mine uranium ore sooner, but you&#039;ll need the nuclear power technology to do anything useful with it.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== [[Uranium ore]] ===&lt;br /&gt;
To start, you&#039;ll need uranium ore. It glows green, so you can&#039;t miss it. It tends to form smaller deposits, though, and you may have to search a while to find a good patch.&lt;br /&gt;
&lt;br /&gt;
Like every other ore in the game, you can mine it with a [[electric mining drill|mining drill]]. Unlike every other ore, however, you&#039;ll need to supply [[sulfuric acid]] to the drill. The drills conduct excess acid through themselves, so a row of drills can be supplied by acid from a single side.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Mixed ores:&#039;&#039;&#039; If a mining drill covers even a single patch of uranium ore, it will require acid to run at all. The mine will produce mixed ore, as usual.&lt;br /&gt;
&lt;br /&gt;
=== [[Uranium processing|Ore processing]] ===&lt;br /&gt;
Once you&#039;ve got raw uranium ore, you&#039;ll need to process it into [[uranium-235]] and [[uranium-238]]. You do this in a centrifuge.&lt;br /&gt;
&lt;br /&gt;
In an un-moduled [[centrifuge]], you can process one ore every 13.3 seconds.&lt;br /&gt;
&lt;br /&gt;
Centrifuges produce a combination of U-235 (the light green stuff) and U-238 (the dark green stuff). Every ten ore processed have a chance to become precisely one of these two products. Out of every 10k ore you process, you can expect to get, on average:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Count !! Product &lt;br /&gt;
|-&lt;br /&gt;
| 7 || U-235 &lt;br /&gt;
|-&lt;br /&gt;
| 993 || U-238&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
That means you can roughly expect to get a single U-235 in one out of every 143 ore. A centrifuge can then be expected to produce U-235 every 1904 seconds. Later on, this won&#039;t matter so much. However, when you first start out, this will be an important bottleneck.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Regarding averages:&#039;&#039;&#039; Be aware, random is random. These values are &#039;&#039;average&#039;&#039; values. Which means that over the long term, they work out to about these figures. In reality, you&#039;ll see long stretches with no U-235 and short stretches with lots of them. Eventually, it won&#039;t matter much. But early on, make sure your generation rate is sufficiently high, or you have a sufficient reserve, so you don&#039;t find yourself without power when you hit an unlucky stretch.&lt;br /&gt;
&lt;br /&gt;
=== Fuel ===&lt;br /&gt;
Before you can burn it in a reactor, you need to create [[uranium fuel cell]]s. You&#039;ll probably be using an assembling machine 2, so these will take 13.3 seconds to create as well. Which is fine because fuel cell creation will very rarely be the bottleneck.&lt;br /&gt;
&lt;br /&gt;
You won&#039;t want to automatically convert all U-235 into fuel. Only convert what you need to fill your reactor. You&#039;re going to want a big fat stockpile of it when you research [[Kovarex enrichment process|kovarex enrichment]] later on.&lt;br /&gt;
&lt;br /&gt;
Each reaction requires 1 U-235, 19 U-238, and 10 iron plate; it produces 10 fuel cells that can be burned in a nuclear reactor.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Tip:&#039;&#039;&#039; It isn&#039;t a bad idea to use a chest and just stick a pile of iron in it rather than belting the iron in. A full chest of iron probably won&#039;t run out before you get bots and replace it with a requester.&lt;br /&gt;
&lt;br /&gt;
Each fuel cell has a nominal energy value of 8 GJ, but it&#039;s possible to make them go even farther with reactor neighbor bonuses (more on that later).&lt;br /&gt;
&lt;br /&gt;
=== [[Nuclear reactor]] ===&lt;br /&gt;
Once you&#039;ve got fuel, you&#039;ll need to burn it in a nuclear reactor. This is the first step toward turning it into usable energy.&lt;br /&gt;
&lt;br /&gt;
A reactor will produce exactly 40 MW of heat energy. Since a Watt is a Joule per second, this means the reactor will consume one fuel cell every 200 seconds.&lt;br /&gt;
&lt;br /&gt;
Once expended, reactors will produce a &amp;quot;[[used up uranium fuel cell]]&amp;quot;, which will need to be cleared. Initially, these will simply accumulate in a chest. Eventually, you can reprocess them into U-238.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Working backward:&#039;&#039;&#039; A reactor consumes a fuel cell every 200 seconds, so every U-235 provides 200 seconds of reactor power. A centrifuge requires about 1904 seconds to produce a U-235, so you&#039;ll need about ten processing centrifuges per reactor (9.52 centrifuges per reactor, to be exact).&lt;br /&gt;
&lt;br /&gt;
=== [[Heat exchanger]] ===&lt;br /&gt;
The heat exchanger takes heat and uses it to convert [[water]] into [[steam]]. It works much like the boiler, but instead of burning fuel, you need to connect it to a heat source. The heat input is marked by a flame when you&#039;re placing it.&lt;br /&gt;
&lt;br /&gt;
For simple reactor designs, you can connect it directly to your reactor (which produces heat at points also marked with a flame).&lt;br /&gt;
&lt;br /&gt;
Heat exchangers also require water input, in precisely the way boilers do. They can heat up to 103.09 units/second of water into 500°C steam.&lt;br /&gt;
&lt;br /&gt;
Heat exchangers produce nothing when they are below 500°C. Since they only cool as a consequence of heating water, they will never cool to below that temperature once they&#039;ve reached it.&lt;br /&gt;
&lt;br /&gt;
Heat exchangers transfer 10 MW of power, so you&#039;ll need 4 exchangers to fully consume the power produced by a lone reactor. (Neighbor bonuses can increase this significantly. Again, discussed later.)&lt;br /&gt;
&lt;br /&gt;
==== [[Heat pipe]]s ====&lt;br /&gt;
More complex designs will require heat pipes. Heat pipes work much like regular pipes. Like regular pipes, they have limited throughput, which means that shorter pipes are better. &lt;br /&gt;
&lt;br /&gt;
Connect heat pipes point to point, flame to flame, exactly as you would with water pipes. Heat pipes cannot go underground, so if water pipes need to cross them, the water pipe will need to go under. They don&#039;t block movement, though, so you can walk right over them.&lt;br /&gt;
&lt;br /&gt;
Throughput on heat pipes is far more limited than regular pipes, in part because there is no analogous &amp;quot;Heat pump&amp;quot;. Here are some rough limits on transfer distance:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Power !! Distance&lt;br /&gt;
|-&lt;br /&gt;
| 40 MW || ~140&lt;br /&gt;
|-&lt;br /&gt;
| 80 MW || ~80&lt;br /&gt;
|-&lt;br /&gt;
| 120 MW || ~55&lt;br /&gt;
|-&lt;br /&gt;
| 160 MW || ~45&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Past these distances, less than 100% of the power will be transferred. This is because at this distance, the maximum reactor temperature of 1000ºC is insufficient to heat the pipe to beyond 500ºC.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Heat pipe storage:&#039;&#039;&#039; Heat pipes can store quite a bit of heat as well. A single heat pipe can hold as much energy as a tank with 5.1k steam in it, which makes them even more space efficient than tanks for holding energy (though considerably more expensive). Be cautious, however, with transfer efficiencies. It&#039;s very easy to lose more power than you store with an inefficient design.&lt;br /&gt;
&lt;br /&gt;
=== [[Steam turbine]] ===&lt;br /&gt;
These are the steam engine&#039;s beefy big brother. Using regular fluid pipes, you&#039;ll pipe the steam produced by heat exchangers into these turbines.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Perfect matches:&#039;&#039;&#039; The steam turbine is a perfect match for the heat exchanger. The steam engine is a perfect match for the boiler. Although it is possible to get energy out of mismatched systems, it&#039;s very wasteful and there&#039;s no real reason to do it.&lt;br /&gt;
&lt;br /&gt;
Steam turbines consume up to 60 units of steam/second, so you need roughly two steam turbines for every heat exchanger. At large scales, however, you can use fewer turbines, since exchangers only produce 103.09 steam/second. You&#039;ll require a separate pump for every 20 turbines.&lt;br /&gt;
&lt;br /&gt;
=== Simplest thing that works ===&lt;br /&gt;
At this point, you have all the parts to build your very first reactor:&lt;br /&gt;
&lt;br /&gt;
* A few uranium miners, supplied with sulfuric acid&lt;br /&gt;
* 1 Centrifuge, processing uranium ore&lt;br /&gt;
* 1 Assembling machine, making uranium fuel cells&lt;br /&gt;
* 1 Nuclear reactor&lt;br /&gt;
* 4 Heat exchangers, supplied by a single off-shore pump&lt;br /&gt;
* 8 Steam turbines&lt;br /&gt;
&lt;br /&gt;
And, of course, assorted, belts, inserters, filter inserters, and other tools for moving things around. This will produce a maximum of 40 MW of power.&lt;br /&gt;
&lt;br /&gt;
== Moving forward ==&lt;br /&gt;
Past your simplest reactor, there are some additional nuclear features of which you should be aware.&lt;br /&gt;
&lt;br /&gt;
=== Neighbor bonus ===&lt;br /&gt;
This is a critical part of how nuclear designs scale, but it&#039;s not complicated. Simply put:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Every reactor gets +100% heating power for every active neighboring reactor.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Neighbors have to align completely on each side, so reactors will line up in a nice square grid. When they do, the neighbor bonus is activated. You can see the current bonus by hovering over an active reactor.&lt;br /&gt;
&lt;br /&gt;
The bonus to heating power does not increase the fuel consumption. Rather, it simply increases the heat produced!&lt;br /&gt;
&lt;br /&gt;
This, of course, means you&#039;ll need more heat exchangers and steam turbines to turn that heat into electricity.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; |-&lt;br /&gt;
! Configuration !! Reactors !! Exchangers !! Turbines !! Power !! Power per reactor&lt;br /&gt;
|-&lt;br /&gt;
| Single || 1 || 4 || 7 || 40MW || 40MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x1 || 2 || 16 || 28 || 160MW || 80MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x2 || 4 || 48 || 83 || 480MW || 120MW&lt;br /&gt;
|-&lt;br /&gt;
| 2x3 || 6 || 80 || 138 || 800MW || 133MW&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;How to count heat exchangers:&#039;&#039;&#039; Count the number of edges where reactors fully touch. Double that. Add the total number of reactors. Then multiply it all by 4. That&#039;s your count of Heat Exchangers. You&#039;ll need 1.718 turbines per exchanger (rounded up). Each exchanger will provide up to 10 MW of power.&lt;br /&gt;
&lt;br /&gt;
=== Always on! ===&lt;br /&gt;
Unlike every other power generation technique, nuclear reactors &#039;&#039;&#039;DO NOT&#039;&#039;&#039; scale down power usage. Nuclear reactors will continue consuming one fuel cell every 200 seconds, regardless of the need.&lt;br /&gt;
&lt;br /&gt;
As the reactor consumes its fuel, it heats up to a maximum temperature of 1000°C. At that point, additional fuel burned is simply wasted.&lt;br /&gt;
&lt;br /&gt;
Turbines do scale their production (and steam consumption) to match demand. Likewise, exchangers won&#039;t consume heat if there&#039;s nowhere to put the steam.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Turbines and engines:&#039;&#039;&#039; Be aware that steam turbines and steam engines are both the same &amp;quot;class&amp;quot; of energy producer, so they&#039;ll need to be scaled all together. This means that in a complete energy system, your coal boilers may be running when the nuclear plant could fully cover the load. And, worse yet, the nuclear power is just being wasted!&lt;br /&gt;
:Consider using accumulators, switches, and circuit logic to disable the coal boilers when nuclear systems can cover the demand.&lt;br /&gt;
&lt;br /&gt;
The simplest solution to this problem is to just run the nuclear reactors part of the time. You can store steam in tanks. (And check out the &amp;quot;fill gauge&amp;quot;; the steam floats!) Since exchanges produce 120 steam/second and a tank holds 25k steam, a tank will keep 208 seconds worth of heat exchanger.&lt;br /&gt;
&lt;br /&gt;
You can put a tank or two at the end of each heat exchanger and use circuit logic to only insert a fuel into the reactors when they get low. Make sure all exchangers are powered at the same time, or you won&#039;t get full neighbor bonuses. If you can&#039;t keep it from over-fueling, you can also add extra tanks to lengthen the cycle.&lt;br /&gt;
&lt;br /&gt;
=== Enrichment ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Kovarex enrichment process (research)|Kovarex enrichment process]]&lt;br /&gt;
:&#039;&#039;Kovarex Enrichment allows you to turn some U-238 into U-235, but it&#039;s slow and takes a lot of U-235 as catalyst.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Your first few patches of uranium ore will last you a reasonable length of time, but eventually you will start running out of ore and places to put extraneous U-238. Enrichment helps solve both problems.&lt;br /&gt;
&lt;br /&gt;
The enrichment process takes about 67 seconds in an un-moduled centrifuge. It requires 40 U-235 (!) and 5 U-238 and makes 41 U-235 and 2 U-238. In effect, it turns 3 U-238 and turns it into 1 U-235; it just requires an extra 40 U-235 and 2 U-238 along for the ride to act as a catalyst.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;All the things!:&#039;&#039;&#039; Before you &#039;&#039;enrich all the things!&#039;&#039;, be aware that you do need 19 U-238 for each fuel cell, as well as requiring it for uranium ammo you will want for storing inside biters and their nests. Circuit logic can help you put a limiter on large-scale enrichment operations.&lt;br /&gt;
&lt;br /&gt;
One Centrifuge enriching uranium is sufficient to supply 29 reactors with fuel, assuming plenty of U-238.&lt;br /&gt;
&lt;br /&gt;
=== Reprocessing fuel ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Nuclear fuel reprocessing (research)|Nuclear fuel reprocessing]]&lt;br /&gt;
:&#039;&#039;Reprocessing turns your spent fuel into U-238.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Eventually, you will run out of places to put spent fuel. You can use reprocessing to turn it back into U-238 to use for enrichment, fuel cells, or ammo. Of the 19 U-238 that go into each 10-pack of fuel cells, this returns 6. This significantly reduces the total ore requirement for nuclear fuel.&lt;br /&gt;
&lt;br /&gt;
=== Weapons ===&lt;br /&gt;
:&#039;&#039;&#039;Required technology:&#039;&#039;&#039; [[Uranium ammo (research)|Uranium ammo]] / [[Atomic bomb (research)|Atomic bomb]]&lt;br /&gt;
:&#039;&#039;Better bullets / Bigger bombs&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
With the Nuclear Age comes nuclear weapons. Uranium ammunition is top-tier, especially when you load a tank with it. It mows down biter nests and clears swarms quite quickly. It uses U-238, so you&#039;ve probably got plenty of it lying around.&lt;br /&gt;
&lt;br /&gt;
On the other side, you can get [[atomic bomb]]s, which are rockets (shot by a [[rocket launcher]]) that do incredible damage. Be aware, they can easily kill you if you fire them anywhere near you, and even at max range, it&#039;s advised that you run in the opposite direction. Rather than a single explosion, they do damage in an expanding ring, giving you time to escape. They require a lot of U-235 and blue chips, so they&#039;re an expensive weapon.&lt;br /&gt;
&lt;br /&gt;
== Version ==&lt;br /&gt;
This guide is compatible with Factorio 0.15.13. Newer versions may, and likely will, change many of the values and mechanics on which this guide depends.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;License:&#039;&#039;&#039; [https://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA 4.0]&lt;br /&gt;
:As an exception to the above, any or all of this work or adaptations thereof may be used on the official [https://wiki.factorio.com Factorio Wiki].&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Railway&amp;diff=138442</id>
		<title>Railway</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Railway&amp;diff=138442"/>
		<updated>2017-06-04T16:46:45Z</updated>

		<summary type="html">&lt;p&gt;Luc: Expanded troubleshooting No Path issue (this took me 1.5 hours...)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;For the research see [[Railway (research)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The Railway is one of the main transport methods in Factorio. Although the installation of such a network can be complicated, and requires a large amount of resource and space, it is faster and more efficient than [[Belt transport system|belts]] and [[Logistic network|robot logistics]], especially over large distances.&lt;br /&gt;
&lt;br /&gt;
Railway construction, however, is not understood instantly. It takes some time to learn the basics, such as automating transportation. Learning how to manage and maintain upkeep of a larger train network takes time and experience.&lt;br /&gt;
&lt;br /&gt;
== Infrastructure ==&lt;br /&gt;
&lt;br /&gt;
To build a railway, tracks (also called rails) must be built for the train to ride on. Typically, this is done via the [[Rail planner]], but can also be done manually. Bear in mind that rails can rails are placed on a two-tile grid, so you cannot move a rail by only one tile.&lt;br /&gt;
&lt;br /&gt;
=== Minimum manually operated railway ===&lt;br /&gt;
As a minimum a manually operated railway has to consist of:&lt;br /&gt;
* [[Rail]]s (tracks)&lt;br /&gt;
* [[Locomotive]]s&lt;br /&gt;
&lt;br /&gt;
Locomotives can be entered and then manually operated by standing next to them and pressing the {{Key|RETURN}} button.&lt;br /&gt;
&lt;br /&gt;
=== Switches ===&lt;br /&gt;
* There is no visual representation of a working switch, however the rails will appear to merge. Using the rail planner, the player must place a [[rail]] overlapping an existing rail to form a switch. Switches are forks in tracks that allow a train to pick between two directional options.&lt;br /&gt;
* The crossing of two straight tracks is not usable as switch, as trains have a limited turning radius. They do, however, connect [[Rail signal| signal blocks]] which helps prevent collisions.&lt;br /&gt;
* Parallel tracks do not interact with each other and generally have no problems. However, switching from one track to the other can require extra resources if they are too close together; the track must turn away from the other parallel track and then turn back to it. This can create complicated networks of signals and, as such, one should generally not build parallel tracks unless they are spaced adequately. (Generally, 2 track widths apart works well)&lt;br /&gt;
&lt;br /&gt;
=== Crossing tracks ===&lt;br /&gt;
&lt;br /&gt;
[[File:fff-140-controlled-gates.gif|thumb|An example of a safe railway crossing.]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Be careful when crossing tracks! Trains are one of the highest damaging entities in the game, and will kill most players instantly on contact.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A checklist of proper track crossing etiquette:&lt;br /&gt;
&lt;br /&gt;
# Zoom out, so that you can see a train coming.&lt;br /&gt;
# Look left, then right.&lt;br /&gt;
# Check for signals nearby: If a [[rail signal]] suddenly jumps from green to red or green to yellow, a train is coming. Do not cross.&lt;br /&gt;
# Avoid walking near the tracks, as you do not need to be fully on the tracks to get hit.&lt;br /&gt;
# While it is possible to get into/out of a train while it is moving, a miss can cost your life. The sides of the train can still deal damage, as well as the player being able to slip between two rail cars.&lt;br /&gt;
# Heavy [[Energy shield|shields]] can be used to reduce the damage taken. In extreme cases, it is possible to stop a train with your body. This will require several shield modules to not be instantly killed, and will drain a large amount of the suit&#039;s energy.&lt;br /&gt;
# All entities with health will take damage getting hit by a train, so take care not to leave a [[Car]] or [[Tank]] on the tracks. However, this includes hostile forces!&lt;br /&gt;
# Trains far from a [[train stop]] will be traveling at (near) max speed, so take extra precaution when crossing and zoom out further. Trains near a [[train stop]] or signal will slow down to stop, and will be traveling slower. Trains of different configurations will also move slower or faster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A safe railroad crossing like the example shown in the picture can be built. This works by restricting access to the tracks when an oncoming train has the rails reserved. When the player is on the rails, the signals are reserved by the [[circuit network]], and the train must stop and wait until the player leaves the tracks. When a player is inside the area crossing the tracks, the train gates are closed so the player can&#039;t get on the tracks outside the crossing. This is to completely ensure a safe crossing, and is often used on servers.&lt;br /&gt;
&lt;br /&gt;
== Trains ==&lt;br /&gt;
&lt;br /&gt;
Train components:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|{{imagelink|diesel-locomotive|Diesel locomotive}} || {{imagelink|cargo-wagon|Cargo wagon}} || {{imagelink|Fluid_wagon|Fluid wagon}} |-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:Railway-assemble-train.png|thumb|left|300px|Placing a [[Cargo wagon]] so it is attached to the train.]]&lt;br /&gt;
&lt;br /&gt;
* A train consists of at least one locomotive.&lt;br /&gt;
* Trains can have more than one locomotive, and any number of [[Wagon]]s.&lt;br /&gt;
* Locomotives can be &#039;&#039;&#039;manually&#039;&#039;&#039; driven forwards or backwards, however, they are generally slower going backwards. The left and right movement keys are used to change direction at switches.&lt;br /&gt;
* Trains can only drive forwards automatically. An automatic train can drive forwards and backwards when two locomotives facing different directions are connected to the train.&lt;br /&gt;
* A train needs [[fuel]] to drive. Despite being called Diesel Locomotives, they will take anything with a fuel value. Fuel can be added by inserters.&lt;br /&gt;
* A common way to refuel trains is using a [[requester chest]] that requests [[fuel]], and then having a [[burner inserter]] loading the fuel into the locomotive.&lt;br /&gt;
&lt;br /&gt;
The locomotives&#039; inventory is only used for [[Fuel]]. To transport items [[Cargo wagon]]s have to be attached to the train. To attach a Cargo wagon, the player may either prepare to place one near an existing train, where a green graphic will show the player that the cargo wagon will be attached, showing a connection between the train and the new wagon. Alternatively, the player may manually connect cargo wagons to trains with the stock connect key, if the cargo wagon was placed far away from a train. The cargo wagons can be filled manually or by adjacent [[Inserters]].&lt;br /&gt;
&lt;br /&gt;
* [[Railway/Train path finding]] - How trains find their path.&lt;br /&gt;
&lt;br /&gt;
{{clear}}&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
Station Components&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|{{imagelink|train-stop|Train stop}} || {{imagelink|straight-rail|Rail|Rails}} || {{imagelink|Inserter-icon|Inserters}}|}&lt;br /&gt;
&lt;br /&gt;
[[File:station-example-1.png|thumb|right|256px|A very minimal train station.]]&lt;br /&gt;
[[File:station-example-2.png|thumb|400px|High-performance train station for short trains. Highest possible unload rate, waiting spots, refueling, defended, multi-train capable, modular, extend-able.]]&lt;br /&gt;
A &#039;&#039;&#039;train station&#039;&#039;&#039; is a combination of at least one [[train stop]] plus a [[storage]] and/or distribution system, used to fill or empty [[Cargo wagon]]s, load [[fuel]] into the [[Diesel Locomotive|locomotive(s)]], or repair trains.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Don&#039;t mix up &#039;&#039;train stations&#039;&#039; with &#039;&#039;train stops&#039;&#039;.&#039;&#039;&#039; A train station is a concept, whereas a [[train stop]] is an item.&lt;br /&gt;
&lt;br /&gt;
[[Inserter]]s placed next to train tracks are used to load/unload trains at train stops. Inserters are the only way to get items off and onto cargo wagons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{clear}}&lt;br /&gt;
&lt;br /&gt;
== Signals ==&lt;br /&gt;
The two types of signals in Factorio:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| {{imagelink|rail-signal|Rail signal}} || {{imagelink|rail-chain-signal|Rail chain signal}} |-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Understanding rail signals can be difficult. Several terms critical to understanding them are below:&lt;br /&gt;
*Rail segment&lt;br /&gt;
: A piece of track (one item).&lt;br /&gt;
*Segment&lt;br /&gt;
: A single path of continuous track without intersections or switches. This becomes important when signals are employed. The player may mouse over a segment to see its number. It&#039;s number is unique within the world, however does not start from 0 or 1.&lt;br /&gt;
*Block&lt;br /&gt;
: A set of segments defined by rail signals. By default every connected segment belongs to one block, no matter whether a train can drive on it or not, and even if it can be driven only in one direction (e.g. at a switch, both segments of the switch belong to the same block). The player can see the current block numbers of a rail piece in the info section on mouse-over.&lt;br /&gt;
&lt;br /&gt;
Rail signals are used to employ multiple trains automatically. Note that driving a train manually ignores most of the rules described here; other automatic trains will follow signaling indicted by the player&#039;s movement dynamically, however it will sometimes be not possible to avoid a collision for automatic trains if the player ignores red/yellow signals. Always beware automatic trains and give them the right of way.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;See [https://forums.factorio.com/viewtopic.php?f=18&amp;amp;t=3811#p28310 this forum post]&#039;&#039;&#039; for a good explanation about blocks.&lt;br /&gt;
&lt;br /&gt;
=== Basic Signaling Rules ===&lt;br /&gt;
* There is at most one Train in a block at any time. A train spanning multiple blocks occupies them all.&lt;br /&gt;
* A red signal means that the following block is occupied by a train.&lt;br /&gt;
* A yellow signal means that a train is approaching and already has the approval to enter the following block.&lt;br /&gt;
* [[Rail signal]]s separate a new block and reflect its state: green - free, yellow - reserved, red - occupied, blue - one of the paths is blocked&lt;br /&gt;
* [[Rail chain signal]]s separate a new block and reflect the state of the next [[Rail signal]]&lt;br /&gt;
* A train can only pass a signal on the right of the track, or if there is a signal on both sides on the same rail segment. Of course, manual driving overrides this.&lt;br /&gt;
&lt;br /&gt;
{{clear}}&lt;br /&gt;
&lt;br /&gt;
== Deadlocks ==&lt;br /&gt;
&lt;br /&gt;
A deadlock or gridlock can happen when every train is locked by another. In nearly every case two or more trains are standing so that every train blocks (by minimum) one other train.&lt;br /&gt;
&lt;br /&gt;
=== Deadlock occurrence ===&lt;br /&gt;
&lt;br /&gt;
Deadlocks occur when two+ trains are prevented from continuing through an intersection, due to an unsolvable signal conflict. There are a few different types of deadlocks:&lt;br /&gt;
&lt;br /&gt;
# Temporary - These are caused by a Temporary hiccup in a train&#039;s path, such as a loading train being in the way, or created by closing a signal with the [[circuit network]]. These often resolve themselves.&lt;br /&gt;
# Semi-Permanent - These are the result of a problem with pathing, often created by a fuel-less train or broken rail, and may require player interaction in order to free.&lt;br /&gt;
# Permanent - This type is the worst, and cannot be resolved automatically, often requiring the player to manually drive several trains to get them out of the intersection. These often are caused by incorrect signal placement or unreachable stations.&lt;br /&gt;
&lt;br /&gt;
It&#039;s important to remember that deadlocks can happen by chance, and by mistake of the player. Sometimes even perfectly signaled rails have issues. The rate of deadlocks is inversely proportional to the quality of Signaling, however.&lt;br /&gt;
&lt;br /&gt;
=== Factors that influence the deadlock chance ===&lt;br /&gt;
&lt;br /&gt;
* Train length (shorter trains will have a lower chance with the same rail/signal layout, due to having less effect on the rails they&#039;re on.)&lt;br /&gt;
* Size of the blocks: More space for the blocks means lower chance of deadlock.&lt;br /&gt;
* Track layout: Some layouts have a higher chance of locking, than others.&lt;br /&gt;
* Quantity of trains - More trains trying to use an intersection will result in higher chance of deadlock.&lt;br /&gt;
* The chance is also much higher if trains need to wait often in areas with rail-crossings.&lt;br /&gt;
&lt;br /&gt;
Knowing the factors, how can deadlocks be reduced?&lt;br /&gt;
&lt;br /&gt;
* Don&#039;t use 4-way junctions or roundabouts (circles) to create junctions.&lt;br /&gt;
* Use better 3-way junctions. See [http://www.factorioforums.com/forum/viewtopic.php?f=18&amp;amp;t=9044 A Detailed Look at a Bidirectional Three-way Train Intersection]&lt;br /&gt;
* Use roundabouts only for changing direction of train, and never for high traffic intersections.&lt;br /&gt;
* Build more tracks around junctions. Don&#039;t have one junction be the only way to reach a place, add redundancy. This keeps a small problem a small problem.&lt;br /&gt;
&lt;br /&gt;
== Automated transport ==&lt;br /&gt;
[[File:train-schedule-gui.png|thumb|300px|The new train GUI since 0.13 (schedule tab): 1 - switch between automatic and manual driving mode; 2 - add new train stop; 3 - delete selected train stop; 4 - send train to selected train stop; 5 - add wait condition for selected train stop; 6 - delete selected wait condition; 7 - change logical mode of selected wait condition]]&lt;br /&gt;
&lt;br /&gt;
This section covers items used to make trains automatically transport items between stations. The player should be familiar with creating a rail system.&lt;br /&gt;
&lt;br /&gt;
First, the player has to setup a rail system with at least two train stops, which are placed in the right-hand side of the  expected train arrival direction. By hovering over the train stop with the mouse you see the positions of the vehicles for better setting up the train station (including (un)loading machinery, refueling/repair installations).&lt;br /&gt;
&lt;br /&gt;
When you set up the train schedule (see below) and fuel the train, you can start the train on it&#039;s schedule by switching from manual to automatic driving mode.&lt;br /&gt;
&lt;br /&gt;
=== Train schedule ===&lt;br /&gt;
&lt;br /&gt;
The player can set up a list of train stops in the upper window. The train will run to the stops in the given order, if it&#039;s at the end it will continue with the first. Currently, it&#039;s not possible to make a one-time schedule. Stops can be added by clicking button 2 (see picture). A pop-up appears with a list of all train stops. If you select one, another pop-up appears where you have to select a wait condition.&lt;br /&gt;
&lt;br /&gt;
Wait conditions are used to tell the train when to leave the station. There are 6 types of wait conditions:&lt;br /&gt;
* &#039;&#039;&#039;Time passed&#039;&#039;&#039; - the only one available until version 0.12.&lt;br /&gt;
* &#039;&#039;&#039;Inventory full&#039;&#039;&#039; - All inventories of the train are full.&lt;br /&gt;
* &#039;&#039;&#039;Inventory empty&#039;&#039;&#039; - Same as above, but empty.&lt;br /&gt;
* &#039;&#039;&#039;Item count&#039;&#039;&#039; - The train (all cargoes summed) contains a specific amount of a certain item.&lt;br /&gt;
* &#039;&#039;&#039;Circuit condition&#039;&#039;&#039; - The train stop is connectable to the [[Circuit network]], so the signals can used for wait conditions.&lt;br /&gt;
* &#039;&#039;&#039;Inactivity&#039;&#039;&#039; - No items were added or removed for the specified amount of seconds.&lt;br /&gt;
&lt;br /&gt;
Hereafter the word &amp;quot;term&amp;quot; is used to describe &#039;&#039;one&#039;&#039; type of wait condition, and the words &amp;quot;wait condition&amp;quot; are used to describe the whole set of terms (it turns a bit into maths).&lt;br /&gt;
&lt;br /&gt;
If you add more than one term, you can change the connection of those using the logical operators AND and OR (button 7). An AND condition will result in true if all terms are true. An OR condition will return true if at least one of the terms is true.&lt;br /&gt;
&lt;br /&gt;
When mixing AND and OR terms, the logic is grouped by the OR terms. When evaluating the wait condition, the first term is evaluated along with all AND terms immediately following up to but excluding the next occurring OR term. If they all evaluate true, the wait condition evaluates true. Otherwise, evaluation continues with that next occurring OR term and all AND terms immediately following it, up to the next OR term. This continues until either an OR group evaluates true and the wait condition is satisfied, or all terms have been checked.&lt;br /&gt;
&lt;br /&gt;
==== Examples ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:800px&amp;quot;&amp;gt;&lt;br /&gt;
Expand for examples&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Wait until full, up to 30 seconds:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Full cargo inventory&lt;br /&gt;
OR 30 seconds passed&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wait until cargo full, &#039;&#039;or&#039;&#039; circuit condition Oil &amp;gt; 3000:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Full cargo inventory&lt;br /&gt;
OR Circuit condition - Oil &amp;gt; 3000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wait until empty, &#039;&#039;and&#039;&#039; 30 seconds passed, &#039;&#039;and&#039;&#039; 5 seconds of inactivity:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Empty cargo inventory&lt;br /&gt;
AND 30 seconds passed&lt;br /&gt;
AND 5 seconds of inactivity&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wait until iron ore is low, &#039;&#039;or&#039;&#039; copper ore is low &#039;&#039;and&#039;&#039; at least 30 seconds passed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Cargo: Iron ore &amp;lt; 500&lt;br /&gt;
AND 30 seconds passed&lt;br /&gt;
OR Cargo: Copper ore &amp;lt; 500&lt;br /&gt;
AND 30 seconds passed&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Factorio&#039;s wait condition logic is read as disjunctive normal form ([https://en.wikipedia.org/wiki/Disjunctive_normal_form DNF]), and so this last example is processed as (note the parenthesis):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;((Cargo: Iron ore &amp;lt; 500 AND 30 seconds passed) OR (Cargo: Copper ore &amp;lt; 500 AND 30 seconds passed))&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Which is the same as this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;((Cargo: Iron ore &amp;lt; 500 OR Cargo: Copper ore &amp;lt; 500) AND 30 seconds passed)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unfortunately, there is &#039;&#039;&#039;no&#039;&#039;&#039; way to write that shorter form in the current UI.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
Below are some things to verify if a rail system or train is not working.&lt;br /&gt;
&lt;br /&gt;
* Is the train fueled? Ensure that the locomotive has [[fuel]] of some kind.&lt;br /&gt;
* Misplaced or non-functional switches? Ensure that the train can plan a path through the switches.&lt;br /&gt;
* Another train on the same [[Railway#Segment|segment]] or [[Railway#Block|block]]? Make sure the path of the train is unobstructed.&lt;br /&gt;
* Train stops placed correctly? Make sure that the yellow arrows when hovering on the stop point towards the end or exit of the stop.&lt;br /&gt;
* Is the train allowed to enter signals from the right direction? Are the signals set correctly?&lt;br /&gt;
* If a track is supposed to be two-way, the rail signals should be opposite each other. You can verify they match up by hovering the cursor over one. For a matched pair, it will show the other.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== No path ====&lt;br /&gt;
When trains cannot reach the target, a &amp;quot;no path&amp;quot; symbol pops up over the locomotive. Check:&lt;br /&gt;
* Can the train reach it&#039;s current destination by &#039;&#039;&#039;only driving forward&#039;&#039;&#039;? Build turning slopes or place a locomotive at both ends of a train!&lt;br /&gt;
* Are the train stops standing in the right direction? Train stops must be on the right hand side of the track.&lt;br /&gt;
* If you use rail signals, check that the signals are all allowing traffic in the correct direction.&#039;&#039; &lt;br /&gt;
* Check for interruptions in the train tracks, drive to the station manually to check there are no rail parts missing. Especially near junctions these can be hard to spot if missing.&lt;br /&gt;
&lt;br /&gt;
If you are still having problems, consider:&lt;br /&gt;
* Driving the train manually, and as you pass each switch, try switching to automatic. When it works, you will know the rough area of the problem.&lt;br /&gt;
[http://imgur.com/a/Nq2Yk A pictorial summary of typical problems].&lt;br /&gt;
&lt;br /&gt;
A vague issue exists (at least in 0.15.9) where the following steps helped:&lt;br /&gt;
* Remove the unreachable stop from the train schedule&lt;br /&gt;
* Re-create (mine and place) the unreachable train stop&lt;br /&gt;
* Add the train stop back in the schedule.&lt;br /&gt;
&lt;br /&gt;
No bug report was created because the issue was non-reproducible.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- These tutorials are no longer included because they are outdated. However, this section can be put back into the article when there are newer or in-wiki tutorials&lt;br /&gt;
&lt;br /&gt;
== User tips and tricks ==&lt;br /&gt;
This section contains further links to in-depth knowledge. As a general advisory, tips given in this section detail the more intricate mechanics in the game and can be dangerous to the experience of players who wish to discover better methods on their own. &#039;&#039;&#039;&#039;&#039;Be warned that much of the info below could be outdated/incorrect.&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Tutorials ===&lt;br /&gt;
==== Videos ====&lt;br /&gt;
We recommend viewing some videos of how to build a simple railway, which makes the basic steps very simple.&lt;br /&gt;
&lt;br /&gt;
* [https://www.youtube.com/watch?v=mXr7y02ZG00 Rail Signaling - Easy Rules for Placing Signals]&lt;br /&gt;
* [http://www.factorioforums.com/forum/viewtopic.php?f=54&amp;amp;t=6984 Factorio Tutorial: Signals and Multi-train Networks] by Gepwin (read the whole article!)&lt;br /&gt;
* [http://www.factorioforums.com/forum/viewtopic.php?f=8&amp;amp;t=5451 Factorio Traintorial, all about trains] by Gepwin.&lt;br /&gt;
* &#039;&#039;v0.10, English [http://www.youtube.com/watch?v=XSGYSbEPpbM Rail basics tutorial] by MangledPork Gaming.&lt;br /&gt;
** And the second part of the tutorial [http://www.youtube.com/watch?v=k6wxl4FdSuQ Factorio Rail Tutorial Part 2: Signals]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;[http://www.reddit.com/r/factorio/comments/26igal/train_signal_tutorial/ A train-signal tutorial with pictures].&lt;br /&gt;
* v0.8, English [http://www.youtube.com/watch?v=RmyOdxi5hR4 Inzainia Plays: Factorio ver 0.8.0 EP:8 (Trains, Trains, Trains!!!)]&lt;br /&gt;
* v0.6, German [http://www.youtube.com/watch?v=idOaZpX8lnA Silver&#039;s Factorio Basic Train Tutorial]&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Achievements ==&lt;br /&gt;
{{Main|Achievements}}&lt;br /&gt;
Trains are directly connected to the following achievement:&lt;br /&gt;
; Trans factorio express&lt;br /&gt;
: Have a train plan a path 1000 tiles long.&lt;br /&gt;
&lt;br /&gt;
== Connection to [http://www.openttd.org/ OpenTTD] ==&lt;br /&gt;
Factorio&#039;s railway system works basically exactly like [http://wiki.openttd.org/Signals#Block_signals≈ the block signals in Open Traffic Tycoon Deluxe]. Players who have ever played that game will find some elements of it in Factorio. If not, they can learn from the OpenTTD documentation.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Vehicles]]&lt;br /&gt;
* [[Diesel Locomotive]]&lt;br /&gt;
* [[Cargo wagon]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vehicles]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Tutorial:Applied_power_math&amp;diff=135472</id>
		<title>Tutorial:Applied power math</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Tutorial:Applied_power_math&amp;diff=135472"/>
		<updated>2017-04-01T18:17:59Z</updated>

		<summary type="html">&lt;p&gt;Luc: Added Category:Tutorial&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this tutorial we&#039;ll be answering the question: &#039;&#039;&#039;how much coal is needed to power a factory?&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
First off, we need to know: how much power does our factory use? That&#039;s easy - you can check the electricity tab by clicking on a power pole.&lt;br /&gt;
&lt;br /&gt;
[[File:power-details.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Here we see one radar using 300kW (the 299kW is a rounding error). Factorio uses real science here. A Watt (W) is a measure of energy transfer. A kilowatt (kW) is 1000 W, a megawatt (MW) is 1000 kW, and if you&#039;re lucky enough to ever make a factory big enough, a gigawatt (GW) is 1000 MW.&lt;br /&gt;
&lt;br /&gt;
So that answers the question of how much power our factory uses. To keep our factory running at full speed we need to maintain 300 kW. For ease of comparison, we&#039;ll convert that to 0.3 MW.&lt;br /&gt;
&lt;br /&gt;
Next question! How much power is stored in coal? That&#039;s also easy, because it tells us when we hover over it: 8 MJ.&lt;br /&gt;
&lt;br /&gt;
[[File:coal-joules.png|300px]]&lt;br /&gt;
&lt;br /&gt;
A Joule is another standard measure of stored energy. As with Watts a kilojoule (kJ) is 1000 J, and so on. There is a fixed relationship between Joules and Watts. &#039;&#039;&#039;1 Joule can provide 1 Watt of energy for 1 second.&#039;&#039;&#039; As a formula:&lt;br /&gt;
&lt;br /&gt;
    J = W × s&lt;br /&gt;
&lt;br /&gt;
So to run our factory at 0.3 MW, we need to consume 0.3 MJ every second.&lt;br /&gt;
&lt;br /&gt;
== Quiz ==&lt;br /&gt;
&lt;br /&gt;
Assuming perfect efficiency, how long could one piece of coal (8 MJ) run&lt;br /&gt;
our single radar (0.3 MW)?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
    8 MJ = 0.3 MW * s&lt;br /&gt;
       s = 8 MJ / 0.3 MW&lt;br /&gt;
       s = 26.67&lt;br /&gt;
&lt;br /&gt;
Nearly 27 seconds.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming perfect efficiency, what is the maximum size factory (in watts)&lt;br /&gt;
a single piece of coal could run for 5 seconds?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
    8 MJ = MW * 5&lt;br /&gt;
      MW = 8 MJ / 5&lt;br /&gt;
      MW = 1.6&lt;br /&gt;
&lt;br /&gt;
1.6 megawatts.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;BONUS!&#039;&#039;&#039; A ton of real world coal [http://hypertextbook.com/facts/2006/LunChen.shtml|contains about 21 GJ]. How much does a&lt;br /&gt;
piece of Factorio coal weigh?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
The energy ratios will match the weight ratios, so:&lt;br /&gt;
&lt;br /&gt;
    8 MJ / 21000 MJ = weight / 1000 kG&lt;br /&gt;
             weight = (8 MJ / 21000 MJ) * 1000 kG&lt;br /&gt;
             weight = 0.38 kG&lt;br /&gt;
&lt;br /&gt;
About 400g! Still doesn&#039;t explain how our character can carry so much of it...&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Efficiency == &lt;br /&gt;
&lt;br /&gt;
Let&#039;s test it! We should be able to run a radar for 27 seconds, right? Using a setup with a single boiler, steam engine, and radar, we can drop a single piece of coal in the boiler and see how long the radar runs.&lt;br /&gt;
&lt;br /&gt;
[[File:radar-example.png|800px]]&lt;br /&gt;
&lt;br /&gt;
We barely got 20s! What&#039;s wrong? We are generating less power than expected.&lt;br /&gt;
Let&#039;s measure using an accumulator.&lt;br /&gt;
&lt;br /&gt;
[[File:Accumulator-example.png|800px]]&lt;br /&gt;
&lt;br /&gt;
We started with 8 MJ in the coal, but only 4 MJ ended up in the accumulator.&lt;br /&gt;
This is because, like in the real world, some energy is lost along the way as&lt;br /&gt;
waste. In this case, only 50% is making it into our accumulator. In Factorio,&lt;br /&gt;
this loss happens in the boiler, and it actually tells us this in the item details! You can think of the waste 50% as going into the pollution it generates...&lt;br /&gt;
&lt;br /&gt;
[[File:boiler-details.png]]&lt;br /&gt;
&lt;br /&gt;
Now we have everything we need to answer our initial question: &#039;&#039;&#039;how much coal do we need to power our factory?&#039;&#039;&#039; Well, the question actually needs to be a bit&lt;br /&gt;
more precise: how much coal do we need &#039;&#039;per second&#039;&#039; to power our factory?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Aside: why did the radar run for 20s and not 13.5s (50% of 27s)?&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Because it doesn&#039;t turn on and off instantly. As you can see in the graph, it ramps up then ramps down. Technically, if you measured the area under the curve it would give you the expected 4 MJ.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quiz ==&lt;br /&gt;
&lt;br /&gt;
How much coal per second is needed to power a 20 MW factory?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Since &amp;lt;code&amp;gt;J = W × s&amp;lt;/code&amp;gt;, a 20 MW factory will consume 20 MJ/s. We&#039;ll need 40 MJ/s input due to the 50% boiler efficiency loss. Since coal contains 8 MJ, we&#039;ll need &#039;&#039;&#039;5 coal per second&#039;&#039;&#039; (&amp;lt;code&amp;gt;5 × 8 MJ = 40 MJ&amp;lt;/code&amp;gt;).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;BONUS!&#039;&#039;&#039; How many [[Mining|mining drills]] are needed to produce that much coal?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
Per the linked page, an electric mining drill produces ~0.5/s, so we&#039;ll need &#039;&#039;&#039;10 electric mining drills&#039;&#039;&#039; (&amp;lt;code&amp;gt;10 × 0.5 = 5&amp;lt;/code&amp;gt;).&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SECOND BONUS!&#039;&#039;&#039; The average American household uses [https://www.eia.gov/tools/faqs/faq.php?id=97&amp;amp;t=3|3.2 GJ in a month] (typically expressed as &#039;&#039;888 kilowatt hours&#039;&#039;). How much Factorio coal would be needed to power one of these homes for that period, and how many homes could a steam engine support ([[Steam_engine|510 kW]]), assuming the power is used at a constant rate? (Assume 30 days in a month.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Expand to reveal answer&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    3.2 GJ = 3,200 MJ&lt;br /&gt;
    3200 MJ / (8 MJ * 50%) = 800&lt;br /&gt;
&lt;br /&gt;
    3200 MJ / 30 days / 24 hours / 60 minutes / 60 seconds = 1,235 W&lt;br /&gt;
    510,000 / 1235 = 412&lt;br /&gt;
&lt;br /&gt;
800 pieces of coal per household, and a single steam engine could power 412 households.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Steam_engine&amp;diff=131509</id>
		<title>Steam engine</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Steam_engine&amp;diff=131509"/>
		<updated>2016-10-09T09:56:35Z</updated>

		<summary type="html">&lt;p&gt;Luc: This was incorrect, probably a rounding error.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{:Steam engine/infobox}}&lt;br /&gt;
&lt;br /&gt;
Steam engines are used to produce electricity.  They do this by taking in hot water and converting it into electricity.  The hotter the water the more electricity can be produced.  If there is an overabundance of electricity then steam engines will reduce their production to match consumption.&lt;br /&gt;
&lt;br /&gt;
Hovering the mouse over a steam engine will display information for that particular steam engine: current production as well as maximum productivity.&lt;br /&gt;
&lt;br /&gt;
It is possible to chain multiple steam engines together as water will pass through them.  The current optimal ratio is 1 [[offshore pump]] : 14 [[boiler]]s : 10 [[steam engine]]s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steam engines themselves don&#039;t produce any pollution.&#039;&#039;&#039; ([[Boiler]]s do!)&lt;br /&gt;
&lt;br /&gt;
== Using other liquids ==&lt;br /&gt;
&lt;br /&gt;
The steam engine can use any type of liquid to generate electricity. This can be used to get rid of unused oil-products. Just fill unusable oil products into a steam engine and it will destroy the liquids (cold liquids will be destroyed at a rate of [https://forums.factorio.com/viewtopic.php?p=144748#p144748 6.0 fluid / second]). It works the same as for cold water; you don&#039;t need to warm it. If you heat the liquid before that, the hot oil will produce electrical power, just like with hot water.&lt;br /&gt;
&lt;br /&gt;
By default, water is 15°C and oils are 25°C. The steam engine happens to work with water from 15°C and oils from above 25°C (a complete coincidence). An oil temperature of 25.22°C will get you about 1.3KW of power. Heating up water or oils makes no difference: heating one liter of water from 15 to 16 degrees takes just as much energy as heating one liter of oil from 25 to 26 degrees[http://because.a.tweet.doesnt.fit.lucb1e.com/?text=1.4k+water+15%B0C-%3E17.73%B0C+and+1.4k+light+oil+25%B0C-%3E27.82%B0C%2C+both+using+1+coal+in+a+boiler%2C+filling+an+empty+tank+from+a+full+tank+until+the+coal+boiler+runs+out.+I+stopped+a+bit+early+on+the+water+one+and+the+difference+seems+negligible. (OC)]. It was not tested how much energy the steam engine produces with 16°C water versus 26°C oil, but it probably does not warrant using oils instead of water.&lt;br /&gt;
&lt;br /&gt;
In general you should convert the unusable oil products into useables, instead of just making electricity out of it!&lt;br /&gt;
&lt;br /&gt;
[[File:electric-network.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
[[File:electrical-network-example-1.png|frame|384px|A basic modular power plant.]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Electric network]]&lt;br /&gt;
** [[Power Production]]&lt;br /&gt;
* [[Liquid network]]&lt;br /&gt;
&lt;br /&gt;
{{MachineNav}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
[[Category:Electric network]]&lt;br /&gt;
[[Category:Liquid network]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Fluid_system&amp;diff=131508</id>
		<title>Fluid system</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Fluid_system&amp;diff=131508"/>
		<updated>2016-10-09T09:44:41Z</updated>

		<summary type="html">&lt;p&gt;Luc: Mentioned that oils cannot be dumped in a lake either (next to &amp;quot;cannot be dropped on the ground&amp;quot;). I tried this with byproducts once.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
&#039;&#039;&#039;Liquids&#039;&#039;&#039; &amp;lt;small&amp;gt;(&#039;&#039;[[Liquids#Notes|note]]&#039;&#039;)&amp;lt;/small&amp;gt; are non-solid [[items]] like water and oil. &lt;br /&gt;
&lt;br /&gt;
==Behavior==&lt;br /&gt;
Liquids can only exist inside [[pipe]]s and certain buildings, meaning they cannot be carried by the player, moved using [[inserters]], dropped on the ground, or even dumped in a lake. They are counted in continuous fractions, rather than discrete integers. Liquids can be silently destroyed by removing buildings or pipes, mixing types of liquid, or at the output of a [[steam engine]].&lt;br /&gt;
&lt;br /&gt;
== Types ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
| {{imagelink|water|Water}} || Used in creating [http://www.factorioforums.com/wiki/index.php?title=Electric_network electricity] and used in combination with other liquids.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|crude-oil|Crude Oil}} || Extracted from [[Oil Field]]s by [[Pumpjack]]s and can be converted to [[Petroleum Gas]], [[Light Oil]], and [[Heavy Oil]].&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|petroleum-gas|Petroleum Gas}} || Converted from [[Crude Oil]]. Used to create various items.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|light-oil|Light Oil}} || Converted from [[Crude Oil]]. Used to create various items. Can be converted into [[Petroleum Gas]].&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|heavy-oil|Heavy Oil}} || Converted from [[Crude Oil]]. Can be converted to [[Light Oil]] and [[Lubricant]].&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|sulfuric-acid|Sulfuric Acid}} || Converted from [[Sulfur]], [[Iron Plate]]s, and [[Water]]. Can be used to create various items.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|lubricant|Lubricant}} || Converted from [[Heavy Oil]]. Used mainly to create [[Express transport belt]]s  and [[Engine]]s.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
== Machines ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
| {{imagelink|oil-refinery|Oil refinery}} || Converts [[Crude oil]] into [[Heavy oil]], [[Light oil]], and [[Petroleum gas]].&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|chemical-plant|Chemical plant}} || Changes liquid to other forms as well as crafting some recipes that require liquids.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|pumpjack|Pumpjack}} || Extracts [[Crude oil]] from [[Oil field]]s.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|boiler|Boiler}} || When [[fuel|fueled]] increases the temperature of water flowing through.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|steam-engine|Steam engine}} || Uses heated water to generate [[Electric system|electricity]].&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Piping == &lt;br /&gt;
&#039;&#039;This page should explain: link to liquid stacks, pipe window and how to get information out of it (animations would be handy), pipes and their max. throughput, link to maximum length of pipes, difference between pipe and pipe to ground, storage tank and its special connections and comparing to pipes (is nothing than a big pipe), pump and max. throughput (how much needed), small pump, how to make short connections, long distance piping, refreshing the pressure for more throughput, how to pump equal amounts of liquids in two directions...&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Piping&#039;&#039; is the most common way to move liquids in factorio. &lt;br /&gt;
&lt;br /&gt;
Key entities used in piping and general liquid/gas handling:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
| {{imagelink|pipe|Pipe}} || Used to direct the flow of water.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|pipe-to-ground|Pipe-to-ground}} || Used to cross other pipes or belts.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|storage-tank|Storage Tank}} || Stores liquids for later use.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|pump|Pump}} || Provides [[Water]] extracted from a lake.&lt;br /&gt;
|-&lt;br /&gt;
| {{imagelink|small-pump|Small Pump}} || Moves fluids from its input to its output when powered and prevents the opposite from happening always.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Pressure and throughput ===&lt;br /&gt;
&lt;br /&gt;
Liquid will move in pipes from high pressure to low pressure. The pressure of a liquid in a pipe can be seen through the pipe window. A pipe with high pressure will show itself nearly full, a pipe with low pressure will show a small trickle of the liquid. &lt;br /&gt;
&lt;br /&gt;
==Flow mechanics==&lt;br /&gt;
{{Main|Liquids/Pipe physics}}&lt;br /&gt;
All [[Liquids/Types|types of liquid]] have the same properties, like their fluidity, density, and heat capacity.&lt;br /&gt;
&lt;br /&gt;
==Using water to generate power==&lt;br /&gt;
{{Main|Liquids/Hot|Electricity/Generator|Power Production}}&lt;br /&gt;
Liquids can be used to generate power.&lt;br /&gt;
&lt;br /&gt;
==Oil processing==&lt;br /&gt;
{{Main|Liquids/Oil processing}}&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
Water was the first liquid to be added to the game. In [[Version0.9|v0.9]] the [[Liquids/Oil processing|oil processing]] system, and therefore new liquids, including crude oil and petroleum gas, were added.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[Liquids/Tutorials]]&lt;br /&gt;
* [[Liquids/Machines]]&lt;br /&gt;
* [[Liquids/Piping]]&lt;br /&gt;
* [[Liquids/Throughput]]&lt;br /&gt;
* [[Liquids/Oil processing|Oil processing]]&lt;br /&gt;
* [[Liquids/Hot|Hot liquids]]&lt;br /&gt;
* [[Liquids/Pipe physics|Pipe physics]]&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
#&amp;quot;Fluids&amp;quot; is the proper term for the concept this article is about, as it explains the properties and uses of both liquids and gases.&lt;br /&gt;
&lt;br /&gt;
{{C|Liquid network}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Wood&amp;diff=131418</id>
		<title>Wood</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Wood&amp;diff=131418"/>
		<updated>2016-10-07T14:04:55Z</updated>

		<summary type="html">&lt;p&gt;Luc: Fixed tree info: they give you either 2 or 4 wood. Or 1 in case of coral but I am not certain coral is used (it&amp;#039;s in data.raw though).&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{:Raw wood/infobox}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Raw wood&#039;&#039;&#039; is a basic [[Items#Resources|resource]] that can be collected by harvesting [[tree]]s. Raw wood has to be crafted into [[wood]] to be used in recipes, but can also be used as [[fuel]] in all [[burner devices]].&lt;br /&gt;
&lt;br /&gt;
*Dead trees will give 2 raw wood and have a mining time of 1.&lt;br /&gt;
*Big trees will give 4 raw wood and have a mining time of 2.&lt;br /&gt;
*Coral will give 1 raw wood and have a mining time of 2.&lt;br /&gt;
&lt;br /&gt;
{{ProductionNav}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Mods&amp;diff=130972</id>
		<title>Mods</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Mods&amp;diff=130972"/>
		<updated>2016-10-04T01:26:47Z</updated>

		<summary type="html">&lt;p&gt;Luc: The &amp;quot;as of 0.14.7&amp;quot; made it sound like it&amp;#039;s new since that version. Since it&amp;#039;s the current state of (sad) affairs and it has always been this way, no need to mention a version.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{languages}}&lt;br /&gt;
&lt;br /&gt;
A mod (short for modification) is an alteration of the game. Modifications can range from small tweaks to total conversions.&lt;br /&gt;
&lt;br /&gt;
==Finding mods==&lt;br /&gt;
Starting in Factorio version 0.13, mods are available from within the game via the Mods option on the main menu. Here you&#039;ll find all mods published to the official Factorio mod database. If you want more information on a mod, visit its page at [https://mods.factorio.com/ mods.factorio.com].&lt;br /&gt;
&lt;br /&gt;
Other mod listings exist as well, most importantly [http://factoriomods.net/ factoriomods.net] and [https://forums.factorio.com/viewforum.php?f=194 the forums]. Although mods you find there must be manually installed, that&#039;s pretty easy&amp;amp;mdash;see &amp;quot;Manual installation&amp;quot; below for how. &lt;br /&gt;
&lt;br /&gt;
==Manual installation==&lt;br /&gt;
Installing a downloaded mod is very easy:&lt;br /&gt;
# Find mod you like. It must support the version of Factorio that you have installed.&lt;br /&gt;
# Download the mod. This will normally come as a ZIP file. Do not unzip it.&lt;br /&gt;
# Copy the ZIP into the appropriate directory. For Windows that&#039;s &amp;lt;code&amp;gt;%appdata%\Roaming\Factorio\mods&amp;lt;/code&amp;gt;, and for Linux it&#039;s &amp;lt;code&amp;gt;~/.factorio/mods&amp;lt;/code&amp;gt;. If the directory doesn&#039;t exist, create it.&lt;br /&gt;
# Launch Factorio. New mods are enabled by default, so you can start using the mod immediately.&lt;br /&gt;
&lt;br /&gt;
Xterminator has made a [https://youtu.be/SEOedyrFQ_g video tutorial for that] (Windows only).&lt;br /&gt;
&lt;br /&gt;
==Gotchas about using mods==&lt;br /&gt;
* Some mods only work properly with maps created &#039;&#039;after&#039;&#039; the mod is installed. Typically the mod description will warn you about that.&lt;br /&gt;
* If you install a mod that prevents Factorio from launching, you can simply delete the mod from the mods folder. See &amp;quot;Manual installation&amp;quot; for the location.&lt;br /&gt;
** Note: You may want to check whether there&#039;s already a newer version of the mod that fixes the problem. Even high-quality mods can break as Factorio changes.&lt;br /&gt;
* Some mods require other mods as dependencies. Factorio does &#039;&#039;not&#039;&#039; automatically pull in dependencies. The mod description will normally tell you if there are any.&lt;br /&gt;
&lt;br /&gt;
==Creating mods==&lt;br /&gt;
See [[Modding]]&lt;br /&gt;
&lt;br /&gt;
== Subpages ==&lt;br /&gt;
{{Special:PrefixIndex/{{FULLPAGENAME}}/}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=130971</id>
		<title>Multiplayer</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=130971"/>
		<updated>2016-10-04T01:15:27Z</updated>

		<summary type="html">&lt;p&gt;Luc: Updated old URL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
Factorio supports multiplayer games in additional to the single-player campaign and scenarios. By default, multiplayer games run the CO-OP [[Game modes and options|freeplay scenario]] where all players work together to launch a rocket with a satellite into space. Other scenarios, including PvP maps, are available for download from the [https://forums.factorio.com/viewforum.php?f=36&amp;amp;sid=93d1fbe9336d31d6bac60847b6c97985 Maps and Scenarios forum].&lt;br /&gt;
&lt;br /&gt;
Currently, joining a multiplayer game requires either that all players be on the same LAN or that the host have a public IP address. The next version of Factorio, 0.13, will support a public multiplayer game lobby for locating games as well as [https://www.factorio.com/blog/post/fff-76 NAT punching] to make connecting to a server without a public IP address more seamless.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
Because of the potentially immense amount of activity on a map, the game engine utilizes a [https://www.factorio.com/blog/post/fff-76 lock step architecture]. All instances of the game run full simulations of the entire world and only player actions are transferred across the network.&lt;br /&gt;
&lt;br /&gt;
Multiplayer games were introduced to Factorio with version 0.11.0. The only connection method available was peer-to-peer mode which meant every player had to be able to directly communicate with every other player. In version 0.12.4, a client-server mode of communication was introduced in which the server (either a dedicated one or the player who hosted the game) relays messages to all peers. This means that direct connection between all players is no longer necessary. The client-server mode will be the only available in 0.13.&lt;br /&gt;
&lt;br /&gt;
As of version 0.12.0, the game features &amp;quot;latency hiding&amp;quot; mechanics where the game simulates some of the player&#039;s actions locally to make some common interactions (such as moving the player&#039;s character) more fluid. Latency hiding is enabled by default, but it can be enabled or disabled in Options → Other → Enable multiplayer latency hiding. Not every action is a part of latency hiding – most notably, car or train driving and shooting are not a part of it.&lt;br /&gt;
&lt;br /&gt;
== Setting Up a Multiplayer Game ==&lt;br /&gt;
&lt;br /&gt;
Use the &#039;&#039;Multiplayer&#039;&#039; button in the game menu to start a multiplayer game. One player starts the game and acts as the host. That player should provide the other players with his or her IP address. They can then use that IP address to join the host&#039;s game.&lt;br /&gt;
&lt;br /&gt;
Other notes and tips:&lt;br /&gt;
&lt;br /&gt;
* All game instances need the installation of exactly the same game-versions and mods.&lt;br /&gt;
* Factorio uses the port &#039;&#039;&#039;34197&#039;&#039;&#039;. The port can be changed in the [[Application Directory|config]] file.&lt;br /&gt;
* Factorio uses &#039;&#039;&#039;UDP only&#039;&#039;&#039;. Make sure you configure your router&#039;s port forwarding correctly. (The game builds it&#039;s own &amp;quot;reliable delivery&amp;quot; layer built on UDP to deal with packet loss and reordering issues.)&lt;br /&gt;
** Make sure there is no firewall or anti-virus blocking the UDP-packets.&lt;br /&gt;
* See the [[#Connecting to a Server Behind NAT|section below]] for help configuring your networking set up.&lt;br /&gt;
* The hard limit for the number of players is [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6481&amp;amp;p=50661#p50586 65535]. :) &lt;br /&gt;
&lt;br /&gt;
=== Voice Chat ===&lt;br /&gt;
* It is recommended that players use voice chat (TeamSpeak, Skype) because you need to talk a lot to coordinate connections, building, handling attacks, etc. TeamSpeak servers are posted in the [https://forums.factorio.com/viewforum.php?f=53 multiplayer forum].&lt;br /&gt;
&lt;br /&gt;
=== Finding Other Players ===&lt;br /&gt;
&lt;br /&gt;
* Use the [https://forums.factorio.com/viewforum.php?f=53 multiplayer board in the forum].&lt;br /&gt;
* Many players use other software like Evolve to meet other players. This also has the &amp;quot;advantage&amp;quot; of creating a virtual LAN among the players. See down under software.&lt;br /&gt;
* Some also use [https://forums.factorio.com/viewtopic.php?f=5&amp;amp;t=9136 Steam] to find other players.&lt;br /&gt;
* There is an external [http://serverlist.lgms.nl/ server browser] with various search options.&lt;br /&gt;
* Tell your friends to buy Factorio, then play with them!&lt;br /&gt;
&lt;br /&gt;
=== Connecting to a Server Behind NAT ===&lt;br /&gt;
&lt;br /&gt;
Factorio requires that the server (in client-server mode) or all peers (in peer-to-peer mode) have a publicly accessible IP address or that all players are on the same LAN. If you are behind NAT, you must set up port forwarding ([[Multiplayer#Playing_over_LAN_.2F_Internet|see above]] for port number) or use virtual LAN software such as Hamachi or Evolve.&lt;br /&gt;
&lt;br /&gt;
By default, multiplayer games will be launched in client-server mode (also [http://www.factorio.com/blog/post/fff-99 multiplayer forwarding] mode). In this mode, all clients send their network traffic to the server and the server forwards the traffic to the other clients. The advantage of this is that it allows games where some players are inside a LAN and others are outside. The disadvantage may be slightly more lag as packets must travel an extra hop (through the server). Multiplayer games may be launched in peer-to-peer mode to disable this forwarding behavior by checking the &#039;&#039;Use peer-to-peer communication&#039;&#039; box when starting the game as the host. Using peer-to-peer is no longer recommended and will be removed entirely in 0.13.&lt;br /&gt;
&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6393 Forwarding ports without logging into your router]&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=7714 A guide for connecting with Evolve]&lt;br /&gt;
* [http://steamcommunity.com/sharedfiles/filedetails/?id=653628496 A guide for connecting with Hamachi]&lt;br /&gt;
&lt;br /&gt;
== Game Types ==&lt;br /&gt;
&lt;br /&gt;
=== Co-op ===&lt;br /&gt;
&lt;br /&gt;
In co-op mode, all players are on the same force which means all players share the same research progression, any player can access items stored in a container built by any other player, and defensive structures built by any player will not target any other player.&lt;br /&gt;
&lt;br /&gt;
To start a co-op game:&lt;br /&gt;
&lt;br /&gt;
# Launch Factorio&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Multiplayer&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;New game&#039;&#039;&lt;br /&gt;
# Select map generator options, then click &#039;&#039;Generate&#039;&#039;&lt;br /&gt;
# Choose latency and other settings, then click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Other players can now join the game&lt;br /&gt;
&lt;br /&gt;
=== PvP ===&lt;br /&gt;
&lt;br /&gt;
In PvP mode, players can be on different forces. Each force can have one (free-for-all) or more players (teams). Each force has its own independent research progression. Additionally, each force&#039;s [[Turret|turrets]] and [[Combat Robot Capsules|combat bots]] will attack other players as enemies, unless a cease fire is set. Note that, depending on the scenario, cease fires may be unidirectional — setting a cease fire with an opposing force does not guarantee a cease fire from them in return.&lt;br /&gt;
&lt;br /&gt;
To start a PvP game, you must have a PvP-compatible scenario downloaded (or use the console commands to manually assign players to different forces, [[#Forces|see below]]). PvP scenarios can be found in the [https://forums.factorio.com/viewforum.php?f=36&amp;amp;sid=93d1fbe9336d31d6bac60847b6c97985 Maps and Scenarios forum].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example PvP scenarios:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=36&amp;amp;t=21023 PvP_Ruins by Siapran]&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=36&amp;amp;t=15052 Various scenarios by Klonan]&lt;br /&gt;
&lt;br /&gt;
After downloading a PvP scenario, you need to start the scenario as a single player custom scenario, save it, then load it as a multiplayer game. Otherwise, Factorio will launch the default freeplay scenario in co-op mode. In detail:&lt;br /&gt;
&lt;br /&gt;
# Download the scenario and place the scenario directory in the &#039;&#039;scenarios&#039;&#039; directory within your [[Application_directory#Directory_locations_by_OS_and_installation_method|user data directory]].&lt;br /&gt;
# Launch Factorio&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Custom scenario&#039;&#039;&lt;br /&gt;
# Choose the PvP scenario you want under &#039;&#039;User scenarios&#039;&#039; and click &#039;&#039;Create&#039;&#039;&lt;br /&gt;
# (Depending on the scenario, you may need to set the map generation settings and click &#039;&#039;Generate&#039;&#039;)&lt;br /&gt;
# Hit Escape and click &#039;&#039;Save game&#039;&#039;&lt;br /&gt;
# Type a save game name and click &#039;&#039;Save&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Quit game&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Multiplayer&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Load game&#039;&#039;&lt;br /&gt;
# Choose the save game you just created and click &#039;&#039;Load&#039;&#039;&lt;br /&gt;
# Choose latency and other settings, then click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Other players can now join the game&lt;br /&gt;
&lt;br /&gt;
== Forces ==&lt;br /&gt;
&lt;br /&gt;
Forces can be manually created via the console. This allows any map/scenario to be used for PvP. This may not be as convenient as a pre-made PvP scenario, as there will be no way for players to turn on/off cease fires other than through the console.&lt;br /&gt;
&lt;br /&gt;
Each created force has its own research progression and different forces may attack each other.&lt;br /&gt;
&lt;br /&gt;
The console commands for setting up and controlling forces are below:&lt;br /&gt;
&lt;br /&gt;
;game.create_force(&#039;force 1&#039;)&lt;br /&gt;
:Creates a force with name &amp;quot;force 1&amp;quot;. Default forces are &amp;quot;player&amp;quot;, &amp;quot;enemy&amp;quot;, and &amp;quot;neutral&amp;quot;.&lt;br /&gt;
:&amp;quot;player&amp;quot; is the default force for players&lt;br /&gt;
:&amp;quot;enemy&amp;quot; is alien force&lt;br /&gt;
:&amp;quot;neutral&amp;quot; is special: it is not attacked and can use all / be used by all other forces (e.g., neutral storage containers can be accessed by all)&lt;br /&gt;
;game.get_player(&#039;friend 1&#039;).force = game.forces[&#039;force 1&#039;]&lt;br /&gt;
:Changes the force of &amp;quot;friend 1&amp;quot; to &amp;quot;force 1&amp;quot;&lt;br /&gt;
;game.forces[&#039;force 1&#039;].set_cease_fire(&#039;force 2&#039;, true)&lt;br /&gt;
:Makes &amp;quot;force 1&amp;quot; cease fire against &amp;quot;force 2&amp;quot;. The reverse has to be done separately.&lt;br /&gt;
;game.forces[&#039;force 1&#039;].set_spawn_position({x=10, y=20}, game.get_surface(1))&lt;br /&gt;
:Sets the spawn/respawn point for a particular force to x = 10, y = 20. By default, all players from all forces will spawn at {x = 0, y = 0}.&lt;br /&gt;
;for v in pairs(game.forces) do game.local_player.print(v) end&lt;br /&gt;
:list all existing forces&lt;br /&gt;
&lt;br /&gt;
== Dedicated/Headless server ==&lt;br /&gt;
As of Factorio version 0.12.0 onwards, a dedicated (or headless) server can be started using the --start-server command line option. You can run factorio --help to get a list of all command-line arguments that Factorio accepts.&lt;br /&gt;
&lt;br /&gt;
In the headless mode:&lt;br /&gt;
* Graphics are not initialized (faster start up, less memory usage, works on completely headless servers)&lt;br /&gt;
* Game starts immediately and loads a save given as a parameter to the command&lt;br /&gt;
* The server has no character in game&lt;br /&gt;
* Game is paused while there are no players connected (though this can be overridden using the --no-auto-pause option)&lt;br /&gt;
* Saves the game on exit (and autosaves normally)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Please note that there has been a slight change between 0.12, 0.13 and 0.14 in how --start-server (and others) interpret the given parameter. Version 0.12 expected --start-server to be followed by a save name, that was to be found in the saves directory. 0.13 instead expects --start-server to be followed by a path to a save file. I.e. if you did &#039;&#039;&#039;factorio --start-server foo&#039;&#039;&#039; in 0.12, you probably want to use &#039;&#039;&#039;factorio --start-server saves/foo.zip&#039;&#039;&#039; in 0.13.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You will need to create your save file before you start the server, as the dedicated server REQUIRES a save file to be provided. This can easily be done using the --create command-line argument. For example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./bin/x64/factorio --create ./saves/my-save.zip       # This creates a new save, as if by clicking the New Game button in the GUI&lt;br /&gt;
./bin/x64/factorio --start-server ./saves/my-save.zip # This starts a server that will host the file created on the previous line&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Starting with version 0.13, --create also accepts --map-gen-settings if you want to use non-default map generation. To use it, create a file with the desired map settings (see the file data/map-gen-settings.example.json for an example), and run:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;factorio --create saves/my-save.zip --map-gen-settings path-to-file-with-desired-map-generation-settings.json&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Starting with version 0.14.12, factorio has moved some command-line options into the server-settings.json file. Starting factorio server requires you to specify the location of the server-settings.json file. By default this is in the factorio data folder. For example to start factorio using the most recent saved map, you would run: &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./factorio  --start-server-load-latest --server-settings ./data/server-settings.json&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below are basic instructions for starting a dedicated server on Windows and Linux.&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
&lt;br /&gt;
* Go to your Factorio.exe folder (Probably &#039;C:\Program Files\Factorio\bin\x64\&#039;)&lt;br /&gt;
* Create a text document and write into it &#039;Factorio.exe --start-server YOURSAVEGAME.zip&#039;&lt;br /&gt;
** If you haven&#039;t already done, replace YOURSAVEGAME with your savegame name&lt;br /&gt;
* Save the file as server.bat. Important: At &#039;Save as type:&#039; select &#039;All Files&#039;&lt;br /&gt;
* Use the server.bat to start your server.&lt;br /&gt;
* The console log will be shown in the window.&lt;br /&gt;
* To close the server, select the console window press Control+C. If you just close it without pressing this, it will not save your game.&lt;br /&gt;
* Forward Ports: You will find detailed instructions for your specific router on the web&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
&lt;br /&gt;
This step-by-step guide has been verified on fresh CentOS 7 and RHEL 7 installs but should be applicable with little to no changes on most distribution.&lt;br /&gt;
&lt;br /&gt;
The guide assumes you will install the headless server under &#039;&#039;&#039;/opt/factorio&#039;&#039;&#039;, adjust paths according to your own setup. We will also suggest that you run the Factorio server as a separate user to harden security of your setup.&lt;br /&gt;
&lt;br /&gt;
Note that there are two distinct packages for Linux that can be used to run a headless server. First is the usual Linux download, that contains the full game. The other is the special  [https://www.factorio.com/download-headless/stable headless package]. The headless package does not contain any files irrelevant for a pure server, such as graphics and sounds. It is also not linked against libraries that may not be present on a server machine, such as Xlib, libGL or libasound.&lt;br /&gt;
&lt;br /&gt;
This guide does not handle firewall/port forwarding since this can be done in various ways on Linux (make sure to read up how this is done as a Linux admin on your particular distribution)&lt;br /&gt;
&lt;br /&gt;
You can use the [https://github.com/Bisa/factorio-init Linux factorio-init script] to start/stop your headless server in a much better way. The script will ensure you only ever use the most recent save when your server starts (even if that was an auto-save) while also letting you set a number of other settings like Autosave frequency and Latency settings. This script will also simplify updating the server when combined with the [https://github.com/narc0tiq/factorio-updater Linux factorio-updater script].&lt;br /&gt;
&lt;br /&gt;
* Download the selected package -- either full game or the headless package -- and upload the linux tar.gz package to your server /tmp&lt;br /&gt;
* Extract the package in /tmp to /opt/factorio&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#cd /opt/&lt;br /&gt;
#tar -xzf /tmp/factorio.tar.gz # Use the correct filename. It includes the factorio version number&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Add a new user to your system and assign ownership of the factorio dir to it (please, do not run as the root user)&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#useradd factorio&lt;br /&gt;
#chown -R factorio:factorio /opt/factorio&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Try the binary&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#su factorio&lt;br /&gt;
#/opt/factorio/bin/x64/factorio --start-server savename&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
As long as it fails saying it cannot find/open the savename.zip you are set! Just upload a save from your own computer and put it in the /opt/factorio/saves directory, or use the --create ./saves/newgame.zip argument&lt;br /&gt;
&lt;br /&gt;
== How to List Your Server-Hosted Game on the Matching Server ==&lt;br /&gt;
In order to publish the game to the matching server, Factorio needs to be given some more information than just the save file location. These information are provided in a &#039;&#039;server settings file&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
To create a server settings file, look at the example file located in &#039;&#039;&#039;data/server-settings.example.json&#039;&#039;&#039; in the Factorio [[Application Directory]]. The recommended way is to make a copy of this example file and edit the copy.&lt;br /&gt;
&lt;br /&gt;
The following values can be changed:&lt;br /&gt;
* Name: This will be the name under which the server will be listed in the server browser&lt;br /&gt;
* Description: A brief description of your server&lt;br /&gt;
* Tags: A list of game tags&lt;br /&gt;
* Max Players: Allows you to limit the number of players that can be connected to the server at the same time. If you want no limit, just set max_players to 0.&lt;br /&gt;
* Visibility for server browser: May be either public, lan or hidden.&lt;br /&gt;
** Public: The server will appear in the public server list. This requires the login credentials below to be filled in.&lt;br /&gt;
** LAN: The server will not appear in the public server list, but will be available through the Play On LAN button&lt;br /&gt;
** Hidden: Clients will have to connect using the server&#039;s IP address&lt;br /&gt;
* User credentials using a username and password or authentication token: These are necessary if you wish to make the server public. Otherwise, they can be left empty.&lt;br /&gt;
** For security reasons it is recommended to use authentication token as this document is stored as plaintext. Though it should be noted that an authentication token is a sensitive piece of information as well, and you are well-advised to keep it secret.&lt;br /&gt;
* Server Password&lt;br /&gt;
** Field name is game_password&lt;br /&gt;
* Whether to verify user identity&lt;br /&gt;
(There are additional values in v0.14 of factorio.)&lt;br /&gt;
&lt;br /&gt;
== Technical Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
Notes about some technical details surrounding multiplayer have been published by the development team in several Friday Facts blog posts:&lt;br /&gt;
&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-76 Lock step architecture]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-99 Client-server connections]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-143 NAT punching, coming in 0.13]&lt;br /&gt;
&lt;br /&gt;
== More Guides ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.chef.io/blog/2016/03/21/building-a-factorio-multiplayer-server-on-digital-ocean/ How to set up Factorio server with cookbook] &lt;br /&gt;
* [http://youtube.com/watch?v=MqsqRWNsbPM How To set up a Factorio Multiplayer Server | Guide | Tutorial], by Teaspoon&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6720 Tips to connect in multiplayer], by Nondre&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Tips ==&lt;br /&gt;
* The key for [[Console commands]] is also used initiate chat in multiplayer. To execute a command instead of chatting, you need to type &#039;&#039;/c&#039;&#039; before the command. Commands executed are visible to all players. Additionally, the multiplayer game must have been started with commands allowable for commands to work.&lt;br /&gt;
* Set the player&#039;s color using the command&lt;br /&gt;
 /c game.get_player(&amp;quot;&#039;&#039;x&#039;&#039;&amp;quot;).color = {r=0.7, g=0.5, b=0.1, a=0.9}&lt;br /&gt;
Where &#039;&#039;x&#039;&#039; is the player&#039;s name. r, g and b are for red, green and blue respectively (possible values are between 0 and 1, use the right-most column on http://prideout.net/archive/colors.php to convert colors to rgb numbers). a is alpha channel aka Transparency of the color to the base texture. For single player, replace &#039;&#039;get_player(&amp;quot;x&amp;quot;)&#039;&#039; with &#039;&#039;player&#039;&#039; to set the color.&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Blueprint&amp;diff=130970</id>
		<title>Blueprint</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Blueprint&amp;diff=130970"/>
		<updated>2016-10-04T01:13:30Z</updated>

		<summary type="html">&lt;p&gt;Luc: Updated info for the latest version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{:Blueprint/infobox}}&lt;br /&gt;
&lt;br /&gt;
Blueprints are a smart way to &#039;copy &amp;amp; paste&#039; parts of a factory with help of [[Construction robot]]s.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
&lt;br /&gt;
Blank blueprints can be crafted in the crafting menu in the top row of the production tab. The blank blueprint can now be used to &#039;copy&#039; a set of buildings.&lt;br /&gt;
&lt;br /&gt;
For example, copying this small laser defense setup: &lt;br /&gt;
&lt;br /&gt;
[[File:Blueprint-example-01.png]]&lt;br /&gt;
&lt;br /&gt;
=== Create a blueprint ===&lt;br /&gt;
&lt;br /&gt;
To create a blueprint select the blueprint item out of the toolbar or the inventory. With the blueprint icon shown next to the mouse cursor, click and hold the left mouse button and drag a box as large as needed. All buildings which will be included in the blueprint will be highlighted with a green square. Once everything to &#039;copy&#039; is inside the drag box, release the mouse button, and the &#039;Blueprint icon setup&#039; menu will open.&lt;br /&gt;
&lt;br /&gt;
[[File:Blueprint-example-02.png‎]]&lt;br /&gt;
&lt;br /&gt;
=== Blueprint icon setup ===&lt;br /&gt;
&lt;br /&gt;
On the top left of the &#039;Blueprint icon setup&amp;quot; menu there are four icon slots. The game chooses automatically the number of icons and which are pre-selected depending on the number of buildings that are included. This can be changed by simply clicking on the icons to choose the desired ones. &lt;br /&gt;
&lt;br /&gt;
On the top right there are two icons to &#039;create blueprint&#039; and &#039;cancel blueprint&#039;. The &#039;create blueprint&#039; icon will also show a preview of how the blueprint icon will look after creation. The &#039;Blueprint preview&#039; just shows the preview of the blueprint.&lt;br /&gt;
&lt;br /&gt;
On the bottom the &#039;Total&#039; number of buildings included in the blueprint is shown.&lt;br /&gt;
&lt;br /&gt;
Finally, create the blueprint if everything is fine or cancel it. Cancelling does not consume the blueprint item. The created blueprint will be in the toolbelt or the inventory (or dropped to the ground if no toolbelt/inventory slot is available).&lt;br /&gt;
&lt;br /&gt;
[[File:Blueprint-example-03.png‎]]&lt;br /&gt;
&lt;br /&gt;
=== Placing the blueprint ===&lt;br /&gt;
&lt;br /&gt;
To use/place the created blueprint select it from the toolbelt or inventory. The whole building setup of the blueprint will be shown at your mouse cursor. It is possible to place it rotated, press the default key &amp;quot;R&amp;quot; to rotate. The blueprint can be placed anywhere inside the green (or orange) 100x100 area of a [[Roboport]], or within range of a [[personal roboport]] installed in [[basic modular armor|modular armor]].&lt;br /&gt;
&lt;br /&gt;
[[File:Blueprint-example-04.png‎]]&lt;br /&gt;
&lt;br /&gt;
After the blueprint gets placed somewhere, the buildings are placed as ghost buildings. [[Construction robot]]s will now start to pick up the needed items from the construction network/the player inventory (if using a personal roboport) and place them at the ghost buildings. The required items need to be in the network in an [[Active Provider chest]], a [[Passive Provider chest]] or a [[Storage chest]].&lt;br /&gt;
&lt;br /&gt;
[[File:Blueprint-example-05.png‎]]&lt;br /&gt;
&lt;br /&gt;
=== Viewing and clearing a blueprint ===&lt;br /&gt;
&lt;br /&gt;
Right clicking on a blueprint allows you to can view and clear it. By clearing it, it will become blank can be set again. Clearing no longer requires an [[Electronic circuit]] since 0.13.&lt;br /&gt;
&lt;br /&gt;
== Additional information ==&lt;br /&gt;
&lt;br /&gt;
* Once a blueprint is created it can be used unlimited times.&lt;br /&gt;
* To place a blueprint that is blocked by existing buildings you can hold shift to place the things that aren&#039;t blocked.&lt;br /&gt;
* Buildings marked for destruction will not block placing a blueprint. The building cannot be placed until a construction bot can remove it. This can cause an item outside the construction zone to block construction of a 2x2 building on the edge of the zone.&lt;br /&gt;
* It is unknown if there is a limit for the size of a blueprint. But it is at least bigger then one screen, even when zoomed out all the way.&lt;br /&gt;
* Placing very large blueprints can be problematic when parts of it are out of the roboport construction area. If roboports are part of the blueprint and are placed inside the construction area they will extend the logistics zone as soon as it is powered up.&lt;br /&gt;
* Since 0.13, blueprints can be stored in a [[Blueprint book]]. This can store many blueprints while taking only one inventory spot.&lt;br /&gt;
* Editing a blueprint is not possible, it always has to be re-created after clearing.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Deconstruction planner]]&lt;br /&gt;
* [[Blueprint book]]&lt;br /&gt;
* [[Logistic network]]&lt;br /&gt;
* [[Roboport]]&lt;br /&gt;
* [[Personal roboport]]&lt;br /&gt;
* [[Construction robot]]&lt;br /&gt;
&lt;br /&gt;
{{EquipNav}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=129828</id>
		<title>Multiplayer</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Multiplayer&amp;diff=129828"/>
		<updated>2016-09-14T18:18:38Z</updated>

		<summary type="html">&lt;p&gt;Luc: Added note about server browser in web browser&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
Factorio supports multiplayer games in additional to the single-player campaign and scenarios. By default, multiplayer games run the CO-OP [[Game modes and options|freeplay scenario]] where all players work together to launch a rocket with a satellite into space. Other scenarios, including PvP maps, are available for download from the [https://forums.factorio.com/viewforum.php?f=36&amp;amp;sid=93d1fbe9336d31d6bac60847b6c97985 Maps and Scenarios forum].&lt;br /&gt;
&lt;br /&gt;
Currently, joining a multiplayer game requires either that all players be on the same LAN or that the host have a public IP address. The next version of Factorio, 0.13, will support a public multiplayer game lobby for locating games as well as [https://www.factorio.com/blog/post/fff-76 NAT punching] to make connecting to a server without a public IP address more seamless.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
Because of the potentially immense amount of activity on a map, the game engine utilizes a [https://www.factorio.com/blog/post/fff-76 lock step architecture]. All instances of the game run full simulations of the entire world and only player actions are transferred across the network.&lt;br /&gt;
&lt;br /&gt;
Multiplayer games were introduced to Factorio with version 0.11.0. The only connection method available was peer-to-peer mode which meant every player had to be able to directly communicate with every other player. In version 0.12.4, a client-server mode of communication was introduced in which the server (either a dedicated one or the player who hosted the game) relays messages to all peers. This means that direct connection between all players is no longer necessary. The client-server mode will be the only available in 0.13.&lt;br /&gt;
&lt;br /&gt;
As of version 0.12.0, the game features &amp;quot;latency hiding&amp;quot; mechanics where the game simulates some of the player&#039;s actions locally to make some common interactions (such as moving the player&#039;s character) more fluid. Latency hiding is enabled by default, but it can be enabled or disabled in Options → Other → Enable multiplayer latency hiding. Not every action is a part of latency hiding – most notably, car or train driving and shooting are not a part of it.&lt;br /&gt;
&lt;br /&gt;
== Setting Up a Multiplayer Game ==&lt;br /&gt;
&lt;br /&gt;
Use the &#039;&#039;Multiplayer&#039;&#039; button in the game menu to start a multiplayer game. One player starts the game and acts as the host. That player should provide the other players with his or her IP address. They can then use that IP address to join the host&#039;s game.&lt;br /&gt;
&lt;br /&gt;
Other notes and tips:&lt;br /&gt;
&lt;br /&gt;
* All game instances need the installation of exactly the same game-versions and mods.&lt;br /&gt;
* Factorio uses the port &#039;&#039;&#039;34197&#039;&#039;&#039;. The port can be changed in the [[Application Directory|config]] file.&lt;br /&gt;
* Factorio uses &#039;&#039;&#039;UDP only&#039;&#039;&#039;. Make sure you configure your router&#039;s port forwarding correctly. (The game builds it&#039;s own &amp;quot;reliable delivery&amp;quot; layer built on UDP to deal with packet loss and reordering issues.)&lt;br /&gt;
** Make sure there is no firewall or anti-virus blocking the UDP-packets.&lt;br /&gt;
* See the [[#Connecting to a Server Behind NAT|section below]] for help configuring your networking set up.&lt;br /&gt;
* The hard limit for the number of players is [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6481&amp;amp;p=50661#p50586 65535]. :) &lt;br /&gt;
&lt;br /&gt;
=== Voice Chat ===&lt;br /&gt;
* It is recommended that players use voice chat (TeamSpeak, Skype) because you need to talk a lot to coordinate connections, building, handling attacks, etc. TeamSpeak servers are posted in the [https://forums.factorio.com/viewforum.php?f=53 multiplayer forum].&lt;br /&gt;
&lt;br /&gt;
=== Finding Other Players ===&lt;br /&gt;
&lt;br /&gt;
* Use the [https://forums.factorio.com/viewforum.php?f=53 multiplayer board in the forum].&lt;br /&gt;
* Many players use other software like Evolve to meet other players. This also has the &amp;quot;advantage&amp;quot; of creating a virtual LAN among the players. See down under software.&lt;br /&gt;
* Some also use [https://forums.factorio.com/viewtopic.php?f=5&amp;amp;t=9136 Steam] to find other players.&lt;br /&gt;
* There is an external [http://lgms.nl/p/factorio-serverlist/ server browser] with various search options.&lt;br /&gt;
* Tell your friends to buy Factorio, then play with them!&lt;br /&gt;
&lt;br /&gt;
=== Connecting to a Server Behind NAT ===&lt;br /&gt;
&lt;br /&gt;
Factorio requires that the server (in client-server mode) or all peers (in peer-to-peer mode) have a publicly accessible IP address or that all players are on the same LAN. If you are behind NAT, you must set up port forwarding ([[Multiplayer#Playing_over_LAN_.2F_Internet|see above]] for port number) or use virtual LAN software such as Hamachi or Evolve.&lt;br /&gt;
&lt;br /&gt;
By default, multiplayer games will be launched in client-server mode (also [http://www.factorio.com/blog/post/fff-99 multiplayer forwarding] mode). In this mode, all clients send their network traffic to the server and the server forwards the traffic to the other clients. The advantage of this is that it allows games where some players are inside a LAN and others are outside. The disadvantage may be slightly more lag as packets must travel an extra hop (through the server). Multiplayer games may be launched in peer-to-peer mode to disable this forwarding behavior by checking the &#039;&#039;Use peer-to-peer communication&#039;&#039; box when starting the game as the host. Using peer-to-peer is no longer recommended and will be removed entirely in 0.13.&lt;br /&gt;
&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6393 Forwarding ports without logging into your router]&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=7714 A guide for connecting with Evolve]&lt;br /&gt;
* [http://steamcommunity.com/sharedfiles/filedetails/?id=653628496 A guide for connecting with Hamachi]&lt;br /&gt;
&lt;br /&gt;
== Game Types ==&lt;br /&gt;
&lt;br /&gt;
=== Co-op ===&lt;br /&gt;
&lt;br /&gt;
In co-op mode, all players are on the same force which means all players share the same research progression, any player can access items stored in a container built by any other player, and defensive structures built by any player will not target any other player.&lt;br /&gt;
&lt;br /&gt;
To start a co-op game:&lt;br /&gt;
&lt;br /&gt;
# Launch Factorio&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Multiplayer&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;New game&#039;&#039;&lt;br /&gt;
# Select map generator options, then click &#039;&#039;Generate&#039;&#039;&lt;br /&gt;
# Choose latency and other settings, then click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Other players can now join the game&lt;br /&gt;
&lt;br /&gt;
=== PvP ===&lt;br /&gt;
&lt;br /&gt;
In PvP mode, players can be on different forces. Each force can have one (free-for-all) or more players (teams). Each force has its own independent research progression. Additionally, each force&#039;s [[Turret|turrets]] and [[Combat Robot Capsules|combat bots]] will attack other players as enemies, unless a cease fire is set. Note that, depending on the scenario, cease fires may be unidirectional — setting a cease fire with an opposing force does not guarantee a cease fire from them in return.&lt;br /&gt;
&lt;br /&gt;
To start a PvP game, you must have a PvP-compatible scenario downloaded (or use the console commands to manually assign players to different forces, [[#Forces|see below]]). PvP scenarios can be found in the [https://forums.factorio.com/viewforum.php?f=36&amp;amp;sid=93d1fbe9336d31d6bac60847b6c97985 Maps and Scenarios forum].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example PvP scenarios:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=36&amp;amp;t=21023 PvP_Ruins by Siapran]&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=36&amp;amp;t=15052 Various scenarios by Klonan]&lt;br /&gt;
&lt;br /&gt;
After downloading a PvP scenario, you need to start the scenario as a single player custom scenario, save it, then load it as a multiplayer game. Otherwise, Factorio will launch the default freeplay scenario in co-op mode. In detail:&lt;br /&gt;
&lt;br /&gt;
# Download the scenario and place the scenario directory in the &#039;&#039;scenarios&#039;&#039; directory within your [[Application_directory#Directory_locations_by_OS_and_installation_method|user data directory]].&lt;br /&gt;
# Launch Factorio&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Custom scenario&#039;&#039;&lt;br /&gt;
# Choose the PvP scenario you want under &#039;&#039;User scenarios&#039;&#039; and click &#039;&#039;Create&#039;&#039;&lt;br /&gt;
# (Depending on the scenario, you may need to set the map generation settings and click &#039;&#039;Generate&#039;&#039;)&lt;br /&gt;
# Hit Escape and click &#039;&#039;Save game&#039;&#039;&lt;br /&gt;
# Type a save game name and click &#039;&#039;Save&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Quit game&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Multiplayer&#039;&#039;&lt;br /&gt;
# Click &#039;&#039;Load game&#039;&#039;&lt;br /&gt;
# Choose the save game you just created and click &#039;&#039;Load&#039;&#039;&lt;br /&gt;
# Choose latency and other settings, then click &#039;&#039;Play&#039;&#039;&lt;br /&gt;
# Other players can now join the game&lt;br /&gt;
&lt;br /&gt;
== Forces ==&lt;br /&gt;
&lt;br /&gt;
Forces can be manually created via the console. This allows any map/scenario to be used for PvP. This may not be as convenient as a pre-made PvP scenario, as there will be no way for players to turn on/off cease fires other than through the console.&lt;br /&gt;
&lt;br /&gt;
Each created force has its own research progression and different forces may attack each other.&lt;br /&gt;
&lt;br /&gt;
The console commands for setting up and controlling forces are below:&lt;br /&gt;
&lt;br /&gt;
;game.create_force(&#039;force 1&#039;)&lt;br /&gt;
:Creates a force with name &amp;quot;force 1&amp;quot;. Default forces are &amp;quot;player&amp;quot;, &amp;quot;enemy&amp;quot;, and &amp;quot;neutral&amp;quot;.&lt;br /&gt;
:&amp;quot;player&amp;quot; is the default force for players&lt;br /&gt;
:&amp;quot;enemy&amp;quot; is alien force&lt;br /&gt;
:&amp;quot;neutral&amp;quot; is special: it is not attacked and can use all / be used by all other forces (e.g., neutral storage containers can be accessed by all)&lt;br /&gt;
;game.get_player(&#039;friend 1&#039;).force = game.forces[&#039;force 1&#039;]&lt;br /&gt;
:Changes the force of &amp;quot;friend 1&amp;quot; to &amp;quot;force 1&amp;quot;&lt;br /&gt;
;game.forces[&#039;force 1&#039;].set_cease_fire(&#039;force 2&#039;, true)&lt;br /&gt;
:Makes &amp;quot;force 1&amp;quot; cease fire against &amp;quot;force 2&amp;quot;. The reverse has to be done separately.&lt;br /&gt;
;game.forces[&#039;force 1&#039;].set_spawn_position({x=10, y=20}, game.get_surface(1))&lt;br /&gt;
:Sets the spawn/respawn point for a particular force to x = 10, y = 20. By default, all players from all forces will spawn at {x = 0, y = 0}.&lt;br /&gt;
;for v in pairs(game.forces) do game.local_player.print(v) end&lt;br /&gt;
:list all existing forces&lt;br /&gt;
&lt;br /&gt;
== Dedicated/Headless server ==&lt;br /&gt;
As of Factorio version 0.12.0 onwards, a dedicated (or headless) server can be started using the --start-server command line option. You can run factorio --help to get a list of all command-line arguments that Factorio accepts.&lt;br /&gt;
&lt;br /&gt;
In this mode:&lt;br /&gt;
* Graphics are not initialized (faster start up, less memory usage, works on completely headless servers)&lt;br /&gt;
* Game starts immediately and loads a save given as a parameter to the command&lt;br /&gt;
* The server has no character in game&lt;br /&gt;
* Game is paused while there are no players connected (though this can be overridden using the --no-auto-pause option)&lt;br /&gt;
* Saves the game on exit (and autosaves normally)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Please note that there has been a slight change between 0.12 and 0.13 in how --start-server (and others) interpret the given parameter. Version 0.12 expected --start-server to be followed by a save name, that was to be found in the saves directory. 0.13 instead expects --start-server to be followed by a path to a save file. I.e. if you did &#039;&#039;&#039;factorio --start-server foo&#039;&#039;&#039; in 0.12, you probably want to use &#039;&#039;&#039;factorio --start-server saves/foo.zip&#039;&#039;&#039; in 0.13.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You will need to create your save file before you start the server, as the dedicated server REQUIRES a save file to be provided. This can easily be done using the --create command-line argument. For example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./bin/x64/factorio --create saves/my-save.zip       # This creates a new save, as if by clicking the New Game button in the GUI&lt;br /&gt;
./bin/x64/factorio --start-server saves/my-save.zip # This starts a server that will host the file created on the previous line&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Starting with version 0.13, --create also accepts --map-gen-settings if you want to use non-default map generation. To use it, create a file with the desired map settings (see the file data/map-gen-settings.example.json for an example), and run factorio --create saves/my-save.zip --map-gen-settings path-to-file-with-desired-map-generation-settings.json&lt;br /&gt;
&lt;br /&gt;
Below are basic instructions for starting a dedicated server on Windows and Linux.&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
&lt;br /&gt;
* Go to your Factorio.exe folder (Probably &#039;C:\Program Files\Factorio\bin\x64\&#039;)&lt;br /&gt;
* Create a text document and write into it &#039;Factorio.exe --start-server YOURSAVEGAME.zip&#039;&lt;br /&gt;
** If you haven&#039;t already done, replace YOURSAVEGAME with your savegame name&lt;br /&gt;
* Save the file as server.bat. Important: At &#039;Save as type:&#039; select &#039;All Files&#039;&lt;br /&gt;
* Use the server.bat to start your server.&lt;br /&gt;
* The console log will be shown in the window.&lt;br /&gt;
* To close the server, select the console window press Control+C. If you just close it without pressing this, it will not save your game.&lt;br /&gt;
* Forward Ports: You will find detailed instructions for your specific router on the web&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
&lt;br /&gt;
This step-by-step guide has been verified on fresh CentOS 7 and RHEL 7 installs but should be applicable with little to no changes on most distribution.&lt;br /&gt;
&lt;br /&gt;
The guide assumes you will install the headless server under &#039;&#039;&#039;/opt/factorio&#039;&#039;&#039;, adjust paths according to your own setup. We will also suggest that you run the Factorio server as a separate user to harden security of your setup.&lt;br /&gt;
&lt;br /&gt;
Note that there are two distinct packages for Linux that can be used to run a headless server. First is the usual Linux download, that contains the full game. The other is the special  [https://www.factorio.com/download-headless/stable headless package]. The headless package does not contain any files irrelevant for a pure server, such as graphics and sounds. It is also not linked against libraries that may not be present on a server machine, such as Xlib, libGL or libasound.&lt;br /&gt;
&lt;br /&gt;
This guide does not handle firewall/port forwarding since this can be done in various ways on Linux (make sure to read up how this is done as a Linux admin on your particular distribution)&lt;br /&gt;
&lt;br /&gt;
You can use the [https://github.com/Bisa/factorio-init Linux factorio-init script] to start/stop your headless server in a much better way. The script will ensure you only ever use the most recent save when your server starts (even if that was an auto-save) while also letting you set a number of other settings like Autosave frequency and Latency settings. This script will also simplify updating the server when combined with the [https://github.com/narc0tiq/factorio-updater Linux factorio-updater script].&lt;br /&gt;
&lt;br /&gt;
* Download the selected package -- either full game or the headless package -- and upload the linux tar.gz package to your server /tmp&lt;br /&gt;
* Extract the package to /opt/factorio&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#cd /opt/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Add a new user to your system and assign ownership of the Factorio dir to it (please, do not run as the root user)&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#useradd factorio&lt;br /&gt;
#chown -R factorio:factorio /opt/factorio&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Try the binary&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#su factorio&lt;br /&gt;
#/opt/factorio/bin/x64/factorio --start-server savename&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
As long as it fails saying it cannot find/open the savename.zip you are set! Just upload a save from your own computer and put it in the /opt/factorio/saves directory&lt;br /&gt;
&lt;br /&gt;
== How to List Your Server-Hosted Game on the Matching Server ==&lt;br /&gt;
In order to publish the game to the matching server, Factorio needs to be given some more information than just the save file location. These information are provided in a &#039;&#039;server settings file&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
To create a server settings file, look at the example file located in &#039;&#039;&#039;data/server-settings.example.json&#039;&#039;&#039; in the Factorio [[Application Directory]]. The recommended way is to make a copy of this example file and edit the copy.&lt;br /&gt;
&lt;br /&gt;
The following values can be changed:&lt;br /&gt;
* Name: This will be the name under which the server will be listed in the server browser&lt;br /&gt;
* Description: A brief description of your server&lt;br /&gt;
* Tags: A list of game tags&lt;br /&gt;
* Max Players: Allows you to limit the number of players that can be connected to the server at the same time. If you want no limit, just set max_players to 0.&lt;br /&gt;
* Visibility for server browser: May be either public, lan or hidden.&lt;br /&gt;
** Public: The server will appear in the public server list. This requires the login credentials below to be filled in.&lt;br /&gt;
** LAN: The server will not appear in the public server list, but will be available through the Play On LAN button&lt;br /&gt;
** Hidden: Clients will have to connect using the server&#039;s IP address&lt;br /&gt;
* User credentials using a username and password or authentication token: These are necessary if you wish to make the server public. Otherwise, they can be left empty.&lt;br /&gt;
** For security reasons it is recommended to use authentication token as this document is stored as plaintext. Though it should be noted that an authentication token is a sensitive piece of information as well, and you are well-advised to keep it secret.&lt;br /&gt;
* Server Password&lt;br /&gt;
** Field name is game_password&lt;br /&gt;
* Whether to verify user identity&lt;br /&gt;
&lt;br /&gt;
== Technical Implementation Details ==&lt;br /&gt;
&lt;br /&gt;
Notes about some technical details surrounding multiplayer have been published by the development team in several Friday Facts blog posts:&lt;br /&gt;
&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-76 Lock step architecture]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-99 Client-server connections]&lt;br /&gt;
* [http://www.factorio.com/blog/post/fff-143 NAT punching, coming in 0.13]&lt;br /&gt;
&lt;br /&gt;
== More Guides ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.chef.io/blog/2016/03/21/building-a-factorio-multiplayer-server-on-digital-ocean/ How to set up Factorio server with cookbook] &lt;br /&gt;
* [http://youtube.com/watch?v=MqsqRWNsbPM How To set up a Factorio Multiplayer Server | Guide | Tutorial], by Teaspoon&lt;br /&gt;
* [https://forums.factorio.com/viewtopic.php?f=53&amp;amp;t=6720 Tips to connect in multiplayer], by Nondre&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Tips ==&lt;br /&gt;
* The key for [[Console commands]] is also used initiate chat in multiplayer. To execute a command instead of chatting, you need to type &#039;&#039;/c&#039;&#039; before the command. Commands executed are visible to all players. Additionally, the multiplayer game must have been started with commands allowable for commands to work.&lt;br /&gt;
* Set the player&#039;s color using the command&lt;br /&gt;
 /c game.get_player(&amp;quot;&#039;&#039;x&#039;&#039;&amp;quot;).color = {r=0.7, g=0.5, b=0.1, a=0.9}&lt;br /&gt;
Where &#039;&#039;x&#039;&#039; is the player&#039;s name. r, g and b are for red, green and blue respectively (possible values are between 0 and 1, use the right-most column on http://prideout.net/archive/colors.php to convert colors to rgb numbers). a is alpha channel aka Transparency of the color to the base texture. For single player, replace &#039;&#039;get_player(&amp;quot;x&amp;quot;)&#039;&#039; with &#039;&#039;player&#039;&#039; to set the color.&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=User:Luc&amp;diff=129788</id>
		<title>User:Luc</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=User:Luc&amp;diff=129788"/>
		<updated>2016-09-11T21:25:28Z</updated>

		<summary type="html">&lt;p&gt;Luc: I think the previous text was a comment included with the account creation request? Idk. It was outdated anyway.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Left handed inserter.&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Turret&amp;diff=129533</id>
		<title>Turret</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Turret&amp;diff=129533"/>
		<updated>2016-09-05T20:49:33Z</updated>

		<summary type="html">&lt;p&gt;Luc: /* Flamethrower Turret */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
&#039;&#039;&#039;Turrets&#039;&#039;&#039; are defensive structures that can be crafted after being researched. They come in three different types with different health, shooting speed, range, ammunition, damage type and damage per shot.&lt;br /&gt;
&lt;br /&gt;
__FORCETOC__&lt;br /&gt;
&lt;br /&gt;
== Gun Turrets ==&lt;br /&gt;
&lt;br /&gt;
Gun turrets are very basic and cheap defensive structures and the simplest element of automatic defenses.  They use magazines for ammunition which can be refilled manually or by [[inserters]].  They do not require power and can operate practically anywhere as long as they have sufficient ammunition.  Gun turrets deal double damage per shot as compared to the man-portable [[pistol]] and [[submachine gun]], but have somewhat lower fire rate than the latter, so absent any turret-specific upgrades it does 1.33 times as much damage per second as the submachine guns.  The gun turret receives bonuses from technologies that improve bullets so it keeps pace with the submachine gun as those improve, and they also receive bonuses from their own damage upgrade.  These two damage effects stack multiplicatively: fully upgraded, bullets do 2.2 times as much damage as a standard bullet, and turrets do 2.2 times as much damage as a standard turret, so bullets from a turret do 2.2&amp;amp;times;2.2=4.84 times as much damage as without the upgrades, totaling 19.36 damage from [[Regular_Magazine|regular]] and 48.4 damage from [[Piercing_Rounds_Magazine|piercing]] bullets, more than fully-upgraded laser turrets can provide, though still not quite enough to kill medium spitters in a single shot.&lt;br /&gt;
&lt;br /&gt;
If one plans to exclusively use gun turrets, using a [[Train]] to send ammo to restock distant turrets is very effective.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Prerequisites&#039;&#039;&#039; || {{icontech|turrets||Turrets (research)}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Recipe:&#039;&#039;&#039; || {{icon|iron-plate|20|Iron plate}}+{{icon|copper-plate|10|Copper plate}}+{{icon|iron-gear-wheel|10|Iron gear wheel}}+{{icon|time icon|10|Time}} =&amp;gt; {{icon|turrets|1|Turrets (research)}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Total raw:&#039;&#039;&#039; || {{icon|iron-plate|40|Iron plate}}+{{icon|copper-plate|10|Copper plate}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Health:&#039;&#039;&#039; || 400 &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Damage&#039;&#039;&#039; || Based on ammunition damage (Physical)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Shooting speed&#039;&#039;&#039; || 10 shots/second&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Damage bonus&#039;&#039;&#039; || 100%&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Range:&#039;&#039;&#039; || 17&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Ammunition:&#039;&#039;&#039; || {{icon|basic-bullet-magazine||Regular magazine}} {{icon|piercing-bullet-magazine||Piercing rounds magazine}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Upgrades:&#039;&#039;&#039; || {{icon|gun-turret-damage||Gun turret damage (research)}} {{icon|bullet-damage||Bullet damage (research)}} {{icon|bullet-speed||Bullet shooting speed (research)}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Laser Turrets ==&lt;br /&gt;
&lt;br /&gt;
Laser turrets are an advanced defense building with a longer range, good damage and use [[Electric network|electricity]] to operate (and a smaller amount of energy when idle). By dealing &#039;&#039;&#039;laser damage&#039;&#039;&#039; they don&#039;t face any resistances ([[enemies]] receive full damage) but have a lower rate of fire than gun turrets.  Each shot costs a constant 800kJ of energy; as the shooting speed increases through upgrades, so too does the power required to keep firing. &lt;br /&gt;
&lt;br /&gt;
Since using laser turrets to ward off attacks can cause electricity usage spikes, using [[Basic accumulator|accumulators]] to offset the cost is recommended to keep the rest of the network fully functional.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Prerequisites&#039;&#039;&#039; || {{icontech|laser-turrets||Laser turrets}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Recipe:&#039;&#039;&#039; || {{icon|time icon|20|time}} + {{icon|steel-plate|20|Steel plate}} + {{icon|electronic-circuit|20|Electronic circuit}} + {{icon|battery|12|Battery}} =&amp;gt; {{icon|laser-turret|1|Laser turret}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Total raw:&#039;&#039;&#039; || {{icon|time icon|45|time}} {{icon|iron-plate|20|Iron plate}} {{icon|copper-plate|30|Copper plate}} {{icon|steel-plate|20|Steel plate}} {{icon|battery|12|Battery}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Health:&#039;&#039;&#039; || 1000 &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Max power:&#039;&#039;&#039; || 2.4 MW ([[Electric network|electric]])&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Energy consumption on standby&#039;&#039;&#039; || 24 kW&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Damage&#039;&#039;&#039; || 20 (Laser)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Shooting speed&#039;&#039;&#039; || 3 shots/second&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Range:&#039;&#039;&#039; || 25&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Upgrades:&#039;&#039;&#039; || {{icon|laser-turret-damage||Laser turret damage upgrade (research)}} {{icon|laser-turret-speed||Laser turret shooting speed (research)}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Flamethrower Turret==&lt;br /&gt;
&lt;br /&gt;
New in version 0.13, Flamethrower turrets provide literal fire support, setting enemies on fire and doing damage over time. Unlike the previous turrets, they have a limited firing arc, therefore should be place at choke points or behind walls. They use liquids as ammunition, which requires dedicated fluid pumping, capable of using crude oil, heavy oil, or light oil. Different liquids provide further damage bonuses. (Light oil yielding a 10% damage boost.)&lt;br /&gt;
&lt;br /&gt;
Currently, flamethrower turrets have a tendency to miss the first row of biters, as unlike the laser and gun turrets they do not have a seeking projectile, instead firing over the heads of the first row. Due to this, gun/laser turrets will be necessary in addition to flame turrets. The second biters in line will not be so lucky, however. When fully upgraded, Flamethrower turrets are capable of doing 145.2/s Fire damage plus an additional 217.8/s damage for 8 seconds. This makes them far more powerful than the gun turret or the laser turret, especially considering Biters&#039; lack of resistance to fire. The high damage cheapens the cost of liquids. &lt;br /&gt;
&lt;br /&gt;
The optimal attack for flamethrower turrets to handle would be a very linear attack, where the enemy attacked in a line formation, to ensure most attackers end up walking through the pool of fire left by the turret.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Prerequisites&#039;&#039;&#039; || {{icontech|Flamethrower||Flamethrower}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Recipe:&#039;&#039;&#039; || {{icon|time icon|20|time}} + {{icon|steel-plate|30|Steel plate}} + {{icon|iron-gear-wheel|15|Iron gear wheel}} + {{icon|pipe|10|Pipe}} + {{icon|engine-unit|5|Engine Unit}} =&amp;gt; {{icon|flamethrower-turret|1|Flamethrower turret}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Total raw:&#039;&#039;&#039; || {{icon|time icon|140|time}} + {{icon|iron-plate|60|Iron plate}} + {{icon|steel-plate|35|Steel Plate}}&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Health:&#039;&#039;&#039; || 1400 &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Max ammo:&#039;&#039;&#039; || 20&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Fluid Consumption&#039;&#039;&#039; || 0.12/s while firing (zero while idle)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Damage&#039;&#039;&#039; || 30 (Fire)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Damage Over Time&#039;&#039;&#039; || 45/s (Fire) for 8 seconds&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Area of Effect size&#039;&#039;&#039; || 2.5 tiles&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Range:&#039;&#039;&#039; || 30&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Upgrades:&#039;&#039;&#039; || {{icon|laser-turret-damage||Laser turret damage upgrade (research)}} {{icon|laser-turret-speed||Laser turret shooting speed (research)}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Enemies]]&lt;br /&gt;
* [[Defense]]&lt;br /&gt;
* [[Regular magazine]]&lt;br /&gt;
* [[Piercing rounds magazine]]&lt;br /&gt;
* [http://www.factorioforums.com/forum/viewtopic.php?f=16&amp;amp;t=4363&amp;amp;start=20 Thread about the different power of the turrets]&lt;br /&gt;
* [http://www.factorioforums.com/forum/viewtopic.php?f=5&amp;amp;t=5083 About gun turrets]!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: Items]] [[Category: Weapons]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Steam_engine&amp;diff=129057</id>
		<title>Steam engine</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Steam_engine&amp;diff=129057"/>
		<updated>2016-09-04T00:55:15Z</updated>

		<summary type="html">&lt;p&gt;Luc: Did some testing with water/oil temperatures and a steam engine.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{Machinery&lt;br /&gt;
|health       =300&lt;br /&gt;
|stack_size   =10&lt;br /&gt;
|poweroutput  =510 kW&lt;br /&gt;
|input        =time, 0.5 + iron gear wheel, 5 + pipe, 5 + iron plate, 5&lt;br /&gt;
|raw          =time, 5.5 + iron plate, 20&lt;br /&gt;
|producers    =manual + assembling machine 2 + assembling machine 3&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Steam engines are used to produce electricity.  They do this by taking in hot water and converting it into electricity.  The hotter the water the more electricity can be produced.  If there is an overabundance of electricity then steam engines will reduce their production to match consumption.&lt;br /&gt;
&lt;br /&gt;
Hovering the mouse over a steam engine will display information for that particular steam engine: current production as well as maximum productivity.&lt;br /&gt;
&lt;br /&gt;
It is possible to chain multiple steam engines together as water will pass through them.  The current optimal ratio is 1 [[offshore pump]] : 14 [[boiler]]s : 10 [[steam engine]]s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Steam engines themselves don&#039;t produce any pollution.&#039;&#039;&#039; ([[Boiler]]s do!)&lt;br /&gt;
&lt;br /&gt;
== Using other liquids ==&lt;br /&gt;
&lt;br /&gt;
The steam engine can use any type of liquid to generate electricity. This can be used to get rid of unused oil-products. Just fill unusable oil products into a steam engine and it will destroy the liquids (cold liquids will be destroyed at a rate of [https://forums.factorio.com/viewtopic.php?p=144748#p144748 6.0 fluid / second]). It works the same as for cold water; you don&#039;t need to warm it. If you heat the liquid before that, the hot oil will produce electrical power, just like with hot water.&lt;br /&gt;
&lt;br /&gt;
By default, water is 15°C and oils are 25°C. The steam engine happens to work with water from 15°C and oils from above 25°C (a complete coincidence). An oil temperature of 25.22°C will get you about 1.3KW of power. Water works without any heating, producing a few watts of power. Heating up water or oils makes no difference: heating one liter of water from 15 to 16 degrees takes just as much energy as heating one liter of oil from 25 to 26 degrees[http://because.a.tweet.doesnt.fit.lucb1e.com/?text=1.4k+water+15%B0C-%3E17.73%B0C+and+1.4k+light+oil+25%B0C-%3E27.82%B0C%2C+both+using+1+coal+in+a+boiler%2C+filling+an+empty+tank+from+a+full+tank+until+the+coal+boiler+runs+out.+I+stopped+a+bit+early+on+the+water+one+and+the+difference+seems+negligible. (OC)]. It was not tested how much energy the steam engine produces with 16°C water versus 26°C oil, but it probably does not warrant using oils instead of water.&lt;br /&gt;
&lt;br /&gt;
In general you should convert the unusable oil products into useables, instead of just making electricity out of it!&lt;br /&gt;
&lt;br /&gt;
[[File:electric-network.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
[[File:electrical-network-example-1.png|frame|384px|A basic modular power plant.]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Electric network]]&lt;br /&gt;
** [[Power Production]]&lt;br /&gt;
* [[Liquid network]]&lt;br /&gt;
&lt;br /&gt;
{{MachineNav}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;br /&gt;
[[Category:Electric network]]&lt;br /&gt;
[[Category:Liquid network]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Rocket_part&amp;diff=127416</id>
		<title>Rocket part</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Rocket_part&amp;diff=127416"/>
		<updated>2016-08-25T01:24:48Z</updated>

		<summary type="html">&lt;p&gt;Luc: Added some calculations I did into the true &amp;quot;total raw&amp;quot; of a rocket as required to win the game.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Item&lt;br /&gt;
|input        =time, 3 + low density structure, 10 + rocket fuel, 10 + rocket control unit, 10&lt;br /&gt;
|technologies =rocket silo&lt;br /&gt;
|producers    =rocket silo&lt;br /&gt;
|consumers    =rocket silo&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rocket parts&#039;&#039;&#039; are created inside of the [[rocket silo]].  Each completed part contributes 1% towards the completion of the rocket.  Once all 100 rocket parts have been completed the rocket silo will display a rocket ready to be launched within the silo and the rocket silo interface will contain a LAUNCH button.&lt;br /&gt;
&lt;br /&gt;
== Building the Rocket ==&lt;br /&gt;
&lt;br /&gt;
The rocket needs 100 parts; each part needs 3 ingredients; those ingredients need other ingredients; etc. In total, one rocket will need the following items:&lt;br /&gt;
&lt;br /&gt;
       100 RocketPart&lt;br /&gt;
     1 000 Low Density Structures&lt;br /&gt;
     1 000 Rocket Control Units&lt;br /&gt;
     1 000 Rocket Fuel&lt;br /&gt;
    10 000 Light Oil&lt;br /&gt;
    10 000 Processing Units&lt;br /&gt;
    10 000 Solid Fuel&lt;br /&gt;
    10 000 Speed Modules&lt;br /&gt;
    10 000 Steel&lt;br /&gt;
    35 000 Sulfuric Acid&lt;br /&gt;
    70 000 Advanced Circuits&lt;br /&gt;
   145 000 Coal&lt;br /&gt;
   145 000 Plastic&lt;br /&gt;
   175 000 Sulfur&lt;br /&gt;
   390 000 Electronic Circuits&lt;br /&gt;
   475 000 Iron Ore&lt;br /&gt;
   475 000 Iron Plates&lt;br /&gt;
   730 000 Copper Ore&lt;br /&gt;
   730 000 Copper Plates&lt;br /&gt;
   960 000 Petroleum Gas&lt;br /&gt;
 1 450 000 Copper Cable&lt;br /&gt;
&lt;br /&gt;
To win the game (or to update the Rockets Sent counter in the left top), you additionally need a satellite. When you hover over it, it mentions the &amp;quot;total raw&amp;quot; already. However, this does not include the material needed for Processing Units, Batteries and Steel since these are seen as &amp;quot;raw ingredients&amp;quot; (they cannot be crafted by hand). Still, you can&#039;t make a battery (or steel, or processing units) without iron plates, so you still need to mine the ore. Adding it all up, the total cost for the satellite is:&lt;br /&gt;
&lt;br /&gt;
       5 Radar&lt;br /&gt;
      25 Gear Wheels&lt;br /&gt;
      50 Rocket Fuel&lt;br /&gt;
     100 Accumulators&lt;br /&gt;
     100 Low Density Structures&lt;br /&gt;
     100 Processing Units&lt;br /&gt;
     100 Solar Panels&lt;br /&gt;
     200 Advanced Circuits&lt;br /&gt;
     500 Battery&lt;br /&gt;
     500 Light Oil&lt;br /&gt;
     500 Solid Fuel&lt;br /&gt;
     900 Coal&lt;br /&gt;
     900 Plastic&lt;br /&gt;
   1 100 Sulfuric Acid&lt;br /&gt;
   1 500 Steel&lt;br /&gt;
   3 925 Electronic Circuit&lt;br /&gt;
   5 500 Sulfur&lt;br /&gt;
   7 788 Copper Ore&lt;br /&gt;
   7 788 Copper Plates&lt;br /&gt;
  12 575 Copper Cables&lt;br /&gt;
  13 325 Iron Ore&lt;br /&gt;
  13 325 Iron Plates&lt;br /&gt;
  19 200 Petroleum Gas&lt;br /&gt;
&lt;br /&gt;
Added up together, each rocket you launch will set you back:&lt;br /&gt;
&lt;br /&gt;
         1 Rocket&lt;br /&gt;
         1 Satellite&lt;br /&gt;
         5 Radar&lt;br /&gt;
        25 Gear Wheels&lt;br /&gt;
       100 Accumulators&lt;br /&gt;
       100 Rocket Parts&lt;br /&gt;
       100 Solar Panels&lt;br /&gt;
       500 Battery&lt;br /&gt;
     1 000 Rocket Control Units&lt;br /&gt;
     1 050 Rocket Fuel&lt;br /&gt;
     1 100 Low Density Structures&lt;br /&gt;
    10 000 Speed Modules&lt;br /&gt;
    10 100 Processing Units&lt;br /&gt;
    10 500 Light Oil&lt;br /&gt;
    10 500 Solid Fuel&lt;br /&gt;
    11 500 Steel&lt;br /&gt;
    36 100 Sulfuric Acid&lt;br /&gt;
    70 200 Advanced Circuits&lt;br /&gt;
   145 900 Coal&lt;br /&gt;
   145 900 Plastic&lt;br /&gt;
   180 500 Sulfur&lt;br /&gt;
   393 925 Electronic Circuits&lt;br /&gt;
   488 325 Iron Ore&lt;br /&gt;
   488 325 Iron Plates&lt;br /&gt;
   737 788 Copper Ore&lt;br /&gt;
   737 788 Copper Plates&lt;br /&gt;
   979 200 Petroleum Gas&lt;br /&gt;
 1 462 575 Copper Cables&lt;br /&gt;
&lt;br /&gt;
Or, as a &amp;quot;total raw&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
   145 900 Coal&lt;br /&gt;
   488 325 Iron Ore&lt;br /&gt;
   737 788 Copper Ore&lt;br /&gt;
   979 200 Petroleum Gas&lt;br /&gt;
&lt;br /&gt;
Crude oil is not in the list because there are multiple ways to process it into petroleum gas and other oils. Water is also not included because it, again, depends on how you process your oils. A rough estimate is that you will use a million units of water and two million units of crude oil in the production of the satellite + rocket.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[satellite]]&lt;br /&gt;
* [[rocket silo]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Items]]&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
	<entry>
		<id>https://wiki.factorio.com/index.php?title=Nightvision&amp;diff=124865</id>
		<title>Nightvision</title>
		<link rel="alternate" type="text/html" href="https://wiki.factorio.com/index.php?title=Nightvision&amp;diff=124865"/>
		<updated>2016-05-04T14:15:12Z</updated>

		<summary type="html">&lt;p&gt;Luc: Multiple night vision units does nothing (I tried -- I hoped it might, like exoskeletons are additive, improve vision or something).&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages}}&lt;br /&gt;
{{Item&lt;br /&gt;
|name         =Night Vision&lt;br /&gt;
|extra1       =&amp;lt;tr&amp;gt;&amp;lt;td style=&amp;quot;text-align: left;&amp;quot;&amp;gt;Size&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;3x2&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
|input        =Time, 10 + Steel plate, 10 + Advanced circuit, 5&lt;br /&gt;
|technologies =Night vision (research)&lt;br /&gt;
|producers    =Manual + Assembling machine&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;&lt;br /&gt;
[[File:night-vision-example-1.png|thumb|256px|Visibility at night.]]&lt;br /&gt;
&lt;br /&gt;
Having [[Night vision]] in your [[Modular armor|armor]] during the night replaces standard light-dependent vision with a green filter that ignores lighting conditions.&lt;br /&gt;
&lt;br /&gt;
The module activates rather early and deactivates late, meaning that during the dawn and the dusk it actually impairs the vision.&lt;br /&gt;
&lt;br /&gt;
Unlike other items such as exoskeletons or shields, equipping multiple night vision units has no effect.&lt;br /&gt;
&amp;lt;/onlyinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Modular armor]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Items]] [[Category: Equipment]]&lt;br /&gt;
{{EquipNav}}&lt;/div&gt;</summary>
		<author><name>Luc</name></author>
	</entry>
</feed>