This wiki is about 0.17, the current experimental version of Factorio.

Information about 0.16, the current stable version of Factorio, can be found on

Difference between revisions of "Version history/0.16.0"

From Official Factorio Wiki
Jump to: navigation, search
(Added existing 0.16 changelog. (so satisfying!))
(Lel, forgot they don't remove old changelogs)
Line 361: Line 361:
* Added LuaLogisticNetwork::force read.
* Added LuaLogisticNetwork::force read.
* Added LuaItemStack::item_number read - the unique ID of the item if it has one.
* Added LuaItemStack::item_number read - the unique ID of the item if it has one.
== 0.15.40 ==
Date: 29. 11. 2017
** Locale:
* Fixed Chinese translations.
== 0.15.39 ==
Date: 27. 11. 2017
=== Bugfixes ===
* Fixed corrupted Windows release. ([ more])
== 0.15.38 ==
Date: 24. 11. 2017
** Features:
* Added Razer Chroma and Razer Chroma Link support (
== 0.15.37 ==
Date: 17. 10. 2017
=== Bugfixes ===
* Fixed false positives in detection of crashes caused by incompatible version of RivaTuner Statistics Server.
== 0.15.36 ==
Date: 10. 10. 2017
=== Bugfixes ===
* Fixed a bug in the fix of electric network from 0.15.35.
* Fixed a crash when deleting chunks in specific cases. ([ more])
* Fixed a crash when coupling/decoupling trains through the Lua API.
* Fixed crash when unknown program arguments were passed. ([ more])
== 0.15.35 ==
Date: 28. 09. 2017
=== Bugfixes ===
* Fixed that after a player reconnected after a desync, while blueprints were uploaded, the game would crash. ([ more])
* Fixed that in certain scenarios, the blueprint library wouldn't synchronise. ([ more])
* Fixed that the server would sometimes quit if a player tried to connect after another player tried to connect unsuccessfully. ([ more])
* Fixed a rare desync related to electric sub networks.
* Fixed archaic (from 0.12) migration that was supposed to fix rollingStockCounts on rails and it broke it instead.
* Fixed possible desync when rotating pipe to ground. ([ more])
* Fixed a rare possiblity of internal electric network crash when loading game. ([ more])
* Handle network errors (caused by LavasoftTcpService64.dll corrupting Winsock) gracefully. ([ more])
=== Scripting ===
* Fixed changing force of underground belt entity would cause desync. ([ more])
== 0.15.34 ==
Date: 23. 08. 2017
=== Bugfixes ===
* Fixed that after a player reconnected after a desync, their blueprints would no longer upload. ([ more])
* Fixed that it was possible to modify other players' blueprint libraries. ([ more])
* Fixed a crash when loading a save that was transferring blueprints to a now offline player. ([ more])
* Fixed that the blueprint library would remove duplicate blueprints even though they were in different books. ([ more])
* Fixed game freezing when clicking the decrease replay speed button. ([ more])
* Disabled possibility to open invalid save/replay by enter key or double click.
* Fixed rare crash when being disconnected from multiplayer. ([ more])
* Fixed creating map from scenario would copy also system and hidden files from scenario folder. ([ more])
* Fixed threading issue causing random server crashes. ([ more])
* Fixed that if the server was launched with --start-server-load-scenario, the /save command with no name would cause the server to hang. ([ more])
* Fixed --start-server-load-scenario would ignore --map-gen-settings, --map-settings and --preset options. ([ more])
* Fixed disabling shaders would cause crashes. ([ more])
== 0.15.33 ==
Date: 09. 08. 2017
=== Changes ===
* Mod name in mod info pane will no longer be localised. ([ more])
* Optional mod dependencies now show as orange when invalid. ([ more])
=== Bugfixes ===
* Fixed crash when trying to load replay that is not compatible with current version.
* Fixed ghosts might emit light. ([ more])
* Fixed removing land mines didn't make any sound. ([ more])
* Fixed creating window larger than screen. ([ more])
* Improved performance of rendering uranium ore. ([ more])
=== Modding ===
* Bonus UI now shows additional force modifiers ([ more])
* simple-entity-with-owner (and simple-entity-with-force) now supports apply_runtime_tint in sprite definition.
=== Scripting ===
* simple-entity-with-owner exposes color property through LuaEntity::color. Set it to {r=0, g=0, b=0, a=0} to use color of entity's force.
* Fixed LuaEntityPrototype::distribution_effectivity would return value of supply_area_distance instead. ([ more])
== 0.15.32 ==
Date: 02. 08. 2017
=== Bugfixes ===
* Fixed compatibility problem with several antivirus programs. ([ more])
* Fixed seed in map-gen-settings.json would be ignored when creating map on headless server. ([ more])
* Fixed that connecting to a multiplayer game with a large blueprint library might be difficult. ([ more])
* Fixed that using capsules would open an Entity's GUI when clicked. ([ more])
* Fixed that --window-size=maximized wouldn't work on Linux. ([ more])
* Fixed that changing reactor consumption(production) values through a mod didn't update its production until rebuilt. ([ more])
* Fixed that blueprints would sometimes stop transferring.
* Fixed crash when opening item/container and at the same time the controller is set to some that doesn't have inventory. ([ more])
* Fixed 3 possible crashes related to getting malformed network packet over the network.
* Maybe fixed a biter path cache-related crash. ([ more])
* Fixed that bad_alloc and similar low level erros were catched internally, so we couldn't get proper stack trace of those.
* Limited the size of a train chart tag when the map is zoomed in. ([ more])
* Possible rare crash fix related to building rails and viewing preview of entities right after that. ([ more])
* Limited technology cost multiplier to maximum of 1000. ([ more])
=== Scripting ===
* The log method also specifies the mod that wrote that, not only script file.
* Added LuaEntityPrototype::distribution_effectivity read.
* Added LuaEntityPrototype::time_to_live read.
* Added LuaControl::following_robots read.
* Added LuaPlayer::pipette_entity().
* Added LuaEntity::can_be_destroyed().
* Added script_raised_destroy reserved event ID.
* Added script_raised_built reserved event ID.
* Added script_raised_revive reserved event ID.
* Changed LuaEntity::time_to_live to also work for combat robots.
* Changed LuaEntityPrototype::fluid_capacity read to also work on fluid-wagon.
* Changed LuaEntityPrototype::turret_range read returns nil instead of error if not turret.
* Changed LuaEntity::train to return nil if entity is not rolling stock.
* Added LuaEntityPrototype::explosion_beam read.
* Added LuaEntityPrototype::explosion_rotate read.
== 0.15.31 ==
Date: 25. 07. 2017
=== Minor Features ===
* Train stop text angle is now configurable in the graphics settings. Default value is 30 degrees.
=== Bugfixes ===
* Fixed that resizing the game window was very slow on Linux. ([ more])
* Fixed rendering of turret ranges on map. ([ more])
* Fixed "Disable listed mods" in minimal mode would disable all mods including Base if mod-list.json didn't exist. ([ more])
* Fixed that pressing escape in the "mods error" GUI would close it and leave the game in a broken state. ([ more])
* Fixed possible crash when loading game. ([ more])
* Car and Tank now make a sound when deconstructed. ([ more])
* Fixed that using the color command with no arguments would set your color to black.
* Fixed a crash when deleting a blueprint book while the label is being edited in the blueprint library. ([ more])
* Fixed crash when closing the game in the Generate Map GUI. ([ more])
* Fixed that the generate map GUI would show incorrect values for some of the enemy expansion settings in some cases. ([ more])
* Fixed that some blueprints would always have to be reuploaded after connecting to a server, even if they weren't changed. ([ more])
* Fixed that the map seed field wouldn't be used when given in a map-gen-settings.json file through the command line. ([ more])
* Fixed that missing controls in "autoplace_controls" for map gen settings would get filled with default values instead of disabling unlisted controls.
* Fixed that blueprints would stop transferring if the game was loaded from a map that included some transfers in progress. ([ more])
* Fixed missing font for Thai language.
* Changed the hazard concrete/concrete tile transition so it behaves predictively.
=== Modding ===
* Fixed layered icons would render incorrectly in some cases. ([ more])
=== Scripting ===
* Fixed a crash when using LuaPlayer::disable_all_prototypes() and opening the technology GUI. ([ more])
* Fixed that research bonus could be set to negative. ([ more])
* Fixed that items in the character trash slots would get lost on reducing inventory size instead of spilling the items on the ground. ([ more])
* Fixed validation for pickup_position and drop_position. ([ more])
* Exposed internal buffer of fluid turret to Lua as its last fluidbox.
* Added LuaEntityPrototype::fluid_capacity read.
== 0.15.30 ==
Date: 14. 07. 2017
=== Bugfixes ===
* Fixed crash related to empty player blueprint shelf. ([ more])
* Fixed crash related to handling focused state of widgets.
* Fixed possible crash when using font with size 0. ([ more])
* Fixed focus error preventing to access GUI when the game is paused in multiplayer.
* Fixed a crash when the map can't be saved to disk due to permission errors when joining MP games. ([ more])
=== Modding ===
* Added optional "hide_resistances" to entity prototype to control whether resistances should be hidden in description for friendly forces. Default is true.
== 0.15.29 ==
Date: 13. 07. 2017
=== Changes ===
* Underground pipes will no longer connect if there is candidate ghost underground pipe between them.
* Command line option --window-size can be also used to start the game in maximized mode when used as --window-size=maximized
* The library no longer shows unavailable blueprints of off-line players, since there is nothing that can be done with them.
=== Bugfixes ===
* Fixed that the edit field of a blueprint book in the shared pane would get reset every time crafting finished. ([ more])
* Fixed that setting visibility to false on modded GUI elements while a text field had focus would keep blocking normal input. ([ more])
* Fixed a performance problem when having the blueprint library GUI open while robots add/remove large amounts of items from the character. ([ more])
* Fixed that walls and pipes built from blueprints could mark trees/rocks for deconstruction by mistake in some instances. ([ more])
* Fixed entities with force color (turrets, gates, ...) would be drawn black in blueprint preview.
* Fixed false positive in game state corruption detection logic. ([ more])
* Fixed pipette tool would pick diagonal rail with wrong direction. ([ more])
* Fixed migrating save from level 4 of New Hope campaign would disable Plane recipe. ([ more])
* Fixed that the blueprint library wouldn't close when Q is pressed and bound to the Close Window action. ([ more])
* Fixed that blueprints would stop transferring if the game was saved whilst some transfers were in progress and then reloaded from this save. ([ more])
* Fixed error with modal focus related to having blueprint error message and removed content message at the same time.
* Fixed server wouldn't close and delete a temporary save file made for a client that disconnected before the server finished saving. ([ more])
* Fixed that standing on belts facing each other between two chunks would cause the player actions to run at double speed.
* Fixed that in an artificial test-case, two blueprints couldn't in the library at the same time. ([ more])
* The Pipette tool will now copy the rotations of vehicles and trains. ([ more])
* Fixed that making blueprints of ghost tiles on top of real tiles would have seemingly "random" results in the blueprint. ([ more])
* Possible fix of the double "Communication with server failed" error. ([ more])
* Fixed entities to be built wouldn't get rendered in some places when hovering over transparent GUI elements in the map editor. ([ more])
=== Modding ===
* Added optional "render_not_in_network_icon" for logistic container prototypes defaulting to true.
* Fixed empty sprite path would cause game to crash instead of entering minimal mode. ([ more])
=== Scripting ===
* Added LuaItemStack::swap_stack().
* Added on_player_removed event.
== 0.15.28 ==
Date: 06. 07. 2017
=== Balancing ===
* Reduced time needed for an unit of Automation 2 research from 15 to 5 seconds to compensate for previous change of science packs requirements.
=== Minor Features ===
* Added --window-size launch option. For example --window-size=1680x1050 ([ more])
* Damaging a tree with impact or physical damage generates some leaves.
* Warning icon for logistic chests that are not in a reach of roboport.
* Train stop names are rendered at 45 degrees to better show names.
=== Bugfixes ===
* Fixed that ghosts would stay over entities after deconstruction was canceled. ([ more])
* Fixed that the controls menu wouldn't use a fixed common width between controls sections.
* Inserter researches now require equal ratios of science pack types.
* Fixed that transferring blueprints from the library could make the headless server crash. ([ more])
* Fixed that blueprints could be duplicated when moving to a new version. ([ more])
* Fixed progress bar not showing in the entity info panel if the text was too long. ([ more])
* Fixed (at least one of the cases) of crashes related to not being able to connect to auth server while joining game. ([ more])
* Fixed, possible crash related to changed bounding box of entity by a mod. When the mod is removed (added) the corner of the entity can occupy chunk that doesn't exist yet which would cause a loading error. ([ more])
* Fixed that mining sounds and the leaves effect weren't present when mining tree from a car. ([ more])
* Fixed possible crash when removing modded rails during save migration. ([ more])
=== Modding ===
* Mod hotkeys are arranged per-mod.
* Disallowed defining different rail categories for this moment as having more than one will never work properly until we spent some non-trivial time with that, which is not a priority now.
=== Scripting ===
* Fixed that item-with-inventory filters wouldn't be preserved when cloned through the Lua API. ([ more])
== 0.15.27 ==
Date: 03. 07. 2017
=== Balancing ===
* Speed and efficiency module 3 technology now requires high tech science packs instead of production science packs, so that working towards power armor mk2 does not require production science packs.
** This makes the branching between high tech and production science packs more meaningful.
* All researches now require equal ratios of science pack types. This reduces the cost of some researches.
=== Bugfixes ===
* Fixed manually inserting items into the blueprint book would disconnect you in multiplayer. ([ more])
* Fixed a crash when clicking an alert the same tick the game is loaded. ([ more])
* Fixed a crash when saving screenshot failed. ([ more])
* Fixed that trains could stop in the middle of chain signal blocks in some specific setups causing deadlocks. ([ more])
* Fixed that large drop-down widgets would render off the bottom of the screen in some cases. ([ more])
=== Modding ===
* Added "render_layer" property to car prototype definition.
=== Scripting ===
* Fixed that calling LuaForce::chart(...) would try to chart chunks outside the map limits. ([ more])
* Fixed that LuaPlayer::unlock_achievement() would keep showing the notification after the achievement was unlocked. ([ more])
* Fixed that LuaItemStack::create_blueprint didn't behave the same way as normal blueprint creation in regards to ghost tiles. ([ more])
* Fixed that LuaEntity::selected_gun_index write was 0-based. ([ more])
* Fixed that mods could do remote calls outside of events when the game isn't in a valid state. ([ more])
* Fixed that a time_before_removed of 0 on a corpse entity could crash the game in some instances. ([ more])
== 0.15.26 ==
Date: 30. 06. 2017
=== Bugfixes ===
* Fixed a crash when rendering modded pumps in some instances. ([ more])
* Fixed that biters building new bases could cause a player standing in the way to be destroyed instead of killed. ([ more])
* Fixed that the auto-cursor-refill wouldn't refill if the cursor started with 1 item. ([ more])
* Fixed crash related to removing power switch connected to electric pole in a blueprint.
* Fixed crash related to building electric pole that is connected to closed power switch by blueprint. ([ more])
* Fixed that the player would respawn at {0,0} in the campaign levels. ([ more])
=== Modding ===
* The God controller properties can now be set through the prototype system.
=== Scripting ===
* Fixed that using math.random in control.lua before the file was fully parsed was not deterministic. ([ more])
* Fixed that create_entity{variation=...} was 0-based. ([ more])
== 0.15.25 ==
Date: 29. 06. 2017
=== Bugfixes ===
* Fixed that energy shields would charge faster than normal when the generators couldn't provide full power and there was a bettery with available energy in the grid. ([ more])
* Fixed crash when making blueprint from power switch ghost.
* Fixed a desync when loading save files from different game versions. ([ more])
* Fixed that the map gen presets list box wouldn't respond to mouse clicks. ([ more])
== 0.15.24 ==
Date: 29. 06. 2017
=== Minor Features ===
* Power switch connections are stored in the blueprint.
=== Changes ===
* The F1-F12 debug hotkeys can now be reassigned.
* Disabled pumps don't block other pumps from connecting to fluid wagon anymore. ([ more])
* Pump can connect to fluid tank that is slightly rotated, but only to tanks that are standing on straight rails.
* Blueprints in the library no longer transfer automatically when a player joins. Instead, they are transferred on-demand.
* Admins are allowed to modify other players' blueprints in the library, including deleting them.
* Changed default keybind for toggle filters on macOS to Command + Right Click ([ more])
=== Bugfixes ===
* Fixed Infoboxes sometimes going to the center of the screen on scale change or display size change. ([ more])
* Fixed the direction of underground belts/pipes wouldn't get detected correctly when using the pipette tool in some cases. ([ more])
* Fixed that accumulators had two energy bars and one of these was showing incorrect value. ([ more])
* Fixed that Copy paste couldn't be used in the numeric edit box.
* Fixed that the recipe tooltip would resize/change every time something was crafted. ([ more])
* Fixed burner inserter reading signal pulses twice ([ more])
* Fixed electric buffer error that could happen when updating save to newer factorio version or changing mods. ([ more])
* Fixed that failing to mine an entity wouldn't try to transfer all items in the entity. ([ more])
* Fixed locomotive could snap to train stop after it was attached to an existing train. ([ more])
* Fixed that the item counts when making blueprints or deconstructing things would render off-screen. ([ more])
* Fixed impossible research tasks in team production challenge. ([ more])
* Fixed that the blueprint library GUI wouldn't restore scrollbar position when moving in or out of a book. ([ more])
* Fixed that setting inserter filters wouldn't update the last-user. ([ more])
* Fixed that fluid would not flow through circuit network disabled mining drills. ([ more])
* Fixed a crash when exiting multiplayer due to a script error while hosting a public game locally. ([ more])
* Fixed pump would not connect to last tile of a train in some cases. ([ more])
=== Modding ===
* Changed the format for localised mod name and description.
* Fixed that assembling machines using the heat energy source type would go inactive when out of power and stay inactive. ([ more])
* Limited map gen presets pollution diffusion and dissipation rate values to prevent never-ending pollution bloating map sizes by mistake. ([ more])
* Removed CustomInputPrototype consuming types "all" and "script-only".
* entity-with-owner now supports variation in blueprints.
=== Scripting ===
* Fixed that marking an entity for deconstruction through script wouldn't fire the event. ([ more])
* Fixed that level based research wouldn't fire the research-finished event in some cases. ([ more])
* Fixed that several of the drop-down related methods for LuaGuiElement were 0-based.
* Added a global Lua function "table_size" which will quickly compute the number of values in any lua table (not to be confused with the # operator).
* Added LuaGuiElement::remove_item for drop-down type elements.
* Added LuaSurface::clear_pollution().
* Added events on_console_chat and on_console_command.
* Added LuaEntityPrototype::production read.
* Added LuaControl::mine_tile().
== 0.15.23 ==
Date: 22. 06. 2017
=== Changes ===
* Reverted change that made Inserters no longer drop what they are holding when disabled by the circuit network. ([ more])
=== Bugfixes ===
* Fixed that the UI scale option wouldn't apply until restarting the game in some cases. ([ more])
* Fixed that number-input fields would also block letters/other keys. ([ more])
* Fixed that tile filters in the deconstruction planner wouldn't get used in some cases when entity filters were also defined. ([ more])
* Fixed curved rail ghosts wouldn't mark trees/rocks when force-built. ([ more])
* Fixed construction robots could stop doing their jobs when roboport was destroyed or unpowered. ([ more])
* Fixed long strings in the right description pane. ([ more])
=== Modding ===
* Fixed that some mod mods would falsely be detected as removed and have GUI elements they added removed on load. ([ more])
=== Scripting ===
* Fixed that teleporting entity ghosts didn't work correctly. ([ more])
== 0.15.22 ==
Date: 21. 06. 2017
=== Changes ===
* Blueprints in the blueprint library are sorted using case-insensitive natural compare.
** E.g. the sorting order now is "1", "2", "10", instead of the previous "1", "10", "2".
* Inserters will no longer drop what they are holding when disabled by the circuit network. ([ more])
* The deconstruction planner filter now treats any entity filter as also matching entity ghosts of that type.
* Multiplayer creation GUI now remembers game name. ([ more])
=== Balancing ===
* Explosive Mine now only does damage to enemy units and structures.
** Sounds:
* Added missing vehicle collision sounds (pipes, solar panels, etc...)
* Reduced volume of ore mining and tree chopping.
=== Bugfixes ===
* Toggling fullscreen via options or Alt-Enter now keeps window on the same monitor. ([ more])
* Fixed that in long recharging queues some robots would never get a chance to recharge. ([ more])
* Fixed that it wasn't possible to click and drag blueprints into an empty blueprint book. ([ more])
* Fixed that deconstruction/blueprinting selection would be canceled if the selection ended on one of the always-visible GUIs. ([ more])
* Fixed the productivity bar in the furnace GUI wouldn't show in some instances. ([ more])
* Fixed exiting a multiplayer game hosted through the in-game multiplayer option. ([ more])
* Fixed that tile ghosts would always get selected over real entities. ([ more])
* Fixed that the heat-connection icon was not visible on entities other than boiler and reactor. (related to modding)
* Fixed that furnace with heat source couldn't be rotated before placing it.
* Fixed the gui of furnace using heat as energy source.
* Fix PvP Gui script error. ([ more])
* Fix that clearing items in Transport belt maddness didn't give the items back. ([ more])
* Fixed that rails marked for deconstruction wouldn't allow canceling deconstruction while a train was on  them. ([ more])
* Fixed that biters would change orientation rapidly when they were near a player whom they couldn't attack. ([ more])
* Fixed that Rocket Silo would continue crafting for 1 tick after completing a rocket. ([ more])
* Fixed that lot of other keys that can be used to write characters in the edit box (or console) were not blocked from affecting the game if they are assigned to do a game action. Having text box active now means that all of the keys are blocked from affecting the game.
* Fixed (hopefully), that the stretching of bounding boxes of walls to touch their neighbours was not taking into account when  marking things in the way for the blueprint. ([ more])
* Fixed that the description pane would change width depending on the content. It should now never change width. ([ more])
* Fixed that the shooting-target would render as valid to shoot with rockets when it actually wasn't. ([ more])
* Fixed that programmable speakers would get wrong instruments after importing pre-0.15.19 blueprint string. ([ more])
* Fixed that maximized Factorio window had thin border around it. ([ more])
* Fixed that vanilla and modded version of achievements could be mixed up. ([ more])
* Fixed that inserters would try to insert items into other non-burner inserters. ([ more])
* Fixed that fast-transferring modules into the rocket silo would put them into the module slots and the rocket at the same time. ([ more])
* Fixed that the "rocket launched without satellite" message couldn't be dismissed in some cases. ([ more])
* Fixed the mining drill GUI wouldn't show mining progress when it had a large number of modded module slots. ([ more])
* Fixed fast-replacing an assembling machine with overloaded ingredients would spill the items. ([ more])
* Fixed many ingredients or products in recipes would break the assembling machine GUI. ([ more])
* Fixed wrong values when using /config set allowed-commands with invalid values would crash the game. ([ more])
=== Modding ===
* Fixed that giving rolling stock entities invalid collision masks would crash the game. ([ more])
* Mod title and description can now be localised.
* Fixed a crash when mods use reset technologies during the technology researched event. ([ more])
* Fixed that modded GUI elements wouldn't get removed in some cases when the mod was removed. ([ more])
* Fixed source_effects applying effects to the source by the target instead of to the source by the source. ([ more])
=== Scripting ===
* Fixed setting for logistic/construction robots wouldn't account for the robot battery upgrade. ([ more])
* Fixed that setting LuaBurner::currently_burning didn't accept LuaItemPrototype as the docs said. ([ more])
* Added LuaEntityPrototype::count_as_rock_for_filtered_deconstruction read.
* Added LuaEntityPrototype::filter_count read.
* Added LuaEntity::spawner/units read.
== 0.15.21 ==
Date: 15. 06. 2017
=== Bugfixes ===
* Fixed that the server would crash if someone tried to connect when there were no blueprints being transferred. ([ more])
== 0.15.20 ==
Date: 14. 06. 2017
=== Changes ===
* Transports belt entities show belt speed in the tooltip and entity description.
* Reduced fluid wagon air resistance from 0.05 to 0.01
* Scenario names are now localised.
=== Bugfixes ===
* Fixed login details getting lost (hopefully). ([ more])
* Fixed a crash that would happen if the game exited due to a script error that happened immediately after deleting a force. ([ more])
* Fixed int mod settings would show incorrect values in the GUI. ([ more])
* Fixed gun sounds would continue when switching weapons while firing. ([ more])
* Fixed a performance issue caused by spawners being active all the time in peaceful mode. ([ more])
* Fixed a crash when removing train stops next to other train stops and then building locomotives. ([ more])
* Fixed a rare desync related to opening your player inventory. ([ more])
* Fixed a crash when teleporting/setting the force of a offline roboport. ([ more])
* Fixed inserters with custom pickup/drop locations from mods would retain the custom data when the mods were removed. ([ more])
* Fixed a crash when deleting blueprint records from the blueprint library while another player is viewing the record tooltip. ([ more])
* Fixed that some clients wouldn't be able to connect to a server when blueprints were being uploaded. ([ more])
* Fixed that Factorio wouldn't start when run from an NFS partition. ([ more])
* Fixed crash on macOS older than 10.9 ([ more])
=== Modding ===
* Removed unused "energy consumption" from the roboport equipment. ([ more])
=== Scripting ===
* Fixed that setting researched = true on level-based research in progress wouldn't update the research level displayed. ([ more])
* Fixed that game.write_file would cause desyncs if it failed due to file permission issues. ([ more])
* Fixed a crash related to the train changed state event. ([ more])
* Added events on_player_setup_blueprint, on_player_deconstructed_area, and on_player_configured_blueprint.
* Added LuaEntity::secondary_bounding_box read.
* Added LuaForce::worker_robots_battery_modifier read/write.
* Added LuaGuiElement::enabled read/write.
== 0.15.19 ==
Date: 08. 06. 2017
=== Changes ===
* Added alarm sounds to programmable speaker.
* Fullscreen is on by default.
* Locomotive snaps to a train stop when placing the first locomotive next to the train stop.
* Changed automation and fluid wagon research so it doesn't have multiples of science packs per unit. ([ more])
* --start-server-load-scenario can load scenarios provided by a mod.
** For example, --start-server-load-scenario base/wave-defense will load the wave-defense scenario from the base mod.
=== Graphics ===
* Changed the icon of the automation research, so it is not confused with the logistics research.
=== Bugfixes ===
* Fixed that destroyed transport belt could leave zombified items in nearby tile ([ more])
* Fixed inserter zombification at rail junctions ([ more])
* Fixed visual seams on map/minimap ([ more])
* Fixed that gate over rail could be rotated
* Fixed GUI size problems with the logistic networks GUI. ([ more])
* Fixed that the headless server didn't close when it failed. (Most typically because of script error) ([ more])
* Fixed misaligned force color mask on capsule projectiles. ([ more])
* Fixed crash when changing player's controller, when player was controlling a vehicle with god controller. ([ more])
* Fixed a crash caused by manually deactivated units. ([ more])
* Fixed that exporting blueprints wouldn't respect the current filter options in the setup GUI. ([ more])
* Fixed that selection-by-typing in list boxes would also trigger normal game actions. ([ more])
* Fixed that adding stops to a train could change the current station. ([ more])
* Fixed that the search text didn't reset after leaving the browse-mods GUI. ([ more])
* Fixed that the mods-load-error GUI could end up too large to fit on screen. ([ more])
* Fixed a crash when interacting with the "save/quit/reconnect" window after losing connection with a server. ([ more])
* Fixed crashes when locking bitmap fails. ([ more])
* Fixed rail preview was rendered under entities. ([ more])
* Fixed message box in main menu  being not clickable ([ more])
* Fixed trains stuttering on extremely short paths. ([ more])
* Fixed flamethrower stream would destroy trees directly. ([ more])
* Fixed that some information was missing from generator entities. ([ more])
* Fixed that Factorio would hang on Linux after trying to paste a string when the clipboard was empty. ([ more])
* Fixed generating unwinnible research tasks in team production scenario. ([ more])
* Fixed that clicking escape while connecting to the game could lead to weird situations as the normal menu was opened.
** Pressing escape while connecting will abort the connection instead. ([ more])
* Fixed the productivity bar in the mining drill wouldn't show in some cases. ([ more])
* Fixed that the blueprint book gui didn't stretch vertically when possible. ([ more])
* Fixed inconsistent hovered font color on buttons and dropdowns. ([ more])
* Fixed train stuttering with only disabled stations in their schedule ([ more])
* Fixed that you could disconnect wires at any distance. ([ more])
* Fixed the icon used when rendering coal being held by construction robots. ([ more])
* Fixed headless server on macOS getting stuck when in background ([ more])
* Fixed that attempting to edit a blueprint label for the second time would show the original label before any edits were made. ([ more])
* Fixed that --start-server-load-scenario wouldn't give an error when the specified scenario couldn't be found. ([ more])
* Fixed that robots would leave items on the ground when building ghosts in some cases. ([ more])
* Fixed train GUI size problems when the fuel tab is removed due to it going out of reach. ([ more])
* Fixed that blacklisting tile ghosts in the deconstruction planner didn't work. ([ more])
=== Modding ===
* Fixed that the fluid wagon wouldn't show the equipment grid when one was added through mods. ([ more])
* Fixed loading the item-with-tags item type. ([ more])
=== Scripting ===
* Fixed set_command with an empty list of commands would crash the game. ([ more])
* Fixed LuaRandomGenerator docs. ([ more])
* Added LuaTechnology::level write support for level-based technology. ([ more])
== 0.15.18 ==
Date: 01. 06. 2017
=== Bugfixes ===
* Fixed that wire connections were not preserved in tightspot campaign. ([ more])
* Fixed various crashes on macOS related to logistic counts. ([ more])
=== Modding ===
* Changed default value of "allow_custom_vectors" in inserter prototype to true, vanilla inserters set it to false explicitly.
== 0.15.17 ==
Date: 01. 06. 2017
=== Graphics ===
* Inserters in high resolution; normal resolution inserters are unchanged.
=== Bugfixes ===
* Fixed some inconsistencies in programmable speaker gui ([ more])
* Fixed that headless mode wiped out controls section of config file ([ more])
* Fixed that detached roboports (e.g. after blackout) would not reset circuit network readings on number of robots ([ more])
* Fixed that active blueprint/deconstruction-planner selection did not reset when switching between game and map ([ more])
* Fixed AltGr behavior with special characters ([ more])
* Fixed that mining bar would steal mouse focus ([ more])
* Fixed the /evolution command would underflow when showing negative pollution values. ([ more])
* Fixed crash when mod-list failed to save when exiting the game. ([ more])
* Fixed game would not save at all if generating preview picture failed. ([ more])
* Fixed desync related to driving vehicles. ([ more])
* Fixed unnecessary quotes in programmable speaker note translations ([ more])
* Fixed that the bonus GUI wouldn't fit on screen with a large amount of modded content. ([ more])
* Fixed crash when closing public server. ([ more])
* Fixed that filter inserters lost their filter in tightspot campaign. ([ more])
* Fixed empty space would be rendered if glyph was missing in current font. ([ more])
* Fixed that resizing the game window while catching up after joining a multiplayer game would leave the map blank. ([ more])
* Fixed issue and desync when disconnecting one wire color of an entity connected to 2 wire colors. ([ more])
* Fixed a multiplayer crash that would happen when a player left whilst uploading their blueprint library and then rejoined the same server. ([ more])
* Fixed another issue that prevented spawners from spawning. ([ more])
* Fixed game would fail to load if max-texture-size was too low. ([ more])
=== Modding ===
* Moved the "mod-settings.json" file so it now resides in the "mods" subfolder allowing it to work with the mod-directory command line option.
* Added support for virtual-signal migrations.
* Inserters now require the inserter prototype property "allow_custom_vectors" to be true before they allow setting custom pickup/drop locations.
* Font paths were moved from locale cfg to locale info.json (see core/en/info.json).
* Changed default value of hand_length in inserter prototype to 0.75, to make inserter shadow look nicer.
=== Scripting ===
* Fixed crash when teleporting character entities while in vehicles. ([ more])
* Fixed that character.character_maximum_following_robot_count_bonus didn't work. ([ more])
* Fixed that /help for lua commands wouldn't do parameter substitution correctly. ([ more])
* Added LuaEntityPrototype::resource_categories, fluid, and pumping_speed read.
* Added LuaEntity::previous_recipe read.
* Added LuaEntityPrototype::stack/allow_custom_vectors read.
* Changed LuaEntityPrototype::speed to also work for rolling stocks.
== 0.15.16 ==
Date: 27. 05. 2017
=== Changes ===
* Temporarily reverted GUI interaction changes (some GUI elements responding only to left mouse button, buttons clicked on mouse up instead of mouse down) introduced in 0.15.13 and 0.15.14.
=== Bugfixes ===
* Fixed the "back" button wouldn't work in the save-game GUI. ([ more])
* Fixed the "cancel" button wouldn't work in the user-login GUI. ([ more])
* Fixed that the map editor item/inventory buttons didn't work. ([ more])
* Fixed beacons would "wobble" in blueprints. ([ more])
* Fixed crashes related to clicking different buttons.
* As a one-time migration, enemy spawners will reset their absorbed pollution to zero when a save from a previous version of 0.15 is loaded. ([ more])
** This is to avoid an extreme temporary spike in difficulty that would happen after loading a save with many spawners that were affected by a bug in the previous versions.
* Fixed the market GUI didn't work. ([ more])
* Fixed crash when pollution reaches unreasonably far chunk. ([ more])
* Fixed power bars glitch in electric network statistics dialog. ([ more])
=== Scripting ===
* Fixed setting LuaGuiElement::elem_value would always expect the elem_type to be "item". ([ more])
== 0.15.15 ==
Date: 26. 05. 2017
=== Bugfixes ===
* Fixed desync related to loading pre 0.15.14 save with beacons marked for deconstruction without resaving it first.
* Fixed that spawners would sometimes stop spawning units even when polluted. ([ more])
* Fixed crash when changing assembling machine recipe. ([ more])
* Fixed crash that would happen after clicking a button in the tech tree. ([ more])
=== Scripting ===
* Fixed crash when creating smoke entity through create-entity trigger effect. ([ more])
* Added Entity::update_connections. It updates connection of loader and beacon to entities that might have been teleported out or in. The effect might include more things later on.
== 0.15.14 ==
Date: 26.05.2017
=== Optimisations ===
* Optimised beacon update times which helps especially when the power is not full and it fluctuates.
=== Changes ===
* Added support for using username and password for proxy connections.
* Changed technology sorting. All of the science pack types affect the order, not just the most expensive one. ([ more])
* Leading and trainling whitespaces will be trimmed from host name or IP address entered to Direct Connect multiplayer dialog. ([ more])
* Electric network info window shows all connected entities in the list and the graph even when they have 0 consuption/production.
** This means, that the count of entities connected to the network is shown even if they don't consume or produce.
* Electric poles that have 0 consumption as well as 0 production show empty electricity graph instead of full. ([ more])
=== Bugfixes ===
* Keypad enter is treated as regular enter ([ more])
* All buttons apart the inventory/recipe/crafting queue and item selection slot react on mouse click instead of just mouse down.
* Fixed that mining drills would continue to insert into entities when moved far away. ([ more])
* Fixed that right click and drag in the blueprint setup GUI didn't work to remove things from the blueprint. ([ more])
* Fixed that blueprint icons couldn't be removed with right click. ([ more])
* Fixed that right-clicking items in the crafting queue didn't work to cancel 5.
* Fixed window being created slightly offscreen on certain resolutions. ([ more])
* Fixed that the edit field for a blueprint book would get reset when bots delivered items to the player. ([ more])
* Fixed that inserter facing north was slower compared to other directions. ([ more])
* Fixed that the solaris achievement ignored usage of steam-turbines. ([ more])
* Fixed that setting logistic requests didn't work in the map editor. ([ more])
* Fixed crash after dropping a blueprint into a book inside the blueprint library. ([ more])
* Fixed loading blueprint library from before 0.15.4 might crash. ([ more])
* Fixed a crash related to changing the rail system when signals get disconnected from blocks. ([ more])
* Fixed that furnaces and assembling machines weren't rotatable with heat pipe connection. ([ more])
* Fixed crash when using --load-game with an error in a mod. ([ more])
=== Modding ===
* Fixed reading LuaCommandProcessor::commands when one of the help keys was empty. ([ more])
* Fixed that disabled mods could change the mod event order.
=== Scripting ===
* Fixed changing force of lab ghost would cause desync.
* Added LuaCustomGuiElement type "text-box".
== 0.15.13 ==
Date: 23. 05. 2017
=== Changes ===
* Most of the gui elements now work only with left mouse button, so other buttons might be used without intefering with gui.
=== Bugfixes ===
* Fixed that biters would sometimes try to attack indestructible entities. ([ more])
* Fixed that clearing the blueprint label would make the GUI show the previous label. ([ more])
* Fixed personal laser defense equipment shooting at player in vehicle would hit the player instead of the vehicle. ([ more])
* Fixed that the edit label button on blueprint books in the library could get hidden behind the delete button. ([ more])
* Fixed missing space after timestamp in server console output messages that didn't contain tag. ([ more])
* Fixed that the blueprint library wouldn't update blueprints stored in books. (
* Fixed that reach-distance checks for curved rails only checked against one end of the rail. ([ more])
* Fixed bonus GUI display values when the bonuses were negative. ([ more])
* Fixed that the auto launch settings of rocket silo was not saved in blueprint. ([ more])
* Fixed beta campaign level 02 would error for migrated save games. ([ more])
* Fixed locked belts in demo campaign level 03. ([ more])
* Localised programmable speaker notes and instruments. ([ more])
* Fixed that mining drill window got repositioned to the center every time it switched to another resource. ([ more])
* Fixed fluids/virtual signals in the blueprint library wouldn't migrate correctly between different modded saves. ([ more])
* Before 0.14 the game didn't track online time of players, this caused that games transitioned from pre 0.14 could prevent players to get achivements until they spent enough of time in the game again. So for single player games, when transitioning to 0.15.13, the online time is reset to be full time of the map.
* Fixed that the bonus progress of assembling machine didn't reset when the recipe was changed by using copy paste.
** This could be exploited to get extra free product of expensive items. ([ more])
* Fixed crash when loading modded saves that used the flamethrow-explosion entity type. ([ more])
* Fixed performance problems when building rails related to large rail sections and chain signals. ([ more])
* Fixed desync related to trains.
* Fixed blueprint library wouldn't use the Open Item GUI keybind. ([ more])
* Fixed that errors in mod locale would only show in the log file instead of giving the standard mod-error GUI. ([ more])
* Fixed that turret help view on map did show turrets from other surfaces. ([ more])
* Fixed that silo script didn't validate items on configuration changes. ([ more])
* Fixed that tightspot level 05 had incorrect recipes unlocked. ([ more])
* Fixed that you could pippete items and break transport belt madness. ([ more])
* Fixed that the game would crash when trying to load corrupt blueprint-storage.dat. ([ more])
* Fixed that map was not updated correctly when tile editing ended up changing other tiles in different chunk. ([ more])
* Fixed crash when loading modded saves that contained specific items without the mods. ([ more])
* You can now open circuit network connectible entities while holding copper wire. ([ more])
* Fixed crash when closing the game window in Browse Games/Play on LAN gui. ([ more])
* Fixed that the bonus progress bar of furnace disappeared when the smelting was not currently in progress.
* Fixed that changing recipe in the furnace didn't reset the bonus progress bar. ([ more])
* Fixed that selection box of rotated (and modded) storage tank wasn't respecting the rotation properly. ([ more])
=== Modding ===
* Electric energy sources now support effectivity.
* Fixed crash when mods add values to data.raw incorrectly. ([ more])
* Fixed some entities using heat energy source types wouldn't connect to heat pipes correctly when rotated. ([ more])
* Mod settings now shows the mod display name instead of the mod ID name (My Mod Name instead of my-mod-name).
* Changing mod startup settings will now fire the on_configuration_changed event when appropriate.
=== Scripting ===
* Fixed crash when using game.take_screenshot and then deleting the surface. ([ more])
* Fixed the old train ID wouldn't be included in some cases during the on_train_created event. ([ more])
* Fixed crash when trying to register negative event ids. ([ more])
* Fixed that force.reset_technology_effects() didn't preserve currently researched technology and saved technology progress. ([ more])
* Fixed LuaEntity::neighbours return format to match the docs. ([ more])
* Fixed LuaPlayer::mine_entity() would return false when successfully mining the given entity. ([ more])
* Changed create_entity 'item-request-proxy' "modules" to take the same format as LuaEntity::item_requests. ([ more])
* Changed LuaSurface::freeze_daytime() to freeze_daytime read/write.
* Removed LuaPlayer::cursor_position.
* Added LuaEntity::proxy_target read - the target an item-request-proxy is pointing at if any.
* Added LuaEntityPrototype/LuaEquipmentPrototype::electric_energy_source_prototype read.
* Added LuaEntityPrototype::fluid_usage_per_tick, maximum_temperature read, target_temperature.
* Added LuaForce::get_saved_technology_progress() and set_saved_technology_progress().
* Added LuaFluidPrototype::gas_temperature read.
== 0.15.12 ==
Date: 18. 05. 2017
=== Changes ===
* Zooming with the mousewheel in the map and zoom-to-world is less aggresive.
* Fast entity transfer by dragging (ctrl + clicking and dragging) will remember if you're trying to insert or extract items.
* Changed the deconstruction planner "trees only" filter to "trees/rocks only".
* Lab speed info in the description contains the researched speed bonus as well.
* Sprite quality defaults to High when at least 2.7 GB VRAM is detected (instead of 1.7 GB).
* Video memory usage defaults to All when at least 1.5 GB VRAM is detected (instead of 0.8 GB).
=== Bugfixes ===
* The statistics window (electric/production/kills) will automatically move to avoid being partially offscreen. ([ more])
* Fixed that keypad /*-+, enter and delete were not usable in the text boxes if assigned in the controls.
* Fixed that power poles could be built at any distance by exploiting click-and-drag. ([ more])
* Fixed marking underground belt output for deconstruction wouldn't block input from pushing more items into the underground part. ([ more])
* Fixed "Read Stopped Train" checkbox not showing the correct value. ([ more])
* Fixed entities with a burner energy source would show the incorrect power consumption. ([ more])
* Fixed that production achievements could not be obtained. ([ more])
* Fixed that some achievements (raining bullets, logistic network embargo, maybe more) were not properly marked as gained. ([ more])
* Show the productivity bonus on mining drills even when they have no other effects on them. ([ more])
* Fixed some GUI shortcuts not working when colliding with other shortcuts. ([ more])
* Fixed that electric network visualisation on chart showed electric poles from other surfaces. ([ more])
* Fixed that non-ASCII input wasn't possible on Linux. ([ more])
* Fixed error when loading a save containing a folder which contained only subfolders but no files. ([ more])
* Fixed swinging axe as attack might spawn mining particles of a nearby tree or resournce patch. ([ more])
* Fixed that signals built by robots on places that didn't match the suggested direction didn't connect. This caused that some otherwise correct blueprints required manual intervention to fix the signals. ([ more])
* Fixed handling of X11 focus events. ([ more])
* Fixed trains wouldn't leave disabled stations when the next station in the schedule was the same station. ([ more])
* Fixed train stops wouldn't import as string correctly. ([ more])
* Fixed requester chests would render numbers larger than 2,147,483,647 as negative values. ([ more])
* Fixed logging in with email in updater set your username to your email. ([ more])
=== Modding ===
* Fixed that electric boiler didn't work. ([ more])
* Fixed int mod setting error display message didn't show the upper limit correctly. ([ more])
=== Scripting ===
* Fixed cloning blueprint books wouldn't copy the label/active index. ([ more])
* Fixed that inoperable entities couldn't be rotated even when rotatable was true. ([ more])
* Changed LuaItemStack::trees_only to trees_and_rocks_only.
* Added LuaEntity::loader_type write.
* Added LuaFlowStatistics::on_flow().
* Fixed lua documentation for DeciderCombinatorParameters and CircuitCondition. ([ more])
* Fixed passing invalid arguments to LuaGame::take_screenshot would cause desync. ([ more])
== 0.15.11 ==
Date: 16. 05. 2017
=== Minor Features ===
* When a train is stopped at the train stop, a circuit network signal is sent with a unique number for that train. ([ more])
=== Changes ===
* Added headless server option --server-id to allow specifying custom path to the server ID file.
* Increased the minimum custom UI scale from 50% to 80% to avoid some scaling issues.
* The zoom level at which the map switches from 'map view' to 'world view' was increased.
* The first level of infinite researches is not needed for the tech maniac achievement anymore.
* The game will default to low sprite quality on computers with less than 2.5GB RAM. ([ more])
* Tweaked the rocket launch gui. It doesn't show the result inventory slot when it is empty to avoid confusion when people put the setellite in it.
* Removed the zoom-to-world-outside-coverage debug option because it was causing issues. ([ more])
* Added "create specialized sprite atlases" option to graphics settings. If checked, tile and shadow sprites won't be put into separated sprite atlases instead of the main one. This should give graphics driver more room to fit required sprites to graphics memory.
* Added "atlas texture size" option to graphics settings. Larger atlas texture can fit more sprites into single atlas which reduces CPU load when rendering.
** But smaller atlases are more likely to fit into VRAM and reduce GPU load when rendering.
=== Bugfixes ===
* Fixed nuclear reactor and centrifuge were not placed into toolbelt automatically. ([ more])
* Tweaked the way heat pipes work, mainly to make it work the same regardless order of build. ([ more])
* Fixed that click-and-drag interaction logic didn't work for trains. ([ more])
* Another attempt to fix the ranged-based research info in the technology icon.
* Fixed that not all items were cleared in the transport belt madness campaign. ([ more])
* Fixed that browse games table was inconsistent after resizing. ([ more])
* Achievements should no longer be unlocked when replaying a game. ([ more])
* Updated supply challenge level requirements. ([ more])
* Fixed fluids consumed/produced by boilers didn't show in the production stats. ([ more])
* Fixed that pasting very large strings wouldn't work on Linux. ([ more])
* Fixed naming convention of transport belt madness campaign levels. ([ more])
* Fixed copy-paste with containers so they correctly copy the inventory size limit. ([ more])
* Fixed the progress bars in the lab wouldn't show correctly in some cases. ([ more])
* Achievements are no longer be unlocked when replaying a game. ([ more])
* Achievements are no longer unlocked by playing multiplayer game in which the player spent less than 50% of time online.
* Fixed that the blueprint renaming textbox would close every time crafting finished. ([ more])
* core/backers.json is now included in the core data crc. This means that different content of this file will be properly detected when joining multiplayer game.
* Fixed that loader filters were not saved in the blueprint string. ([ more])
* Gas color is now tinted with the fluids 'flow_color'. ([ more])
* Fix wave defense crash when a silo died while nobody was connected. ([ more])
* Fixed that the "confirm and download" button in the sync-mods-with-save wouldn't restart the game once all mods were downloaded. ([ more])
* Fixed construction robots could get stuck trying to repair curved rail forever. ([ more])
* Fixed that the technology cost tooltip description wouldn't scale correctly. ([ more])
* Fixed that the /help command when run from the server console would always output the server commands list. ([ more])
* Fixed strange behavior when a train has the same station in the list multiple times with no other valid station. ([ more])
* Fixed crash related to dying with some GUI open. ([ more])
* Fixed rail signals getting stuck reserved when mining/building rails in some setups. ([ more])
* Fixed desync when pumps are setup to pump into the output of an assembling machine. ([ more])
* Fixed the final level of formula based research would show the wrong name when researched.
* Fixed crash when maximizing the game with the achievements window open. ([ more])
* Fixed switching weapons while firing in the tank would keep playing the previous weapon sound. ([ more])
* The productivity value in the  miner description now contains also the researched bonus.
* Fixed insert seding a signal twice during fast replace. ([ more])
* Fixed crash that would sometimes happen when a player left whilst some other player was in the process of joining. ([ more])
* Fixed hazard concrete item description. ([ more])
* Fixed that some of the slider in the new game settings weren't controllable by scrollbar.
* Fixed recipes with long names would extend out of the tooltip GUI. ([ more])
* Fixed keyboard input would be blocked in tutorial, if console was opened when entering the tutorial. ([ more])
* Fixed robots could deliver the wrong number of modules during roboport blackouts. ([ more])
* Fixed that the game would freeze if there was no valid place to drop items on limited size maps. ([ more])
* Fixed fire wouldn't pollute in some cases. ([ more])
* Fixed that the delete-blueprint button would show when it wouldn't actually work. ([ more])
* Fixed an error when resource scaling results in amounts too large to store in a resource entity. ([ more])
=== Modding ===
* Fixed generator power output was always based on heat capacity and default temperature of water. ([ more])
* Fixed logistic and construction radius visualization sprites would ignore tint. ([ more])
=== Scripting ===
* Fixed setting technology::researched wouldn't research all levels of a formula based technology. ([ more])
* Fixed it was possible to add gui element with same to the same parent name more than once. ([ more])
* Fixed the custom camera widget wouldn't render the correct entities when switching the surface it was rendering for. ([ more])
* Fixed LuaTrain::schedule would allow an invalid current schedule record. ([ more])
* Added LuaEntityPrototype::mining_speed, mining_power, energy_usage, max_energy_usage, normal_resource_amount, infinite_depletion_resource_amount, attack_parameters read.
* Added LuaLampControlBehavior::color read.
* Added LuaRailSignalControlBehavior::red_signal, orange_signal, green_signal, close_signal, read_signal, circuit_condition read/write.
* Added LuaEntityPrototype::mineable_properties fluid_amount, required_fluid, mining_trigger, effectivity, consumption, friction_force, braking_force, tank_driving, rotation_speed, turret_rotation_speed, guns, speed, speed_multiplier_when_out_of_energy, max_payload_size, energy_per_move, energy_per_tick, max_energy, min_to_charge, max_to_charge properties, and building_grid_bit_shift.
* Added LuaBurner::fuel_category read.
* Added LuaBurnerPrototype.
* Added LuaControl::mine_entity().
* Added LuaEntity::text read/write.
* Added read/write support for flying text color through LuaEntity::color.
* Added LuaTrain::get_fluid_count(), get_fluid_contents(), remove_fluid(), insert_fluid(), and clear_fluids_inside().
* Added LuaGameScript::check_prototype_translations() - a way to check if all expected prototypes have valid translations.
* Changed LuaEntityPrototype::mineable_properties "miningtime" -> "mining_time" and "miningparticle" -> "mining_particle".
== 0.15.10 ==
Date: 10. 05. 2017
=== Changes ===
* Added rail block debug visualization.
* Increased maximum wire distance of all circuit connectable entities from 7.5 to 9.
* Steam is now internally a separate fluid from hot water.
* Coal liquefaction recipe now requires steam instead of water.
* Terrain, shadow and smoke sprites are sorted into separate sprite atlases in attempt to optimize GPU memory access during rendering.
=== Graphics ===
* Added burner mining drill in high resolution and replaced the normal resolution version.
=== Bugfixes ===
* Fixed speed-module-3 recipe typo. ([ more])
* Fixed downgrading underground belts by fast replace would not work for even if output piece was close enough. ([ more])
* Fixed that robots trying to repair each other wouldn't work correctly. ([ more])
* More understandable description current level of technologies that have multiple levels merged into one slot in the technology gui.
* Fixed crash that would happen when loading old modded saves in vanilla Factorio. ([ more])
* Fixed that it wasn't possible to fast-transfer blueprints to other players. ([ more])
* Fixed that hitting rocks with vehicles made no sound. ([ more])
* Fixed blueprint preview icons scaling and size to be consistent across all places they're shown. ([ more])
* Fixed that you couldn't delete blueprints from your trash slots. ([ more])
* Fixed that storage tanks used 4 directions although visually only showed 2 so they would conflict in blueprints. ([ more])
* Fixed crash when loading blueprint storage while also migrating save files. ([ more])
* Fixed a useless error when locale isn't correct for a scenario. ([ more])
* Fixed possible desync related to inserter circuit network stack size control.
* Fixed that multiple passengers in a train could result in erratic behavior when trying to drive. ([ more])
* Fixed that manually inserting the satellite into the silo when auto-launch is enabled wouldn't launch the rocket. ([ more])
* Fixed crash when killing yourself with your own weapon. ([ more])
* Fixed F12 might freeze or crash the game. ([ more])
* Fixed circuit network controlled rail signal sometimes not going red when building rails. ([ more])
* Fixed crash when starting tutorial at the same tick as autosave starts. ([ more])
* Fixed that it wasn't possible to scroll the active blueprint in a blueprint book if the scroll bar was visible. ([ more])
* Fixed crash when exiting some modded games. ([ more])
* Fixed that Factorio wouldn't keep file permissions when saving a map. ([ more])
* Fixed that the blueprint library wouldn't remember the player filter after opening a book. ([ more])
* Fixed that player names in the blueprint library weren't sorted. ([ more])
* Fixed the blueprint book tooltips would flicker when your inventory changed. ([ more])
* Fixed desync when catching up.
* Fixed desync when adding/removing blueprints to blueprint books in some cases. ([ more])
* Fixed some crashes related to loading invalid combinator parameters. ([ more])
=== Modding ===
* The game will now detect when joining a multiplayer game if any mods you're using are broken such that joining the game could result in desyncing.
* Fixed that exiting the mod settings GUI without changing anything would incorrectly think you changed settings in some cases. ([ more])
* Fixed crash when loading mods control.lua produces an error. ([ more])
* Added favourite server icon to utility sprites. ([ more])
* Added a global table "mods" - a mapping of mod name to mod version available during the prototype loading stage.
=== Scripting ===
* Fixed some missing Lua docs and added information about the settings stage to the data life cycle. ([ more])
* Fixed crash when trying to create stickers on entities that don't support them. ([ more])
* Fixed that LuaGuiElement::surface_index was using 0-based indexing. ([ more])
* Fixed that LuaEntity::graphics_variation was using 0-based indexing. ([ more])
* Fixed that LuaItemStack::active_index was using 0-based indexing. ([ more])
* Fixed rendering of layered icons in custom GUI. ([ more])
* Added "item" and "tags" to the robot built entity/tile events.
* Added LuaEquipment::burner read.
* Added LuaEntityPrototype::crafting_categories read.
* Added support for setting 'tags' and 'custom_description' when making items through Lua.
* Added LuaBurner::burnt_result_inventory read.
* Added LuaInserterControlBehavior stack size read/write.
* Added LuaTrainStopControlBehavior enable/disable conditions.
* Added LuaTransportBeltControlBehavior enable_disable, read_contents, read_contents_mode read/write.
* Added LuaTrain::id read.
* Added LuaEntityPrototype::supply_area_distance read.
* Added LuaEntityPrototype::max_wire_distance read.
* Added LuaEntityPrototype::max_circuit_wire_distance read.
== 0.15.9 ==
Date: 05. 05. 2017
=== Bugfixes ===
* Fixed crash when opening the train GUI while in the train.
== 0.15.8 ==
Date: 05. 05. 2017
=== Changes ===
* New Supply challenge map.
* Circuit network-based inserter stack size overrides now take effect immediately instead of waiting until the inserter has moved something.
=== Bugfixes ===
* Show 0.7% in the uranium processing recipe instead of 0.0 for uranium 235. This generally works for any recipe that gives less than 1 of anything.
* Don't draw player names on the map that is not in range of player or radar on the zoomed in map.
* Fix some ores with negative values in Tight spot level 04. ([ more])
* Fixed inserters couldn't insert fuel into locomotives. ([ more])
* Fixed random inaccessible map area in Beta campaign level 04. ([ more])
* Fixed various inserter GUI bugs. ([ more])
* Fixed train station tutorial relied on specific train schedule state. ([ more])
=== Balancing ===
* Changed iron gear wheel price of fast and underground belt from 20->40 and 40->80 to even out the bigger length.
* Fix that biters would sometimes stop and go to sleep during an attack. ([ more])
== 0.15.7 ==
Date: 05. 05. 2017
=== Balancing ===
* Changed production science pack recipe to require assembling machine 1 instead of pumpjack.
* Changed science pack 3 to require electric mining drill instead of assembling machine 1.
* Changed crafting times:
** Oil refinery 20->10
** Pumpjack 10->5
** Chemical plant 10->5
** Lab 5->3
** Roboport 15->10
* Reduced the mining time of the storage tank from 3 seconds to 1.5 seconds.
* Increased the mining time of the reactor from 0.5 seconds to 1.5 seconds.
* Increased the underground belt length (basic, fast, express) from 5,5,5 to  5,7,9.
=== Changes ===
* When a connection is refused the username is included in the log message. ([ more])
* Copying entity settings from a disconnected entity will no longer disconnect circuit wires. ([ more])
* Trains in manual mode now have twice the penalty and trains in manual mode without a player in them have 2.5 times the penalty.
* Reactors produce used up fuel cell when it is completely consumed instead of at start. ([ more])
* Reverted flamethrower turret liquid consumption change from 0.15.5. Instead of 30/s it will use 3/s.
* Flamethrower turret no longer shoots in its prepare state. ([ more])
* /color command defaults alpha (the 4th parameter) to 255 (instead of 0) if not specified. ([ more])
* Reduced default requester chest paste multiplier for nuclear reactor recipe to 1 and for centrifuge recipe to 2. ([ more])
* Inserters will no longer take fuel from locomotives and instead will take the burnt result items if the locomotive fuel uses that system.
=== Bugfixes ===
* Fixed that clicking locomotive from zoomed in map view would change color (and show fuel) for some other locomotive on the train ([ more])
* Fixed that construction bots could repair vehicles from very far. ([ more])
* Fixed that rocket silo or other GUIs would obscure finished-game dialog. ([ more])
* Fixed that boiler could output a different fluid than its input. ([ more])
* Fixed that the inserter would sometimes report bad values to the circuit network. ([ more])
* Fixed pump recipe description having wrong pumping speed. ([ more])
* Fixed wrong error message when loaded headless save file doesn't exist ([ more])
* Fixed the "Input action fragment is missing" crash that would sometimes happen due to packet loss. ([ more])
* Fixed crash when resizing the game window while having an assembling machine level 1 GUI open. ([ more])
* Fixed alternative zoom controls would do nothing in map editor. ([ more])
* Fixed some cargo wagon spritesheets were offset by 1 frame. ([ more])
* Fixed that it was hard/not possible to select the character corpse over some entities. ([ more])
* Fixed that the blueprint book GUI would scroll to the top after every click. ([ more])
* Fixed crash when trying to disconnect non circuit connectible entities using Lua::Entity::disconnect_neighbour. ([ more])
* Fixed that calling Lua::Entity::disconnect_neighbour would sometimes disconnect more wires than it should.
* Fixed mod settings corruption when removing mods that contained mod settings. Note: this will reset all mod settings. ([ more])
* Fixed inconsistent selection of resource patches on the map. ([ more])
* Fixed GUI sizing when resetting mod settings. ([ more])
* Fixed that the blueprint book GUI would scroll to the top after every click. ([ more])
* Fixed that dropping a blueprint onto a book icon in the library GUI would drop it in the top level instead. ([ more])
* Fixed that the blueprint library would sometimes stop opening books. ([ more])
* Fixed GUI scaling problems with the assembling machine GUI. ([ more])
* Fixed desync related to the on_selected_entity_changed event. ([ more])
* Fixed that the atomic bomb shooting speed cooldown didn't work. ([ more])
* Fixed the constant combinator GUI when the constant combinator name was larger than the rest of the GUI. ([ more])
* Fixed that the reactor didn't show fuel in the description. ([ more])
* Fixed making blueprints of requester chests with "set requests" would copy the current requests into the blueprint. ([ more])
* Fixed that deleting saves with the delete key key wouldn't maintain focus on the saves list. ([ more])
* Fixed crash when mining rails while having the "show rail paths" debug option enabled. ([ more])
* Fixed infinite loop when migrating entities from an unrelated type to a roboport type. ([ more])
* Fixed that the technology multiplier didn't apply on infinite research. ([ more])
* Fixed filtering server list for games with mods. ([ more])
* Fixed mod version checking for automatic mod download. ([ more])
* Fixed flamethrower turret would not shoot last single shot worth of liquid. ([ more])
* Fixed crash when exiting server list ([ more])
* Fixed "Right mouse button to open" in opened armor. ([ more])
* Fixed that the blueprint library wouldn't use scroll bars for shared blueprint books. ([ more])
* Fixed that resource patches in unexplored areas could be examined on the map.
* Fixed rail ghosts could not be placed over ghosts of enemy force. ([ more])
* Fixed the sulfuric acid fluid icon. ([ more])
* Fixed that /config set password wouldn't work. ([ more])
=== Modding ===
* Icons are now required to have correct size (which can be overridden by icon_size property). ([ more])
* 32x32px for entity, fluid, item, item-group, recipe, technology, virtual-signal
* 128x128px for achievement, tutorial
* If icon path references base mod, technology icon is expected to be 128x128px and item-group icon 64x64px.
* In near future, we may remove default sizes and require icon_size to be always specified.
* It is no longer possible to teleport any rolling stock or train stop. ([ more])
* Added the string mod setting prototype property "auto_trim" defaulting to false.
=== Scripting ===
* Fixed LuaChunkIterator could become invalid and crash the game if used. ([ more])
* Added LuaPlayer::mod_settings read - the runtime player mod settings for the given player.
* Added LuaEntity::temperature read/write - the temperature of entities that use the heat energy source type as well as reactors and heat pipes.
* Added LuaEntity::get_burnt_result_inventory.
== 0.15.6 ==
Date: 02. 05. 2017
=== Changes ===
* Increased roboport construction range to 55 (110x110 area) to make roboports able to build each other without interconnecting their logistic areas, and not break when there are obstacles like trees or rocks.
=== Bugfixes ===
* Fixed centrifuge glowing for one frame each time inserter drops something. ([ more])
* Fixed biters expansion was biased towards northern part of the map. ([ more])
* Fixed blueprint preview splitter not bending nearby belts correctly. ([ more])
* Fixed items on ground were not cleared in tightspot campaign. ([ more])
* Fixed that mining drills wouldn't pull in enough acid to continue mining. ([ more])
* Fixed that you could complete some advanced signal tutorial stages by blocking trains. ([ more])
* Fixed that nuclear fuel reprocessing was used to calculate raw ingredient requirements. ([ more])
* Fixed that you could input invalid value to PvP config. ([ more])
* Fixed crash when changing force of turret ghost. ([ more])
* Fixed inserters would grab items off belts and try to drop them onto rails after the train left. ([ more])
* Fixed inserters would rest with their hand above the center of a splitter. ([ more])
* Fixed desync caused by heat pipes. ([ more])
* Fixed crash when trying to edit mod settings after joining a paused multiplayer game. ([ more])
* Fixed removed decoratives were migrated as big-ship-wreck-grass instead of being deleted from map. ([ more])
* Fixed input underground belt fast replace would also replace output piece even if input changed direction. ([ more])
* Fixed combinators continuing to output signals when parameters are cleared or when disconnecting feedback wire. ([ more])
* Fixed programmable speaker continuing to make sounds without a wire connected. ([ more])
* Fixed that it wasn't possible to scroll with the mouse wheel in the mod settings GUI. ([ more])
* Fixed updater would fail if Factorio was in folder with name containing non-english characters. ([ more])
== 0.15.5 ==
Date: 30. 04. 2017
=== Bugfixes ===
* Fixed crash when setting character trash slots through script while having the character GUI opened. ([ more])
* Fixed crash on joining a multiplayer game if the "use different mod settings per save" was disabled. ([ more])
* Fixed blueprint with roboports wouldn't draw roboport connections. ([ more])
* Fixed crash when building rails in specific setups while trains are reserving signals on the rails being changed. ([ more])
* Fixed when changing graphical variation of a tree from script or in map editor. ([ more])
* Fixed flamethrower turret was using 10x less fluid than it should.
* Fixed opening item GUI wasn't rebindable ([ more])
* Fixed burner inserters would try to fuel themselves with fuel they couldn't use. ([ more])
* Fixed crash when deleting chunks in some instances. ([ more])
* Fixed one direction of hazard concrete had no walking sounds. ([ more])
* Fixed rare crash when getting killed by the locomotive you had opened. ([ more])
* Fixed that right clicking the map view buttons would change the option but not update the button. ([ more])
* Fixed the generate-map settings wouldn't be saved when switching to the mod-settings through the generate map GUI. ([ more])
* Fixed crash when interacting with the map view buttons in some cases. ([ more])
* Fixed crash when mousing over entities in some rare cases. ([ more])
* Fixed crash when trying to mine tiles from the zoomed-to-world view. ([ more])
* Fixed crash when editing speaker parameters in the map editor. ([ more])
* Fixed that train stops wouldn't show the correct name when changed remotely. ([ more])
* Fixed crashes related to electric pole/accumulator removal when migrating saves from 0.14 into 0.15. ([ more])
* Fixed rail signals built by robots would frequently lead to the signals not connecting properly. ([ more])
* Fixed GUI layout problems in the rocket silo GUI when adding/removing productivity modules. ([ more])
* Fixed items on belt flickering when occupying same position. ([ more])
=== Scripting ===
* Fixed module inventory insert() didn't work for assembling machines. ([ more])
== 0.15.4 ==
Date: 29. 04. 2017
=== Changes ===
* Added /permissions reset to reset all permissions to default.
* Steam and water content of fluid wagons are now shown separately in locomotive tooltip.
* Removed the "minimum chunks between new bases" map generation setting because it wasn't doing anything.
* Re-added custom /color support through /color r g b a.
* PvP: Added a biter easing option to prevent excessively large bases close to team starting areas.
=== Bugfixes ===
* Fixed crash when building rails while a train is currently reserving some of the signals. ([ more])
* Fixed that you could set the inserter stack size over the researched maximum by sending negative numbers with the circuit network. ([ more])
* Fixed combinators continuing to output signals after disconnecting the input. ([ more])
* Fixed blueprint would reference force it was created on and crash in rendering if that force no longer existed. ([ more])
* Fixed that names of books stored in the blueprint library wouldn't be preserved after save and load. ([ more])
* Fixed supply scenario would sometimes show the next level button in error. ([ more])
* Fixed the rocket silo wouldn't copy the "auto-launch" option in blueprints.
* Fixed Sulfuric Acid recipe using 10 times less water. ([ more])
* Fixed that dropping blueprints into a book inside the library would sometimes drop the wrong blueprint. ([ more])
* Fixed crash when changing mod settings runtime while in a multiplayer game. ([ more])
* Fixed that opening the blueprint library after calling game.remove_offline_players() would crash the game. ([ more])
* Fixed that --start-server wouldn't find the save file when given just a name without the .zip suffix. ([ more])
* Fixed that it was possible to export a blueprint book into another blueprint book. ([ more])
* Fixed that it was possible to have the same blueprint multiple times in the library. ([ more])
* Fixed that it was possible to grab a blueprint from the library whilst also holding a deconstruction planner in hand. ([ more])
* Fixed desync when moving mouse over areas outside of radar range in zoomed-to-world view. ([ more])
* Fixed crash when leaving the technology price multiplier blank. ([ more])
* Fixed crash when removing modded rails during save migration. ([ more])
* Fixed lab without power would be still rendered as active. ([ more])
* Fixed several instances of the "last user" field not getting updated. ([ more])
* Fixed rocket silo would not increment its "products finished" count when finishing rocket. ([ more])
* Fixed landmines would last forever when friendly fire was disabled. ([ more])
* Fixed possible crash when closing Factorio during loading. ([ more])
=== Modding ===
* Blueprints/books/deconstruction item prototypes with the "hidden" flag will no longer show up in the blueprint library. ([ more])
* Added missing lua docs index section for settings and fixed some wording. ([ more])
=== Scripting ===
* Fixed assigning invalid index to LuaEntity::graphics_variation would cause crash. ([ more])
* Fixed setting LuaItemStack::blueprint_icons didn't work correctly. ([ more])
* Fixed teleporting entity with rectangular bounding box would reset bounding box to north orientation and cause desync. ([ more])
* Added LuaEntity::products_finished for crafting machines.
== 0.15.3 ==
Date: 27. 04. 2017
=== Changes ===
* Wave defense: Units won't spawn if there are more than 500 already on the map.
* Wave defense: Added a 'Unit bounty bonus' upgrade.
* Removed the ability to set /color using RGB values.
* Wave defense: Added Uranium to the map.
* "Disable all mods" option in mod load error dialog doesn't disable base mod anymore.
* Changed stack-split so "splitting" a stack of 1 still transfers the 1 item. ([ more])
* Change submachine stack size to 5. ([ more])
* Blueprints, blueprint books and deconstruction planners can be destroyed by clicking the trash can icon in their GUIs. Clearing a blueprint is still possible via the Shift+Right Click shortcut.
=== Bugfixes ===
* Fixed the fluid usage description for the steam engine would flicker when holding the steam engine in the cursor. ([ more])
* Fixed that assembling machines would think the fluid barreling/unbarreling recipes could be used to calculate base ingredients for recipes. ([ more])
* Fixed performance problems when opening the blueprint library GUI when the map has a large number of players. ([ more])
* Fixed crash related to connection attempts from players with mods with mod settings. ([ more])
* Fixed getting "No map setting instance" error when loading faulty mod instead of actual error. ([ more])
* Fixed entering tutorial would remove scenario control script from current game. ([ more])
* Fixed crashes related to saves with migrated circuit network signals. ([ more])
* Fixed numeric inputs would block all keys instead of just numbers. ([ more])
* Fixed ore field amount stuck to cursor when in technology view. ([ more])
* Fixed crashes related to migrated saves with circuit network signals. ([ more])([ more])
* Fixed that train station tutorial would not progress if you removed the train wait condition. ([ more])
* Fixed crash when changing mod setting prototype types. ([ more])
* Fixed the refinery flame would freeze when using the coal liquefaction recipe and the machine didn't have any coal. ([ more])
* Fixed fluids would be counted incorrectly for production stats when a pumpjack was placed on an oil well with a modded extremely high yield. ([ more])
* Fixed the trains GUI wouldn't scale correctly. ([ more])
* Fixed you could select entities in the zoomed-to-world view outside radar coverage. ([ more])
* Fixed prompt about disabled base mod would not show up. ([ more])
* Fixed crash when train was destroyed while hovering over it in map view. ([ more])
* Fixed that the team production starting lobby had some uranium ore. ([ more])
* Fixed hovering over very large resource patch in map view would crash the game. ([ more])
* Fixed the "don't mine resources if mining starts with non-resources" logic. ([ more])
* Fixed crash when the preview picture can't be saved for a save file. ([ more])
* Fixed crash when trying to filter opened other players quickbars. ([ more])
* Fixed crash when setting resource minimal yield above the normal yield. ([ more])
* Fixed the tab complete logic for the /mute-programmable-speaker command. ([ more])
* Fixed that you could only build blueprints in the zoom-to-world by click and drag.
* Fixed script error in basic train tutorial. ([ more])
* Removed redundant recipe unlock in trash slot technology. ([ more])
* Fixed inserter stack size override sometimes being lost when importing a blueprint.
* Fixed crash that would occasionally happen after deleting a book from the blueprint library. ([ more])
* Fixed fluid could flow into the heat exchangers output fluidbox. ([ more])
* Fixed that inserters would try to put stuff into the rocket silo result inventory. ([ more])
* Fixed some invalid map exchange strings would crash the game. ([ more])
* Fixed train stop would not output content fluid wagons to circuit network. ([ more])
* Fixed locomotive tooltip would not show contents of fluid wagons. ([ more])
=== Modding ===
* Prototype names are not allowed to contain the '.' character.
=== Scripting ===
* Fixed typo in defines.shooting.shooting_selected (was "shooting_seleted"). ([ more])
* Fixed type in defines.control_behavior.type.train_stop (was "train-stop"). ([ more])
* Fixed the custom camera widget was using 0 based indexing for the surface_index parameter. ([ more])
* Added missing control behavior types to defines (wall, mining_drill, programmable_speaker). ([ more])
* Added LuaTrain::fluid_wagons read.
== 0.15.2 ==
Date: 25. 04. 2017
=== Changes ===
* Reduced wave defense biter power increase as more players join to reduce pathfinding performance drain. ([ more])
* Tweaked the biter and uranium ore settings of the 'Rail world' preset.
* Changed mining drill fluidbox to allow fluid to flow to pipes without the use of pumps.
* Changed the "sync mods with save" button to support disabling mods a save file wasn't using.
* Computers with 2GB or more video memory and 8GB or more RAM will default graphics quality to high.
* Selecting high sprite quality in graphics options will show warning if computer doesn't have enough video memory.
=== Bugfixes ===
* Fixed tightspot campaign debt calculation. ([ more])
* Fixed basic train tutorial rail setting offset. ([ more])
* Fixed story script copying of assembling machines without recipes. ([ more])
* Fixed crash when cycling through empty blueprint book. ([ more])
* Fixed crash when the wrong fuel type was put into a burner equipment. ([ more])
* Fixed LuaFluidBox::get_capacity() didn't work when the fluidbox was empty. ([ more])
* Fixed LuaFluidBox::get_capacity() used 0-based indexing. ([ more])
* Fixed blueprints with circuit wires would crash in some instances.
* Fixed the map would render black if the game was resized immediately after loading a large save file.
* Fixed that the technology cost multiplier allowed a value of 0.
* Fixed crash when circuit connector sprites aren't defined for a given entity. ([ more])
* Fixed crash when inactive mining drills are disconnected from the circuit network. ([ more])
* Fixed that the programmable speaker wouldn't save settings correctly when exported as a string in blueprints. ([ more])
* Fixed crash when the base mod is disabled and no other mod defines map-settings. ([ more])
* Fixed fluids consumed in the mining drill for mining resources didn't get counted in fluid production statistics. ([ more])
* Fixed crash after display reset when browse multiplayer GUI was opened. ([ more])
* Fixed browse games GUI sorting. ([ more])
* Fixed wave defense GUI error. ([ more])
* Fixed transport belt walking sound being controlled by the wrong volume slider. ([ more])
* Fixed exiting tutorial would mute game sounds. ([ more])
* Fixed crash when hovering over train with invalid path. ([ more])
* The "Kovarex enrichment process" is no longer usable with productivity modules. ([ more])
* Fixed alternative zoom would cause crash when bound to keyboard instead of mouse. ([ more])
* Fixed that train stop would output circuit network signals with train contents regardless of it's parameters.
* Fixed possible desync related to train stops connected to circuit network.
* Fixed the exchange string wouldn't get cleared when clicking the reset button in the generate map GUI. ([ more])
* Fixed crash when executing commands ban/unban/bans in a single player game. ([ more])
* Fixed that opening another player's blueprint book though the /open command would crash the game. ([ more])
* Fixed possible desync related to constant combinator filters.
* Fixed tooltip delay option didn't work. ([ more])
* Fixed that disconnecting of electric poles hid some of the electric network visualizations on the map. ([ more])
* Fixed crash when closing window on splash screen. ([ more])
* Fixed that steam wouldn't show up as steam in fluid wagons. ([ more])
* Fixed inactivity wait condition didn't work properly with fluid wagon. ([ more])
* Fixed name of train field in on_train_created event. ([ more])
* Fixed the technology list scrollbar position reset after clicking any technology.
* Fixed that LuaFluidBox would ignore the temperature field when setting a new fluid. ([ more])
* Fixed crash when using recipes in furnaces that don't produce the exact amount of output items as the furnace output slots. ([ more])
* Fixed crash when loading some older save files in 0.15 related to modded recipes.
* Fixed crash due to "Construction robot is in invalid state". ([ more])
* Fixed game hang when connecting train in a loop ([ more])
== 0.15.1 ==
Date: 24. 04. 2017
=== Changes ===
* Reduced noise effect on zoom-to-world view.
=== Bugfixes ===
* Fixed update error.
* Fixed Steam config loading error.
* Fixed headless not starting without server-settings.json ([ more])
* Fixed the "reset" button in the generate map GUI wouldn't reset settings to the actual default values. ([ more])
* Fixed that right clicking icon in the tag edit gui crashed the game. ([ more])
== 0.15.0 ==
Date: 24. 04. 2017
=== Major Features ===
* Research overhaul. 4 new science packs: Military, Production, High-tech and space.
      > Space science packs are generating by launching a rocket.
      > Added infinite researches.
* Nuclear power.
* Blueprint library: Allows for keeping players blueprints between individual game saves and allows sharing blueprints in multiplayer games.
* Added infinite mining productivity research, each tier increases mining productivity by 2%.
* Added wagon for transporting fluids.
      > One side of pump can connect to the fluid wagon, the other side has to be connected to something else.
* Mini tutorials. Small missions that explain some of the game mechanics. The current content is a testing sample and it only covers trains.
** Features:
* Map Interaction improvements:
      > Selectable map overlays: logistics networks, pollution, electric network, turret range, etc.
      > Train stations and trains can be opened by clicking them while in the map view.
      > Zoom to the world view from the map. It only shows parts of the map covered by radar or other players though.
      > Custom map markers can be added by the players.
* When dying in multiplayer you leave behind a body with your items that slowly degrades.
* Fuel type now affects vehicle acceleration and top speed.
* Added coal liquefaction oil processing recipe.
* Added Pipette Tool. Picks up items from your inventory used to build the currently selected entity.
      > For resources it will select the fastest available resource extractor.
* New scenarios: PvP and Wave defense.
=== Minor Features ===
* Added map-settings command line option when creating map, it can be used to specify a file with map settings to be  used instead of the defaults.
* Added preset command line option when creating map.
* Fast in game interactions like fast inserting into/from entity and copy paste can be done by dragging instead of having to click one at a time.
* Build-by-moving for electric poles now accounts for covering all unpowered entities on the way.
* Fast replacing input piece of underground belt will also fast replace ouput piece if possible.
* Added support for setting player color from the /color command using Lua syntax: {r=...g=...,b=...,a=...}
* Added warning for situation when robots don't have storage place to put items in the logistics network.
* Pumps show their direction in the detailed view.
* Belts and pipes show correct connections when building a bluprint.
* Technologies show the required science packs below the icons in the technology GUI list.
* Technologies are sorted by the science packs needed.
* Added /screenshot command - takes a screenshot of your current game screen.
* Added support for equipment grids in the map editor.
* The build rotation of each blueprint is remembered independently of the general item build rotation.
* Infinite resource minimal yield is calculated using the initial resource amount and the prototype minimum yield.
* Added optional filters to the deconstruction planner.
* Copying from assembling machines to filter inserters will set the filters to the ingredients of the assembling machine recipe.
* Combat robots and construction robots are maintained between sessions in multiplayer and when changing surfaces.
* Added reverse-rotate.
* Offshore pump and generator show pumping speed/fluid usage.
* Alternative select with blueprints (shift + select) skips the blueprint setup GUI.
* Mining rails is disabled if mining starts with trains or gates.
* Toggle fullscreen using Alt + Enter.
* Added "f"/"force" option to the /players command
* Added Logistic networks GUI containing a list of all networks and contents with search (opened by the L key).
* Added /open command - opens another players inventory if you're an admin.
* Added /alerts command - configures alerts for your player.
* Added /mute-programmable-speaker command - disables global sounds created by the Programmable Speaker entity.
* Added /seed command - prints the map seed.
* Added fluids to the production GUI.
* Added kill statistics GUI.
* Added enable/disable all mods button to the mod manager GUI.
* Added automatic barreling support for all fluids.
* Cargo wagons can have settings copied from any distance like Locomotives.
* Added the ability to auto-launch the rocket.
* Train stops can be colored like trains.
* Fish can be collected by robots.
* Extended map generator settings to include an advanced section.
* Added map generator presets.
* Show fog-of-war and radar radius when holding radar in cursor.
* Seed for map creation on the headless server can be specified via map-gen-settings.json
* Damaged items merge into one stack, the health of the stack will be the average of the items.
* Added server whitelist support -- see the /whitelist console command.
* Added /banlist command to operate on the banlist, in addition to the pre-existing /ban and /unban commands.
* Added "favourite" feature in public games list: Keep your favourite servers at the top of the list.
* Added /permissions command for managing permissions in a multiplayer game.
* Added ability to change individual inserter stack size bonuses through GUI or the circuit network.
* Added ability to export and import blueprints, blueprint books, and deconstruction planners as strings.
* Server console will print JOIN and LEAVE messages for players joining or leaving.
* Server console messages that aren't a part of the main log can be logged separately by running the server with the --console-log option.
* Translatable energy units and SI prefixes (eg. "100 ГВт").
* Furnaces and assembling machines show the amount of products finished.
=== Graphics ===
* Added high graphics quality option. In this settings the following list of things will have double resolution:
** Car, Trains, Rails, Rail signals, Train stop, Transport belts, Underground belts, Splitters, Pipes, Steam engine, Assembling machines, Oil refinery, Chemical plant,
** Mining drill, Furnaces, Resources
* New ore graphics that makes the ore patches look less tiled.
* Tweaked the GUI graphics.
* Decreased the size of the recipe icons on assembling machine by 23%.
=== Balancing ===
* Increased the rate at which resources grow with distance from the center by 50%.
* Crude oil balancing: Halved the resource amount on the map
** Increased the minimum yield from 10% to 20%
** Halved the rate of depletion.
** Doubled the starting yield.
** Fixed that the mechanics of increasing richness with distance from start wasn't working for crude oil.
* Increased module inventory size of Chemical plant and oil refinery from 2 to 3.
* Increased logistic slot/trash slot count from 5 per level to 6 per level.
* Removed processing unit from the modular armor and portable solar panel recipe.
* Increased the pump pumping speed 4 times.
* Reduced the plastic bar recipe requirement of petroleum gas 30 -> 20
* Reduced the electric engine recipe requirement of lubricant 20 -> 15
* Reduced the electric furnace recipe requirement of steel 15 -> 10
* Reduced the steel furnace recipe requirement of steel 8 -> 6
* Reduced the pumpjack recipe requirement of steel 10 -> 5
* Reduced crafting time:
** Engine unit + electric engine unit: 20 -> 10
** Pumpjack 10 -> 8
** Advanced circuit 8 -> 6
** Processing unit 15 -> 10
** Cracking recipes 5 -> 3
* Increased stack size of stone wall pipe and belts 50 -> 100
* Increased the maximum power production of steam engine from 510kW to 900kW
* Doubled the heat capacity of water from 0.1kJ per degree per liter to 0.2kJ.
* Increased the substation supply area (16X16 to 18X18) and wire reach (16 to 18).
** Combat Balancing:
* Player regains health at a much higher rate, but only after being out of combat for 10 seconds.
* Discharge defense equipment pushes back, stuns and damages nearby enemies when activated by the remote.
* Decreased the size of Discharge defense equipment from 3x3 to 2x2.
* Greatly increased the damage of Personal Laser Defense Equipment.
* Flamthrower gun has a minimum range of 3.
* The flames created on ground from the flamethrower significantly increase in duration and damage when more fuel is added to them by firing at the same spot.
* Increased fire resistance of biter bases.
* Increased the health of player non-combat buildings.
* Increased player health from 100 to 250.
* Increased collected amount and effectiveness of Fish.
* Increased the damage, range and health of biters worms.
* Decreased health and resistance of Behemoth biters.
* Doubled the stack size of all ammos.
* Tweaked the cost and crafting time of some ammos.
* Increased the damage of most player ammos. Greatly increased the damage and fire rate of Rockets and Cannon Shells.
* Increased the collision box of Cannon Shells.
* Increased Tank health and resistances.
* Added research for Tank Cannon Shells damage and shooting speed.
* Tweaked research bonuses and added more end-game research for military upgrades.
* Greatly increased the damage of Mines. They also stun nearby enemies when they explode.
* Added uranium rounds magazine and uranium cannon shells.
* Added flamethrower to the tank.
* Other minor changes.
=== Optimisations ===
* Improved performance of mining drills in general and significantly improved performance when mining drills get backed up.
* Improved performance when tiles are changed due to migration/mod removal.
* Significantly improved GUI performance for inventories that required scroll bars.
* Improved GUI performance in general.
* Improved performance of radars scanning chunks.
* Improved map generation speed and generation algorithm.
* Improved game load performance when a large amount of mod data exists in the save.
* Optimized graph rendering in production statistics window.
* Improved regenerate entity performance.
* Improved network map transfer performance.
* Improved train performance when building/mining rail related entities.
* Optimized memory requirements for storing tiles under concrete.
=== Circuit Network ===
* Significantly improved circuit network performance. Up to 25 times less CPU usage and 10% less memory usage.
* Added the Programmable Speaker: it shows alerts and plays sounds based on circuit network signals. It can be used to make simple songs.
* Train Stop can output the contents of the stopped train's cargo.
* Train Stop can be disabled using the circuit network. Trains will skip disabled Train Stops, allowing simple train control.
* Mining Drills can be turned on and off using the circuit network. They can also output the remaining expected resources.
* Pumpjacks can be turned on and off using the circuit network. They can also output the current oil mining rate.
* Added Modulo, Power, Left Bit Shift, Right Bit Shift, Bitwise AND, Bitwise OR and Bitwise XOR to the Arithmetic Combinator.
* Added >=, <=, != to the Decider Combinator and Circuit Conditions.
=== Changes ===
* Configuration has been reset.
* Boilers are more powerful and bigger and have dedicated output for the steam.
** Default boilers output steam at the fixed temperature 165.
* Removed support of 32 bit systems.
* Removed alien artifacts and alien science packs from the game completely.
* Changed bounding box of burner mining drills and pumpjack, so it is possible to walk in between them.
* Disabled loading of saves before 0.12.0 version (You can use 0.12 to load older saves and re-save them).
* Changed "small pump" to "pump". Small pumps in old saves will be migrated but they will be misaligned and disconnected from pipes.
* Train station adds 2000 tiles penalty when path finding, so trains try to avoid stations not related to their path.
* The map seed is used to generate unique maps instead of just shifting the starting position.
* The "decorative" entity type has been deprecated and replaced with the prototype type "optimized-decorative".
* Multiplied all fluid amounts by 10.
* All default map editor actions are now on left click.
* Change fluidbox height and base level of boiler, steam engine and pump to improve fluid flow.
* When the active train stop is removed trains will immediately leave the station if they're waiting at the station.
* Changed the default comparison type for train conditions to "or".
* Fast replacing splitters maintains the splitter contents on the new splitter instead of returning it to the player.
* Research started/changed notifications are only shown when in multiplayer.
* Crafting is now paused when the results can't be given to the player instead of spilling them on the ground.
* Changed evolution from global to per force.
* Disabled mining of vehicles other players are driving.
* Decreased biter sounds volumes
* Laser turret projectiles move much faster
* Roboport construction area changed from 50 to 51 to allow roboports build/deconstruct each other even when there is a 1 tile gap between their logistic areas.
* Restart button now uses map generation settings from currently loaded save.
* New rocket silo GUI and visbility button for freeplay and sandbox scenarios.
* Unified internal name of the 'flame-thrower' to 'flamethrower'.
* Manual ghost building will mark trees/rocks for deconstruction similar to alt-building blueprints.
* Trains are now always visible on the map, not only on chunks observed by radars or players.
* Renamed "armor-making-2" to "heavy-armor".
* Renamed "armor-making-3" to "power-armor".
* Renamed "diesel-locomotive" to "locomotive".
* Increased blueprint book size to hold 1000 blueprints
* Blueprints, blueprint books and deconstruction planners are obtainable from the library GUI with no crafting cost.
* Added combinator working, wire hold and wire place sounds.
* Single player can be continued when you die.
=== Modding ===
* Fast cropping of sprite boundaries - it's no longer necessary to delete crop-cache.dat when existing sprites are modified.
* Utility sprites are now defined fully in the core mod prototypes.
* Added support for burner type generator-equipment.
* Added "simple-entity-with-force" and "simple-entity-with-owner" entity types.
* Boiler has now dynamically specified energy source (as inserter and similar).
* Added support for mod settings: startup, runtime, and runtime-per-user.
* Added commandline option --check-unused-prototype-data
* Added a "nothing" technology modifier type with an "effect_key" property for script-based-effect research.
* Redundant technology prerequisites are logged when verbose logging is enabled.
* Changed technology prototype icon_size to default to 32 instead of 64.
* In any instance an icon isn't 32x32 the icon_size property must be set to the actual size of the (square) icon.
* Added the ability to have "friend" forces. Friend forces are given unrestricted access to buildings and won't be attacked.
* Changed container entities to not scale info icons by default + added the optional prototype property "scale_info_icons" to enable scaling.
* Added property "turret_base_has_direction" to turret entity types. Set it to true if you want to use turn_range property in turret attack_parameters.
** This property has to be true for any fluid-turret, because of pipe connections.
* Added support for different recipe and technology complexity definitions.
* Added "item-with-tags" item type that can store any basic arbitrary Lua data.
* Lamps, roboports, walls, rail signals, and accumulators now accept any signal type (item, fluid, virtual).
* "animation_speed" property of animation definitions has to be greater than 0.
* Renamed smoke-with-trigger "action_frequency" property to "action_cooldown".
=== Scripting ===
* Added "by_script" to on_research_finished.
* Added "cause" to on_entity_died - the entity that did the killing if available.
* Added "recipe" to on_player_crafted_item.
* Added "rocket_silo" to the rocket launched event.
* Added 4th custom gui root position "goal", which is used in the objectives.
* Added column_alignments settings in table style.
* Added LuaBurner - readable off entities and equipment - the burner energy source for the entity.
* Added LuaCircuitNetwork::network_id read.
* Added LuaConstantCombiantorControlBehavior::signals_count read + set_signal and get_signal.
* Added LuaControl::shooting_state, repair_state, picking_state read/write.
* Added LuaCustomChartTag + LuaForce API to add/find them.
* Added LuaDecorativePrototype.
* Added LuaEntity::connect_rolling_stock and disconnect_rolling_stock methods.
* Added LuaEntity::get_logistic_point().
* Added LuaEntity::graphics_variation read/write for simple entities and trees.
* Added LuaEntity::shooting_target read/write for turrets.
* Added LuaEntity::stickers read. The stickers attached to a given entity.
* Added LuaEntityPrototype::crafting_speed read.
* Added LuaEntityPrototype::drawing_box, sticker_box, flags, remains_when_mined, additional_pastable_entities, allow_copy_paste, shooting_cursor_size, created_smoke, created_effect, map_color, friendly_map_color, enemy_map_color, build_base_evolution_requirement read.
* Added LuaEntityPrototype::get_inventory_size().
* Added LuaEntityPrototype::ingredient_count read.
* Added LuaEntityPrototype::module_inventory_size read.
* Added LuaEquipmentGrid::get_contents, shield, and max_shield.
* Added LuaFluidBox::owner read + get_capacity and get_connections methods.
* Added LuaForce::evolution_factor.
* Added LuaForce::is_chunk_visible().
* Added LuaForce::set_friend/get_friend.
* Added LuaGui::children read.
* Added LuaGuiElement drop-down type.
* Added LuaGuiElement type "camera".
* Added LuaGuiElement type "choose-elem-button".
* Added LuaGuiElement::children read.
* Added LuaGuiElement::clear to remove all the contents of the element.
* Added LuaGuiElement::single_line and want_ellipsis for the CustomLabel type.
* Added LuaInventory::entity_owner, player_owner, and equipment_owner read.
* Added LuaItemPrototype fuel_category, burnt_result, fuel_acceleration_multiplier, fuel_top_speed_multiplier read.
* Added LuaLogisticNetwork::provider_points, empty_provider_points, requester_points, full_or_satisfied_requester_points, and storage_points read.
* Added LuaLogisticPoint - read access to logistic data about provider, storage, and requester points.
* Added LuaPlayer::add_alert, remove_alert, and get_alerts.
* Added LuaPlayer::mute_alert, unmute_alert, is_alert_muted, enable_alert, disable_alert, is_alert_enabled.
* Added LuaPlayer::opened write.
* Added LuaPlayer::opened_gui_type read.
* Added LuaRandomGenerator.
* Added LuaSurface::destroy_decoratives and LuaSurface::create_decoratives.
* Added LuaSurface::find_logistic_networks_by_construction_area(..).
* Added LuaSurface::get_trains() and LuaForce::get_trains().
* Added LuaSurface::regenerate_decorative().
* Added LuaTrain::has_path, path_end_rail, and path_end_stop read + recalculate_path().
* Added LuaTransportLine::operator[] and operator#.
* Added Mod gui script for easy consistent styling of mod buttons and frames within the game.
* Added mouse info to the gui clicked event.
* Added on_biter_base_built - fires when biters build bases during migration.
* Added on_entity_renamed - fires when an entity is renamed either by the player or through script.
* Added on_gui_selection_state_changed - fires when an item in a drop-down gui element is selected.
* Added on_market_item_purchased - fires when a player purchases something from a market entity.
* Added on_player_changed_force - fires when a players force is changed.
* Added on_player_dropped_item - fires when a player drops an item that results in an item-on-ground entity.
* Added on_player_mined_entity and on_robot_mined_entity events.
* Added on_runtime_mod_setting_changed event - fires when a player changes runtime mod settings.
* Added on_selected_entity_changed - fires when the selected entity for a player changes.
* Added on_surface_deleted, on_pre_surface_deleted, and on_surface_created events.
* Added on_train_created event.
* Added optional "surface" to LuaForce::chart_all().
* Added optional fields "durability" and "ammo" when using SimpleItemStack definitions.
* Added optional parameter "return_item_request_proxy" to LuaEntity::revive. If true and revive creates item request proxy, the proxy will be returned as the third value.
* Added player_index to the entity settings pasted events.
* Added remote interface functions for the rocket silo gui: add_tracked_item, remove_tracked_item, get_tracked_items, update_gui
* Added remote interface to freeplay and sandbox scripts.
* Added support for full copying LuaItemStack in most places that take the SimpleItemStack type.
* Added support for LuaFlowStatistics read on electric poles.
* Added support for specifying the "max_range" of a projectile when created through create_entity.
* Added support for turret orientation read/write through LuaEntity::orientation.
* Added the ability for mods to register commands.
* Added the ability to read item_requests from item request proxy entities as well as ghosts.
* Added the ability to read reach distances off the player or character entity.
* Changed less_then to less_than in lua GUI progress bar style specification. ([ more])
* Changed LuaEntity::item_requests to match the docs format.
* Changed LuaEntity::passenger to work with both character entities and players.
* Changed LuaEntityPrototype::underground_belt_distance to LuaEntityPrototype::max_underground_distance and changed it to work on both underground pipes and underground belts.
* Changed LuaForce::clear_chart() to take an optional surface to clear the chart for.
* Changed LuaSurface::create_entity{name="item-on-ground", stack=...} to accept the same format for item stacks as the rest of the Lua API.
* Changed the player built event to include the item name used to do the building if possible and include the tags from the "item-with-tags" item if possible.
* Changed LuaPlayer::clean_cursor to return true if the cursor is now empty.
* Expanded LuaStyle read/write property support.
* Fixed LuaSurface::spill_item_stack didn't interpret "enable_looted" parameter properly. ([ more])
* LuaForce::reset() now resets everything about the force to the default state.
* Mod events are now fired by the mod dependency order instead of the mod name starting with the scenario script.
* Moved game.get_event_handler and game.raise_event to "script".
* Removed Lua.coroutine due to potential exploits.
* Removed LuaGameScript::evolution_factor.
* Removed LuaGameScript::save/load.
* Removed LuaPlayer::build_from_cursor + LuaPlayer::rotate_for_build as they aren't replay/MP safe.
* Removed LuaSurface::get_tileproperties.
* Removed LuaForce::item_resource_statistics and LuaForce::fluid_resource_statistics - they've been merged into the production versions.
* The goal and left gui element has default direction vertical.
* Utility sprites can be used in the sprite button.
=== Bugfixes ===
* Fixed that setting LuaForce::ai_controllable to false wouldn't prevent pollution-based unit group formation. ([ more])
* Fixed graphics settings UI scale would change just by opening the GUI. ([ more])
* Fixed UAC prompt would cause error and application termination during sprite loading on Windows. ([ more])
* Fixed map generation could in some instances not correctly generate entities.
* Fixed crash when regenerating entities that are disabled by map generator settings ([ more])
* Attempt to fix an ocasional crash when DNS lookup fails ([ more])
* Fixed crash when ammo was consumed fully by script during shooting. ([ more])
* The Equipment Grid GUI is now scaled with the rest of the UI. ([ more])
* Fixed possible crash caused by improper primary display detection. ([ more])
* Fixed occasional broadcast related crashes on OSX ([ more])
* Fixed building train vehicle in a way, that it connects on both sides. ([ more])
* Fixed entities with efficiency modules wouldn't consume the correct amount of energy in some cases. ([ more])
* Fixed problems when clicking connect button in server list too fast ([ more])
* Fixed crash when removing large-tiles from a tile prototype definition. ([ more])
* Fixed crash when mod created exoskeleton equipment with zero energy consumption. ([ more])
* Fixed electric pole would draw wires to invisible ghost of enemy force. ([ more])
* Fixed crash when refreshing in the browse mods GUI in some instances. ([ more])
* Fixed crash when clicking the same tick the map is loaded. ([ more])
* Fixed LuaGameScript::get_event_handler not working. ([ more])
* Fixed desync when demoting every player on a server. ([ more])
* Fixed desync caused by incorrect sorting of items with inventories (blueprint books) in player's inventory. ([ more])
* Fixed crash when respawning player who had any requests in personal logistic slots and was transfered to a force without logistic slots technology researched while waiting for respawn. ([ more])
* Fixed LuaSurface::create_entity{fast_replace=true} would end up deleting items in some instances. ([ more])
* Fixed extremely slow deleting of selection in text fields. ([ more])
* Fixed save coruption when saving while character is in vehicle with equipment grid and roboport equipment while destructor bots are deployed.
* Fixed rail integrity error when train crashes into itself. ([ more])
* Fixed virtual signals wouldn't be sorted correctly by subgroup. ([ more])
* Fixed typing in the save-replay GUI could move your player around. ([ more])
* Fixed that manually created unit groups wouldn't be automatically removed when all their members died. ([ more])
* Fixed crash when trying to make an entity ghost of an invalid entity through script. ([ more])
* Fixed rail signals not reconnect after removing rails in some setups. ([ more])
* Fixed trains switched to manual mode wouldn't trigger inserters when they coasted to a stop. ([ more])
* Fixed lot of entities on the same tile might cause stack overflow crash when saving the map. ([ more])
* Underground belt connects only to underground belt of the same force.
* Fixed personal roboport ended search for nearby ghosts prematurely if a ghost found couldn't be built due to missing item. ([ more])
* Fixed desync related to teleporting any entity with emissions-per-tick defined in the prototype. ([ more])
* Fixed explicitly placed crafting orders were sometimes used to satisfy dependency of other crafting orders.
== 0.14.23 ==
Date: 19. 04. 2017
** Info:
* This is a compatibility release for 0.15 containing only bugfixes.
=== Bugfixes ===
* Fixed crash when refreshing in the browse mods GUI in some instances. ([ more])
* Fixed crash when clicking the same tick the map is loaded. ([ more])
* Fixed desync caused by incorrect sorting of items with inventories (blueprint books) in player's inventory. ([ more])
* Fixed occasional broadcast related crashes on OSX ([ more])
* Fixed save coruption when saving while character is in vehicle with equipment grid and roboport equipment while destructor bots are deployed.
== 0.14.22 ==
Date: 03. 02. 2017
=== Bugfixes ===
* Limit maximum texture size the game will try to use to 16384x16384 pixels.
* Fixed desync related to building of rail signals. ([ more])
* Fixed multiplayer map download getting stuck at 100% when using some broken routers.([ more])
== 0.14.21 ==
Date: 24. 11. 2016
=== Bugfixes ===
* Fixed that the game could crash when a game disappeared from the matching server before its details were requested. ([ more])
* Fixed that numpad numbers didn't work for any game controls. ([ more])
* Fixed crash when merging forces while a player in one the force to be removed was crafting something. ([ more])
* Fixed game would be stuck in main menu if Join Game on Steam failed for some reason.
* Fixed possible save corruption when roboport was destroyed while robot was repairing it. ([ more])
== 0.14.20 ==
Date: 09. 11. 2016
=== Bugfixes ===
* Fixed LuaSurface::can_place_entity didn't work for tile ghosts. ([ more])
* Fixed curved rails woudln't render correctly as enemy forces.
* Fixed searching in the technology GUI wouldn't work in some cases. ([ more])
* Fixed that the config option other.use_version_filter_in_browse_games_gui defaulted to false on linux. ([ more])
* Fixed "E" (close GUI) couldn't be used when numeric-input fields were focused. ([ more])
* Fixed that disabling recipe groups in the settings disabled subgroups as well.
* Fixed that the changelog GUI allowed editing the read-only text. ([ more])
* Fixed (again) that the natural signal direction wasn't picked primarily when 2 way signal and normal signal can be built on the same spot.
* Fixed that deactivated belts would sometimes still move items if connected to Underground Belts or Loaders. ([ more])
* Fixed that the multiplayer game could crash randomly due to the packet fragmentation implementation issue.
=== Scripting ===
* Added LuaPlayer::disable_recipe_subgroups.
== 0.14.19 ==
Date: 04. 11. 2016
=== Bugfixes ===
* Fixed that the demo version couldn't start.
* Fixed that items (like grenades) could be used also in the map view. ([ more])
* Fixed tutorial level 2 scripting.
* Fixed weird recipe sorting in the demo.
* Fixed that the game crashed when it was closed while sound settings were opened.
== 0.14.18 ==
Date: 02. 11. 2016
=== Bugfixes ===
* Fixed Supply scenario Gui when playing in multiplayer.
* Fixed unresearchable gates technology in New hope campaign level 1. ([ more])
* Fixed LAN games getting deselected. ([ more])
* Fixed crash when clearing items robots held through script. ([ more])
* Possibly fixed xrandr related crash on Linux. ([ more])
=== Minor Features ===
* Added minimum_latency_in_ticks to server settings (for headless server) and into config (for starting game from gui).
* Enemy players are shown on the map when the chunk is being charted (a radar or player is exposing it).
== 0.14.17 ==
Date: 27. 10. 2016
=== Bugfixes ===
* Fixed quickbar clearing wouldn't work when taking part of the stack. ([ more])
* Fixed that mod browser sorting column would be ignored after using the search. ([ more])
* Actually fixed Has Mods filter in browse games GUI ([ more]).
* Fixed that the "can't open enemy structures" error would show when it was never possible to open any GUI for the entity. ([ more])
* It's now not possible to switch to the install-mods screen while there are mods pending deletion. ([ more])
* Fix constant combinator ignoring item_slot_count prototype change after creation ([ more]).
=== Changes ===
* Tweaked map transfer algorithm.
== 0.14.16 ==
Date: 25. 10. 2016
=== Bugfixes ===
* Fixed crash related to technology migration. ([ more])
* Fixed item sub groups wouldn't be used in the recipe GUI when item groups were disabled. ([ more])
* Public and LAN game visibility are now separate settings (in GUI and in server-settings.json), and they can be toggled runtime with the /config command.
** See data/server-settings.example.json for a way to specify the visibility, as the old one will not work anymore.
* Fixed has password/mods filters not working.
* Fixed problems with determining external IP address for MP games. ([ more])
== 0.14.15 ==
Date: 24. 10. 2016
=== Changes ===
* Improved the browse-mods GUI by downloading mods while browsing the mods list.
* Improved the delete-mod functionality in the installed-mods GUI.
* Achievements unlocked locally without using steam get unlocked on steam once the game is started in steam mode.
* Storage tanks connected to the circuit network will output floored fluid values instead of rounding them.
=== Bugfixes ===
* Fixed that biters would sometimes attack non-polluting entities ([ more]).
* Added commandline option --bind to select an ip address to host a game at ([ more])
* Fixed that different capitalisation of the same username could be used to: 1. join the game twice 2. evade the ban list 3. evade admin list.
* Fixed fluid info would get rendered twice when alt-info was on while hovering the mouse over assembling machines. ([ more])
* Fixed that it wasn't possible to connect with too many mods. ([ more])
* Fixed crash when pasting huge strings into mod GUIs. ([ more])
* Changed the clear blueprint icon to the trashcan icon and moved ot on the left of the cancel button, so it is less confusing.
* Fix of possible leak of information box windows when closing game. ([ more])
* Fix PRINTSCREEN and SCROLLLOCK not working as keybinds. ([ more])
* Fix map download limit not working for speeds under 101KB/s. ([ more])
=== Scripting ===
* Added LuaSurface.set_chunk_generated_status().
* Added defines.chunk_generated_status.
== 0.14.14 ==
Date: 14. 10. 2016
=== Changes ===
* Added "Show player names on minimap" option to graphics settings.
* Added multiplayer server option "Autosave only on server".
* Deconstructing/canceling deconstruction sets the "last user" on an entity.
=== Optimisations ===
* Further performance improvements to the trains GUI.
* Improved performance in the browse-mods GUI when filtering/sorting.
=== Bugfixes ===
* Factorio is now per-monitor DPI-aware on Windows 8.1 and Windows 10. ([ more])
* Decreased the size of connection accept message with lot of mod which could help some people with 50+ mod multiplayer games. ([ more])
* Fixed Alt+Tab while holding right mouse button down made the game GUI unresponsive. ([ more])
* Fixed missing localised name definition. ([ more])
* Fixed tightspot level 5 recipes. ([ more])
* Possible fix for crash when initializing mouse-like devices on some Mac OSX computers. ([ more])
** This is followup to bugfix ([ more])
* Fixed problems with "The connection has been broken due to keep-alive activity" ([ more])
* Fixed wrong calculation of resistances for small damage values. ([ more])
* Fixed the trains GUI schedules would force scroll to the current train stop with a large amount of trains.
* Fixed crash when using LuaGameScript::remove_offline_players. ([ more])
* Fixed crash when setting invalid sprite parameters. ([ more])
* Fixed crash when loading save with removed entities. ([ more])
* Fixed mining drills would keep putting items on belts marked for deconstruction. ([ more])
* Fixed crash when removing rails with signals reserved by the circuit network. ([ more])
* Fixed that ammo wouldn't be placed in the quickbar even when a quickbar filter was set for it. ([ more])
* Fixed very small numbers saved in script state would produce unloadable save. ([ more])
* Fixed stuck key in CMD combinations on Mac (hopefully). ([ more])
=== Scripting ===
* Renamed LuaInventory::has_filters to LuaInventory::supports_filters.
* Added LuaInventory::is_filtered.
* Removed LuaEntity::has_direction as LuaEntity::supports_direction already exists and does the same thing.
== 0.14.13 ==
Date: 05. 10. 2016
=== Changes ===
* The /config command now operates through /config get and /config set.
* Added additional options to the /config comand: allow-commands, max-upload-speed, autosave-interval, afk-auto-kick, verify-user-identity, only-admins-can-pause, ignore-player-limit-for-returning-players.
* Added tab-complete parameters logic to the commands: config, color, and help.
* Updated Team production challenge with 2 new challenge modes and a new map set.
* Reconnecting to multiplayer game that the player already is in (being dropped probably) instantly closes the previous connection and connects the player.
=== Optimisations ===
* Improved performance when using a lot of vehicles with equipment grids in multiplayer. ([ more])
* Improved performance in the Trains GUI when trains have large schedules. ([ more])
=== Bugfixes ===
* Fixed desync loop related to solar panels in more than one electric network.
* Fixed desyncs related to movement of damaged vehicle.
* Fixed module requests getting removed if concrete was built under them. ([ more])
* Possibly fixed hang in stopping sounds when exiting Factorio on Windows. ([ more])
* Fixed the small errors of movement in latency hiding.
* Fixed Gui related script error in team production challenge scenario.
* Fixed crash when attempting to set belt directions to diagonal directions. ([ more])
* Fixed duplicate grenade damage 5 research. ([ more])
* Fixed car/tank rotation speed was half what it should be. ([ more])
* Fixed map downloader getting stuck and flooding the network after a big timeout.
* Fixed rotating of placed flamethrower turret. ([ more])
* Fixed that /command would warn about disabling achievements even in situations where achievements weren't possible. ([ more])
* Fixed that custom gui input was processed even when the game was being saved in singleplayer. ([ more])
* Fixed that boiler wouldn't work after being replaced by bots. ([ more])
* Fixed possible desync when boiler would get destroyed and created a ghost.
* Fixed crash when destroying fire during the entity_died event. ([ more])
* Fixed that error messages of wrong zip files in the mod folder weren't giving error message that would be informative enough. ([ more])
=== Scripting ===
* Added read property LuaEntity::has_direction.
* Added LuaTile::hidden_tile.
* Added the ability to use LuaSurface::get_tile(0, 0) or LuaSurface::get_tile({0, 0}) when getting tiles.
* Added LuaGameScript::connected_players read and LuaForce::connected_players read.
=== Modding ===
* Added check that the selection box contains the [0, 0] point.
== 0.14.12 ==
Date: 30. 09. 2016
=== Changes ===
* The following settings are now settable only in server-settings: allow_commands - default is "admins-only" autosave_interval - default is 10 autosave_slots - default is 5 afk_autokick_interval - default is 0 auto_pause - default is true
* Added /toggle-heavy-mode command. It can be used to generate files that help us to investigate server in a state where all new players get a desync loop.
* Desync reports are now much bigger, but have bigger chance of being useful.
=== Bugfixes ===
* Fixed trains slowly moving forward when stopped on a signal ([ more]).
* Hopefully fixed Lua desyncs caused by string formatting functions behaving differently on different platforms.
* Fixed desync related to locale keys defined by different languages. Item names now use the locale key of the first item-to-place, the first equipment-to-place, or if both of those are missing the normal "" - unless manually set in the prototype. ([ more])
== 0.14.11 ==
Date: 29. 09. 2016
=== Changes ===
* Server started with --start-server-load-scenario will now save to saves/<scenario name> upon exit.
* Multiplayer usernames can only consist of letters, numbers and -_. characters.
=== Bugfixes ===
* Possible fix for a server not responding error.
== 0.14.10 ==
Date: 28. 09. 2016
=== Changes ===
* Disabled multiplayer support in the 32 bit version of the game.
=== Bugfixes ===
* Potential fix of the crash after desync.
* Fixed desync related to electric network statistics of accumulators.
* Fixed assertion fail in tightspot level-05 ([ more])
* Removed 2 redundant research prerequisites. ([ more])
* Fixed non even selection boxes of locomotive versus cargo wagon. ([ more])
* Fixed that Factorio would crash when unable to delete a mod. ([ more])
* Fixed that the chart would display user's names from other surfaces. ([ more])
* Fixed blueprint tiles alignment inside preview/editor. ([ more])
* Fixed player limit disallowing connection attempt in public server list. ([ more])
* Fixed mod browser filters and ordering being lost. ([ more])
* Fixed freshly installed mods not being marked in the mod browser. ([ more])
* Fixed signals sometimes not finding their child signals properly. ([ more])
* Fixed up/down keys in schedule gui were not selecting properly. ([ more])
* Additional keys ignored when the console is opened. ([ more])
* Fixed that aliens would ignore very narrow paths they could barely fit through. ([ more])
* Fixed that numbers were sometimes rounded differently on 32 bit systems in lua.
* Fixed that the game would freeze when game.speed was set to a value less than 0.2. ([ more])
* Fixed cargo wagon air resistance being smaller than that of the locomotive.
* Fixed of loading "require_user_verification" from server-settings (It was called verify_user_identity at one place and require_user_verification at other).
* Fixed underground belt fast replace when replacing the same belt multiple times. ([ more])
* Fixed rendering of turret range when construction network area overlay is also being drawn. ([ more])
* Temporary decrease of decorative entities counts.
* Fixed server max upload speed.
* Fixed that Factorio wouldn't give an error when --start-server-load-scenario was combined with --start-server or --start-server-load-latest. ([ more])
* Fixed beam would apply one extra damage tick. ([ more])
=== Changes ===
* Multiplayer map downloading GUI shows average over the last 2 seconds instead of 20 seconds.
== 0.14.9 ==
Date: 22. 09. 2016
=== Changes ===
* Added admin field to server-settings.json, list of case-sensitive usernames that will become admins on connecting.
* Admins are exempt from player count limit.
=== Bugfixes ===
* Fixed that the server could be running even if it was supposed to be stopped.
* Fixed Modded key bindings would fire extra times if 2 mods had the same keybinding. ([ more])
* Fixed that parsing players by index in scripts didn't work correctly. ([ more])
* Fixed that Factorio wouldn't release memory back to the OS after unloading a large save on Linux. ([ more])
* Fixed crash when restarting Factorio due to mod change when executable is read-only on Linux. ([ more])
* Game will no longer be capped at 300UPS when using high game.speed and vsync. New cap is FPS*5*game.speed. ([ more])
* Fixed possible crashes when setting combinator parameters.
* Fixed that clients could send a lot of useless data when recovering after connectiontion problems while playing multiplayer game.
* Fixed that recipe overload_multiplier wasn't used for furnaces. ([ more])
== 0.14.8 ==
Date: 20. 09. 2016
=== Optimisations ===
* The crc check cycles between sets of 10 players, reducing the time of it in crowded games.
=== Minor Features ===
* Disconnecting wires now updates the "last user" tag.
* Technology progress is preserved when the research is changed before it is completed.
* Added ignore_player_limit_for_returning_players option to the server-settings and equivalent when hosting from the game.
* Added in game command /config password <password>. It allows server admins to change the server password.
* Added in game command /config max-players <number>. It allows server admins to change the maximum number of players.
* With more than 10 players in multiplayer game, the server only saves the map for joining players once in a while, so the game isn't interrupted by saving every couple of seconds in bigger games.
** It goes from 1s with 10 players up to 45s with 450 players (which is the maximum).
* Added only_admins_can_pause_the_game into the server-settings.
=== Bugfixes ===
* Fixed that you could enter enemy vehicles. ([ more])
* Fixed that zooming the view during pause (via Shift-Space) would teleport the player. ([ more])
* Fixed vehicle machine guns not showing bonuses. ([ more])
* Fixed performance issue on maps with lot of surfaces (for example maps with Factorissimo mod.)
* Fixed gates not opening for characters soon enough. ([ more])
* Fixed some campaign levels didn't allow interacting with any entities at some places. ([ more])
* Fixed crash when opening the character GUI in the map editor. ([ more])
* Fixed redundant technology requirement. ([ more])
* Fixed server browser playtime column formatting ([ more])
* Fixed crash related to rail-signal connection. ([ more])
* Fixed crash when reconnection attempt is refused. ([ more])
* Fixed that when server quit/dropped, the dialog could be hidden behind menu. ([ more])
* Optimised inserting items to chests with large inventories; this will boost performance for some games with Warehousing mod. ([ more])
* Fixed duplicate mods crashing the game on startup ([ more])
** Instead, a notice box is displayed and the highest (possibly unzipped) version is preferred.
* Moved the downloading/saving/loading progress bar of other people in a scroll pane so it doesn't cover the whole left part of the screen with a lot of people.
* Fixed the quickbar selection wouldn't properly update when interacting with other entities in some cases. ([ more])
* Fixed that --benchmark would process its argument differently than all other command-line parameters ([ more])
* Fixed crash when loading game with character in flying vehicle from mod that is over water. ([ more])
== 0.14.7 ==
Date: 15. 09. 2016
=== Bugfixes ===
* Fixed technology GUI in single player.
== 0.14.6 ==
Date: 15. 09. 2016
=== Changes ===
* Drop detection got little bit stricter so the drop timeout was increased from 10 to 20 seconds.
* If you log in with your email, your multiplayer username gets set to your actual username, not your email address.
=== Minor Features ===
* Added --start-server-load-scenario <scenario name> command to start scenario with the given name.
* As a tribute to Arumba's mega-game, the "build by" was renamed to "last user" and it is updated whenever the entity is: rotated, has circuit condition changed, setting pasted, recipe changed, filter changed, output signal changed, combinator settings changed,
* Added speed change based on zoom when in god mode into the latency hiding.
* The player was killed messages now contain a name of entity or player who caused that.
=== Bugfixes ===
* Player killed messages are shown only to players of the same force.
* Fixed that zoom to cursor didn't work in ghost/god controller.
* Fixed that player dropped, but it shown the "the can't keep up message" instead.
* Fixed that server got deselected when changing sorting or filters in public game list. ([ more])
* Additional attempt to make the keyboard settings compatible between linux and windows. ([ more])
* Fixed that player crafting categories accepted empty string as value, which resulted in crash later. ([ more])
* Fixed that progress bar during updating mods wasn't moving ([ more])
* Fixed beam damage_interval of 0 would crash the game. ([ more])
* Fixed gates wouldn't open while in a vehicle without a character. ([ more])
* Fixed GUI scaling in the mod browser. ([ more])
* Fixed (hopefully) that wrong server details were displayed ([ more])
* Fixed that it wasn't possible to build rail blueprint over floor-tile ghost. ([ more])
* Fluid status icons will display floored values, same as all other icons. ([ more])
* Fixed crash that prevented the game to start on some OS X configurations. ([ more])
* Fixed that changing character direction from script didn't work. ([ more])
* Fixed game getting stuck when a new account was created from the Steam version ([ more])
* Additional signal/rail building fix. ([ more])
* Fixed that some entities would not remember their circuit parameters in the map editor. ([ more])
* Fixed blueprint tooltip wouldn't update when clearing a blueprint. ([ more])
* Fixed crash when loading some old save files containing circuit connections to be removed. ([ more])
* Fixed crash when removing migrated equipment grids due to mod removal while mods had references to the grids. ([ more])
* Fixed wires wouldn't get applied to inserters through blueprints in some cases. ([ more])
* Fixed that player could get unkickable under specific circumstances.
* Fixed train crash when it found a path in the opposite direction that it just started moving. ([ more])
* Fixed Factorio updater didn't pass command line arguments when restarting the game after update. ([ more])
* Fixed crashes when loading old or some invalid maps in the map editor. ([ more])
* Clearer error messages and interaction when loading old or invalid maps.
* Fixed curved rail bounding box not allowing large electric poles to be build in specific configurations. ([ more])
* Fixed that joining games through Steam wouldn't work. ([ more])
* Fixed not being able to interact with the error dialog when an error happens while interacting with GUIs. ([ more])
* Fixed UI not responding to input in some situations when progress guis were shown. ([ more])
* Fixed personal roboport wouldn't update properly when modded equipment was used in some cases.
* Fixed train ignoring wait conditions in some cases ([ more])
* Fixed chain signal visual state right before a station ([ more])
* Fixed that the client was stuck when he disconnected after a reconnect.
* Fixed Save As GUI not responding to input after multiplayer disconnect with chat open. ([ more])
* Fixed inserter placement in the 2nd level of new hope campaign mission. ([ more])
* Server automatically deletes temporary save files once the upload of finishes.
* Fixed recipe tooltips containing fluid in assembling machines wouldn't show the available fluids properly. ([ more])
* Fixed desync when placing floor blueprint and mining placed ghosts at the same time. ([ more])
* Fixed that you could disconnect wires in from Transport Belt Madness scenario's Electric Poles. ([ more])
* Potential fix of crash after desync.
* Attempted to handle socket unblock error in a way that won't crash the game. ([ more])
=== Scripting ===
* Added LuaGameScript::print - print to all players.
* Added LuaForce::print - print to all players on the force.
* Added LuaSurface::print - print to all players on the surface.
* Fixed entities with positive emissions_per_tick would generate pollution even when pollution was disabled. ([ more])
* Renamed LuaEntity::built_by to LuaEntity::last_user
== 0.14.5 ==
Date: 09. 09. 2016
** Features:
* Added Team Production Challenge scenario to the base game.
=== Minor Features ===
* Improved rendering of big tables and other scrollable widgets.
* It is possible to /ban players who aren't present in the map.
* The headless server saves the banlist in banlist.json file, so a server owner can maintain a single banlist across multiple maps.
* Added /silent-command: Same as /c, but doesn't print the command ran to every player's console. Available only to server admins and over RCON or server console.
* Added /purge <player>: removes all messages by the given player from chat. Admin only command.
* Added /clear - clears your chat window.
* Added /mute and unmute <player>: prevents the given player from talking in chat. Admin only commands.
* Added /mutes: displays all muted players.
* Added /ignore and unignore <player>: ignores messages from the given player. Admin and RCON messages are still shown.
* Added /ignores: displays all players you're ignoring.
* Command names in the console can be tab-completed.
* Player names in the console can be tab-completed.
* Added AFK Auto kick interval to multiplayer host settings (with never as default).
=== Bugfixes ===
* Fixed mousewheel scrolling of game information ([ more])
* Fixed that the headless server would create a character when run with --no-auto-pause. This prevented people from joining their own servers. ([ more])
* Fixed that the game could desync when LuaForce::players was used, as the order was not in well defined order.
* Fixed making blueprints wouldn't reset the build rotation. ([ more])
* Fixed that input actions were triggered even though a text box was focused. ([ more])
* Fixed that blueprint/deconstruction would run while on the map view. ([ more])
* Fixed train getting stuck on a yellow signal ([ more])
* Fixed that the notification about changed research was shown even when the other player selected the same research as already in progress. ([ more])
* Fixed that underground belt "teleported" few items when the connection was built. ([ more])
* Fixed that the mod info gui wasn't scrollable, so it didn't fit the screen sometimes. ([ more])
* Fixed that saving scenario to the same directory it was loaded for resulted in deleting all the script and locale files. ([ more])
* Fixed that the menu wasn't accessible when the respawn countdown was there, until the menu was closed and opened again.
* Fixed inserters sometimes taking items from cargo wagons not in front of it. ([ more])
* Fixed that clicking a mod's GUI during an autosave would crash the game. ([ more])
* Fixed /reply wouldn't work properly when players have names with tags.
* Fixed shadows being drawn over pipe and storage tank windows.
=== Scripting ===
* Added LuaEntity::supports_direction
* Changed LuaEntity::direction write to not error if the entity doesn't support directions.
* Moved the top gui to be above the left gui as in 0.13 ([ more])
* Added LuaPlayer::afk_ticks and LuaPlayer::online_ticks.
== 0.14.4 ==
Date: 06. 09. 2016
=== Minor Features ===
* Included the ghost/god controller movement in the latency hiding.
=== Changes ===
* Research notifications are only printed to players of the same force.
* Removed the /team command, chat is team only by default, added /shout (/s) command to speak to everyone.
* Tweaked the /help command, so it prints just the list of commands, and it is required to write /help <command> to get details
* Fixed crash when entities are migrated across types while in blueprints. ([ more])
* Fixed crash when setting filters in the map editor. ([ more])
* Don't allow to deconstruct tiles that have nothing under it.
=== Scripting ===
* Added read/write of LuaPlayer::tag. This tag is added to the player username in chat and on map.
* Added LuaEntityPrototype::logistic_mode read.
* Added a 4th (optional) parameter to LuaGameScript::write_file to write only for a specific player (or the server).
=== Bugfixes ===
* Fixed crash when entities are migrated across types while in blueprints. ([ more])
* Fixed crash when setting filters in the map editor. ([ more])
* Additional desync fix related to selection of trains. ([ more])
* Fixed crash when canceling deconstruction of tiles of other force.
* Fixed crash related to reconnecting to a game after 3 desyncs
* Fixed crash when using quickbar shortcuts in ghost mode in multiplayer. ([ more])
* Fixed crash when changing player's controller in multiplayer while the player opens entity GUI with inventory. ([ more])
* Fixed crash when opening entities that only exist in the latency hiding. ([ more])
* Additional latency state fixes related to lag spikes and latency changes.
* Fix of one way (hopefully the only one), the ghost player could appear.
* Fixed freeze with specific modded recipes. ([ more])
* Fixed LuaForce::research_progress could return invalid values in specific cases. ([ more])
* Fixed error when manually calling LuaGameScript::raise_event(). ([ more])
* Added additional inventory defines: car_fuel, car_trunk, car_ammo, and cargo_wagon. ([ more])
* Fixed that the server commands didn't work when there was noone online and the autostop was on (again) ([ more])
* Fixed that LuaUnitGroup::set_command wouldn't update the command of its members.
* Fixed that mod GUIs would get left behind if the mod was disabled due to an invalid factorio_version. ([ more])
* Fxied that the Lua console would ignore first pressed key if the "toggle console" control was bound to a mouse button. ([ more])
* Fixed wrong fonts used for languages using non-latin characters. ([ more])
* Fixed crash on blueprint placement with rail signals with connected wires. ([ more])
== 0.14.3 ==
Date: 02. 09. 2016
=== Minor Features ===
* When selecting anything that uses item/signal filters the filter is automatically set to the item in the cursor if any.
* When save of scenario is loaded in multiplayer, it's scenario is saved in user scenarios.
* Added /time command to print the current map age.
* Added option to host multiplayer game with scenario (it only had new game/load game there).
=== Changes ===
* server-settings.json are automatically used if they are in the write path and not specified on the command line.
* Fonts specified in a locale configuration now have to specify the mod name in their paths.
** For example, the default font is now specified as "default=__core__/fonts/TitilliumWeb-Regular.ttf".
=== Bugfixes ===
* Fixed desync related to selection of trains. ([ more])
* Fixed slowdown in recipe tooltips with large amounts of recipes. ([ more])
* Fixed show_gui not working with game.take_screenshot.
* Fixed accidentally turned on graphics safe mode for all Steam users, which set graphics settings to low values. ([ more])
* Fixed that the game eated all the CPU in headless mode when no player was there.
** This also fixed that the memory used grew few bytes per tick when being a server.
* Fixed console commands not working when entered directly on Windows headless server. ([ more])
* Fixed that the server would ignore specified username when given a login token. ([ more])
* Fixed that it wasn't possible for mods to use custom fonts. ([ more])
* Fixed crash when removing mods that had items on transport belts that were connected to the circuit network. ([ more])
* Fixed that right clicking in the craftign menu to craft 5 items wouldn't de-focus the search widget. ([ more])
* Fixed that joining paused game resulted in a black screen that was there until someone else unpaused it. ([ more])
* Fixed that map2scenario errors when loading an edited save file that contained assembling machines connected to inserters. ([ more])
* Fixed that the exit message was wrong when the person just dropped. (saying he couldn't keep up)
* Fixed that after reconnecting to server using the small save/quit/reconnect window didn't close the window. ([ more])
* Potential desync fix related to locomotives being selected in the same tick they are mined by someone else.
* Potential fix of crash after a desync.
=== Scripting ===
* Moved LuaControlBehavior::disabled to LuaGenericOnOffControlBehavior::disabled and fixed it to work correctly. ([ more])
* Fixed crash after confirming other settings as a server in multiplayer game. ([ more])
== 0.14.2 ==
Date: 30. 08. 2016
=== Minor Features ===
* Notify when someone starts or changes the research in the console.
* Allowed to specify limit of the upload speed when hosting a multiplayer game.
** This can be also specified when creating the headless server in the server-settings file by setting the max_upload_in_kilobytes_per_second
* When selecting player logistic requests and auto-trash filters the filter is automatically set to the item in the cursor if any.
=== Changes ===
* Increased the time the text written in the console (chat/commands) stay on the screen fully visible.
* Increased the distance of rail direction check for signal building from 3 to 5 rail segments. ([ more])
=== Bugfixes ===
* Fixed signal to rail connection in junctions when rails are build after signals. ([ more])
* Potential fix of desyncs related to transport belts and circuit network.
* Experimental attempt to limit server upload speed when it is too high and it causes all other players to have their latency increased.
** This logic is only used when the "max_upload_in_kilobytes_per_second" is not specified.
* The download speed starts at higher value and grows faster.
* Fixed that personal logistics would stop working. ([ more])
* Fixed crash related to removing progress bars when exiting the multiplayer.
* Fixed constant combinator description not showing negative signals. ([ more])
* Fixed missing "saving-local-variant-of-mp" key.
* Fixed that rail remnants were not always properly removed when horizontal rails were built over.
* Fixed that server would crash on second RCON connection. ([ more])
* Fixed that --allow-commands sometimes wouldn't take effect. ([ more])
* Fixed that attacking an enemy spawner with the flamethrower wouldn't aggravate enemies. ([ more])
* Fixed the drag-map control defaulting to shift + mouse button 1. ([ more])
* Fixed achievement layout problems. ([ more])
* Fixed logging in with an email address for mod/server browser wasn't working.
* Fixed ping in the server browser not working.
* Don't offer to save after server drop/quit when the map isn't actually loaded. ([ more])
* Fixed trains GUI wouldn't scroll correctly when searching. ([ more])
* Fixed crash when mining a vehicle the character was in while over water. ([ more])
* Fixed that it was possible to put more energy into accumulator than its capacity through the script. ([ more])
== 0.14.1 ==
Date: 26. 08. 2016
=== Bugfixes ===
* Fixed that exiting hosting game could stuck Factorio forever.
* Possible fix game not showing in browse game list. (If it happens anyway, we will have more info)
* Fixed that a very big number of biters on a map could cause very significant UPS drop. ([ more])
== 0.14.0 ==
Date: 26. 08. 2016
=== Major Features ===
* Fixed multiplayer
      1) Internal reliability and stability improvements.
      2) Players don't have to wait for other clients to download and load the game.
      3) Decreased network trafic.
      4) It is possible to use menu and quit the game when connecting to the game.
      5) Server doesn't stop/slow down the game when some client is too slow, stops communicating or saves the game longer than the server.
      6) Players automatically quit game after 3 desyncs.
      7) Download speed tweaks.
** Features:
* Added /team command that messages all players from the same force.
=== Minor Features ===
* When selecting inventory filters the filter is automatically set to the item in the cursor if any.
=== Changes ===
* Disabled loading of saves before 0.11.0 version (You can use 0.11.22 to load older saves and re-save them).
* Removed the option to enable/disable latency hiding, it is always on on clients (and off on the server).
=== Bugfixes ===
* Factorio shouldn't crash anymore when Direct3D device is lost due to locking screen or entering sleep mode.
=== Modding ===
* Added support for equipment grids in cars, tanks, locomotives, and cargo wagons.
* Changed equipment grids to work as protoypes: defined and referenced by things that use them.
* Changed equipment and equipment grids to have categories that define what equipment can go in what equipment grid.
=== Scripting ===
* Fixed game freeze when an error was thrown during the player left game event.
* Removed LuaItemStack::has_grid.
* Removed LuaItemPrototype::equipment_grid_size.
* Changed LuaItemStack::grid to return nil if the item doesn't have a grid.
* Added LuaItemPrototype::equipment_grid.
* Added LuaEntity::grid read.
* Added Added LuaEquipmentGridPrototype.
* Added LuaEquipmentGrid::prototype read.
* Added LuaEquipmentPrototype::equipment_categories read.
* Added LuaForce::unchart_chunk()
* Added LuaSurface::delete_chunk(...)
* Added LuaForce::unchart_chunk()
== 0.13.20 ==
Date: 29. 08. 2016
=== Bugfixes ===
* Fixed the demo wasn't working.
* Fixed equipment grid GUI didn't size properly in some cases. ([ more])
=== Modding ===
* Fixed "factorio_version" not being checked correctly in some cases. ([ more])
=== Scripting ===
* Fixed "unknown" error in some cases when using radio button GUI elements.
* Fixed crash when a mod custom event event would error. ([ more])
* Added LuaGuiElement::type read.
== 0.13.19 ==
Date: 26. 08. 2016
=== Bugfixes ===
* Fixed that the Golem, Watch your step and doing it right didn't activate from steam cloud on new factorio installation.
* Fixed selection boxes of trains in specific situations. ([ more])
* Fixed that unclosable character window was opened when it was ordered to open exactly at the same tick when the character died. ([ more])
* Fixed possible desync caused by inserters disabled by circuit network. ([ more])
=== Scripting ===
* Added LuaSurface::regenerate_entity(...)
== 0.13.18 ==
Date: 25. 08. 2016
=== Changes ===
* Changed train wait conditions to use standard boolean precedence for evaluation, instead of a simple left to right accumulative evaluation.
=== Balancing ===
* Increased tank machine gun range to 20.
=== Bugfixes ===
* Fixed console command warning not sticking through save-load. ([ more])
* Fixed that vehicle machine guns would show in the logistics request and inventory filter selections.
* Fixed crash when number animation variations of unit-spawner entity is reduced. ([ more])
* Fixed clearing blueprints didn't clear the label. ([ more])
* Fixed crash when removing entities that had active alerts. ([ more])
* Fixed that sending random garbage to the RCON port could crash Factorio. ([ more])
* Fixed GUI size issues with modded recipes that have a ton of effects. ([ more])
* Fixed script errors with tight spot level 5. ([ more])
* Fixed the market entity not migrating/handling removed items it was offering. ([ more])
* Fixed sound settings not applying when pressing escape. ([ more])
* Fixed a crash that would happen after changing UI scale with the inventory open. ([ more])
* Fixed deconstruction would reset the build rotation value. ([ more])
* Fixed copy-paste between inventory sizes applying the inventory restriction oddly. ([ more])
* fixed game.regenerate_entitiy() not working at all. ([ more])
* Fixed that it was possible to create an assembling machine with zero energy usage. ([ more])
=== Modding ===
* Fixed crash when trying to connect wires to entities with 0 wire connection distance. ([ more])
=== Scripting ===
* Fixed LuaSurface::map_gen_settings.shift not working. ([ more])
* Fixed chunk positions would get improperly rounded instead of floored. ([ more])
* Added LuaConstantCombinatorControlBehavior::enabled read/write.
* Added upper limit to resolution parameter of LuaGameScript::take_screenshot function. Limit for width and height is 16384.
* Added LuaStyle::visible read/write.
== 0.13.17 ==
Date: 17. 08. 2016
=== Bugfixes ===
* Fixed a crash caused by enemy AI. ([ more])
* Fixed crash due to false-positive detection of a save corruption. ([ more])
* Fixed circuit network controlled signal penalty once more ([ more])
* Fixed crash when removing mod with modded rocket silo. ([ more])
== 0.13.16 ==
Date: 16. 08. 2016
=== Changes ===
* Changed the personal roboport so it reacts faster to jobs in range.
* Added graphics option "Enable tree sprite mipmaps" that should reduce GPU load when drawing large forests.
* Changed default value of "Lights render resolution" graphics option to 0.25. High values of this setting have negative performance impact on drawing lamps.
* When the first LUA command is used, players are warned that it would disable achievements.
* Changed default renderer for AMD GPUs back to DirectX.
* Rewritten sandbox scenario to work in multiplayer.
=== Bugfixes ===
* Fixed rail signals getting sometimes stuck as reserved. ([ more])
* Fixed that the game would crash when trying to load a save that contained unit groups with members in different surfaces. ([ more])
* Fixed combinators not drawing lights for the activity led.
* Reverted the change from == 0.13.12 == that would disable and hide vsync in some cases. ([ more])
* Fix that biters wouldn't become aggravated when damaged by the flamethrower. ([ more])
* Fixed game sometimes not being focused properly on OS X. ([ more])
* Fixed that the car could shoot itself. ([ more])
* Fixed desync related to fast-replacing filter inserters with other inserters. ([ more])
* Don't remove a wall's circuit connection when gate is destroyed and ghost is created. ([ more])
* Fixed opened machine sound sometimes being high-pitched. ([ more])
* Fixed that some keybindings wouldn't register properly after a game restart. ([ more])
* Fixed that it would be possible to manually craft items the player does not have enough ingredients for. ([ more])
* Fixed playtime in public game browser being 0 for the first minute the server is up.
* Fixed train path finding penalty for circuit network disabled signals.
* Fixed rail planner collision checks for rails in west and south direction. ([ more])
* Fixed requester chest was missing vehicle impact sound. ([ more])
* Fixed that dragging the research button would drag and move the technology tree. ([ more])
* Fixed that the selected slot wouldn't update properly when the quickbar was rotated. ([ more])
=== Modding ===
* Fixed crash when mods use tables as key values in prototype data. ([ more])
* Added example definition of an electric energy interface.
* Fixed copy&paste on modded constant combinator would copy also number of item slots. ([ more])
* Fixed possible desync caused by inserters putting items directly to loaders.
* Fixed loader wouldn't stop loading to chest marked for deconstruction.
=== Scripting ===
* Fixed LuaEntityPrototype::resource_category crash. ([ more])
* Fixed changing force of construction or logistic robot would cause game state corruption. ([ more])
* Added LuaEntity::get_fuel_inventory().
* Added event on_player_changed_surface.
* Added LuaInventory::find_item_stack(...).
* Added LuaControlBehavior::disabled read.
* Added LuaVirtualSignalPrototype and LuaGameScript::virtual_signal_prototypes read.
* Changed LuaEntity::get_filter()/set_filter()/filter_slot_count to work on both inserters and loaders.
* Added an optional boolean to LuaSurface::spill_item_stack to mark the created items with the to-be-looted flag.
* Added LuaSurface::get_connected_tiles(...).
* Added LuaSurface::get_hidden_tile(...).
* Changed Product::type to string containing "item" or "fluid".
== 0.13.15 ==
Date: 06. 08. 2016
=== Bugfixes ===
* Fixed that rotating the quickbar would make the headless server crash. ([ more])
== 0.13.14 ==
Date: 05. 08. 2016
=== Changes ===
* Surplus items from crafting are again available for crafting other items.
** For example, crafting two green circuits will no longer result in two extra copper wires in the player's inventory. This only applies to items that are automatically crafted as a prerequisite; items the player has explicitly requested to craft will not be used to satisfy the dependencies of any further orders.
* Factorio will output to console window in UTF8 on Windows.
=== Bugfixes ===
* Fixed crash when trying to connect copper wire to invalid entities out of range in the latency state. ([ more])
* Fixed burner fuel sources would keep their energy when dying and being rebuilt by robots. ([ more])
* Fixed inserters would try to grab items from rails instead of chests/entities when build in specific setups. ([ more])
* Fixed disconnecting chests or constant combinators not correctly clearing circuit network. ([ more])
* Fixed a crash that sometimes happened after canceling manual crafting. ([ more]).
* Fixed a bug where canceling a prerequisite product would cancel more than necessary. ([ more])
* Fixed crash when trying to connect power switches in map editor. ([ more])
* Don't force Vsync off on OpenGL. ([ more])
* Fixed error in tight spot level 5. ([ more])
* Fixed a bug where a player's GUI would be reset when any other player in MP pressed the "switch active quickbar" button. ([ more])
* Don't allow sideloading onto a disabled belt. ([ more])
* Fixed game hanging with certain train configurations (loop where last rolling stock touches the first).
* Fixed chain signal colors not being updated when setting signal states from the circuit network ([ more])
* Fixed mod updates sometimes not being found with a large amount of mods.
* Fixed mods browser not being sorted after searching. ([ more])
* Fixed regenerating entities on map ([ more])
* Fixed watch-your-step achievement for real this time. ([ more])
* Fixed "failed to create display" error when switching to another window immediately after launching Factorio. ([ more])
* Fixed isses with saving to NTFS junctions. ([ more])
=== Optimisations ===
* Significantly reduced the high CPU usage caused by the main loop logic from 0.13.10.
=== Modding ===
* Fixed input loader didn't resume loading after being deactivated due to full target container. ([ more])
* Fixed crash when loader connected to splitter is destroyed. ([ more])
=== Scripting ===
* Fixed map corruption and crashes caused by some API functions allowing entities to be used across surfaces when they aren't setup to handle it. ([ more])
* Fixed evolution_factor could be set to a negative number resulting in base build errors. ([ more])
* Fixed crash when using entity of type 'flame-thrower-explosion' with 'create-entity' trigger effect. ([ more])
* Fixed LuaGameScript::take_screenshot() would fail if destination file contained non-english character in its path. ([ more])
* Added LuaEntity::filter_slot_count read.
* Added LuaEntityPrototype::mining_drill_radius read.
* Added LuaTrain::station read.
* Added LuaDamagePrototype and LuaGameScript::damage_prototypes read.
* Added LuaEntity::loader_type read.
* Added LuaRemote::remove_interface(name).
* Changed LuaRemote so interface names must be unique to maintain save/load determinism.
* LuaEntity::revive() will return the revived entity as a second return value if successful and if the ghost was an entity.
== 0.13.13 ==
Date: 30. 07. 2016
=== Bugfixes ===
* Fixed OpenSSL launch issues on Linux ([ more])
* Fixed crash on Windows after multiple restarts when installing mods
=== Modding ===
* Added entity prototype flags "not-blueprintable" and "not-deconstructable".
=== Scripting ===
* Changed LuaEntity::order_deconstruction() to return true/false if it did the deconstruction instead of throwing errors.
* Added LuaPlayer::entity_copy_source - the source entity used during entity settings copy paste.
* Added LuaEntity::request_slot_count read - the number of request slots on the entity or 0 if none.
== 0.13.12 ==
Date: 30. 07. 2016
=== Changes ===
* Vsync will be automatically turned off and hidden from the options menu if desktop composition(windows aero) is on.
* Locale additions and improvements.
=== Bugfixes ===
* Fixed auto trash slots were lost when player died in multiplayer. ([ more])
* Fixed that the headless server would consume 100% CPU. ([ more])
* Fixed that --mod-directory and other command-line arguments would be forgotten on Factorio restart through the mod manager. ([ more])
* Fixed that technology name and description locales didn't work correctly for tiered technologies.
* Fixed using flamethrower and slowdown capsule at the same time could ignite biter more than once and corrupt save.
* Fixed modules could end up in the input slot on furnaces. ([ more])
* Fixed unsightly message when changing player colour in singleplayer. ([ more])
* Fixed inserter circuit "hold" read mode sending the signal 1 tick too late. ([ more])
* Fixed transport belt circuit condition ignoring 1 tick duration signals. ([ more])
* Fixed crash when saving the game fails due to the disk being full. ([ more])
* Fixed the "watch your step" achievement would get triggered by random source-less damage. ([ more])
* Fixed the render layer for turret range visualizations. ([ more])
* Fixed that an inserter could hold more items than its stack-size bonus, if it was created by fast-replacing a stack inserter. ([ more])
* Fixed automated fuel insertion into cars wouldn't fill the fuel inventory. ([ more])
=== Modding ===
* Fixed crash when technology prerequisites ended up being recursive. ([ more])
* Fixed crash caused by destroyer robot beams when compression was enabled for all sprites. ([ more])
* Fixed inserters with stack bonus not dropping the item to it's destination when deactivated. ([ more])
* The fluid icon for the storage tank now scales with the size of the storage tank. ([ more])
=== Scripting ===
* Fixed error when attempting to interact with LuaInventory that has a size > 255. ([ more])
* Fixed crash when robots charging would get disabled through mods. ([ more])
* Fixed wrong error when setting durability of an item. ([ more])
* Added LuaItemPrototype read properties: localised_description, place_as_equipment_result, place_as_tile_result, flags equipment_grid_size, inventory_size_bonus, capsule_action, attack_parameters, inventory_size, item_filters group_filters, sub_group_filters, filter_mode, insertion_priority_mode, localised_filter_message, extend_inventory_by_default default_label_color, draw_label_for_cursor_render, attack_result, attack_range, category, tier, limitations, limitation_message_key straight_rail, curved_rail, repair_result, selection_border_color, alt_selection_border_color, selection_mode_flags, alt_selection_mode_flags selection_cursor_box_type, alt_selection_cursor_box_type, always_include_tiles, durability_description_key, durability.
* Added LuaItemStack::add_durability()/drain_durability().
== 0.13.11 ==
Date: 25. 07. 2016
=== Changes ===
* Further locale changes and polish.
* Horizontal mouse wheel scrolling is now translated to vertical scrolling, because of key binding problems on OS X.
** OS X blueprint book binding is changed back to Shift + Mouse wheel up/down, other custom horizontal mouse wheel bindings are changed to vertical.
=== Bugfixes ===
* Fixed that the Linux binaries would crash after handcrafting finishes. ([ more])
* Fixed offshore pump could be built on top of other offshore pumps. ([ more])
* Fixed pumjack output would show 0.0/s. ([ more])
* Fixed that "show pollution on minimap" didn't work when "show pollution on map" was not enabled. ([ more])
* Fixed scrolling on OS X.
* Fixed exploit of connecting energy producer to more networks and connecting them by switches. ([ more])
* Fixed long handed inserters couldn't pick up from the ends of cargo wagons. ([ more])
* Fixed that when a mod defined a technology with an invalid recipe, it could crash the game. ([ more])
=== Scripting ===
* Fixed accumulators with circuit connectors not working correctly when exported through get_blueprint_entities(). ([ more])
* Changed LuaSurface::find_entities/filtered to take either area, position, or neither instead of just area.
* Added LuaGroup::order read.
== 0.13.10 ==
Date: 22. 07. 2016
=== Minor Features ===
* Added logistics auto-trash slots: the opposite of logistic request slots.
* Added --mod-directory: Specifies which mod directory to use
=== Changes ===
* Increased the size of the curved rail bounding boxes slightly so trains won't damage things built next to them.
* Server stdout messages now contain timestamps and message-type tags
* Biters and other units won't become aggressive as a result of friendly-fire.
=== Bugfixes ===
* Fixed golem achievement incorrectly showing as not-obtained when loading pre 0.13.9 saves in 0.13.9. ([ more])
* Fixed crash related to wire rendering after switching to copper wire while dragging wire. ([ more])
* Map generator tweaks (predictable starting area resources, water only in starting area works now, fixed a few bugs in biome generation).
* Fixed chat message rainbow when the game tick would go past 2147483648. ([ more])
* Fixed password field not being focused when connecting to a game. ([ more])
* Fixed rocket silo moving slow when using efficiency modules.([ more])
* Fixed pressing Escape in multiplayer connect password dialog closed all gui windows. ([ more])
* Fixed gates sometimes not opening soon enough. ([ more])
* Fixed side menu buttons being focusable. ([ more])
* Fixed numbers display rounding up when it shouldn't. ([ more])
* Fixed constant combinator GUI slider sometimes showing different value than the number of items.  ([ more])
* Fixed assembling machine GUI progress bars not sizing correctly. ([ more])
* Fixed tight-spot scenario missing walls around trees. ([ more])
* Narrower descriptions with more line breaking opportunities (mod list, roboport). ([ more])
* Fixed that cunning cancellation of crafting orders could result in free items. ([ more])
** As a result of this fix, your entire crafting queue will be lost when loading a save from 0.13.9 or earlier. We suggest that you finish or cancel all your crafting before upgrading.
* Fixed crash related to custom units. ([ more])
* Fixed mod enabling/disabling sometimes didn't restart the game. ([ more])
* Fixed several issues with buildability checks returning false but entities actually being buildable. ([ more])
* Fix that aggroing a huge amount of biters would cause UPS drop for a long time. ([ more])
* Fixed freeze when dragging sound sliders in some instances. ([ more])
* Fixed bullet shooting speed not working properly. ([ more])
=== Optimisations ===
* Improved performance when building large electric poles in the latency state by click-and-drag. ([ more])
* The game's main loop has been rewritten. This should increase performance in some cases and fixes some freezes and stability issues.
** For example game freezing when changing system time.
=== Modding ===
* Starting area is now 1.5x the size in tiles (also affects tier_from_start).
* Fixed manually defining the localised_name of an item didn't work correctly. ([ more])
=== Scripting ===
* Added LuaEntity::copy_settings() - copies settings from one entity to another as if the player did it.
* Changed LuaSurface::find_entities/count_entities/filtered to search the entire surface if the area isn't defined.
* Fixed crash when trying to set compound command with missing list of commands. ([ more])
* Fixed technology effects are now applied before the research_completed event is fired. ([ more])
* Added LuaGameScript::direction_to_string(...) - converts a defines.direction to the string name.
* Added LuaPlayer::clean_cursor() - acts as if the player pressed the "clean cursor" key.
* Added LuaEntity::mining_target read.
* Added properties to LuaSurface::create_entity to make the creation act as fast-replace building.
* LuaGameScript::take_screenshot now has an additional field "by_player" that when set will cause the screenshot to only be taken on that players local game.
* Added LuaEntity::circuit_connected_entities - the entities directly connected to an entity by the circuit network.
* Added LuaEntity::circuit_connection_definitions - the connection definitions for all wires connected to an entity.
== 0.13.9 ==
Date: 15. 07. 2016
=== Changes ===
* Updated demo campaign tips images.
* Updated/Fixed locale entries.
* Removed --mp-load-game
* Default value for "Lights render quality" graphics options was changed to 1.0.
** If config.ini contains value lower than new minimum (0.25) it will be reset to the default value.
* Lights are rendered with linear filtering to improve quality for lower "Lights render quality" settings. ([ more])
* Added tips and tricks for pasting wagon slots and cycling in blueprint book.
* Mods are now sorted alphabetically in the mods list.
=== Bugfixes ===
* Fixed transport belt madness map showing an empty message dialog out of nowhere.
* Fixed transport belt madness being impossible. ([ more])
* Fixed crash on Linux when stdout was closed after starting Factorio. ([ more])
* Fixed trains of other forces could be seen in the Trains GUI. ([ more])
* Fixed inserters not saving custom pickup/dropoff when exported through the Lua blueprint interface.
* Fixed robots delivering modules into the recipe input slots instead of the module inventory. ([ more])
* Fixed performance issue caused by alt mode when some mods are installed and linear filtering is enabled. ([ more])
* Items stop correctly before a belt deactivated using the circuit network. ([ more])
* Fixed another case where a biter could get stuck. ([ more])
* Fixed crash when using --mp-connect to join a game that requires user verification. ([ more])
* Fixed train GUI would be too big to fit on screen with a large amount of character inventory slots. ([ more])
* Buildings with backer names containing non-ASCII charecters are generated properly.
* Fixed logistic counts when changing stack sizes of items the player was holding.
* Fixed crash when right-clicking electric pole in Map Editor. ([ more])
* Fixed crash when building tiles would result in you dying. ([ more])
* Fixed disabled belts would still move the player. ([ more])
* Fixed crashes related to changing train conditions in the latency state.
* Fixed line breaking in description titles. ([ more])
* Fixed typo in description of flooring items. ([ more])
* Fixed blueprint icons not working as desired when paths where part of the selected area. ([ more])
* Fixed that a username change wouldn't save if the game crashed. ([ more])
* Fixed that clicking an alert button could show the wrong alert. ([ more])
* Fixed flooring placement preview rendered on top of turret base. ([ more])
* Fixed numpad home/end/other keys not working when numlock was off. ([ more])
* Fixed that the game password dialog showed the password. ([ more])
* Fixed that inserters at the very front of trains would sometimes not get enabled when a train would stop. ([ more])
* Fixed the difficulty settings for scenarios not working. ([ more])
* Fixed alignment of some pipe covers. ([ more])
* Fixed the watch-your-step achievement not working. ([ more])
* Rocket parts from building rockets in the rocket silo now show in production stats. ([ more])
* Fixed tracked achievements scrolling off screen when un-tracking them. ([ more])
* Fixed inserter sometimes only dropping one item on the ground before going back. (
* Fixed LuaGameScript::active_mods not showing the correct list of mods. ([ more])
* Fixed signals letting trains pass when the circuit network changes. ([ more])
* Fixed crash when deconstructing an entity with modules to be delivered while hovering the mouse over the entity. ([ more])
=== Scripting ===
* Fixed SpritePath to recipe that inherits icon from its result would not be considered valid. ([ more])
* Fixed crash when setting new research in the on_research_completed event. ([ more])
* Fixed error during the research completed event being un-clickable. ([ more])
* Added LuaTile::position read.
== 0.13.8 ==
Date: 11. 07. 2016
=== Bugfixes ===
* Fixed craftable unit entities desyncing when held over belts. ([ more])
* Fixed character inventory size was limited at 255 instead of the correct 65536. ([ more])
* Fixed mouse wheel left/right bindings not working.
** Changed default blueprint book switching shortcut on OS X to Command + Mouse Wheel up/down
* Fixed aliens getting stuck sometimes. ([ more])
* Fixed inserters not putting fuel in modded burner assemblers in some situations ([ more])
* Fixed headless server would crash when loading save containing sprite-button. ([ more])
* Fixed maps loaded from versions < 0.13.7 not generating any more chunks ([ more])
* Fixed First Steps campaign character death error. ([ more])
=== Scripting ===
* Reverted changes related to 0.13.7 fix for ([ more]). If entity specified in sprite path doesn't have an icon, button will be created anyway, but no sprite will be drawn inside of it.
* Added LuaGui::is_valid_sprite_path() function
* Fixed that if a land mine got blown up and replaced by a robot, it wouldn't arm itself. ([ more])
* Added LuaPlayer::admin read - if the player is an admin.
== 0.13.7 ==
Date: 11. 07. 2016
=== Minor Features ===
* Holding the "drop item" key will keep dropping items.
* Rocks can be mined while holding blueprints.
=== Graphics ===
* Updated the stack inserter technology icon.
=== Balancing ===
* Medium and large worms spawn further from the starting area.
=== Bugfixes ===
* Connect game dialog remembers DNS the address as written rather than only IP ([ more]).
* Science packs and ammo are now recorded in the items consumed portion of production stats.
* Fixed the mysterious crash when building rails. ([ more])
* Unified the mass production 3 achievement to 20 M (it was 10M in game and 100M on steam). ([ more])
* Fixed rendering layer of gate wall. ([ more])
* Fixed fullscreen toggle in graphics options. ([ more])
* Fixed mining drills using slightly too much energy per item mined.
* Fixed that rail signals connectable to two rails at the same time were marked as buildable even when the buildability was valid only for one of the rails. ([ more])
* Fixed burner inserters sometimes getting stuck. ([ more])
* Fixed inserters with stack bonus waiting for stacks indefinitely when there's nothing to take from. ([ more])
* Fixed blueprint previews with tiles and rails vs tiles with no rails. ([ more])
* Fixed crash that could sometimes happen when a biter couldn't reach a target for a long time. ([ more])
* Fixed on_player_placed_equipment was not called when quick transferring equipment into armor. ([ more])
* Fixed map generator problems very far from the start.
* Map size is now limited to 2000 km by 2000 km with a black bar rather than crashing when reaching this distance
* Fixed clean-cursor with armor not putting it into filtered slots in your quickbar. ([ more])
* Fixed that expansion chunk candidates values weren't updated properly. ([ more])
* Fixed landfills could be included in blueprints. ([ more])
* Fixed multiple instances of walls blocking movement when they shouldn't. ([ more])
* Fixed that the solaris achievement unobtainable.
* Fixed flamethrower turret would cause blueprint preview move up and down.
* Fixed crash when the currently-playing folder can't be deleted when exiting game. ([ more])
* Fixed crash when connection to the mod portal fails ([ more])
* Fixed Update Mods button being sometimes disabled ([ more])
* Fixed that LuaGameScript::write_file treated data as null-terminated byte string. ([ more])
* Fixed entities marked with "not-repairable" still being repairable manually. ([ more])
* Attempt to fix "Access is denied" error message during autosaves. ([ more])
* Fixed desync caused by transport belt connected to circuit network reading in pulse mode.
* Fixed save corruption when driving vehicles on transport belts in some instances. ([ more])
* Fixed copy-paste not waking up inserters when copying filters between different inserter types. ([ more])
* Fixed error when biters tried to expand while evolution factor was 0. ([ more])
* Fixed building paths not refilling the cursor in some instances. ([ more])
* Fixed unlocked achievements blinking too quickly. ([ more])
* Fixed crash when setting the force of a logistic container in ghost form. ([ more])
=== Scripting ===
* Fixed label size issues when using different font sizes or resizing the game window. ([ more])
* Fixed crash when trying to create sprite-button with valid SpritePath to sprite that doesn't exist. ([ more])
** LuaGuiElement::add won't create sprite-button and returns nil if invalid SpritePath is passed.
* Added an option to LuaSurface::set_tiles() to disable the correction logic for total control of what the tiles end up as.
* Added item-group, fluid, tile, virtual-signal and achievement icons to be accessible by the SpritePath used in the sprite-button element.
** Added SpriteButton to the scripting documentation.
* Added "grid" to the on_player_placed_equipment event.
* Added LuaRecipe::localised_name read.
* Added LuaGuiElement type "scroll-pane".
== 0.13.6 ==
Date: 06. 07. 2016
=== Changes ===
* Stack inserters are unlocked by their own research that is dependent on advanced electronics and logistics 2.
** This also solves that stack inserters were available but not buildable in the campaign.
* Deconstructing and cancel deconstruction can be toggled between by using the modifer key. ([ more])
=== Bugfixes ===
* Fixed desync when inserters would insert things directly onto splitters. ([ more])
* Fixed that manipulating the fuel inventory of locomotives didn't count towards the inactivity condition. ([ more])
* A train with a circuit condition will now always stay at the station if no wire is connected. ([ more])
* Fixed that steamrolled achievement was obtainable by just killing the spawner, not only by killing it by impact. ([ more])
* Fixed the player getting stuck in some instances when using landfills. ([ more])
* Fixed crash when train stop that is in train schedule of some train was opened in the map editor. ([ more])
* Fixed crash when the player would equip power armor they currently had open while in the same tick a robot delivered items to the player which would end up in the new slots added by the power armor. ([ more])
* Fixed crash when mining tiles you're standing on that results in you being killed.
* Fixed load game GUI size issues when trying to load invalid save files. ([ more])
* Fixed fuel and water from pumps not being counted in the production stats consumed/produced items. ([ more])
== 0.13.5 ==
Date: 05. 07. 2016
=== Minor Features ===
* Blueprints with labels will now show the label when holding them to-be-built.
* Once mining is started over non-resources, resources are ignored until the mine button is released. ([ more])
=== Changes ===
* Attempting to mutate the 'global' table of a mod in the 'on_load' event handler will result in an error.
** The 'on_load' event handler is *only* meant for re-registering conditional event handlers and setting up meta-tables.
** Use 'on_configuration_changed', 'on_init', and migration scripts in all other instances.
* When connecting circuit wires, the wire will re-anchor to the last entity clicked. ([ more])
* Increased collision box of stone walls slightly, to prevent the player getting stuck. ([ more])
* Power switch will not show electric sparks in some situations. ([ more])
=== Bugfixes ===
* Fixed the add-trains list treating stations with the same spelling but different case as the same station. ([ more])
* Fixed circuit network signals not properly migrating when removing mods. ([ more])
* Fixed incorrect pollution rendering. ([ more])
* When showing the count of entities in the network, it is now showing all entities connected in the network including sub-networks connected to power switches.
* crash when getting killed by a locomotive you currently had the GUI open for (for real this time). ([ more])
* When splitting electric networks because switch was turned off, the network with more entities is considered the "master one" which keeps the statistics.
* Fixed entity power bars in the electric network statistics gui being sometimes scaled and colored improperly.
* Fixed the electric network statistics merging when networks are connected by turning power switch on.
* Fixed that the last train inserter didn't grab from the cargo wagon sometimes. ([ more])
* Fixed crashes related to bad circuit network state caused by old mods. ([ more])
* Fixed that biters couldn't find a path through a thick wall of trains. ([ more])
* Fixed that some of the achievements didn't get reported to steam.
** All the achievements data are reset when migrated to this version, those reported on steam will get reloaded.
* Fixed crafting machines using slightly too much energy per recipe crafted. ([ more])
* Fixed that the drop item doesn't consume the key event when there is nothing in cursor, so it works properly when the same control is used for something else.
* Fixed crashes related to bad circuit network state caused by old mods. ([ more])
* Fixed that enemies would start attacking rails and other nearby structures after the player passed by in a train. ([ more])
* Fixed chests in circuit network showing double their contents after fast replace. ([ more])
* Fixed that changing rails while trains where waiting on circuit conditions would cause the train to leave the station. ([ more])
* Fixed crash when 2 or more people would manipulate train schedules at the same time. ([ more])
* Fixed on_marked_for_deconstruction with tiles not including the player that marked the tile for deconstruction. ([ more])
* Fixed tile rendering off by half a tile in blueprint previews. ([ more])
* Fixed non ASCII characters didn't work in train stop names. ([ more])
* Fixed of the rail signal/train stop visualization planner in specific cases. ([ more])
* Fixed crash when opening train stops in the map editor. ([ more])
* Fixed missaligned blueprint entities when editing blueprints and removing rails/roboports. ([ more])
=== Optimisations ===
* Improved performance when there are a large (4000+) amount of alerts going off at the same time. ([ more])
== 0.13.4 ==
Date: 03. 07. 2016
=== Changes ===
* For performance reasons: latency state blueprint building is automatically disabled if building blueprints with a combined total of more than 300 entities + tiles.
* Player names are now shown in the description pane instead of just "player". ([ more])
=== Bugfixes ===
* Fixed the "No such node (application_version)" error when starting a headless server
* Fixed modules could get into assembling machines that didn't allow them for the current recipe. ([ more])
* Fixed desync when holding most rotatable items for building in the latency state. ([ more])
* Fixed build-by-moving logic for underground belts and underground pipes. ([ more])
* Fixed construction robots grabbing items from the player cursor and trying to use them as repair packs. ([ more])
* Fixed killed entities not keeping modules to-be-delivered in some cases. ([ more])
* Fixed headless server being counted as a player for the player limit. ([ more])
* Fixed crash when belts would die due in some instances. ([ more])
* Fixed Lua GUI events getting fired before the actual GUI element was modified. ([ more])
* Fixed crash when getting killed by a locomotive you currently had the GUI open for. ([ more])
* Fixed fluid temperature restricted recipes didn't work when fluid flowed in from the left side of the machine.
* Fixed server crashing when starting a LAN game with no internet connection. ([ more])
* Fixed crash when modded walls didn't have a definition for connected gate visualization.
* Fixed energy bar on battery equipment. ([ more])
* Fixed bonus GUI size issues with lots of entities using the bonuses. ([ more])
* Fixed mod hotkeys not working when you'd have more than 1. ([ more])
=== Scripting ===
* LuaEntity::built_by can be used with ghosts if the inner ghost supports built_by. ([ more])
* LuaEntity::recipe can be read off furnaces as well as assembling machines.
== 0.13.3 ==
Date: 01. 07. 2016
=== Changes ===
* Slightly reduced big electric pole collision box to allow squeezing between big pole and accumulator.
* Increased the distance between items on the belt from 0.28 to 0.28125.
** This way the the circuit network pulse for items will be every 9/4.5/3 ticks for normal/fast/express compressed belts. ([ more])
** Gui:
* Only games with the same application version are displayed in Browse Games screen.
* Removed tabs from Browse Games and Browse Mods screens and tweaked column widths.
=== Bugfixes ===
* Fixed mods directory not being created when installing mods ([ more])
* Fixed lab bonus speed not showing correctly in the bonus GUI sometimes. ([ more])
* Fixed crash related to killed flamethrower turrets in ghost mode. ([ more])
* Fixed that the game crashed in the user login dialog when the steam connection was not available.
* Yet another research window resizing fix.
* Fixed desync related to building-while-moving underground belts and pipe-to-ground.
* Fixed Steel chest recipe in New hope mission 02. ([ more])
* Fixed projectiles with negative accelerations 'hitting' at the incorrect position.
* Fixed bug related to building/removing poles connected to network with power switch. ([ more])
* Fixed that some items seemed to be repairable in multiplayer. ([ more])
* Fixed that modules could get lost when upgrading them. ([ more])
* Fixed timezone issues with the browse mods gui.
== 0.13.2 ==
Date: 30. 06. 2016
=== Changes ===
* Damage bonus in turret tooltip will now show both basic turret damage multiplier and turret damage bonus from research. ([ more])
* Limited multiplayer game name length to 60 characters.
* Moved the copper wire back to the intermediate category in the recipes.
* Inserters connected to the circuit network now have the option to only read hand contents.
* During biter migration, medium worms can now only spawn if the evolution factor is greater than 0.3, and big worms require evolution factor of 0.5.
=== Bugfixes ===
* Fixed occasional crash when downloading map. ([ more])
* Fixed rail signals set to red by circuit network going green in some situations. ([ more])
* Fixed rail signals not going back to green when when deselectiog "Close Signal" option.
* Fixed that running a command via stdin or RCON would crash the game if commands were allowed for admins-only. ([ more])
* Localized hardcoded strings in power switch GUI. ([ more])
* Fixed enemy turrets would show player's damage bonuses in tooltip.
* Fixed repair packs (and mergable items in general) under flowing and making millions of items. ([ more])
* Added missing Lua defines for the rocket silo rocket inventory.
* Fixed train minimap preview schedule box not allowing scrolling. ([ more])
* Fixed game restarting after installing only one mod.
* Fixed game crashing when viewing info about a mod with space in its name (hopefully) ([ more])
* Fixed checking for mod updates taking very long.
* Fixed low framerate when pasting long text into console.
* Fixed filter inserter sometimes taking an extra item after the filter was unset. ([ more])
* Fixed inserter arrows in blueprints. ([ more])
* Fixed that it wasn't possible to require verification of user identity in server-settings.json.
* Fixed migration of internal circuit network signals. ([ more])
* Fixed some oddities when using the rail planner and quickbar-selecting other items.
* Fixed desync when building rail signals in close rail setups. ([ more])
* Fixed crash when reviving ghosts built by blueprints in the entity built Lua event handler. ([ more])
* Fixed LuaEntityPrototype::result_units spawn points only ever giving the last spawn point. ([ more])
* Fixed stack filter inserter sometimes showing more than one filter in alt mode.
* Research button position fix.
* Changed the technology prerequisite of solar panel from advanced-electronics to electronics. This also fixes the 2nd mission of the new hope campaign.
* Fixed that the headless server wouldn't be able to save the map if started like --start-server ([ more])
* Fixed unminable rails when migrating saves to 0.13. ([ more])
* Fixed that the gate didn't open when it was on the same rail as the locomotive front joint. ([ more])
* Fixed that game name and description in the game browser didn't wrap.
* Fixed game did not run on Windows XP. ([ more])
* Fixed the ElectricEnergyInterface entity not drawing low power/no power icons.
* Fixed requester chest filters getting cleared when changing the force of the chest. ([ more])
* Fixed rocks not being ignored when rail planner ghost building. ([ more])
* Fixed that when a transport belt got destroyed and turned into a ghost, it wouldn't drop items on ground. ([ more])
* Fixed occasional random browse game gui crash when moving close to the end of the list.
* Fixed script error in supply challenge. ([ more])
* Fixed that rail signal visualization helper was not working properly in some specific cases. ([ more])
* Fixed construction robots getting stuck when they return for repair pack to passive/active provider chest. ([ more])
=== Optimisations ===
* Optimised rendering of huge pollution clouds on map.
=== Scripting ===
* Added LuaEntityPrototype::spawn_cooldown - the spawn cooldown for enemy spawners.
* Added LuaEntity::power_production and power_usage read/write for the ElectricEnergyInterface type entity.
== 0.13.1 ==
Date: 29. 06. 2016
=== Changes ===
* Added /demote to demote players from admins
=== Bugfixes ===
* Fixed crash when shift right clicking furnace fuel slots. ([ more])
* Fixed not being able to rename train stops. ([ more])
* Fixed stack filter inserters taking too many filters when building them by fast replace. ([ more])
* Fixed automatic insertion of satellites into rocket silos.
* Fixed flamethrower not unlocking on loading old saves in 0.13.
* Fixed map corruption and possible crashes when damaged stone rocks migrated from 0.12 saves got destroyed in 0.13. ([ more])
* Fixed that saving a map could crash under some circumstances. ([ more])
* Fixed that locomotives were not moving enough in reverse.
* Fixed that --create didn't work with just a filename. ([ more])
* Fixed that disabled and invalid mods were still marking the game as modded for the achievements.
* Fixed headless server crashed when launched with closed stdin. ([ more])
* Fixed that stack transfering (shift clicking) armor off your player could end up deleting the armor if you lost inventory space. ([ more])
* Fixed the watch your step achievement.
* Fixed downloading mods crashed the game ([ more]).
* Fixed that starting with modded game still activated achievements from steam. ([ more])
* Fixed the kick message. ([ more])
* Fixed technology effects translation of worker robot storage and speed.
* Fixed crash when the game tries to remove old version of mod that is unpacked directory instead of a zip package. ([ more])
* Fixed that max player count was ignored when joining multiplayer game.
* Fixed that attempting to connect with 0.12 client to a 0.13 server wouldn't display the proper error message for the client and would display "unknown message type received" for the server. ([ more])
* Fixed too large capacity of internal pipe in flamethrower turret. ([ more])
* Fixed inserters and belts connected to circuit network turning on for one tick when something is disconnected or fast replaced in from the network. ([ more])
* Fixed that the technology description didn't wrap when it was too long, which also made the research button unreachable. ([ more])
* Fixed that there were walls over water in the tight spot scenario. ([ more])
* Fixed that can_build_entity command didn't check tile collisions.
* Fixed that the Research Finished text could flash too fast sometimes. ([ more])
* Fixed that failed attempt to determine public IP address crashes the headless server ([ more]).
* Fixed graphical issue with lights when light render quality was set to low. ([ more])
* Fixed steel chests getting disabled when migrating 0.12 saves to 0.13 when the 0.12 save didn't have smart chests unlocked. ([ more])
* Fixed crash when using LuaForce::entity_build_count_statistics. ([ more])
* Possibly fixed hang when closing the Steam overlay on some Linux systems. ([ more])
=== Modding ===
* Added mandatory reversing_power_modifier property into locomotive prototype definition.
* Changed the logistic-robot-storage and logistic-robot-speed modifiers to worker-robot-storage and worker-robot-speed
== 0.13.0 ==
Date: 27. 06. 2016
=== Major Features ===
* Improved Multiplayer game UX (see and
** Server games are published to the server and clients can browse existing games.
** Automatic discovery for the LAN games.
* Mod Portal integration. Factorio can list and install mods from the mod portal. (
* Achievements and Steam Achievements integration. (
** Modded games won't have the achievements recorded on steam.
* Rail planner tool simplifies the rail building. (
* Added fire. Fire will spread between trees and cause forest fires, causing a large amount of pollution to be released.
* Power switch. It can be used to control the energy flow. Power switch can be connected to the circuit network. (
* Added the Stack inserter - an expensive upgrade over fast inserters that can move several more items at a time.
* Flamethrower turret. Fueled with fluid, shoots a stream of burning oil towards oncoming enemies.
* Bonus gui (accessible from sidebar gui) showing bonuses the force has researched.
* Train station window contains a list of all trains (each can be opened) that have that station on their schedule.
* Single train gui now has an additional panel which shows the minimap/camera view of the given train.
* Search field to the filter selection and recipes selection windows.
* Trains gui. It displays all the trains as small minimaps with schedules, which can be searched.
* Extension of the train wait conditions. (
* New locomotive, cargo wagon and train stop graphics. Locomotives can be colored. The trains are a consistent size in horizontal and vertical orientations.
* New technology tree gui. (
=== Minor Features ===
* Blueprints can be now edited.
* Added the Blueprint Book item - an item to manage blueprints. The book can be renamed and only holds blueprints.
* Map generator algorithm changed, further resource field now have greater richness.
* Added landfill, it can be used to replace water areas with grass.
* Added yellow/black striped concrete tile that is rotatable.
* Small sidebar gui containing buttons for main menu, production statistics, etc.
* Armors have inventory size bonuses (10 for modular armor, 20 for power armor, 30 for power armor mk2).
* Underground pipes and belts are placed at max connecting distance apart when built by dragging.
* --scenario2map: Creates a save from a custom scenario, without initialising the graphics.
* The lamp can change it's color based on circuit network signals.
* Roboport is connectable to the circuit network. It sends the logistic network contents or the robot statistics of the network.
* Accumulator is connectable to the circuit network. It sends it's charge level as a percentage.
* Transport Belt is connectable to the circuit network. It can be turned on or off and it can send it's contents to the circuit network.
* Rail Signal is connectable to the circuit network.  It will send the signal's state and can block trains from passing.
* Gate can be controlled through the circuit network by connecting to the wall next to it. It can be opened manually or send a signal if the player is nearby.
* Requester chest's requested items can be set automatically from the circuit network.
* Inserters can now send the item held in hand to the circuit network. Filter inserters can have their filters set automatically from the circuit network.
* Most entities that can be turned on or off by the circuit network can also be turned on or off by directly using a logistic condition.
* Circuit network and logistic network conditions can now be accessed by icons in the top-right corner of the entity's GUI, for all connectable entities.
* Connected Red/Green wires are highlighted when hovering over a combinator or entity connected to the circuit network.
* Wire disconnecting is incorporated in the latency hiding.
* Crafting machine item/fluid total craft counts are recorded per force.
* Intro sound in the loading screen.
* Improvements to the statistics GUI (electric network/production info).
** Added the ability to filter out things.
** Added the ability to view "all" information recorded.
** Made the GUI scrollable.
* Added /ban /kick /bans /admins and /admin commands.
* Added /color command, so changing color doesn't require access to lua commands.
* When running as a server, Factorio now accepts console commands on standard input.
* When running as a server, Factorio can be told to listen for RCON connections.
** To use this, specify both the --rcon-port and --rcon-password parameters on the command line. The network protocol is specified here:
* New parameter to start the headless server: --start-server-load-latest. Instead of accepting a save name, it will automatically load the latest save in the saves folder.
* The "disallow-commands" flag has been changed to "allow-commands" and accepts "true", "false", and "admins-only" for values.
* It is stored and shown which player built each of the machines.
* Added cluster grenades and grenade upgrades.
* Added flamethrower and flamethrower turret damage upgrades.
* When creating a new map using the --create command-line option, --map-gen-settings can be used to specify the map generation settings.
* Log file reopening on SIGUSR1 and a commandline option to disable log rotation.
* The default font looks better (improved hinting for the thinnest weight).
* Labels and values in descriptions have different colors.
* Item health bars are rendered green, yellow, red based off the % health remaining like entities.
* Modules support in blueprints.
* Equipment can be put in open equipment grids using standard inventory shortcuts (shift + click, ctrl + click).
** Ease of use:
* Turret displays its range when you hover over it.
* Rail signal/train stop placement indicator. (
* Indicator of train vehicle positions in a station when building next to track where would the train stop.
* It is possible to change the module in the slot to different one without having to clear it first.
* It is possible to upgrade modules to more powerful variant in machine by fast entity transfer.
* Clear cursor first cancels the current action (rail building, wire dragging, blueprint/deconstruction), and only removes the item from the cursor when pressed again.
* Saving a game changes selected name and directory for next saves. ([ more])
* Clicking different filtered slot in quickbar will try to clear the currently selected quickbar item if possible.
* Cleaning item in cursor that is taken from quickbar slot will try to refill the slot from the inventory if possible.
* Clicking on the warning icon will open the location on the map.
* Pressing E/Escape will close the map mode.
* It is possible to move the map by clicking and dragging.
* Hovering mouse over inventory logistic request slots makes matching items in inventory be highlighted.
* Fixed the zoom to cursor feature introduced in 0.8 that was non functional since 0.10.
* Improved the rail selection logic in junctions.
* Stone Rock can now be mined and deconstructed by robots. It gives some stone as resource.
* Combinators input and output arrows in alt mode. Additional alt mode information can be turned on in the options menu.
* The constant combinator has an on/off switch.
* Several non-stackable items can be swapped directly with counterparts (power armor, deconstruction planner, selection tools).
* Inventory filter slots can be copy-pasted from empty slots onto empty slots using the stack transfer/split controls (shift + left click, shift + right click by default).
=== Balancing ===
* The productivity module pollution addition was lowered (30%->5%, 40%->7.5%, 50%->10%), as the pollution generated by the machine is already increased by the additional energy production and time, it doesn't need to be so high as the modules are quite expensive already.
* Repair packs have double durability (100->200) and stack size (50->100).
* Changed stack size of raw wood (50->100) so it doesn't fill the inventory so quickly.
* Roboport have decreased transmition power consumption (200kw->50kw) while the robots (and their recharging) has increased power consumption (200kW per recharge slot to 1Mw per slot)
** Basically, covering area by roboports is cheaper, but using robots for transport is more expensive. To keep the personal roboport usefulness, energies used in personal roboport have been all multiplied by 10.
* Inserters are able to squeeze things "slightly" better to belts. more resources.
* Increased size of several green science and few blue science technologies.
* Increased inventory size of cargo wagon. (30->40)
* Oil yield drains to 10% two times slower.
* Big and behemoth enemies spawn 50% slower.
* Armor resistances are applied before the energy shield is used.
* Increased the ghost time to live when something is destroyed from 5 + 5 minutes to 30 + 30 minutes.
* Halved the mining time of rails, rail signals and walls.
* Changed the way evolution factor approaches the maximum (1).
** The addition of evolution factor was changed from addition * (1 - evolution) to addition * (1 - evolution)^2
** This means that the progress gets more slower towards the high values.
* Balanced train acceleration and top speed, additional wagons no longer slow trains so strongly.
* Changed the amount of items requested when copy-pasting assembling machines to requester chests for several recipes.
* Express underground belts require lubricant to match the express belts and express splitters.
* Increased battery equipment power storage, input, and output by a factor of 20.
=== Changes ===
* Reduced number of connections drawn between roboports in blueprint and roboports on map.
* More virtual signals for combinators.
* Vitual signals can be used in blueprint icons.
* Disabled loading of saves before 0.10.0 version (You can use 0.10.12 to load older saves and re-save them).
* Removed multiplayer peer-to-peer mode.
* Ghosts created by player no longer expire and can be placed before researching any technologies.
* Ghosts are brighter and easier to see.
* Alert of destroyed entity exists 2 times longer.
* Quickbar filters are set and unset using the same key.
* Loading a scenario without control.lua will automatically load the freeplay game mode scripts.
** This means new maps created in the map editor will get the freeplay game mode.
* Loading a scenario in the map editor will preserve it's scripts.
** This means custom freeplay/sandbox maps can be created in-game.
* Constant combinator can be rotated.
* All types of inserters can be controlled by the circuit and logistic network, once the respective network is researched.
* All types of chests can be connected to the circuit network. Smart Chest was removed from the game.
* Decider combinator "input count" option makes the combinator copy the count of the specified output signal from the input signals, instead of copying the count from the condition. This might break some setups.
* Transport belt connectable entities will disconnect from incoming (and all other) belts when marked for deconstruction.
** The problem is solves is described in this bug report:
* Spaces are now allowed in file names when saving.
* Changed the fluid color of heavy oil to match the icon color.
* Alert beep sound is activated only when something is destroyed, not by something damaged.
* Spitter attack distance is randomised slightly to make them look more organic.
* Rocket fuel can now be used as fuel.
* Saves given on command line (to options --start-server, --mp-load-game, --load-game, --create) are always absolute or relative paths.
** If the path is relative, it is relative to the current directory (where the binary is run from).
* Main menu background image is scaled proportionally now. ([ more])
* Renamed "research-effectivity" to "research-speed".
* Removed light entity info background option.
* Cleaned up freeplay and sandbox scenario scripts.
* Exiting vehicles now puts you to the left of the vehicle with respect to the orientation of the vehicle.
=== Graphics ===
* Health bars are partially visible when obstructed.
* High resolution ingame indicators.
* New fire graphics for Stone Furnace, Steel Furnace and Boiler.
* New icons for rocket fuel, low density structure, rocket control unit, satellite, car and tank.
* Entities show a circuit connector when connected to the circuit or logistics network.
* Added compression for some sprites to save video memory. This can be enabled in Graphics options.
* Added linear filtering for GUI icons. This can be disabled in Graphics options.
* New combinator graphics.
=== Optimisations ===
* Optimised gui render.
* Minimap is rendered in 16bit colors to reduce memory usage.
* Less memory usage for entities that are connectable to the circuit network.
* Faster map unload on Quit to Main Menu or closing the game.
* Optimised pollution rendering on map and minimap.
* Optimised roboport radius rendering.
* Optimised biter pathfinding. (
* Optimised save file times by doing compression in parallel.
=== Bugfixes ===
* Fixed recipe ordering when recipes had the same group and group order string.
* Limited number of explosion sounds for grenade, explosive cannon shells, explosive rockets.
* Underground belts won't connect if underground belt ghost is in the way. ([ more])
* File saving is done in a safer, more atomic way. This should help prevent some cases where a safe file or the config file can go missing.
* Building sound is played also for other players in multiplayer.
* Red/green wires change electric pole orientation the same way normal connections do. ([ more])
* Fixed the rotation of train vehicles to be built.
* Fixed clearing the player cursor stack and then inserting into the player quickbar in the same tick not preferring filtered slots. ([ more])
* Fixed unrecognizable item icons when playing on very low graphics settings. ([ more])
* Fixed that ghost building on power poles disconnects them, as it is the same shortcut. ([ more])
* Fixed multiple construction bots could be sent out to mine single tree. ([ more])
* Fixed that LuaGameScript::take_screenshot could take negative values of zoom or resolution. ([ more])
* Fixed robots would carry items from active provider chests to storage chests even when requester chest needed those items. ([ more])
* Fixed setting the cursor stack from script when having a selection from a filtered slot allowing the wrong item in the slot. ([ more])
* Items inserted into assemblers now update tooltips. ([ more])
* Map editor save GUI now always fits on the screen.
* Will explicitly show system mouse cursor when exiting Steam Overlay, just in case Steam forgets to do it. ([ more])
* Fixed that commands would still be disabled in single-player after loading a map created in MP with commands disabled. ([ more])
* Fixed that a biter could get stuck trying to attack a building in some cases. ([ more])
* Fixed unclear error message when attempting to run multiple instances of Factorio with same write-path. ([ more])
* Fixed the space key animating buttons. ([ more])
* Fixed fluid getting into the wrong inputs on assembling machines. ([ more])
* Long tooltip descriptions (below the minimap) won't stretch the whole right column.
* Fixed being able to copy settings onto and rotate entities marked as non-operable. ([ more])
* Fixed that player names wouldn't show up on the chart when UI scale was set to 100% or less. ([ more])
* Fixed that the same error message could appear twice in multiplayer. ([ more])
* Fixed equipment tooltips in equipment grids not showing when putting new equipment into the grid.
* Command key can be now used as a modifier in controls on Mac OSX([ more]).
* Fixed that a peer could kick every other peer from an MP game. ([ more])
* Fixed train air resistance calculation.
* Fixed wire drawing in the right-pane description for electric poles. ([ more])
* Fixed freeplay and sandbox scenario initial rocket count. ([ more])
* Fixed sandbox scenario wouldn't recognize rocket launches.
* Fixed modifying item stacks directly in the player wouldn't trigger an inventory sort in some instances.
* Fixed crash when modded locomotive uses other than burner energy source. ([ more])
=== Modding ===
* Mods need to have factorio_version value in their info which specifies major Factorio version they are suited for, default value is 0.12.
** Mods with non fitting version are not loaded.
* Added item_pickup_distance and loot_pickup_distance to player definition.
* Added invalid parameter error for data.extend function.
* Added the ability to define additional_pastable_entities for an entity which allows copy-paste between that entity type and the defined destination types.
** Useful in conjunction with the new copy-paste events.
* Added a new item type "selection-tool" that fires the events on_player_selected_area and on_player_alt_selected_area.
* Unified prototype names to be consistant with ingame names. (basic-transport-belt->transport-belt, *transport-belt-to-ground->*underground-belt, basic-splitter->splitter, basic-inserter->inserter, basic-mining-drill->electric-mining-drill, basic_beacon->beacon, basic-bullet-magazine->firearm-magazine, piercing-bullet-magazine->piercing-rounds-magazine, basic-grenade->grenade, basic-armor->light-armor, basic-modular-armor->modular-armor, basic-laser-defense-equipment->personal-laser-defense-equipment, basic-exoskeleton-equipment->exoskeleton-equipment)
* Construction robots will now use any available repair tool items instead of a fixed single item defined in the prototype for the robot.
* Various indicator and game icons are defined in the utility-sprites objects, so it is now moddable.
* Added new research options: character-crafting-speed, character-mining-speed, character-running-speed, character-build-distance, character-item-drop-distance, character-reach-distance, character-resource-reach-distance, character-item-pickup-distance, character-loot-pickup-distance, character-inventory-slots-bonus, deconstruction-time-to-live, character-health-bonus
* Sticker entity can deal damage.
* Added a new entity type "electric-energy-interface" that can consume, produce, and accept energy while also allowing all of its electric network parameters to be configured runtime.
* Added flags to energy_source prototypes "render_no_network_icon" and "render_no_power_icon" to prevent rendering those icons when set.
* Removed "inventory_order" prototype property as it wasn't actually used and isn't needed.
* Removed "radius_visualisation_picture" and "construction_radius_visualisation_picture" from roboport and roboport-equipment prototypes. The pictures were moved to core.
** If needed you can use "draw_logistic_radius_visualization" and "draw_construction_radius_visualization" boolean properties to disable drawing radius in your prototype.
=== Scripting ===
* Moved LuaGame::daytime/wind/wind_orientation/wind_orientation_change/peaceful_mode to LuaSurface.
* Added LuaEntity::held_stack_position. It tells you the world position of the inserter arm.
* Added LuaGame::delete_surface. Deletes the surface passed in if the surface is deletable.
* Added LuaItemStack::create_blueprint() - sets up a blueprint as if a player did it.
* Added LuaItemStack::build_blueprint() - builds a blueprint as if the player built it in the world.
* Added LuaSurface::deconstruct_area() - deconstructs an area as if the player did it.
* Added LuaSurface::cancel_deconstruct_area() - cancels deconstruction over an area as if the player did it.
* Added on_pre_entity_settings_pasted and on_entity_settings_pasted events that pass the source and destination entities involved.
* Added "robot" to the robot related events.
* Added "chunk_position" to the on_sector_scanned event.
* Added optional "player_index" to on_marked_for_deconstruction/on_canceled_deconstruction when fired due to player actions.
** This field is nil when fired from from script/non player action.
* Added LuaEntity::crafting_progress/bonus_progress write.
* Added LuaForce:: item/fluid/resource/build counterparts to kill_counts.
* Added LuaFlowStatistics - used to read/write statistics data related to a given force (production, kills, etc).
* Removed LuaForce:: set_kill_count/get_kill_count/kill_counts - these are now readable through LuaFlowStatistics.
* Added LuaGame::disable_replay() - disables the replay for the current save game.
* Added several player related events: on_player_cursor_stack_changed, on_player_main_inventory_changed, on_player_quickbar_inventory_changed, on_player_tool_inventory_changed, on_player_armor_inventory_changed, on_player_ammo_inventory_changed, on_player_gun_inventory_changed, on_player_placed_equipment, on_player_removed_equipment, on_pre_player_died, on_player_died, on_player_respawned, on_player_joined_game, on_player_left_game
* Added events for tile building: on_player_built_tile, on_player_mined_tile, on_robot_built_tile, on_robot_mined_tile
* Added LuaEntity::damage_dealt/kills read/write - usable with turrets.
* Added LuaGameScript::active_mods - a table of active mod names to mod versions.
* Added LuaEquipmentGrid::get - gets the equipment at the given equipment grid position or nil if none.
* Added LuaEntity::player, returns the player connected to the character entity.
* Added LuaInventory::get_filter, set_filter, has_filters, can_set_filter methods to set/get/clear filters on inventories that support them.
* Changed LuaEntity::get_filter/set_filter parameters around to match the inventory versions. They also now only work on inserter filters.
* Added LuaPlayer::get_craftable_count/begin_crafting/cancel_crafting/crafting_queue to read/write crafting information for a player.
* Added modifiers to the character entity that stack with the force research bonuses but are unique to the character: character_crafting_speed_modifier, character_mining_speed_modifier, character_running_speed_modifier, character_build_distance_bonus, character_item_drop_distance_bonus, character_reach_distance_bonus, character_resource_reach_distance_bonus, character_item_pickup_distance_bonus, character_loot_pickup_distance_bonus, quickbar_count_bonus, character_inventory_slots_bonus, character_logistic_slot_count_bonus, character_trash_slot_count_bonus, character_maximum_following_robot_count_bonus, character_health_bonus
* Added LuaTilePrototype accessible from LuaTile::prototype and LuaGameScript::tile_prototypes.
* Added LuaEquipmentPrototype accessible from LuaEquipment::prototype and LuaGameScript::equipment_prototypes.
* Added LuaGuiElement::tooltip read/write - a localised tooltip for any GUI element.
* Added LuaCircuitNetwork readable off entities with circuit network connections and through control behaviours.
* Changed StickerPrototype::magnitude to StickerPrototype::target_movement_modifier. Speed of a Unit is not multiplied by value of target_movement_modifier.
* Added optional "limit" field to find_entities_filtered and count_entities_filtered to limit the results.
* Added "force" to the entity_died event when the killing force is known - nil otherwise.
* Added LuaEntity::unit_number - read - a unique ID field used by all entities having owners.
* Added LuaInventory::index - the inventory index the inventory reference uses.
* Added LuaEntity::supports_backer_name() - true when an entity supports a backer name.
* Added LuaEntityPrototype::belt_speed and underground_belt_distance read.
* Added LuaEntityPrototype::result_units the result units a biter spawner can spawn.
* Added LuaItemPrototype::ammo_type read.
* Multiple stickers (i.e. slowdown capsule + fire) can be applied to a unit entity.
* Added LuaEntity::get_quickbar() - gets the quickbar of the character or player.
* Changed LuaEntity::color to work for locomotives, cargo wagons, and characters - it will return nil if used on other entities.
* Added LuaEntity::mining_progress/bonus_mining_progress read write - for mining drill entities.
* Added LuaEntityPrototype::attack_result - the attack result for entities using attacks (beams, fire, landmines, projectiles).
* Added LuaEntityPrototype::final_attack_result - the final attack result of a projectile.
* Added LuaFluidPrototype::base_color + flow_color read.
* The Train changed state event now fires when a train goes from stationary to moving or from moving to stationary while under manual control.
* Prototypes can have the optional properites "localised_name" and "localised_description" to manually define the localised keys instead of using the auto generated keys.
* Added sprite-button gui element, works the same way as button, but it can have sprite name assigned.
* Added sprite gui element, can have the sprite name assigned/changed and has no interaction logic.
* Custom sprites can be defined in lua data definition (type = sprite, the rest is sprite definition).
* Sprite identifier can either point to custom definition from the data, or have form <type>/<id>, type can be (item, entity, recipe and technology), for example button.sprite = "item/iron-plate"
* Renamed some defines (groupstate->group_state, circuitconnector->circuit_connector, circuitconditionindex->circuit_condition_index, trainstate->train_state)
* Removed game.regenerate_tiles().
* Removed game.get_player() and game.get_surface(): game.players[] and game.surfaces[] can be used instead.
* Changed game.players, game.surfaces, game.entity_prototypes, game.item_prototypes, game.fluid_prototypes,, force,technologies to use custom access + iterator objects for improved performance.
* Changed game.players[] to work with both the player index and the player name.
* Added on_gui_text_changed and on_gui_checked_state_changed events.
* Changed "defines" so they're available by default and removed the defines.lua file.
* Renamed LuaForce::logistic_robot_storage_modifier -> logistic_robot_storage_bonus to better match what it does
* LuaEntity has built_by read/write.
* game.player has been removed (use game.players[#] and associated event.player_index during events).
* game.local_player has been renamed to game.player and now works through remote calls.
* Offline players can be teleported anywhere (between surfaces or just around).
* entity.get_inventory(index) returns nil if it doesn't have an inventory for the given index instead of giving an error.
* entity.riding_state can be set on cars without players and the car will act as if it's being driven by a player (consume fuel).
* Changed LuaForce::current_research to accept "nil" to stop the current research.
* Added LuaTrain::front_stock and back_stock the front and back rolling stock entities of the train.
== 0.12.35 ==
Date: 01. 06. 2016
=== Bugfixes ===
* Fixed the missing title in character logistics window.
== 0.12.34 ==
Date: 26. 05. 2016
=== Changes ===
* Polished/Updated the New hope campaign maps
* LuaGameScript::server_save silently does nothing if used on a single player game instead of giving an error.
=== Bugfixes ===
* Fixed the fuel inventory of the car in the New Hope campaign missions. ([ more])
* Fixed crash when exiting from an error during the on_robot_built_entity event. ([ more])
* Fixed crash when removing and re-creating forces. ([ more])
* Fixed crash after changing the type of a style currently applied to a custom GUI element when loading a save. ([ more])
* Fixed crash when calling LuaPlayer::teleport on a disconnected player. ([ more])
* Fixed crash after running LuaGameScript::server_save from a mod. ([ more])
* Fixed crash when changing the force of an offline player with personal roboport equipment. ([ more])
* Fixed crash when trying to merge a force into its self. ([ more])
* Fixed underground belt position in blueprint preview. ([ more])
* Fixed map transfer speed dropping to zero ([ more])
* Fixed logistic description counts with the same counts getting displayed in random order ([ more])
== 0.12.33 ==
Date: 03. 05. 2016
=== Bugfixes ===
* Fixed tiles in blueprints. ([ more])
* Fixed the duplicated message on load error in multiplayer. ([ more])
* Fluid values are rounded to the closest value instead of rounding down when transmitted to circuit network. ([ more])
* Fixed that switching brush shape in the map editor didn't update the selected icon highlight. ([ more])
* Fixed that label/checkbox padding was applied twice, moving the rendered text to be out of place. ([ more])
* Fixed that map (chart) wasn't properly updated when existing map was edited in the map editor. ([ more])
* Fixed crash when the character would die from mining something. ([ more])
* Fixed crash when robot can't find charging spot when stationing. ([ more])
* Fixed crash in multiplayer that could happen when 2 people are editing the same train schedule. ([ more])
* Unified the electric network statistics production/consumption values to be avarage of the shown timeframe. ([ more])
* Solved small numerical text box editing issue. ([ more])
=== Scripting ===
* Added LuaStyle::cell_padding/horizontal_spacing/vertical_spacing.
== 0.12.32 ==
Date: 29. 04. 2016
=== Bugfixes ===
* Fixed loading of electric network of pre 0.12 saves.
* Fixed blueprint building. Blueprints are migrated as long as you load the version 0.12.30 or earlier, existing bluepritns might be off if you resaved in 0.12.31 already.
=== Scripting ===
* 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 when the blueprint is built.
== 0.12.31 ==
Date: 26. 04. 2016
=== Bugfixes ===
* Fixed crash when script errors occurs while loading game while in game. ([ more])
* Fixed that attempting to connect to Factorio 0.12.30 with an old client wouldn't produce the correct error message. ([ more])
* Fixed that modded roboports with no charging slots were still considering as charging candidates. ([ more])
* Fixed that item icon variant for dark background was not used when showing cargo of logistic robots. ([ more])
* Fixed crash with "Unblock sendto failed: The operation completed successfully." ([ more])
* Human readable error notice when multiplayer connection wasn't successful. ([ more])
* Fixed that headless server wouldn't save the map after Control-C. ([ more])
* Fixed that attacking biters with a mining tool wouldn't aggro them.
* Improved map download speed when connecting to multiplayer game. ([ more])
* Fixed that assigning units to a unit group of a different force would corrupt the save. ([ more])
* Fixed crash when using can_insert on the quickbar from the Lua APi.
* Fixed tight spot scenario crash. ([ more])
* Fixed sort order for recipes in the recipe display.
* Fixed incorrect error message, when setting the number of filters on an inserter ([ more]).
* Fixed flame from refineries that are marked for deconstruction was frozen in mid air. ([ more])
* Fixed incorrect error message, when setting the number of filters on an inserter. ([ more])
* Fixed flame from rafineries that are marked for deconstruction was frozen in mid air. ([ more])
* Fixed that odd sized blueprints were shifted when rotated. ([ more])
* Fixed crash when clearing modded blueprint that doesn't need item to be cleared. ([ more])
* Fixed crash in arithmetic combinator when calculating -2147483648/-1. ([ more])
* Fixed crash when assigning a character as a passenger of a vehicle when that character already is a passenger of another vehicle. ([ more])
* Fixed dealing damage could sometimes corrupt game state and saves. ([ more])
* Fixed modded save could not be loaded when a modded inserter gained abilities of smart inserter. ([ more])
* Fixed unknown-key message on the third level of first-steps. ([ more])
* Fixed cursor-split transfer (right click) not working when putting items into assembling machine stacks over normal stack size. ([ more])
* Fixed from within the same mod. ([ more])
* Fixed inconsistent inserter behaviour when inserting into a splitter from the side. ([ more])
* Fixed train trying to turn around on a single rail. ([ more])
* Fixed internal electric network problems when mod specified irregular number as supply reach of power pole. ([ more])
* Fixed crash when lua script appears in specific state in multiplayer. ([ more])
* Fixed another crash than can happen when train destroys itself. ([ more])
* Fixed rare multiplayer crash "server is missing in the crcs". ([ more])
* Fixed several GUI problems on high DPI displays ([ more])
=== Optimisations ===
* Improved performance when using landmines. ([ more])
=== Scripting ===
* LuaUnitGroup::add_member now requires that the new member's force be the same as the UnitGroup's.
* Added LuaUnitGroup::force read-only attribute.
== 0.12.30 ==
Date: 05. 04. 2016
=== Changes ===
* 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.
=== Bugfixes ===
* Fixed strange outer corner rendering for terrains with the same layer. ([ more])
* Fixed Factorio timing out of a multiplayer game when closed by pressing the X button. ([ more])
* Building things after quitting a multiplayer game is no longer possible and no longer crashes the game. ([ more])
* Fixed memory leak with special signals in the circuit network.
* Fixed crash when killing the player in on_built_entity. ([ more])
* Fixed crash when making blueprints of ghosts with some now-invalid circuit connections to other ghosts. ([ more])
* Fixed player's shooting target not updating properly when the target's force became friendly ([ more])
* Fixed the documentation of CircuitCondition ([ more])
* Fixed that the ignore_planner field of Command would expect an integer instead of a boolean. ([ more])
* Starting value of progress bar is now properly set based on the input. ([ more])
* Fixed crash when destroying entity with empty corpse string. ([ more])
* Fixed mining drills getting stuck when built pointing at rails and then rotated. ([ more])
* Fixed within the same mod passing invalid data. ([ more])
* Fixed the typo in the error "mulitplayer.cannot-load-downloaded-map", the cause of the error wasn't displayed because of it. ([ more])
* Fixed that the server could get desynced and in a state where he has no one to download from. ([ more])
* Fixed that the train tooltip was showing the current station as the next one when in the station. ([ more])
* Fixed crash when a Lua function was used as a value in a table in data.raw. ([ more])
* Fixed the tooltip of the inventory limit feature to "Limit the inventory part to be filled by machines.", so it is clear, it limits only input, but not output.
* Fixed that cancelling a recipe in the crafting queue would reset the crafting timer unnecessarily. ([ more])
* Fixed crash when a force other than player, enemy or neutral was used in autoplace specification. ([ more])
* Fixed crash when a network interface is deactivated during multiplayer game. ([ more])
* Fixed white bar on top of the screen was sometimes present in fullscreen on OS X. ([ more])
* 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
* Fixed that collision with point wasn't working properly for curved rail. ([ more])
=== Modding ===
* Added LuaEntity::unit_group read-only attribute
* Proper error message when subgroup specified by empty string. ([ more])
* Fixed projectiles with negative acceleration would turn around, fly back and break the game. ([ more])
== 0.12.29 ==
Date: 23. 03. 2016
=== Changes ===
* When the game starts with the base mod disabled, it asks you, if you want to enable it.
=== Bugfixes ===
* Fixed construction robot crash. ([ more])
* Fixed that multiplayer progress bar windows were blocked by currently opened window. ([ more])
* Fixed another inconsistency with zero signals in combinators ([ more])
* Fixed crash when Steam API intialization failed. ([ more])
* Fixed random crashes when mining/closing and autosave happens at the same tick.
== 0.12.28 ==
Date: 22. 03. 2016
=== Changes ===
* 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.
=== Bugfixes ===
* Explosion sounds are now not deafeningly loud, when multiple things explode at once.
* Fixed LuaForce::clear_chart() would crash game if called while chart was refreshing. ([ more])
* Fixed crash when refreshing chart while Direct3D device is lost. ([ more])
* Fixed --config option not complaining about nonexistent file. ([ more])
* Fixed crash when clicking on electric pole that was still in latency state ([ more])
* Fixed freeze of server with more than 255 different players in the savegame.
* Fixed crash when exiting the map editor while holding power armor on the cursor. ([ more])
* Fixed map exchange string not using segmentation or water size correctly. ([ more])
* Fixed Lua game_view_settings::showentityinfo read/write issues. ([ more])
* Fixed fog-of-war does not work correctly in New Hope level 1. ([ more])
* Fixed inconsistent Offshore Pump collision when building. ([ more])
* Fixed desync reports were not generated. ([ more])
* Fixed that non destructible entities get attacked, so biters could get stuck while trying to attack rails under train. ([ more])
* Control settings window is now scrollable when it can't fit the window. ([ more])
* Fixed Factorio hanging on exit on Linux after copying or pasting ([ more]).
== 0.12.27 ==
Date: 18. 03. 2016
=== Changes ===
* The area of 400X400 tiles is explored when the game starts.
=== Bugfixes ===
* Fixed that merging two electric network didn't merge the statistics. ([ more])
* Fixed the cyclic/overlaping win/lost sound sample when the game is finished in multiplayer. ([ more])
* Fixed that extra pipe covers could be drawn on top of connected pipes. ([ more])
* Fixed misaligned turrets in the 4. New hope mission. ([ more])
* Fixed some inconsistencies related to zero-signals in circuit networks. ([ more])
* Fixed inconstency 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. ([ more])
* Fixed LuaForce::clear_chart() would crash game. ([ more])
* The report of different mods when trying to connect to multiplayer game is now scrollable when needed. ([ more])
* Fixed Cargo Wagon Inserter input output inconsistency. ([ more])
* Fixed the mod difference reporting when connecting to multiplayer game. ([ more])
* 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.
* Fixed that placing a rotated blueprint containing a splitter was not possible in some cases ([ more]).
* Fixed crash after revive by player port when personal roboport is equipped ([ more]).
* Optimised the map bitmap refresh logic 16 times. (the freeze after loading a game or resizing window while playing big saves).
* Fixed that the "you joined a paused game" message would display on all peers, rather than just the peer who just joined ([ more]).
* Fixed slow sprite loading on Direct3D ([ more]).
* Fixed the documentation of LuaGameScript::show_message_dialog ([ more]).
* Fixed the order of parameters of some functions in the documentation ([ more]).
* Fixed that the research screen would pre-select Automation even though it was disabled ([ more]).
* Fixed rare crash that could happen when assembling machine recipe was reset the same tick as autosave started. ([ more])
* Fixed the laser/discharge defense names in the set filter dialog. ([ more])
* Better error when wrong bounding box definition is given. ([ more])
* Creating message dialog with non existent image doesn't crash the game anymore. ([ more])
* Localisation errors will no longer stop the game, the result string will just contain the error. ([ more])
* Fixed that the stone wall research was disabled in the New hope campaign level 4, so gates weren't researchable. ([ more])
* The starting value of text property of textfield is properly set based on the input. ([ more])
* Fixed map exchange string problems with mods ([ more]).
* Fixed freezes on exit with recent NVidia drivers on Gentoo and Arch Linux ([ more])
* Proper notification when quick bar slot can't be selected as there is no place to put the item in the cursor.
* Fixed crash on Linux after running xrandr --off ([ more]).
* Fixed Rocket Silo GUI skipping 53%. ([ more])
* Another attempt at fixing X11 copy/paste ([ more]).
* Better message when the server leaves a multiplayer game ([ more]).
* Fixed the bad values of defines.furnace_source, defines.furnace_result and added missing defines.furnace_modules. ([ more])
* 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.
* Fixed that it was possible to have unlimited range with melee weapon after running out of ammo. ([ more])
* Fixed that LuaPlayer::remove_item didn't remove from cursor stack when the player was using god controller.
** This also fixes the bug in the tight spot scenario. ([ more])
* Fixed black screen after UAC poped up in main menu ([ more])
=== Scripting ===
* Documented extra unit group status return values. ([ more])
=== Modding ===
* Added action_range to mining tool prototype (with the default of 1.5).
== 0.12.26 ==
Date: 06. 03. 2016
=== Bugfixes ===
* 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'm sorry for the trouble.
* Fixed the performance issue in the same level after train transport is researched.
* Fixed that the game reported the error to be related to overlay always when it crashed.
* Fixed rare crash related to splitting item in entity that is just about to be destroyed. ([ more])
* Sending random packets to factorio port can still crash the server eventually, the probability will just be lower. ([ more])
* Running biters over with a car or tank will make them aggressive in peaceful mode ([ more]).
== 0.12.25 ==
Date: 03. 03. 2016
=== Bugfixes ===
* Fixed quickbar selection handling when accepting blueprint with item in cursor. ([ more])
* Train stations in the new hope level 2 had neutral force, so they weren't selectable as part of the schedule. ([ more])
* Fixed that wall graphics variations were not randomized when built by robots. ([ more])
* Fixed that rail signals were not visible under remnants. They are drawn above now. ([ more])
* 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 ([ more]).
* Possible fix of rare lua garbage collector error.
** Report:
** Fix:
* Fixed Combinator special signals not summing the inputs correctly(again). ([ more])
* Fixed green circuit network signals icons in power pole tooltip.
* Fixed that multiplayer-specific options were available in the demo build of Factorio (such as --start-server) ([ more]).
* Fixed crash when using screens connected to both AMD and Intel graphics cards ([ more]).
* Fixed very rare chance of a bug when window is closed at the same moment when autosave starts.
* Fixed two sources of rounding errors related to research. ([ more])
* Fixed that replaying multiplayer game ended once any player died. ([ more])
* Fixed the ungraceful error message when version/mods don't match in multiplayer. ([ more])
* Fixed game not restarting when mods were changed ([ more]).
* Fixed headless server not working with the Steam version ([ more]).
* Fixed that destroying a chain signal in the same tick as it was created crashed the game ([ more]).
* Fixed fullscreen issues on multimonitor configurations ([ more]).
* Fixed crash when canceling crafting of a recipe who's ingredients have changed in the meantime ([ more]).
* Fixed update of stand-alone ZIP package should not require elevated rights on Windows ([ more]).
* Fixed specific crash in replay viewing. ([ more])
* Fixed game ignoring local changes in config when using Steam Cloud.
* Fixed double key in smart inserter definition, causing it to be slower than fast inserter. ([ more])
== 0.12.24 ==
Date: 24. 02. 2016
=== Changes ===
* Updated sountrack.
=== Bugfixes ===
* Fixed corrupted player-data.json message on startup.
* Fixed unnecessary game restart when no mods were changed.
* Fixed crash due to electric network migration during load of some more complex games. ([ more])
* Fixed very long belt lines would crash game ([ more])
== 0.12.23 ==
Date: 22. 02. 2016
=== Changes ===
* Scenario pack was moved to the base game package.
=== Bugfixes ===
* Any changes in the mods settings will automatically trigger the game to be restarted. ([ more])
* The alerts are disabled when player or combat robots get hurt/destroyed. (It was especially annoying in multiplayer).
* Underground belt connection visualisation in the "to build preview" wasn't proper. ([ more])
* Fixed that picked up item event wasn't fired when picking items from the belt. ([ more])
* Fixed that technology list and preview weren't updated when technology was researched in multiplayer. ([ more])
* Fixed a crash after merging forces when the destroyed force's labs were researching ([ more]).
* Fixed that it looked like it was possible to repair a tree in multiplayer. ([ more])
* Fixed that the max health instead of current health was used for crash calculations. ([ more])
* Fixed that the game could desync when someone joined while someone else was shooting.
* Fixed that trains were signalling No Path after update ([ more]).
* Fixed that accumulators kept their energy when destroyed and retuilt by robots. ([ more])
* Fixed the occasional 1pixel gap between vertical steam engine and a pipe.
* Fixed beacon would not re-activate when its deconstruction order was canceled.
* Fixed various desynchronisations in multiplayer caused by beacon. ([ more])
* Fixed Combinator "each" special signal not summing the inputs correctly ([ more])
* Fixed players in multiplayer game would not see progress of new player downloading a map in server/client configuration.
* Fixed crash when checksum error was detected while connecting to multiplayer game. ([ more])
* Fixed that the full mod change info for recipes wouldn't display if only the counts were modified on the recipe. ([ more])
* Fixed crash when car collided with decorative entity in object layer. ([ more])
=== Scripting ===
* Fixed that game.load (inner load) crashed the game in multiplayer. It still causes disconnect though.
* Removed the screen2realposition and real2screenposition methods from lua api.
** Sounds:
* Extended the soundtrack.
== 0.12.22 ==
Date: 22. 01. 2016
=== Bugfixes ===
* Fixed that save is not loadable when mod changes type of entity. ([ more])
* Fixed that enemy train stops were visible in the rename station gui. ([ more])
* Fixed freeze when there is no place to put character when he exits the vehicle and there is no exit point. ([ more])
* Fixed internally inconsistent data state after cancelling deconstrution from script in a certain way. ([ more])
* Fixed that map/minimap wasn't updated when settiles was used. ([ more])
* Fixed the graphics inconsistencies related to belt versus inserter drawing. ([ more])
* Files starting with dot are ignored when opening locale files to ignore garbage files that mac is leaving around. ([ more])
* Fixed the line trigger target specification. ([ more])
* Fixed that neutral entities were shown red on the map. (Applies mainly in the campaign)
* Fixed sorting of item groups in the crafting window.
== 0.12.21 ==
Date: 06. 01. 2016
=== Changes ===
* Dropped support for OS X 10.6 Snow Leopard.
=== Bugfixes ===
* Fixed random crash with "Trying to make chunk at unreasonable position" ([ more])
* Fixed crash when calling the set_tiles with non existent terrain parameter. ([ more])
* Fixed that label could go out of the window in other settings. ([ more])
* Fixed that the energy progress bar was missing on personal roboport equipment. ([ more])
* Cannon shells will not have plural in the item name to be consistent with other items.
* Fixed slight direction bias with the flamethrower ([ more]).
* Fixed items in logistic GUI sometimes disappearing or reappearing.([ more])
* Fixed copy&paste on linux, again ([ more]).
* Fixed controls settings gui bad alignment in some situations([ more]).
* Fixed the scripting error in the 3rd level of the transport belt madness.
* Fixed various scripting errors in the tight-spot scenario.
* Fixed that enemy train stations were selectable when setting train destination. ([ more])
* Fixed crash that could happen when logistic networks are disconnected. ([ more])
* Fixed invalid gui pointing messages (visible namely in the first demo level).
* Fixed that entities could overlap wrongly in blueprint preview. ([ more])
* Fixed that roboport sound continued even when it was out of power.
* Fixed that train could crash a gate by accelerating too fast. ([ more])
* Fixed construction robots would lose their charging destination when roboport is activated/deactivated ([ more])
* Fixed that entities marked for deconstruction would be instead rebuilt if they were destroyed before the actual deconstruction ([ more]).
* Fixed undefined behaviour (crashes) when manually (from script) deactivated entity was killed and rebuilt by construction robot. ([ more])
* Fixed the scripting bug in the first tutorial level. ([ more])
=== Scripting ===
* Fixed the defines.circuitconditionindex.inserter_logistic value (should be 2 not 1).
* Fixed crash when accessing item on the ground inserted into belt. ([ more])
* When attacking a player in a tank, the tank will be attacked instead of the player directly ([ more])
=== Modding ===
* Better error message when specifying list of filenames instead of one in rotated sprite. ([ more])
== 0.12.20 ==
Date: 04. 12. 2015
=== Bugfixes ===
* Fixed crash when attempting to set font color on styles that don't support it. ([ more])
* Fixed Lua stack overflow when data.raw got too big ([ more]).
* Fixed units sometimes getting stuck at the end of their paths ([ more]).
* Fixed clicking on mod GUI in replay would crash the game ([ more]).
* Fixed inventory slots with filters did not have hover and click style ([ more]).
* Fixed the inconsitance between personal/normal roboport power consumption description. ([ more])
* The right part of the research window is also scrollable when it doesn't fit the screen. ([ more])
* Fixed that the west/east rotation graphics of chemical was reversed. ([ more])
* Fixed crash when merging a force with disconnected player ([ more])
* Fixed Production/Electric network statistics windows resetting position every few seconds. ([ more])
* Fixed the preview drawing boxes of some entities.
* Fixed chain signal not preventing crash when a train passed twice through one block ([ more]).
* Fixed crash when loading a game saved by the server with only one player that is currently disconnected.
=== Modding ===
* Technology prototypes now have optional integer property "icon_size". Default value for non-base mods is 64 (and 128 for base mod).
== 0.12.19 ==
Date: 24. 11. 2015
=== Bugfixes ===
* Fixed Optics technology icon was corrupted sometimes on OSX. ([ more])
* Fixed crash in GroupBehavior ([ more]).
* Ingame changelog only shows changes since the last stable release.
* Fixed beam weapon and turret issues ([ more]).
* Fixed rocket silo inserters sometimes getting stuck ([ more]).
* Fixed ghost trains appearing on minimap.
* Fixed manual crafting bug that could be exploited to get resources ([ more]).
== 0.12.18 ==
Date: 23. 11. 2015
=== Bugfixes ===
* Fixed replay of a game created from another replay would crash the game. ([ more])
* Fixed that rotating an unpaired underground transport belt wouldn't make its items go back ([ more]).
* Fixed construction robots sometimes not picking up an underground transport belt whilst deconstructing it if it contains items ([ more]).
* Fixed all personal construction robots could get stuck waiting for trees to be gathered ([ more]).
* Fixed crash caused by allowing mods to order units to attack a disconnected player's character ([ more]).
* Fixed rare crash with construction robot. ([ more])
* Fixed the info about the energy consumption of personal roboport, to show the maximum consumption as other machines.
* Inventories with limit (chests) can get scroll bars when they are too big as well. ([ more])
* Fixed, that the train could get stuck when it has to accelerate to get to station that is very close. ([ more])
* Fixed map exchange strings not being accepted when the quote sequence contains spaces ([ more])
* Fixed locomotive not centered on rails. ([ more])
* Fixed train lights were further away than they should be. ([ more])
* Fixed spitters freezing in some cases ([ more]).
* Fixed crash when trying to load replay from save that doesn't contain level-init.dat ([ more]).
* Fixed incorrect default request amounts for shield and battery euquipment due to typo ([ more]).
* Fixed save with modded roboport could become unloadable without the mod ([ more]).
* Fixed beam animations for modded weapons ([ more]).
* Fixed that reconnecting train in special case lead to corruption of the rail state. ([ more])
=== Changes ===
* Improved formating of map exchange string.
=== Scripting ===
* Reading or writing LuaPlayer::character will now fail if the LuaPlayer isn't connected (see LuaPlayer::connected).
* Lua API documentation is included in release packages (directory doc-html)
== 0.12.17 ==
Date: 12. 11. 2015
=== Graphics ===
* New technology Icons!
* New item group icons.
* Updated the icons of rocket silo, beacon, sulfur, armors, stone brick and radar.
=== Bugfixes ===
* Fixed that assembling machines/furnaces could get stuck after changing mod configuration that affects their recipe.
      ([ more])
* Fixed that the window title was "Allegro" on mac os. ([ more])
* Fixed crash on exit with Steam overlay. ([ more])
* Fixed displaying of update unavailable message with disabled experimental updates.
* Added workaround for problem with AMD drivers that could cause missing or corrupted textures on some systems.
      ([ more])
* Fixed that making a blueprint of a ghost was not saving circuit connections.
* Fixed occasional crash during update after UAC dialog pops-up. ([ more])
* Fixed that the value of the checkbox in tips and tricks wasn't set up properly.([ more])
* Fixed that rocket silo electric energy drain was applied twice. ([ more])
* Fixed chain signals getting stuck on red ([ more])
* Fixed crash while rotating locomotives that crashed into something ([ more])
* Fixed an issue causing desync. ([ more])
* Fixed crash when loading save with lua tables that are nested more than expected. ([ more])
=== Scripting ===
* Added global log method that can be used to debug script problems.
* Added LuaFluidPrototype::localised_name property.
* Fixed that LuaInventory::insert didn't follow the slot restrictions. ([ more])
== 0.12.16 ==
Date: 30. 10. 2015
=== Bugfixes ===
* Fixed chain signal state propagation ([ more]).
* Added "markers" that will be recognized by nVidia and AMD drivers as hints to run Factorio on high performance GPU if switchable graphics technology is present.
      ([ more])
* Improved burner inserter's fuel searching logic; it will now search both transport belt lines for fuel ([ more]).
* Fixed crash when building locomotive on the junction. ([ more])
* Fixed crash when the first lab is built by construction robots. ([ more])
* Fixed crash related to train stopping for auto control. ([ more])
* Removed the limit of 800 pixels height of the recipe gui. ([ more])
* Fixed problems with too big character windows with too big inventory (modded) on screens that can't hold it, by making it scrollable.
* Fixed problem with night vision effect on some PC configurations. ([ more])
== 0.12.15 ==
Date: 28. 10. 2015
=== Bugfixes ===
* Fixed that it wasn't possible to execute ui actions while the game was stopped (research, tips and trikcs etc.)
* Fix of fix of loading of game containing lua objects.
== 0.12.14 ==
Date: 26. 10. 2015
=== Graphics ===
* Added new smoke graphics
=== Bugfixes ===
* Fixed loading of game containing duplicate lua tables. ([ more])
* Fixed flickering light intensity at the edge of the screen when moving.
* Fixed crash when pasting from empty clipboard into console on OS X.
* Fixed crash when reviving train stop that was connected to rail while destroyed while the rail no longer exists.
* Some ui actions made while the game was being saved were actually not executed altough it looked like it.
      ([ more])
== 0.12.13 ==
Date: 23. 10. 2015
=== Bugfixes ===
* Fixed that blueprint gates were colliding with ghost gates with same type and direction. ([ more])
* Fixed that LuaEntity::clear_request_slot and set_request_slot wouldn't update the logistics GUI if it happened to be opened at the same time. This time it's fixed for logistic chests as well. ([ more])
* Fixed crash when trying to open car GUIs in the map editor. ([ more])
* Fixed the desync issues related to converting floating point numbers to string in lua. ([ more])
** Note: until 0.13 other special values like nan, inf etc. are not solved properly, so they shouldn't be used.
* Fixed crash when loading a savegame with self recursive table elements. ([ more])
* Fixed that furnaces deactivated improperly when switching products. ([ more])
* Fixed crashes on linux (when download failed, after Lua error, ...)
== 0.12.12 ==
Date: 20. 10. 2015
=== Bugfixes ===
* Fixed another solar panel counting error. ([ more])
* Fixed that locale values in zip packages weren't loaded. (
* Fixed pushing of compound localised strings into lua. ([ more])
* Tweaked train path finding values for trains waiting on signals ([ more]).
=== Scripting ===
* game.get_localised_entity_name is replaced by LuaEntityPrototype::localised_name read property. The same for technology and item.
== 0.12.11 ==
Date: 16. 10. 2015
** Features:
* Added --no-auto-pause: When running as a server, --no-auto-pause will prevent stopping the game when no players are connected.
=== Optimisations ===
* Optimised the particle performance. Helps during heavy fights.
=== Changes ===
* Showing the log file location when the game crashes, so it is eaiser to find when reporting the bug.
* The "graphics.force-opengl" option default value is true when AMD graphics card is present.
=== Bugfixes ===
* Fixed that multiple electric networks connected to a solar panel could be exploited to generate more energy. ([ more])
** The energy of the solar panel is now fractioned between all the networks it is connected to.
* Fixed character entities disconnected from players not working correctly when in vehicles. ([ more])
* Fixed small-pump and offshore-pump not saving/restoring circuit conditions in LuaItemStack::get_blueprint_entities/set_blueprint_entities. ([ more])
* Fixed threading issue when loading games. ([ more])
* Fixed OS X Finder argument crashing the game on startup ([ more]).
* Burner inserter now grabs fuel for itself even if the target doesn't need it.
* Fixed active sound playing on machines without power ([ more]).
* Fixed empty unit groups crashing the game ([ more]).
* Fixed crash when building locomotives in latency hiding.
* Fixed cannot load save with modded rails when a rail mod is disabled (will work only on 0.12.11+ saves) ([ more]).
* Fixed crash when setting filters in the tank/car while riding in them. ([ more])
* Fixed crash when migrating/removing entities marked for deconstruction. ([ more])
* Removed one possible logical deadlock in the tutorial. ([ more])
* Fixed that remove_item didn't remove from player ammo, gun, tool and armor slots. ([ more])
=== Scripting ===
* 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:
* Removed game.on_save function. There should be no need for it and it was causing too many problems.
* Lua on_load function is not called when saving the game anymore. It is called only on actual load now.
* Lua API calls on_load, on_init, on_configuration_changed, on_event and generate_event_name have been moved to a new namespace called script (so from now use script.on_load(...)). This will break many mods!
** The callback registered in on_load function doesn't have access to the game API. This is to avoid common desyncs.
** The on_init and on_configuration_changed still retain the access to the game API.
* on_configuration_changed is fired when the map version changes, a mod version changes, a mod is added, or a mod is removed and passes "data":
** Pushes old_version="x.x.x", new_version="x.x.x" when loading map versions other than the current version
** When a mod version is changed it appears as a table of mod changes: {["Mod name"] = {old_version="x.x.x", new_version="x.x.x"}, ...}
** When a mod is added it appears as: ["Mod name"] = {old_version=nil, new_version="x.x.x"}
** When a mod is removed it appears as: ["Mod name"] = {old_version="x.x.x", new_version=nil}
* Changed LuaGameScript::makefile to LuaGameScript::write_file and added an optional third parameter bool to append.
=== Modding ===
* Replaced entity type "rail" with types "straight-rail" and "curved-rail". Property "bending_type" is optional for rail entities, but is still mandatory for rail remnants.
== 0.12.10 ==
Date: 02. 10. 2015
=== Changes ===
* Script created beam entities will now destroy themselves when the source or target entity becomes invalid.
=== Bugfixes ===
* Fixed crash when research completed in the same tick as inserting equipment into power armor. ([ more])
* Fixed hand not refilling with repair packs after a repair pack was consumed ([ more]).
* Fixed small pump not saving its condition in a blueprint ([ more]).
* Fixed rocket silo GUI bug. ([ more])
* Fixed "failed to create display" error on systems with multiple graphics devices ([ more]).
* Fixed the blinking problem in the multiplayer. ([ more])
* Fixed units disappearing when they shouldn't ([ more]).
== 0.12.9 ==
Date: 30. 09. 2015
** Features:
* Added reset button to the control settings dialog. It will set the controls back to the default.
=== Graphics ===
* Destroyer electric beams now use soft additive blend mode.
=== Changes ===
* Added --load-game: Will automatically load a save after initialising Factorio and go straight to the game, skipping main menu.
* Moved MP / autosave information dialogs to the top half (better visibility of what is happening in the game) and added screen fading.
* Implemented time-to-live for deconstruction order, if an order is not assigned for 1 hour, it is removed.
* game.print_entity_statistics() has been moved to player.print_entity_statistics(). ([ more])
* Updated the tips and tricks pictures. (+added copy paste)
* Smoothed map scrolling speed on different zoom levels.
* Added Resume button to multiplayer game menu.
=== Optimisations ===
* 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.
* Added FPS limiter to main menu screen.
=== Bugfixes ===
* Fixed the shotgun shooting. ([ more])
* Fixed the game could get stuck during start on systems with multiple display adapters.
* Fixed train GUI closing immediately after opening in multiplayer when the player is riding on the train.
* Fixed train GUI not containing the wait time slider until a station was explicitly selected ([ more]).
* Fixed production GUI jumping to undesirable places when resized ([ more]).
* Construction robots will be transferred to appropriate network when a logistic network splits ([ more]).
* Fixed crash when auto-re-filling ammo in tanks/cars ([ more]).
* Fixed wait slider in train GUI editing after deleting a station ([ more]).
* Fixed that negative emissions of power source (air filtering mod) could result into negative evolution factor.
* Fixed the game could hang when writing a message to log ([ more]).
* Fixed next save not being selected properly after clicking the Delete Save button ([ more]).
* Fixed module icons not showing in alt-view on rocket silos ([ more]).
* Fixed mining progress bar staying on screen when not mining in certain situations ([ more]).
* Fixed crash when loading 0.10 or older saves ([ more]).
* Fixed crash when loading pre-12.7 scenarios with redefined spawn location ([ more]).
* Fixed trains sometimes stopping on signals they reserved.
* Fixed personal roboport taking forever to deconstruct when there are a lot of deconstruction orders.
* Fixed a crash where the Lua stack would overflow and corrupt Factorio memory ([ more]).
* Fixed crash when using player.inventory.clear(). ([ more])
* Fixed that --create wouldn'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 ([ more]).
* Player <> entity transfer now ignores modules only when the entity has module inventory.
* Fixed beacons affected steel furnaces ([ more]).
* Fixed car starting sound playing when opening it's gui.
* Fixed crash when fast replacing a beacon (modded game only) ([ more]).
* Fixed train station names appearing on minimap with certain GUI scale settings.
* Fixed crash when zooming in the map all the way with the keyboard ([ more]).
* Fixed that LuaEntity::clear_request_slot and set_request_slot wouldn't update the logistics GUI if it happened to be opened at the same time ([ more]).
* Fixed width of some progress bars did not respect UI scale configuration ([ more]).
=== Modding ===
* Fixed projectiles with direction_only = false didn't respect direction_deviation configuration.
* Fixed entity dying explosion with "rotated = true" caused crash ([ more]).
=== Scripting ===
* 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.
* 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.
* LuaEntity::get_output_inventory now returns nil when the inventory doesn't exist (doesn't raise an exception as before).
== 0.12.8 ==
Date: 16. 09. 2015
=== Graphics ===
* New graphics of the steel furnaces.
=== Bugfixes ===
* Fixed that it was possible to spawn inside an entity in multiplayer.
* Fixed that the amount of slots shown in the right panel didn't depend on its with. (Which is indirectly dependent on resolution and ui scale.)
      ([ more])
* Fixed desync issue related to mod event registration and saving/loading.
* Fixed enemy units getting stuck on transport belts ([ more]).
* Fixed a crash caused by icon = "" in a prototype definition ([ more]).
* Fixed a crash related to assembling machine not being re-setup when recipe changes due to mod changes. ([ more])
* Fixed LuaItemStack::set_blueprint_entities(nil) erasing tiles in blueprints.
* Fixed crash when fast-transferring ammo while in vehicles. ([ more])
* Fixed trains stopping on green signals ([ more]).
* Fixed crash when changing the force of a player who is currently not connected.
* Fixed another problem with the missing maximise button after fullscreen. ([ more])
* Fixed desync problem related to duplicite order string in inventory groups leading to non-deterministic inventory sorting.
      ([ more])
* Fixed putting a blueprint on transport belt could corrupt game save ([ more]).
* Fixed CTD that could happen when removing focused widget (rarely). ([ more])
* Fixed that the tank tower rotation center wasn't aligned with the visible rotation center. ([ more])
* Fixed wrong coordination of the tank cannon direction and shooting direction when aiming on near the tank. ([ more])
=== Scripting ===
* 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.
* Added LuaItemStack::set_blueprint_tiles/get_blueprint_tiles - the counterpart to get/set_blueprint_entities.
* LuaEntity::insert/remove_item and LuaInventory::insert/remove now return counts of inserted/removed items.
* Added LuaTrain::insert, remove_item, get_contents, clear_items_inside, get_item_count methods which interact on the cargo wagons of the train.
* Added LuaItemStack::cost_to_build - the cost in items to build a given blueprint.
=== Modding ===
* The minimal energy_required for a recipe is 0.001 to avoid wrong behavior with values close to 0.
== 0.12.7 ==
Date: 10. 09. 2015
=== Changes ===
* Added 5th level of character logistic slots research.
* New command line options for the headless server: --disallow-commands and --peer-to-peer
* Entries in the mod list GUI are highlighted in red only when enabled and invalid at the same time.
* Added natural case-insensitive string ordering for the mod list GUI.
* 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 "player" force.
* Added force-opengl value in config (under graphics). When set to true, it forces to use opengl on windows instead of D3D.
* Map scrolling speed now changes with zoom level.
=== Bugfixes ===
* Inserters take items from correct line when the input transport belt is rotated ([ more]).
* Solved the "A blocking operation was interrupted by a call to WSACancelBlockingCall" error (hopefully as we can't reproduce it).
      ([ more])
* Scrolling using the scroll wheel now works much more predictably (not only when the cursor is over scroll bar or the root scrollable element).
      ([ more])
* Fixed crash when a script attempted to access a previously-destroyed GUI element ([ more]).
* Fixed that the graphics.max-texture-size property in the config was removed after Factorio restart.
* Fixed the tree bounding boxes.
* Another attempt to fix map transfer problems.
* Fixed disappearing fonts. ([ more])
* Fixed destroying a rail under a train would corrupt future save files. Rail can't be destroyed or die if a train is on it.
      ([ more])
* Robots can charge from closer roboport when heading to distant roboport for stationing (2.0) ([ more])
* Fixed problems with IPv6 on linux when only IPv4 is enabled in kernel. ([ more])
* Fixed crash when loading save with modded personal roboport in vanilla game.
* Fixed opening power armour inside a chest with latency hiding enabled crashing the game ([ more]).
* Fixed that distractor robots slowly drivted east.
* 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't taken in to consideration when calculating the slot limit. ([ more])
* Fixed desync issue related to inventory sorting and blueprints. ([ more])
* Fixed that amount_max in recipe specification actually worked as amount_max -1. ([ more])
* Fixed that mining tiles did actually create mining particles+sound on the lastly mined entity.
* Fixed that the maximize button was disabled when Full screen was turned of in the settings. ([ more])
* Fixed accessing the game menu was not possible when some other player paused the game in MP ([ more]).
* Fixed a graphical bug where the boiler would still glow after running out of water ([ more]).
* Fixed mergable items (repair packs, bullet magazines, ...) could sometimes confuse personal robots.
* Fixed the inserter sound related crashes. ([ more])
* Blind fix of some of the transport belt gap issues. ([ more])
=== Scripting ===
* The LuaEntity::logistic_network now returns also primary logistic network of other entities than roboport. (Inserter, Character, logistic chests)
* Placing stone or concrete floors will now remove most of the bushes ([ more]).
* Fixed crash on exit when config file can't be written ([ more]).
* Fixed player changing direction when the game is paused ([ more]).
* LuaEntity::belt_to_ground_type also works on a ghost.
* Increased precision of floating point in save files to prevent some desyncs in multiplayer ([ more]).
* Added LuaEntity::revive() - usable on ghost entities to revive them back to normal.
* Fixed that that the resource amount while creating the entity accepted non-positive values. ([ more])
* Added LuaForce::set_spawn_position(surface, position) and LuaForce::get_spawn_position(surface)
* 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. ([ more])
* Fixed inserting or removing items from player's inventory through LuaInventory object didn't update logistic supply properly.
      ([ more])
== 0.12.6 ==
Date: 01. 09. 2015
=== Changes ===
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category.
* 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)
=== Bugfixes ===
* Fixed setting circuit conditions desyncing/crashing multiplayer games. ([ more])
* Fixed reading logistic_network from entities that didn't have logistic networks returning unknown results. ([ more])
* Fixed that opening the Save Game menu after the last used saved was deleted would terminate Factorio ([ more]).
* 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 ([ more])
* Fixed destroying rail with gate would corrupt save file. ([ more])
* Fixed two different problems related to loading map with different mod set. ([ more])
* Fixed game freeze after desync happens for multiple players in server client mode.
* Fixed bug with ambient ocasionally taking toooo looooong.
* The rotation of cargo wagon player is riding doesn't affect the riding direction. (While it still affects it while being in locomotive). ([ more])
=== Changes ===
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category.
* 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)
* Fixed a performance problem in the pathfinder that would cause complete lack of enemy attacks in certain situations ([ more]).
=== Scripting ===
* Added LuaItemPrototype::module_effects read.
* LuaSurface::spill_item_stack will now additionally accept LuaItemStack objects as the stack to drop.
=== Modding ===
* Lab's researching speed is now independent of it's power consumption and can be changed using "researching_speed".
      ([ more])
== 0.12.5 ==
Date: 28. 08. 2015
** Features:
* The armor window opening is included in the latency hiding.
* Multiplayer broadcast (heartbeats) is done via a single message when not using peer2peer.
* Added some new ambient sounds (wind, slow tunes).
* Combinators blinking emit light.
=== Changes ===
* Pasting newlines and tabs into Factorio console now no longer strips them. Instead they are replaced by spaces.
* Continuous zoom is much slower in the chart mode.
** Only applicable when the zoom is setup to keys rather then scroll wheel. (
* Changed open/save dialog and the rail station list to use case insensitive natural ordering.
* Inserter stack size bonus is added to the assembling machine stack limit, to avoid inserters being stuck in certain situations.
      ([ more])
* Robots can charge from closer roboport when heading to distant roboport for stationing. ([ more])
=== Optimisations ===
* Further optimizations in size of the Multiplayer heartbeat (message sent every tick).
=== Bugfixes ===
* Fixed that editing tiles in the map editor on the edge of currently generated map could result in a corrupted scenario.
* Fixed potential stability problems when fast-replacing roboports (mod related).
* Fixed non-deterministic armor sorting which could cause desyncs. ([ more])
* Fixed crash related to changing recipe prototypes used by entities in inactive chunks. ([ more])
* Fixed circuit network contents sometimes being reset when removing connections or merging networks.
      ([ more])
* Fixed crash when Ctrl-clicking items to the player's main inventory when no character is attached ([ more]).
* LatencyState is suspended when player is killed (and waiting for respawn) in the Multiplayer.
* Fixed crash after finishing the game in MP with headless server ([ more]).
* Fixed crash related to displaying alerts from other surfaces ([ more]).
* Continuous zoom speed is independent of the game speed ([ more]).
* Fixed that it was possible to stack blueprints by inserting them into an assembling machine ([ more]).
* Fixed enemy expansion chunks not being updated properly ([ more]).
* Fixed trains changing state unnecessarily when reserving a signal when arriving to a station ([ more]).
* Fixed smart inserter not waking up when its filter was set from a script ([ more]).
* Fixed signal placement problems with diagonal rails (
* Fixed last wagon of long train did not wake up inserter at its end ([ more]).
* Additional fix of the puff smoke appering on different surface. ([ more])
* Fixed portions of previous surface visible after respawn when the player died on a different surface than is their spawn surface ([ more]).
* Fixed internal roboport connection inconsistency that could happen when migrating from 0.11 version. ([ more])
* Fixed train still having path while being in NO_SCHEDULE state ([ more]).
* Fixed disconnecting roboport from roboport network caused all construction robots in the network to cancel orders ([ more]).
* 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. ([ more])
* Fixed crash when changing recipes (mod related). ([ more])
* Fixed solar energy source was not included in electric demand satisfaction. ([ more])
* Finishing research should no longer interrupt GUI when "Singleplayer game stops when research is completed" is turned off ([ more]).
* Fixed Underground Belts graphics not tiling correctly.
* Fixed recipes not displaying in the correct sort order when adding and removing mods from an existing game.
* Fixed pathfinding penalty for trains with 1 stop in their schedule ([ more]).
* Fixed electric furnace still glowing with no power. ([ more])
* Fix of loading a map that contains mod with tiles, while the mod is no longer present.
* Fixed that it was not possible to use fast-replace when player was very close to the building.
      ([ more])
* Right side selection info GUI has fixed size. Description and text properties properly wrap.
      ([ more])
=== Scripting ===
* LuaForce::chart now creates a new chart if one doesn't exist yet, instead of erroring out ([ more]).
* Items now have a new optional attribute "stackable": When set to false, assembling machines won't be allowed to create stacks of the item.
** Currently only used with blueprints, to fix the "crafting machine stacks blueprints" bug.
* Added LuaEntity::rocket_parts read/write, usable on Rocket Silo.
* Added LuaEntity::launch_rocket(), usable on Rocket Silo.
* Added LuaLogisticNetwork - an interface to logistic networks.
* Added LuaLogisticCell - an interface to logistic cells (roboport/player logistic information).
* Added LuaTransportLine::get_contents().
* Added LuaPlayer::connected read - true/false if the player is currently connected to the game.
* Added LuaForce::kill_counts read, set_kill_count/get_kill_count methods to access and manipulate kill counts per force.
* Constant combinators now export their wire connections in LuaItemStack::get_blueprint_entities. ([ more])
* Added Prototype::order/group/subgroup read + LuaTechnology::order read.
* Added LuaRecipe::force read - the force that owns recipe reference.
* Added LuaEntity::chain_signal_state read - the chain state of chain signals.
* Added LuaEntity::speed read/write - the speed of a car/tank.
== 0.12.4 ==
Date: 14. 08. 2015
** Features:
* Simple mechanism for multiplayer relaying via the server.
=== Changes ===
* Renamed "multisampling" to "multisampling-level" in the config file.
** This will reset everyone's multisampling setting to 0.
* Construction robots take things primary from the main inventory, then quickbar.
* Reverted the order of inserter slot selection. ([ more])
* Added Alt-mode (showing entity info) to the latency hiding.
* 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.
* Construction robots will check if their target is still in the network area when they return to personal roboport for charging.
      ([ more])
* Tweaked the stuck resolve mechanism. This should solve the
=== Bugfixes ===
* Less annoying glitches when running and shooting in multiplayer with latency hiding.
* Fixed that the loot wasn't always properly put on transport belts. ([ more])
* Fixed force building specific blueprints. ([ more])
* Fixed setting player character to other player's character crashing the game. ([ more])
* Fixed failed --apply-update returning success even when it failed ([ more]).
* Fixed the latency hiding inconsistency in the entity transfer action, entity rotation, blueprint selection deconstruction selection and others.
      ([ more])
* Fixed ghost inserter arrows being displayed incorrectly ([ more]).
* Zooming works comfortably also when mapped on buttons, as holding the button continuously zooms in/out instead of doing just one small zoom step.
      ([ more])
* Proper direction filtering (8 way versus 4 way) when building ghosts from script. The direction is now dependent on the ghost inner entity limitation.
      ([ more])
* Fixed that the new lamp entity was off-center. ([ more])
* Fixed behemoth biter resistance specification. ([ more])
* Fixed that the game could crash when connecting train in a junction. ([ more])
* Fixed construction robots could cause desync when they used up all repair packs.
* Rocket silo behaves correctly when out of electricity. ([ more])
* Fixed tank cannon shell tooltips. ([ more])
* Fixed error message on campaign mission 4 ([ more])
* Fixed crash when exiting the game in the map editor with the menu open.
* Fixed trains not alarming inserters when switched to manual mode when already stopped. ([ more])
* Fixed connection failures on windows without IPv6 enabled ([ more])
* Solved stuttering while building when max_expansion_distance was set to high values by a mod. ([ more])
* Fixed robots getting stuck when trying to store damaged items. ([ more])
* Fixed that lot of output in the output console could slow down the game a lot. ([ more])
* Fixed that damage to be taken wasn't cleared when entity was rebuild by robots, so the entity was partially unkillable.
* Fixed that train stop rebuilt by robots wasn't working properly. ([ more])
* Fixed crashes with invalid locale on linux
* Fixed that Save scenario + Save as wasn't translatable. ([ more])
* Changed the default style of custom text field to have not only minimal_width but also maximal_width 150.
** So all of the textfields will not get larger on load, until the maximal_width is specified to be larger.
      ([ more])
* Fixed that replay didn't work on the campaign levels. ([ more])
* Fixed determinism issue in logistic network causing desync. ([ more])
* Two trains never collide as long as they don'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.
      ([ more])
* Fixed copy&pasting filters between cars ([ more]).
* Fixed crash in replay of game which was save and then loaded ([ more])
* Fixed problems with RTL scripts ... again ([ more])
* Fixed the crash when radar was created on a surface that didn't have chart initialised on the surface for the specific force.
      ([ more])
=== Scripting ===
* Fixed that inserter didn't return drop_position.
* Fixed crash when calling set_command on empty unit groups ([ more]).
== 0.12.3 ==
Date: 07. 08. 2015
** Features:
* Circuit wire building and repairing is incorporated in the latency hiding logic.
=== Changes ===
* Cars of your own force always render their tags on the map.
* Multisampling not officially supported from now on.
** It can still be manually specified in the config, but not in the graphic settings gui.
** The main reason is the trouble with tiling which doesn't really have a simple fix.
* Changed the console spam-prevention mechanic to check all messages for the last second instead of just the last entered one.
=== Bugfixes ===
* Fixed the Invalid Transport Line Index error. ([ more])
* Fixed signal selection window not displaying correctly when "Use item groups" is disabled. ([ more])
* Fixed broken accumulator input flow limitation. ([ more])
* Fixed trains viewing other trains with schedules with only 1 valid stop as not stopped ([ more]).
* Fixed trains sometimes not recalculating their path when a new path opens up.
* Fixed shotgun damaging objects behind player. ([ more])
* Fixed trains not being counted properly, when entering a block multiple times without leaving ([ more]).
* Fixed copy&paste on Linux ([ more])
* Fixed desync when trying to open an enemy structure ([ more])
* Fixed changing forces of damaged entities could corrupt subsequent game saves. ([ more])
* Fixed crash when clicking inventory item while dragging wire in latency hiding mode. ([ more])
* Fixed that the smoke effect when building something always showed on the viewer surface. ([ more])
* Fixed crash related to alerts on multiple surfaces. ([ more])
* Fixed copy-paste for cars/tanks. ([ more])
* Fixed single locomotivies not rendering on the chart view.
* Fixed the non standard number format of big numbers in the research tooltip gui. ([ more])
* Fixed crash after finishing the game in multiplayer ([ more]).
* Fixed construction robots got stuck when trying to take items from logistic trash slots ([ more]).
* Fixed productivity bonus being lost with very high productivity values ([ more])
* Fixed that script errors didn't stop the game, and it was possible to possible the game by pressing ESC.
* Fixed that non-default mods were not loaded during the first start of Factorio after mod-list.json was deleted.
* Fixed that inserter was always preffering the Left side when picking up from the underground belt. (
* Fixed robots from personal roboport would keep transferring items from chest which was ordered for deconstruction even after the chest gets out of the personal robot range. ([ more])
=== Scripting ===
* Implemented remove_item() for all entities that have items.
* Added LuaEntityPrototype::autoplace_specification read.
== 0.12.2 ==
Date: 31. 07. 2015
** Features:
* Enabled swapping held blueprints with other blueprints directly.
* Force-building blueprints will mark any colliding trees for deconstruction.
* Added filters to car and tank main inventories.
=== Changes ===
* Inserters will never take more than the maximum stack size of the item.
* Way more relaxed timeouts for dropping peers during map uploads ([ more]).
=== Bugfixes ===
* Factorio with RTL languages no longer crashes on startup because of reversed font path.
* Fixed crash when removing mods that added/changed recipes (
* Disabled repairing of combat robots ([ more]).
* --start-server and --create now accept filenames with dots in them ([ more]).
* Combinators will no longer turn off when no wires are connected ([ more]).
* Shift + click will move items into logistic trash slots only in character gui ([ more]).
* Fixed circuit network crash when removing mods that changed the inserter ([ more]).
* Fixed crashes related to migrating entities ([ more]).
* Inserters and logistic robots no longer extract from enemy chests (
* Fixed health bar display on large entities like the rocket silo ([ more])
* Fixed crash when loading some maps that were migrated from early-0.11 versions ([ more]).
* Inserters now correctly pick up items from splitters (,
* Picking up items from curved belts picks up from the correct line ([ more]).
* Fixed that electric pole/roboport radius visualisation were off-centered in low graphics mode.
* Fixed that turrets had too small remnants.
* Fixed bug when removing roboports during load migration (
* Empty autoplace tag in mod entity specification doesn't place entity at all ([ more]).
* Fixed blueprints or armors getting erased when inserters move them.
** Fixed "Attempt to clone non empty blueprint" and "Attempt to clone armor with equipment grid" when inserters move them.
      ([ more])
* Character doesn't get moved by neighbour transport belt after game load.
* Crafting entity tooltips show contents in order and now also show fluids ([ more])
* Fixed missing belt activation in specific situation ([ more])
* Fixed modded spitters could spit very far from their location when trying to destroy a tree ([ more]).
* Map editor wire editing works again.
* Fixed beacons stopping working when the modules where removed and re-inserted ([ more]).
* Fixed power armor GUI tooltips not showing sometimes.
* Fixed v-sync causing framerate to go bellow 60 when Windows Aero theme is enabled ([ more]).
* Flame-thrower sounds volume is dependent on the distance of the player now. ([ more])
* Tank can turn around without moving forward again. ([ more])
* Fixed tile building/removal sometimes removing buildings or killing the player.
* Fixed tile building/removal sometimes creating or removing water.
* Fixed tile removal ignoring changes made in map editor.
* Fixed crashes when mining path tiles while map is generated.
=== Scripting ===
* get_surface never returns invalid surface.
== 0.12.1 ==
Date: 24. 07. 2015
** Features:
* Burner inserters start with enough energy to pick up 1 item and fuel them selfs.
=== Changes ===
* Train station names use natural string comparing (station "Iron 10" comes after "Iron 9", not after "Iron 1").
* New command-line parameter: --latency-ms. Allows to set server latency in milliseconds rather than ticks
* You can copy paste circuit network conditions between Inserter, Lamp, Pump and Offshore Pump.
* The delete button in Load Game or Save Game dialogs now asks for confirmation before deleting
* Locomotive on schedule can't be rotated while moving anymore.
* Changed fast inventory transfer from the main player inventory so ctrl+clicking empty slots doesn't move items to the logistic trash slots.
* Changed Assembling machine's auto-insertion behaviour when using speed module effects. Faster speed with fast recipes will insert more items sooner.
=== Bugfixes ===
* Very rough support for RTL languages, the texts are no longer rendered backwards (but the gui still is and multiline text will cause problems).
* Fixed Rocket Silo rocket inventory tool tip sticking around when it shouldn't ([ more]).
* Fixed furnaces rendering light when inactive ([ more]).
* Fixed transport belt to ground in blueprints when rotating crashing the game ([ more]).
* Fixed LuaSurface::can_place_entity checks for rails ([ more]).
* Fixed inserters putting items only on left line of underground belts. ([ more])
* Fixed ghost building concrete/stone not updating charting ([ more]).
* Fixed ghost building concrete/stone distance being restricted ([ more]).
* Fixed crash when leaving vehicle while on a transport belt entity ([ more]).
* Fixed charging from primary and secondary energy sources (aka shield insta charge) (,
* Fixed crash when trying to set filter on vehicle ammo inventories ([ more]).
* Fixed mining concrete/tiles sometimes making water where it shouldn't be ([ more]).
* Fixed character-logistic-trash-slots-2 technology prequisite ([ more]).
* Fixed crash when calling game.player.surface.set_multi_command ([ more])
* Fixed electric wire rendering on low graphics quality settings ([ more]).
* Fixed unable to load 0.11 savegames with active combat robots ([ more]).
* Fixed robots building paths over existing paths not mining the existing paths first ([ more]).
* Fixed personal robots would sometimes follow player instead of stationing when they use up all material for terrain building.
* Fixed splitters/transport belts still running when marked for deconstruction ([ more]).
* Fixed death after launching the rocket not ending the game in single player ([ more]).
* Fixed crash when disconnecting character from player while crafting ([ more]).
* Fixed inserters sometimes not loading Rocket Silo after launch ([ more]).
* Fixed circuit network sometimes showing items with no number.
* Fixed crash when the game attempted to play a sound in headless mode ([ more])
* Fixed incorrect gun turret health ([ more])
* Copy pasting now works for Small pumps and Offshore Pumps.
* Fixed crash when loading single-player save in multiplayer without "Allow commands" checked ([ more]).
* Fixed not being able to set the UI scale back to normal after accidentally setting it to 200% ([ more]).
* Fixed locomotive lights and vehicle indicators being rendered across different surfaces ([ more]).
* Fixed not being able to fast-transfer stone bricks and concrete into entities.
* Fixed splitters giving priority to one input belt ([ more]).
* Fixed actions during saves strangeness ([ more]).
* Fixed logistic inconsistency when removing mods that added logistic/construction robots ([ more]).
* Fixed crash when removing mods that added biter spawners ([ more]).
* Fixed crash related to changing forces on units ([ more]).
* Fixed assembling machines going to sleep when their fluid output had fluid but the ingredient slot didn't have enough item ingredients.
* Fixed crash when trying to read LuaSurface from disconnected player through mods ([ more]).
* Fixed train going into automatic mode when hitting something (again) ([ more]).
* Fixed laser turrets cause other eletric machines to drain more power from accumulators than they should. ([ more]).
* Fixed crashes when connecting to MP game on older ubuntu (and possibly other distributions;
* Fixed crash when projectile with default maximum range doesn't hit anything and flies forever ([ more]).
=== Scripting ===
* LuaSurface::set_multi_command now takes an optional third argument specifying the force to send the command to. Default is the enemy force
* Default mods are always enabled if mod-list.json is lost (even when enable new mods option is disabled).
* 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.
** Note: LuaSurface currently never switches between valid and not valid so the check only has to be done when it's first read from the LuaPlayer.
* Changed default maximum range of projectiles from 10^308 to 1000.
== 0.12.0 ==
Date: 17. 07. 2015
=== Major Features ===
* The game is now finished by launching the rocket with satellite.
* Added chain signals, they can be used to make more complicated junctions and stations without deadlocks.
* 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.
* Added logistic trash fields to the character gui.
** They supply items into the logistic system in the same way active provider chests do.
* Added combinators (Arithmetic Combinator, Decider Combinator and Constant combinator).
** These allow more advanced manipulation with the circuit network logic (
* Multiplayer latency hiding (gives impression that some common tasks are performed immediately)
** Applies to character movement, mining buildings, building, fast replacing, opening guis, etc.
* Stone brick can be used to build stone path. (30% walking speed increase).
* Concrete can be created.
** The concrete can be used to build concrete floors (40% walking speed increase).
* Terrain modifies vehicle friction force (sand: 1.8, grass: 1.6, dirt: 1.4, stone path: 1.1, concrete: 0.8).
* The Lamp, Storage Tank, Small Pump and Offshore Pump can be connected to the circuit network.
** Features:
* Trees degenerate slowly when there high pollution levels.
* 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't wasted.
* 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.
* Added / updated sounds for biters, spitters, worm, spawner, flamethrower, tank, lasers, etc.
* 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.
* Mousing over a train will show you its current path and blocks it can't enter.
* Locomotives now show the contents of attached cargo wagons in their tooltip.
* Trees regenerate health slowly.
* Added support for transferring contents/settings when fast-replacing all entity types.
* Added modules to the alt-view for entities that support modules.
* Factorio can run as a dedicated server without graphics (
* Basic PvP: New forces can now be created and merged back together; a cease-fire can be agreed upon between forces
* IPv6 support for multiplayer.
* DNS names can be used when connecting to multiplayer game.
* Enabled mining trees/ghosts while holding blueprints to be built.
* Added explosive cannon shells.
* Building blueprints over existing ghosts restores the ghost time to live to full.
=== Changes ===
* Disabled loading of saves before 0.9.0 version (You can use 0.9.8 to load older saves and re-save them).
* Removed rocket defense entity.
* Items on transport belts don't go off the belt at the end, so the transport belt has to go directly in front of the required inserter.
* Reduced number of rendered Roboport connections.
* The trade in the marketplace only happens if the player can accept the trade items.
* Inserters can now extract from Roboports and Beacons.
* Inserters now take items from right behind them, not from the center of the pickup target entity.
* 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 -> assembling machine 2) and from assembling machines to requester chests (sets filters to 2 x requirements of the assembling machine).
* Trees have generally smaller bounding boxes, so it is easier to walk through forest.
* Power armor modules generate and consume 100 times more power in order to be able to charge construction robots.
* The construction robots don't build gate in the gap between the rolling stock vehicles. They wait for the train to get away.
* Player's logistic filters are now remembered after respawn in multiplayer
* All turrets are now 4x4; laser turrets are 4x more expensive and powerful, gun turrets are 2x more expensive
* Roboport tooltip now shows correct numbers of contruction and logistic robots separately.
* 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't find a path.
* Improvements to circuit network wire connection. You can connect multiple wires of the same color to the same entity.
* The autosave dialog no longer cancels an active blueprint or deconstruction planner selection if the mouse button is still held after the autosave finishes
* Number of autosave slots is now configurable through config.ini (no GUI).
=== Optimisations ===
* Overall optimisation of train + belt heavy factories is roughly 66% compared to 0.11, this means that the game runs 3 times faster.
* Optimised the transport belt movement.
* Optimised the rotated bounding box collisions checks (trains).
* Optimised the smoke update.
* Optimised the solar panel, all the solar panel input is merged, so the count doesn't matter.
* Optimised the accumulators by merging then into groups, where typical factory has 1 group per network.
* Optimised the land mine activation mechanism.
* Smaller multiplayer heartbeat packet size.
* Optimised adding/removing of roboport, robots keep their tasks if they can.
* Path finder will terminate when search is too long. This avoids save explosions (see
* Optimised rendering for large logistic networks.
* Fixed that the graphics were saved twice in the RAM memory.
=== Graphics ===
* New graphics of the combat robots.
* New graphics of the laser/gun turrets, their color is now player/force dependent.
* New graphics of muzzle flash for player, car, tank and turrets.
* New tree graphics. Trees have 4 levels of leafes and the leafs are colorable.
* Trees emit leaves (based on the tree color) when being mined and destroyed.
* Trees emit branches when mined or destroyed.
* Storage tank has a small window showing the liquid inside.
* Combat robots attack beam (
* New GUI icons: Weapons, ammo, status icons such as out-of-ammo or out-of-electricity
=== Bugfixes ===
* Fixed wrong item count in the logistic system when handling partially-filled magazines, repair packs or other items with durability
* Fixed the choppy (not smooth) movement when using the exoskeleton equipment.
* item-description localization now displays correctly when previewing recipes.
* entity-description localization now displays on entities.
* Proper blueprint centering. It is based on the included entities rather then the selection rectangle when the blueprint is created.
* Very big entities no longer disappear at the edge of the screen
* When putting things on ground, the first item was never put exactly under the cursor even when the place was empty.
* Fixed that it wasn't possible to swap stacks of the same items with different health.
* Fixed strange behavior of tank/car entering sound.
* Fixed LuaFluidBox crashing the game when attempting to read fluid from an entity that previously had fluidboxes.
* Car / Tank ammo inventory is refilled from the trunk / player inventory when exhausted.
* Fixed writing invalid LuaEntity::selected_gun_index crashing the game.
* Fixed the power armor battery level indicator getting drawn on top of everything else ([ more]).
* Fixed that following robots created through trigger crashed the game.
* Fixed the train pathfinding issue when the train crashes to something while stopping for signal or station in front of a junction.
* Fixed that crashing to something while in manual mode in train could switch it to automatic mode.
* Fixed crashing when setting modded GUI styles in Multiplayer.
* Fixed crash when trying to read LuaPlayer::opened on a dead player.
* 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 ([ more]).
* Fixed LuaSurface::can_place_entity returning true when checking item-on-ground against item-on-ground ([ more]).
* Turrets can now be modded to use shotgun (and other not guided) ammo.
* Fixed research window appearing behind the selection/minimap pane when shown from research completion ([ more]).
* Fix inability to bind some OEM keys on Windows. Added the ability to bind more keys including multimedia keys. ([ more])
* Fixed marking a ton of entities for deconstruction outside the construction range of roboports slowing down normal deconstruction rates.
* Fixed crash when removing electric poles from electric networks or circuit networks with large amounts of poles ([ more]).
* Fixed video-memory-usage option on Windows. It is possible to run Factorio on configurations with low VRAM (less then 512MB). Other platforms don't have this issue.
* Fixed that control-clicking entire inventory into a machine installed modules.
* Fixed another instance of the "Trying to make chunk at unreasonable position" bug ([ more]).
* 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 ([ more])
* Console no longer loses focus after an autosave ([ more])
* Fixed wrong highlight when crafting ammo in vehicles ([ more])
=== Modding ===
* Ambient sounds are specified as prototypes so they can be extended and modified by mods.
=== Scripting ===
* Changed all the identifiers/methods/events/parameters. Underscores are used as word delimiter (findentities -> find_entities).
* Changed glob to global.
* New object LuaSurface, accessible from player/entity as read property surface.
* 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
* 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.
* Added LuaFluidPrototype - similar to LuaItemPrototype but for fluids.
* math.random can now accept negative values for ranges eg x + math.random(-10, 10)
* Added LuaRecipe::hidden and energy read.
* New object LuaGroup, accessible from LuaEntityPrototype as read property group/subgroup.
** LuaGroup contains: name, type, inventory_order, group, subgroups
* 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
* LuaItemPrototype::group now returns the new LuaGroup object.
* Added LuaEntity::is_crafting() - returns true/false if the assembling machine or furnace is currently crafting a recipe.
* Added LuaEntity::crafting_progress/bonus_progress - a percent of 1: the current crafting progress or bonus progress.
* Added the ability to compare LuaObjects using "==" as in: "if game.player == game.players[1]" for all LuaObjects.
* Removed all LuaObject::equals(): the == operator can be used in its place.
* Added new blend modes for sprites using "blend_mode" property. Possible values: "normal", "additive", "multiplicative".
* Added on_player_driving_changed_state event - passes the player_index who's driving state changed.
* Added LuaEntity::belt_to_ground_type - returns the type "input"/"output" of the transport-belt-to-ground.
* Added several methods for manipulating gates: is_opened, is_opening, is_closed, is_closing, request_to_open, request_to_close.
* Changed LuaEntity::neighbours:
** For electric poles: the wire connections: {copper={}, red={}, green={}}
** For transport-belt-to-ground: the input/output entity it's connected to (or none)
** For entities with fluid - the entities the fluid connections connect to indexed by the fluid connection
* #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).
* Added the ability to specify map colors for all entities: map_color, friendly_map_color, and enemy_map_color
* Added the ability to disable drawing the station name for train-stop type entities: chart_name = "false" in the prototype.
* LuaEntity::backer_name can now be read/written for all entities that support backer names (furnace, assembling machine, lab, locomotive, radar, roboport, trainstop).
* LuaEntity::recipe can now be set to nil to remove the recipe from an assembling machine.
* Added LuaItemPrototype default_request_amount, resistances, item_to_clear.
* Added LuaChart::chart_all (charts all the generated parts of the map).
* Expanded LuaEntity::get_item_count and LuaEntity::clear to work with all transport belt entities.
* New object LuaTransportLine, accessible from entity as read method get_transport_line(index) - an interface to the items on transport belts.
* Added LuaSurface::count_entities_filtered - the same as find_entities_filtered but simply returns a count. The benefits being: it's much faster than find_entities_filtered when the entity references aren't desired.
* Added LuaForce::enable_research() - enables research for the force if it was disabled.
* Added LuaSurface::spill_item_stack() - takes a item_stack and position and drops the items on the ground item bomb style.
* Changed LuaEntity::stack, LuaEntity::held_stack and LuaPlayer::cursor_stack to return LuaItemStack objects.
* 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.
* Removed LuaEntity::clear_circuit_condition() - LuaEntity::set_circuit_condition(index, nil) can be used instead.
* Added "force" option to LuaSurface::find_entities_filtered/count_entities_filtered.
* ItemStack counts can be excluded and defaults to 1, ItemStacks can be strings and default to a full stack.
* Added LuaItemStack::count write support.
* Added LuaItemStack::can_set_stack(), set_stack(), clear() - write support to a specific item stack.
* Removed LuaEntity::stack, held_stack write support - LuaItemStack::set_stack() can be used.
* Removed LuaPlayer::cursor_stack write support - LuaItemStack::set_stack() can be used.
* Added LuaTrain::cargo_wagons read - returns only the cargo wagons for the given train.
* Added LuaEntity::remove_market_item - takes an index to remove from a Market entity offer list.
* Added LuaEntity::get_market_items - returns a table of offers the Market entity offers.
* Added LuaForce::research_progress read/write - a percent of 1 - the current research progress (0 if no research).
* Added LuaEntityPrototype::turret_range read - the range of a given turret entity prototype.
* Added player_index to the on_put_item event.
* Added ghosts from manual building and blueprints to the on_built_entity event.
* Added LuaPlayer::enable_flashlight() - counterpart to disable_flashlight().
* Replaced LuaGameScript::kill_all_enemies() by LuaForce::kill_all_units().
* Changed on_researched events to return the relaed LuaTechnology object.
* Added LuaTechnology::force read - the LuaForce the technology belongs to.
* Added LuaGame::create_surface - takes a string name and optionally a table of map gen settings and creates a new surface.
* Changed LuaPlayer::teleport to allow optionally a surface name, index or object to teleport the player to. The surface must exist.
* 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.
* Added LuaSurface::map_gen_settings - the current map gen settings for the surface.
* 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.
* Added LuaGuiElement::parent read - the parent of the LuaGuiElement if any else nil.
* Added LuaPlayer::index read - the numeric index of the LuaPlayer object.
== 0.11.22 ==
Date: 24.4. 2015
=== Bugfixes ===
* Fixed the possibility to break the scripting of the 3rd New hope campaign by fast replacing the boilers with pipe.
* Fixed parsing of localised string in lua commands when the string is concatenation. ([ more])
* Fixed (once again) the inserter connection to rail in junctions. ([ more])
* Fixed that the combat robots ignored the vehicle of the player and damaged directly the player. ([ more])
* Fixed crash when character disconnected from player is crafting. (
== 0.11.21 ==
Date: 9.4. 2015
=== Bugfixes ===
* Fixed potential save corruption if the game was saved while mousing over a mining drill.
* Fixed that the red/green wires weren't properly revived when rebuilding entities after destruction. ([ more])
* Proper error message when the game can't handle too big amount of prototypes due to big amount of mods loaded at the same time.
* Fixed broken map when the player resizes the window while the map is being loaded. ([ more])
* Fixed that market gave items always to to the first player in the given force, rather than the buyer. ([ more])
* Fixed the freezes and wrong behaviour when manually crafting recipes with probabilities. (
* Fixed that it wasn't possible to use the for message confirmation for something else at the same time. ([ more])
* Fixed the squishy map preview image when moving the loading dialog halfway offscreen. ([ more])
* Fixed wrong probability calculation of bonus production of mining drill. ([ more]).
* Fixed that writing text in the map editor save/load dialog interfered the map. ([ more])
* Fixed that error messages of malformed parsing ini/json files didn't contain the file name. ([ more])
=== Modding ===
* Increased the maximum amount of item subgroups. (255 -> 65535)
* Storage slots of mining drill is moddable now. This affects the internal inventory size, so when resource with more different results is mined, no items are lost (as long as the size is big enough). Default value is 1.
== 0.11.20 ==
Date: 2.4. 2015
=== Bugfixes ===
* Fixed crash related to rail segments in map loaded from 0.10.x ([ more]).
* Fixed issue with connecting to Multiplayer host that has open menu. ([ more])
* Fixed multiplayer desync in a game loaded from different mod configuration without save/load in between ([ more]).
* Fixed crash when inserter with circuit conditions gets destroyed. ([ more])
* Fixed bug where tank would no longer turn in place. Turning in place is not possible when out of fuel. ([ more])
* Fixed lockup when iterating large numerical arrays in lua. This time for real. (
* Fixed double speed issue for monitors with 120Hz refresh rate or higher ([ more]).
* Fixed bug with game freezing in some situations when the game is blocked by a firewall ([ more]).
* Fixed rail signals blocking the blueprint. ([ more]).
* Re-Fixed crash when the number shown in the short number format exceeded supported prefix. ([ more])
** The prefix support has been extended for lua files parsing also.
* Fixed production stats accuracy. ([ more]).
* Fixed the graphical glitches in terrain transitions on certain zoom levels. ([ more])
* Another fix of manual crafting requirements logic calculation. ([ more])
* Fixed the loot table probability calculation bug. ([ more])
* Fixed armor battery icon being always on top. ([ more])
* Fixed errors when reading game.player.minimap_enabled.
* Fixed that it wasn't possible to insert ammo into tank ammo slots from cursor.
* Fixed the wrong inventory highlights of ammo in tank/car. ([ more])
=== Scripting ===
* Fixed building position of ghosts built by script. ([ more]).
== 0.11.19 ==
Date: 20.3. 2015
=== Bugfixes ===
* Fixed that it was possible to use the fast replace on enemy structures. ([ more])
* Fixed crash when multiplayer quit is performed at the same time as the autosave. ([ more])
* Fixed crash when autosave happens at the same time as mining the entity. ([ more])
* Fixed that players/vehicles/units were blocking building of blueprint.
* Entity Spawner / Worm will call for help when attacked in peaceful mode ([ more]).
* Fixed crash when the number shown in the short number format exceeded supported prefix (was T for tera).
** The prefix support has been also extended, so it supports k for kilo (10^3) up to Y for yotta (10^24).
* Fixed that the changelog window was too big on 1280X1024 resolution.
* Fixed the (mini) map behavior when a lot of map requests near the edge are made (linear maps with radars typically).
* Fixed the missing debug symbols on mac and linux, so the error reports on these systems gives us better information.
* Linux release uses older glibc so, it should be Ubuntu 12+ compatibile.
** Translation:
* Use the word intermediates instead of intermeidates. ([ more])
=== Changes ===
* Multiplayer dropping threshold is doubled during map upload / download.  ([ more])
== 0.11.18 ==
Date: 12.3. 2015
** Features:
* Blueprints can be built over things marked for deconstruction.
* Blueprints can be force placed using alternative build mode (shift click).
=== Balancing ===
* Increased the cargo wagon inventory size (20->30).
* Increased the crafting cost of the cargo wagon and locomotive.
=== Bugfixes ===
* Fixed save corruption (rare probability) related to rendering alerts and saving the map.
* Fixed crash in map editor when changing / setting assembling machine recipe ([ more]).
* Fixed desync loop when changing player force via script - in PvP mod for instance ([ more])
* Added explaining text for the second new hope campaign supplies objectives. (that the car supplies count only the user is in the car)
* The flamethrower fluid input order is the same as before, so it matches the refinery outputs.
* Fixed clearing the cursor while attempting to repair something ([ more]).
* Fixed that changing force of roboport (in map editor or by a script) didn't update the connections properly.
* Roboports now behave correctly when teleported using scripts.
* Fixed that some of the technology icons were scaled down in the technology selection.
* Fixed that the Not minable checkbox was set based on the Indestructible value in the map editor.
* Fixed that the two way signals weren't possible to build on diagonal rails. ([ more])
* Fixed copy-paste for Cargo wagons not activating inserters.
* Fixed copy-paste for entities with inventory limits not copying the limit.
* Fixed that the "Electric demand satisfaction" label was not translatable.
* Removing and merging the locomotive of a train without any additional locomotives doesn't clear the schedule anymore.
* The line height in the debug info is dependent on the scale, so they don't overlap or take too much space on different scales.
* Fixed that non valid require did crash the game instead of giving proper error message.
* Fixed "Trying to make chunk at unreasonable position" caused by some vehicle collisions. ([ more])
* Fixed weird behaviour and bad damage calculations when colliding with multiple objects while in a car or tank.
=== Changes ===
* Small change of collision box of curved rail, so the underground belts can be built on one additional particular position.
* Tank should no longer get stuck. Tank destroys objects by accelerating into them even when standing still ([ more])
=== Scripting ===
* Setting technology as finished using the script also fires the ontechnologyresearched event.
* Order to chart a big area doesn't slow the game horribly anymore. ([ more])
* Added on_resource_depleted - called when a resource is depleted to its minimum yield or 0. Passes the resource entity as event.entity.
* Car prototype now uses "energy_per_hit_point" instead of "crash_damage_multiplier", consistent with train prototypes.
=== Modding ===
* Moved the player hit tint color into the player prototype.
== 0.11.17 ==
Date: 5.3. 2015
** Features:
* Tooltips are now generated automatically for some items. You will now see more detailed info for capsules, turrets, ammo([ more])
* Autosaves in multiplayer are performed at the same time by all clients (interval is set by hosting player).
* Progress bar is shown when non-responsive peers are about to be dropped from the game in the Multiplayer.
* Progress bar is shown when other peers in multiplayer are saving map.
* Items dropped by the enemies are collected automatically (without the pressed f) and from bigger distance.
* Better construction robot strategy.
** When the construction is processed, the closest available supply of the required item is found and the closest robot to this supply is selected for the construction.
* The game shows name of other players above their head.
=== Balancing ===
* Increased the stack size of straight rail (50->100).
=== Bugfixes ===
* Fixed desync issue related to removing of active entities.
* Fixed desync issue related to blueprint with more than one icon.
* Don't get stuck in Multiplayer when left alone downloading the map.
* Desync report in multiplayer is generated in parallel avoiding desynced player being dropped.
* Fixed that the train didn't continue when it crashed to something (typically player) while breaking for signal/station.
* Fixed that the technology ingredients weren't sorted.
* Unified the rail align of signal to the diagonal rails ([ more]).
* Fixed crash when the recipe of assembling machine is changed while the gui is opened. ([ more])
* Fixed another updater post-update logic error on windows.
* Fixed shift-removing equipment from the equipment grid freezing the game. ([ more])
* Fixed the item to entity insertion logic. ([ more])
* Fixed crash when autosave happens immediately after loading a multiplayer map as a new player.
* Fixed some UI icons not scaling correctly and not being displayed pixel-perfect([ more])
* Fixed that the order of products in the recipe is now specifiable by the lua definition the same way as the ingredients.
* Fixed that saves with corrupted energy sources because of the double entities problem in 0.11.16 are not loadable now.
* Fixed the crashes that can happen when accessing the train controls in multiplayer. ([ more])
* Fixed electric energy logic, so it is handled properly when the electric poles /electric machines are moved (mod related).
* Fixed that rail signal disconnected from rail didn't show health bar and deconstruction icon.
* Fixed crash when clicking into gui in replay mode.
* Fixed that the button based questions in the sandbox scenario logic could interfere with other mods. ([ more])
* Fixed ocasional crash when building cargo wagons/locomotives. ([ more])
* Fixed crash when removing rail under train in map editor or from a script. The train on the rail is destroyed in that case.
* Fixed wrong saving directory in the non-hosting MP client([ more]).
* Progress bars in Multiplayer (loading map, autosaving, etc.) don't overlap but instead stack.
* Fixed missing exexcutable permissions in linux tarball.
* Fixed minor issue with generated map even size being rounded up ([ more]).
* Electric turret shows energy consumption properly depending on the shooting speed upgrades.
* Fixed that the north pipe covers of machines were drawn over the entity. (
* Fixed the crash when autosave is triggered while the computer is locked. The game will be saved without the preview picture in this situation.
* Fixed lockup when iterating large numerical arrays in lua (
* Fixed that the small electric pole has wire reach 7.5, but the game was showing 8 in the tooltip.
* Fixed the tank controls, as it could start to break when it hit someting. The tank doesn't get stuck when plowing through stuff now.
* Fixed, that the gui of inactive mod wasn't deleted the same way as the mod was removed completely. ([ more])
* When the player data file gets corrupted, the file is ignored and the game can be still launched.
* Fixed that furnace can be modded to have no output/input inventories without the game crashing.
=== Changes ===
* Increased the pathing penalty for non-moving train in manual mode from 200 to 1000.
** Debug:
* When building/selecting rail signal, the connected rail is shown by the green selection box.
* Added verbose logging option in other settings. This adds extra logging for the Multiplayer.
=== Scripting ===
* Fixed that player.can_insert returned always true. ([ more])
* Fixed that the access luaPlayer/luaGuiElement and luaGuiStyle could result into crash when the corresponding player was removed.
* Trigger effects of type create-entity now have a property "show_in_tooltip" which determines if the creation of the entitie(s) should be shown in automatically generated tooltips.
* Added LuaTechnology:: upgrade, prerequisites, research_unit_ingredients, effects, research_unit_count, research_unit_energy read.
* Moved radar nearby scan range into the prototype.
* Moved the night vision tint color into the night vision equipment prototype.
* Fixed game::always_day read not returning anything.
* entity.teleport is no longer permitted for walls, transport belts or entities with fluid boxes. The method returns false in this case.
== 0.11.16 ==
Date: 19.2. 2015
** Features:
* Option to specify non-standard ui scale.
=== Bugfixes ===
* Various fixes of multiplayer logic.
* Fixed the error reporting while the game is being updated.
* Fixed the updater logic for the unicode character paths.
* Fixed that the game always crashed when ran on unicode path.
* Fixed a bug in the updater logic that could cause it to crash when the update is finished.
* Marked Factorio as DPI aware. It should fix different kind of problems with Win 8.1 and it's scaling "features".
* Pressing some key combinations while entering text in a text field will no longer activate game actions(e.g. pressing Ctrl+C no longer fires the shotgun)
* Fixed problems with low download speed when connecting to multiplayer game.
* Fixed that transport belts built by the construction robots were not deactivated properly.
* Fixed that entities deactivated internally (automatically) didn't show the no-electricity icon. The icon is disabled only for manually deactivated entities from now on.
* Fixed that removing construction robot on the way didn't re-assigned new robot to the task of deconstruction properly.
* Fixed shift-clicking equipment out of the equipment grid deleting equipment if there was no room in the players inventory ([ more])
* Revived character (after dying in multiplayer) are placed on the spawn point instead of the center of the map.
* Better error message when the (mod) config file can't be saved.
* Fixed the black stripes in tiles visible on some specific location with specific zoom levels.
* Fixed that the curved rail didn't show the colliding entities when properly when building. ([ more])
* Fixed that the autosave could randomly make switch the game into the main manu without the chance to continue. ([ more])
* Fixed that the personal laser defense didn't agro biters the same way as shooting in peaceful mode.
* Fixed that the debug info config was reset when the the game was updated.
* Fixed that all the personal defense lasers were shooting at the same moment.
* Fixed the crash when resizing window with bitmap caching on.
* Fixed that the bitmap caching option was confusing, as the high values were saving video memory usage, for slower performance.
** There is just video memory usage selector, where high values means higher performance.
* Fixed that the accumulator capacity was shown only for the first network the accumulator was in (when it is in multiple networks).
* Fixed that removing station from schedule could change the current train destination.
* Enemy structures can't be mined or opened.
* Enemy power poles can't be disconnected.
* Enemy structures can't be fast transfered. (control click)
* Dead character in the ghost move can't move and explore while waiting for respawn.
* Map/minimap is separated properly for different forces, and also switched properly when the force is changed.
* The command history entries are unified.
* Fixes of the notice of the respawn time.
* Assembling machine recipe tooltip doesn't use autocrafting logic. ([ more])
* Player recipe tooltip doesn't "eat" materials when the auto crafting calculation results in the ingredient not being craftable.
* Fixed the selection priority, ghosts have lower selection priority than other objects now.
* Fixed compatibility problems with older Mac OSX versions.
* Fixed rail inconsistencies when train crashes to itself.
* Fixed the crash when the map can't be saved because there is not enough free space, proper message is given instead, and the game continues to run.
* Fixed desynchronisation issues on 32bit vs 64bit system related to blueprints and movement bonuses.
* Fixed the transport belt ending drawing logic (
* Fixed crash when inserting items to entity that was closed in the same moment in multiplayer.
* Fixed that the player income of items inside assembling machine that was reset was not shown. ([ more]).
* Fixed that items could get lost from assembling machine when doing copy-paste.
* Fixed that the crafting queue slots didn't have tooltips.
* Fixed crash when removing transport belts connected to splitter that was rotated.
* Fixed improper activation of rotated splitter.
* Fixed desync when changing to the god controller.
=== Scripting ===
* Moved builddistance, dropitemdistance, reachdistance, reachresourcedistance, tickstokeepgun, and tickstokeepaimingdirection to the player character prototype.
* Added LuaEntity::signal_state read for Rail Signal entities.
* Added LuaEntity::isitemonbelt read - returns true/false if an item entity is on a transport belt variant entity.
* Added LuaInventory::hasbar()/getbar()/setbar() - the inventory limit of a container.
* Fixed that module restriction wasn't working for fast entity transfer.
* Added read/write access to player force.
* Changing player force automatically changes character force and changing character force automatically changes player force.
* Additional research related fixes, to make different research of different forces to work correctly (independenly).
* create-entity trigger effect now has an array of offsets specified by the "offsets" property. The "offset" property was removed.
* Fixed several zero-inventory size related crashes with modded entities ([ more])
* Added LuaRecipe::products/ingredients read - the products/ingredients for a given LuaRecipe.
* Fixed that the order of ingredients in the recipe was fixed. The order of ingredients depends on the order of definition in the prototype.
** Mods using recipes with more than one fluid input/output might have the inputs in different order than before, which might be problem of compatibility on existing maps, but it can be solved by updating the order of the ingredients in those mods (the same way we fixed that in the base)
== 0.11.15 ==
Date: 4.2. 2015
** Features:
* Map transfer displays transfer speed.
=== Bugfixes ===
* Fixed (one of the sources) of the random crashes when loading games, mainly with mods containing heavy code in on_load/on_init methods.
* Fixed (hopefully) the win xp compatibility.
* Tweaks of the error reporting (stack trace written into the log).
* Fixed GUI goal description overlapping GUI elements ([ more])
* Fixed that inserters weren't woken up when (not) inserting material to furnace because the recipe using it is not researched upon successful research.
=== Scripting ===
* Disabled the LuaPlayer::cursor_position and zoom as they were not deterministic.
=== Changes ===
* When using the deconstruction planner, the logistic network is not drawn if the mouse if over a GUI element([ more])
* Blueprint, deconstruction and cancel deconstruction selection boxes will not get un-selected when hovering over GUI elements.
** Instead they will not activate if the mouse is released under a GUI element.
== 0.11.14 ==
Date: 2.2. 2015
=== Bugfixes ===
* Proper handling of user paths containing non-asci characters.
* Stack trace is written to log when the game crashes in windows (was non windows only until now).
* Less restrictive (rail collisions related) train signal placement.
* Fixed that the logistic robot storage bonus wasn't used when the full transport belt was being deconstructed.
* Fixed that all the robots were sent for deconstruction of non empty objects with no logistic robot storage bonus research.
* Fixed the required construction robot calculations related to deconstruction of chest/transport belts with mixed contents.
* Fixed loading of save with different mod configuration that caused items to have different type. ([ more])
* Fixed the layer of drawing of pipe covers.
* Fixed that the attempt to clear empty blueprint consumed electronic circuit ([ more])
* Optimised the situation when huge map needed to be recharted (sometimes needed when moving to newer version).
* Optimised the lua garbage collection strategy.
* Fixed few small problems with the building collision check logic. ([ more])
* Fixed the crash when viewing the stop distance debug info of train.
* Fixed the inserter insertion logic when inserting mixed ingredients into the furnace. ([ more])
* Fixed water appearing in maps even when it is disabled.
* Fixed that the deconstruction icon could be under the contents info icon for some entities. ([ more])
* Fixed that transport belts marked for deconstruction still moved the player/car/enemies.
* Fix (theoretical) of the fast speed on 120Hz screens.
* Further fixes of the manual train controls.([ more])
* Fixed that the big numbers weren't visible in the electric/production statistics.
* Fixed that vertical straight cables wasn't always visible when the game was zoomed out.
=== Scripting ===
* Added write access to ammo amount left of item stack.
* [] operator of LuaInventory returns LuaItemStack object instead of the simplified table.
* LuaInventory::getitem_stack was removed as the [] operator can be used instead.
* Added read property LuaItemStack::prototype.
* Added LuaItemStack::drain_ammo/add_ammo.
* Fixed crash when assigning non-existent style.
* Fixed crash when assigning invalid point_to in game.show_message_dialog.
* Fixed that teleporting item stack on belt didn't register the item on the belt.
* Removed LuaInventory.isValid() and added LuaInventory.valid for consistency
* Added LuaStyle::name - returns the name of the style.
* Reworked all LuaObjects that can be invalid to support the "valid" readable property.
=== Modding ===
* Furnace never cleans the input/output fluid boxes on load.
* Stable order of the input/output fluid boxes of crafting machines.
== 0.11.13 ==
Date: 19.1. 2015
=== Bugfixes ===
* Fixed the freezes related to train building.
* Fixed the inserter activation logic related to situations where inserter takes the fuel from the entities powered by fuel.
* Fixed the collision checks related to gun turrets.
* Fixed the train colliding with itself when the destination was changed manually. ([ more])
* Stopped, manually controlled train adds additional penalty (related to train path finding) of 200 tiles to the block it occupies.
* Fixed the possible crashes related to invalid map exchange string.
* Fixed crash related to loading save that is autosaved the very next tick.
* Gates open in front of the moving character the same way as in front of the moving car.
== 0.11.12 ==
Date: 16.1. 2015
=== Bugfixes ===
* Fixed building collision check of car/trains.
* Fixed that offline players in multiplayer were receiving alerts that were never cleared, so their alert counts were increasing forever. This not only increased save game size, but increased the CRC calculation time as well.
* Crc calculation time was heavily optimised and is calculated only for online players.
* Fixed that inserters could take items from flying robots. This also disables control-clicking robots to steal their items, but it was not intended feature anyway.
* Fixed the logistics request text box. ([ more])
* Changed default logistic request amount for few items to be different (10) than the stack amount (modules + alien artifacts).
* Fixed the problem of the shaking frame of the assembling machine (and possibly other) entities in the gui preview.
* Fixed the shaking image of burner mining drill.
* Fixed the reversed manual controls of train when driving backwards in some cases.
* Fixed the splitter drawing in blueprint preview.
* Gates open in time (depends on the speed) for cars/tanks.
* Proper processing of save loading errors. The error message is shown instead of the crash.
* Fixed crashes when trying to set invalid style to gui elements from script/console.
* Changed stack sizes of battery/energy shield to 50 so it can be built in assembling machine without getting stuck.
* Changed recipe of power armor (less processing units/steel) so it can be automated more easily as well.
* Fixed the occasional crash when some of the internal Factorio directories/files were read-only.
* Fixed that the enemy turrets were attacking in the peaceful mode.
* The logfile contains more specific OS info (currently extended only for windows).
* The game is automatically closed with notification when the service pack on windows 7 is missing.
* Fixed gui error in the mod settings. ([ more])
* Fixed the bug with construction robots following vehicles outside of roboport area (again).
* Fixed that inserter could stretch for wrong wagon when facing a rail curve. ([ more])
* Fixed crash related to connecting tight train wagons or high-speed train crashes.
* Fixed crash related to loading save with entities that need to be removed (mod removal/change), while other mod target these entities.
== 0.11.11 ==
Date: 13.1. 2015
=== Bugfixes ===
* Fixed problems with inserters taking from diagonal wagons.
* Fixed several train related bugs and issues, mainly:
** Fixed the problem of train occasionally loosing path when moving fast.
** This also fixes the problems of mods with super fast trains.
** Fixed that trains could occasionaly leave block behind them blocked.
** Fixed that trains could do huge detours when some block was blocked.
** The pathfinding is based on penalties for blocked segments now.
** For trains waiting in station, the more remaining time in the station, the bigger penalty.
* Removing train station doesn't remove it from the train list.
** If there are no stations with the given name, the station is shown as red in the schedule.
** Such station are skipped by the train until the station with the name appears again.
* Fixed the way train was preferring non-blocked paths/stations.
* Fixed that diagonal parallel curve blocks both tracks. ([ more])
* Partial fix of the constant micro-freezes/frame drops.
* Fixed problems with inserters not putting items on belts to ground.
* Fixed crash when MP game is refused by the host.
* Update doesn't require UAC approval, when the zip package version is used.
* Fixed some of the technology prerequisites.
* Fixed logistic gui issues (
* The default value of item in the logistic gui is the count of one stack.
* Fixed crash when accessing logistic gui that is opened directly in the save game.
* Fixed that in the logistic gui selecting already set request didn't work. ([ more])
* Radar ignores chunks outside the map borders. ([ more])
* Fixed (hopefully) the "unique_path: An Internal error occurred" problem.
* Fixed that the inserter was buildable on the top of underground belt.
* Fixed that the electric pole was buildable so close to the curved rail that it would be destroyed by the train.
* Fixed that the electric network for power armor was ran twice per game tick
* Fixed the "trying to make chunk at unreasonable position" bug related to sending empty unit group somewhere from script.
=== Scripting ===
* Fixed problems in the lua equipment grid interface:
      .clear() nolonger crashes, .move() works now, and .generator_energy reports energy as a floating point value.
* Fixed that the rail directions were messed up when building rails from script.
** The mechanism, that changes the rail direction based on the position is still used for manual building, to allow the user to build diagonal rails without having to switch direction after every piece.
== 0.11.10 ==
Date: 6.1. 2015
=== Bugfixes ===
* Technology slots icons drawing positions.
* Fixed the crash when trying to drag non-draggable window.
* Fixed the problem of stuck inserters when putting stuff on transport belt with direction away from it.
* Fixed the crash when tips & tricks window was displayed.
== 0.11.9 ==
Date: 5.1. 2015
** Features:
* When removing power line, the neighbours of it are reconnected. ([ more])
=== Bugfixes ===
* Fixed the save corruption related to saving the game while having electric-pole selected.
* Fixed possible crashes and save game corruption when saving while having blueprint in cursor.
* Fixed the crash/desync problems when someone died in the multiplayer game.
* Added engine as prerequisite for railway, as the diesel locomotive needs engine to be built.
** Added electric engine technology as prerequisite for power armor technology.
** Added Speed module 3 and Efficiency module 3 technologies as prerequisite for power armor 2 technology.
* Fixed desync issue related to mods adding inputs/outputs to assembling machines in a way, that input/output definition order is mixed.
* Fixed the crash when you kill your car/tank using the car/tank weapon.
* Fixed the crash (trying to make chunk at unreasonable position) related to creation two members of unit group on the exact same position (mod related).
* Fixed issues with the train schedule gui. ([ more]).
* Fixed the text selection issues (Going back and forth while selecting the text reset the selection).
* Fixed the problems related to blueprint selection cancellation by pressing q (to get the blueprint out of the cursor).
* Fixed the crash related to item on the ground marked for deconstruction getting on transport belt -> underground belt and deconstructed underground. Items marked for deconstruction can't be moved by belts anymore.
* Fixed the crash in map editor when removing currently opened entity.
* Fixed that the First Steps script of level 03 could be broken by destroying one of the boilers or mining drill or steam engine in the tutorial part of the level.
* Fixed the cluttered map from car/tank when it crashes something.
* Green coral is affected by poison capsule (breaths-air flag is included).
* The smart inserter is waken up (alarmed), when the circuit wire is connected.
* Fixed that it wasn't possible to build on the top of the grenade crater.
* Moved the picture of spawner to the left to match the collision bounding box.
* Fixed crashes (mainly while saving) related to train with lost path trying to unlock gates on the path.
* Solved that inventory was not sorted after crafting in god mode.
* Solved that inventory was not sorted after another stack of items was moved to cursor when building, or when ammo stack was moved to gun slots from inventory when the previous slot was depleted.
* Fixed that transport belts were still animating and emitting sounds even when they were stopped and prepared for deconstruction.
* Fixed that construction robots, when deconstructing splitters/belts to ground didn't remove the items on these the same way as on regular transport belts first. The result was random items leftovers after deconstruction.