Version history/0.12.0: Difference between revisions
Jump to navigation
Jump to search
category |
m fix that all hyphens in the text were replaced by asterisks |
||
| Line 15: | Line 15: | ||
* Fixed the fuel inventory of the car in the New Hope campaign missions. ([https://forums.factorio.com/24923 more]) | * Fixed the fuel inventory of the car in the New Hope campaign missions. ([https://forums.factorio.com/24923 more]) | ||
* Fixed crash when exiting from an error during the on_robot_built_entity event. ([https://forums.factorio.com/24837 more]) | * Fixed crash when exiting from an error during the on_robot_built_entity event. ([https://forums.factorio.com/24837 more]) | ||
* Fixed crash when removing and re | * Fixed crash when removing and re-creating forces. ([https://forums.factorio.com/25111 more]) | ||
* Fixed crash after changing the type of a style currently applied to a custom GUI element when loading a save. ([https://forums.factorio.com/23969 more]) | * Fixed crash after changing the type of a style currently applied to a custom GUI element when loading a save. ([https://forums.factorio.com/23969 more]) | ||
* Fixed crash when calling LuaPlayer::teleport on a disconnected player. ([https://forums.factorio.com/25203 more]) | * Fixed crash when calling LuaPlayer::teleport on a disconnected player. ([https://forums.factorio.com/25203 more]) | ||
| Line 50: | Line 50: | ||
* Fixed blueprint building. Blueprints are migrated as long as you load the version 0.12.30 or earlier, existing blueprints might be off if you resaved in 0.12.31 already. | * Fixed blueprint building. Blueprints are migrated as long as you load the version 0.12.30 or earlier, existing blueprints might be off if you resaved in 0.12.31 already. | ||
=== Scripting === | === Scripting === | ||
* Lua interface to create blueprint now expects the entity positions to be relative to center exactly, so in rail | * 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. | when the blueprint is built. | ||
| Line 63: | Line 63: | ||
* Fixed crash with "Unblock sendto failed: The operation completed successfully." ([https://forums.factorio.com/23206 more]) | * Fixed crash with "Unblock sendto failed: The operation completed successfully." ([https://forums.factorio.com/23206 more]) | ||
* Human readable error notice when multiplayer connection wasn't successful. ([https://forums.factorio.com/23132 more]) | * Human readable error notice when multiplayer connection wasn't successful. ([https://forums.factorio.com/23132 more]) | ||
* Fixed that headless server wouldn't save the map after Control | * Fixed that headless server wouldn't save the map after Control-C. ([https://forums.factorio.com/23342 more]) | ||
* Fixed that attacking biters with a mining tool wouldn't aggro them. | * Fixed that attacking biters with a mining tool wouldn't aggro them. | ||
* Improved map download speed when connecting to multiplayer game. ([https://forums.factorio.com/20532 more]) | * Improved map download speed when connecting to multiplayer game. ([https://forums.factorio.com/20532 more]) | ||
| Line 76: | Line 76: | ||
* Fixed that odd sized blueprints were shifted when rotated. ([https://forums.factorio.com/24036 more]) | * Fixed that odd sized blueprints were shifted when rotated. ([https://forums.factorio.com/24036 more]) | ||
* Fixed crash when clearing modded blueprint that doesn't need item to be cleared. ([https://forums.factorio.com/24035 more]) | * Fixed crash when clearing modded blueprint that doesn't need item to be cleared. ([https://forums.factorio.com/24035 more]) | ||
* Fixed crash in arithmetic combinator when calculating | * Fixed crash in arithmetic combinator when calculating -2147483648/-1. ([https://forums.factorio.com/23551 more]) | ||
* Fixed crash when assigning a character as a passenger of a vehicle when that character already is a passenger of another vehicle. ([https://forums.factorio.com/24142 more]) | * Fixed crash when assigning a character as a passenger of a vehicle when that character already is a passenger of another vehicle. ([https://forums.factorio.com/24142 more]) | ||
* Fixed dealing damage could sometimes corrupt game state and saves. ([https://forums.factorio.com/23965 more]) | * Fixed dealing damage could sometimes corrupt game state and saves. ([https://forums.factorio.com/23965 more]) | ||
* Fixed modded save could not be loaded when a modded inserter gained abilities of smart inserter. ([https://forums.factorio.com/23698 more]) | * Fixed modded save could not be loaded when a modded inserter gained abilities of smart inserter. ([https://forums.factorio.com/23698 more]) | ||
* Fixed unknown | * Fixed unknown-key message on the third level of first-steps. ([https://forums.factorio.com/23362 more]) | ||
* Fixed cursor | * Fixed cursor-split transfer (right click) not working when putting items into assembling machine stacks over normal stack size. ([https://forums.factorio.com/23771 more]) | ||
* Fixed remote.call() from within the same mod. ([https://forums.factorio.com/23587 more]) | * Fixed remote.call() from within the same mod. ([https://forums.factorio.com/23587 more]) | ||
* Fixed inconsistent inserter behaviour when inserting into a splitter from the side. ([https://forums.factorio.com/23669 more]) | * Fixed inconsistent inserter behaviour when inserting into a splitter from the side. ([https://forums.factorio.com/23669 more]) | ||
| Line 94: | Line 94: | ||
=== Scripting === | === Scripting === | ||
* LuaUnitGroup::add_member now requires that the new member's force be the same as the UnitGroup's. | * LuaUnitGroup::add_member now requires that the new member's force be the same as the UnitGroup's. | ||
* Added LuaUnitGroup::force read | * Added LuaUnitGroup::force read-only attribute. | ||
| Line 107: | Line 107: | ||
* Fixed memory leak with special signals in the circuit network. | * Fixed memory leak with special signals in the circuit network. | ||
* Fixed crash when killing the player in on_built_entity. ([https://forums.factorio.com/22228 more]) | * Fixed crash when killing the player in on_built_entity. ([https://forums.factorio.com/22228 more]) | ||
* Fixed crash when making blueprints of ghosts with some now | * Fixed crash when making blueprints of ghosts with some now-invalid circuit connections to other ghosts. ([https://forums.factorio.com/22272 more]) | ||
* Fixed player's shooting target not updating properly when the target's force became friendly ([https://forums.factorio.com/22319 more]) | * Fixed player's shooting target not updating properly when the target's force became friendly ([https://forums.factorio.com/22319 more]) | ||
* Fixed the documentation of CircuitCondition ([https://forums.factorio.com/22230 more]) | * Fixed the documentation of CircuitCondition ([https://forums.factorio.com/22230 more]) | ||
| Line 115: | Line 115: | ||
* Fixed mining drills getting stuck when built pointing at rails and then rotated. ([https://forums.factorio.com/22764 more]) | * Fixed mining drills getting stuck when built pointing at rails and then rotated. ([https://forums.factorio.com/22764 more]) | ||
* Fixed remote.call() within the same mod passing invalid data. ([https://forums.factorio.com/22459 more]) | * Fixed remote.call() within the same mod passing invalid data. ([https://forums.factorio.com/22459 more]) | ||
* Fixed the typo in the error "multiplayer.cannot | * Fixed the typo in the error "multiplayer.cannot-load-downloaded-map", the cause of the error wasn't displayed because of it. ([https://forums.factorio.com/22169 more]) | ||
* Fixed that the server could get desynced and in a state where he has no one to download from. ([https://forums.factorio.com/22206 more]) | * Fixed that the server could get desynced and in a state where he has no one to download from. ([https://forums.factorio.com/22206 more]) | ||
* Fixed that the train tooltip was showing the current station as the next one when in the station. ([https://forums.factorio.com/22280 more]) | * Fixed that the train tooltip was showing the current station as the next one when in the station. ([https://forums.factorio.com/22280 more]) | ||
| Line 124: | Line 124: | ||
* Fixed crash when a network interface is deactivated during multiplayer game. ([https://forums.factorio.com/20078 more]) | * Fixed crash when a network interface is deactivated during multiplayer game. ([https://forums.factorio.com/20078 more]) | ||
* Fixed white bar on top of the screen was sometimes present in fullscreen on OS X. ([https://forums.factorio.com/16720 more]) | * Fixed white bar on top of the screen was sometimes present in fullscreen on OS X. ([https://forums.factorio.com/16720 more]) | ||
* Unified the processing of savegame name in | * 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. ([https://forums.factorio.com/22997 more]) | * Fixed that collision with point wasn't working properly for curved rail. ([https://forums.factorio.com/22997 more]) | ||
=== Modding === | === Modding === | ||
* Added LuaEntity::unit_group read | * Added LuaEntity::unit_group read-only attribute | ||
* Proper error message when subgroup specified by empty string. ([https://forums.factorio.com/22216 more]) | * Proper error message when subgroup specified by empty string. ([https://forums.factorio.com/22216 more]) | ||
* Fixed projectiles with negative acceleration would turn around, fly back and break the game. ([https://forums.factorio.com/23127 more]) | * Fixed projectiles with negative acceleration would turn around, fly back and break the game. ([https://forums.factorio.com/23127 more]) | ||
| Line 147: | Line 147: | ||
=== Changes === | === Changes === | ||
* Added | * 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. | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Explosion sounds are now not deafeningly loud, when multiple things explode at once. | * 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. ([https://forums.factorio.com/21834 more]) | * Fixed LuaForce::clear_chart() would crash game if called while chart was refreshing. ([https://forums.factorio.com/21834 more]) | ||
* Fixed crash when refreshing chart while Direct3D device is lost. ([https://forums.factorio.com/21942 more]) | * Fixed crash when refreshing chart while Direct3D device is lost. ([https://forums.factorio.com/21942 more]) | ||
* Fixed | * Fixed --config option not complaining about nonexistent file. ([https://forums.factorio.com/21777 more]) | ||
* Fixed crash when clicking on electric pole that was still in latency state ([https://forums.factorio.com/21786 more]) | * Fixed crash when clicking on electric pole that was still in latency state ([https://forums.factorio.com/21786 more]) | ||
* Fixed freeze of server with more than 255 different players in the savegame. | * Fixed freeze of server with more than 255 different players in the savegame. | ||
| Line 158: | Line 158: | ||
* Fixed map exchange string not using segmentation or water size correctly. ([https://forums.factorio.com/21918 more]) | * Fixed map exchange string not using segmentation or water size correctly. ([https://forums.factorio.com/21918 more]) | ||
* Fixed Lua game_view_settings::showentityinfo read/write issues. ([https://forums.factorio.com/21969 more]) | * Fixed Lua game_view_settings::showentityinfo read/write issues. ([https://forums.factorio.com/21969 more]) | ||
* Fixed fog | * Fixed fog-of-war does not work correctly in New Hope level 1. ([https://forums.factorio.com/21971 more]) | ||
* Fixed inconsistent Offshore Pump collision when building. ([https://forums.factorio.com/21801 more]) | * Fixed inconsistent Offshore Pump collision when building. ([https://forums.factorio.com/21801 more]) | ||
* Fixed desync reports were not generated. ([https://forums.factorio.com/21951 more]) | * Fixed desync reports were not generated. ([https://forums.factorio.com/21951 more]) | ||
| Line 175: | Line 175: | ||
* Fixed that extra pipe covers could be drawn on top of connected pipes. ([https://forums.factorio.com/20843 more]) | * Fixed that extra pipe covers could be drawn on top of connected pipes. ([https://forums.factorio.com/20843 more]) | ||
* Fixed misaligned turrets in the 4. New hope mission. ([https://forums.factorio.com/20998 more]) | * Fixed misaligned turrets in the 4. New hope mission. ([https://forums.factorio.com/20998 more]) | ||
* Fixed some inconsistencies related to zero | * Fixed some inconsistencies related to zero-signals in circuit networks. ([https://forums.factorio.com/20991 more]) | ||
* Fixed inconsistency between the way inserters and logistic robots picked items from inventories. Logistic robots now prefer items at the end of the inventory and ignore inventory limit. ([https://forums.factorio.com/21002 more]) | * Fixed inconsistency between the way inserters and logistic robots picked items from inventories. Logistic robots now prefer items at the end of the inventory and ignore inventory limit. ([https://forums.factorio.com/21002 more]) | ||
* Fixed LuaForce::clear_chart() would crash game. ([https://forums.factorio.com/20975 more]) | * Fixed LuaForce::clear_chart() would crash game. ([https://forums.factorio.com/20975 more]) | ||
| Line 189: | Line 189: | ||
* Fixed the documentation of LuaGameScript::show_message_dialog ([https://forums.factorio.com/21394 more]). | * Fixed the documentation of LuaGameScript::show_message_dialog ([https://forums.factorio.com/21394 more]). | ||
* Fixed the order of parameters of some functions in the documentation ([https://forums.factorio.com/21404 more]). | * Fixed the order of parameters of some functions in the documentation ([https://forums.factorio.com/21404 more]). | ||
* Fixed that the research screen would pre | * Fixed that the research screen would pre-select Automation even though it was disabled ([https://forums.factorio.com/21421 more]). | ||
* Fixed rare crash that could happen when assembling machine recipe was reset the same tick as autosave started. ([https://forums.factorio.com/21441 more]) | * Fixed rare crash that could happen when assembling machine recipe was reset the same tick as autosave started. ([https://forums.factorio.com/21441 more]) | ||
* Fixed the laser/discharge defense names in the set filter dialog. ([https://forums.factorio.com/21445 more]) | * Fixed the laser/discharge defense names in the set filter dialog. ([https://forums.factorio.com/21445 more]) | ||
| Line 200: | Line 200: | ||
* Fixed freezes on exit with recent NVidia drivers on Gentoo and Arch Linux ([https://forums.factorio.com/20583 more]) | * Fixed freezes on exit with recent NVidia drivers on Gentoo and Arch Linux ([https://forums.factorio.com/20583 more]) | ||
* Proper notification when quick bar slot can't be selected as there is no place to put the item in the cursor. | * 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 | * Fixed crash on Linux after running xrandr --off ([https://forums.factorio.com/21532 more]). | ||
* Fixed Rocket Silo GUI skipping 53%. ([https://forums.factorio.com/21548 more]) | * Fixed Rocket Silo GUI skipping 53%. ([https://forums.factorio.com/21548 more]) | ||
* Another attempt at fixing X11 copy/paste ([https://forums.factorio.com/18956 more]). | * Another attempt at fixing X11 copy/paste ([https://forums.factorio.com/18956 more]). | ||
| Line 234: | Line 234: | ||
* Fixed that rail signals were not visible under remnants. They are drawn above now. ([https://forums.factorio.com/20370 more]) | * Fixed that rail signals were not visible under remnants. They are drawn above now. ([https://forums.factorio.com/20370 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 ([https://forums.factorio.com/20382 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 ([https://forums.factorio.com/20382 more]). | ||
* Possible fix of rare Lua garbage collector error. Report: [https://forums.factorio.com/20313 more] Fix: [http://www.lua.org/bugs.html#5.2.3 | * Possible fix of rare Lua garbage collector error. Report: [https://forums.factorio.com/20313 more] Fix: [http://www.lua.org/bugs.html#5.2.3-2 more] | ||
* Fixed Combinator special signals not summing the inputs correctly(again). ([https://forums.factorio.com/20461 more]) | * Fixed Combinator special signals not summing the inputs correctly(again). ([https://forums.factorio.com/20461 more]) | ||
* Fixed green circuit network signals icons in power pole tooltip. | * Fixed green circuit network signals icons in power pole tooltip. | ||
* Fixed that multiplayer | * Fixed that multiplayer-specific options were available in the demo build of Factorio (such as --start-server) ([https://forums.factorio.com/20580 more]). | ||
* Fixed crash when using screens connected to both AMD and Intel Graphics cards ([https://forums.factorio.com/20544 more]). | * Fixed crash when using screens connected to both AMD and Intel Graphics cards ([https://forums.factorio.com/20544 more]). | ||
* Fixed very rare chance of a bug when window is closed at the same moment when autosave starts. | * Fixed very rare chance of a bug when window is closed at the same moment when autosave starts. | ||
| Line 248: | Line 248: | ||
* Fixed fullscreen issues on multimonitor configurations ([https://forums.factorio.com/20635 more]). | * Fixed fullscreen issues on multimonitor configurations ([https://forums.factorio.com/20635 more]). | ||
* Fixed crash when canceling crafting of a recipe who's ingredients have changed in the meantime ([https://forums.factorio.com/20706 more]). | * Fixed crash when canceling crafting of a recipe who's ingredients have changed in the meantime ([https://forums.factorio.com/20706 more]). | ||
* Fixed update of stand | * Fixed update of stand-alone ZIP package should not require elevated rights on Windows ([https://forums.factorio.com/20760 more]). | ||
* Fixed specific crash in replay viewing. ([https://forums.factorio.com/20703 more]) | * Fixed specific crash in replay viewing. ([https://forums.factorio.com/20703 more]) | ||
* Fixed game ignoring local changes in config when using Steam Cloud. | * Fixed game ignoring local changes in config when using Steam Cloud. | ||
| Line 259: | Line 259: | ||
* Updated sountrack. | * Updated sountrack. | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed corrupted player | * Fixed corrupted player-data.json message on startup. | ||
* Fixed unnecessary game restart when no mods were changed. | * Fixed unnecessary game restart when no mods were changed. | ||
* Fixed crash due to electric network migration during load of some more complex games. ([https://forums.factorio.com/20347 more]) | * Fixed crash due to electric network migration during load of some more complex games. ([https://forums.factorio.com/20347 more]) | ||
| Line 282: | Line 282: | ||
* Fixed that accumulators kept their energy when destroyed and rebuilt by robots. ([https://forums.factorio.com/20107 more]) | * Fixed that accumulators kept their energy when destroyed and rebuilt by robots. ([https://forums.factorio.com/20107 more]) | ||
* Fixed the occasional 1pixel gap between vertical steam engine and a pipe. | * Fixed the occasional 1pixel gap between vertical steam engine and a pipe. | ||
* Fixed beacon would not re | * Fixed beacon would not re-activate when its deconstruction order was canceled. | ||
* Fixed various desynchronizations in multiplayer caused by beacon. ([https://forums.factorio.com/19756 more]) | * Fixed various desynchronizations in multiplayer caused by beacon. ([https://forums.factorio.com/19756 more]) | ||
* Fixed Combinator "each" special signal not summing the inputs correctly ([https://forums.factorio.com/20120 more]) | * Fixed Combinator "each" special signal not summing the inputs correctly ([https://forums.factorio.com/20120 more]) | ||
| Line 326: | Line 326: | ||
* Fixed controls settings GUI bad alignment in some situations([https://forums.factorio.com/18484 more]). | * Fixed controls settings GUI bad alignment in some situations([https://forums.factorio.com/18484 more]). | ||
* Fixed the scripting error in the 3rd level of the transport belt madness. | * Fixed the scripting error in the 3rd level of the transport belt madness. | ||
* Fixed various scripting errors in the tight | * Fixed various scripting errors in the tight-spot scenario. | ||
* Fixed that enemy train stations were selectable when setting train destination. ([https://forums.factorio.com/18485 more]) | * Fixed that enemy train stations were selectable when setting train destination. ([https://forums.factorio.com/18485 more]) | ||
* Fixed crash that could happen when logistic networks are disconnected. ([https://forums.factorio.com/18607 more]) | * Fixed crash that could happen when logistic networks are disconnected. ([https://forums.factorio.com/18607 more]) | ||
| Line 362: | Line 362: | ||
* Fixed crash when loading a game saved by the server with only one player that is currently disconnected. | * Fixed crash when loading a game saved by the server with only one player that is currently disconnected. | ||
=== Modding === | === Modding === | ||
* Technology prototypes now have optional integer property "icon_size". Default value for non | * Technology prototypes now have optional integer property "icon_size". Default value for non-base mods is 64 (and 128 for base mod). | ||
| Line 393: | Line 393: | ||
* Fixed train lights were further away than they should be. ([https://forums.factorio.com/16455 more]) | * Fixed train lights were further away than they should be. ([https://forums.factorio.com/16455 more]) | ||
* Fixed spitters freezing in some cases ([https://forums.factorio.com/17830 more]). | * Fixed spitters freezing in some cases ([https://forums.factorio.com/17830 more]). | ||
* Fixed crash when trying to load replay from save that doesn't contain level | * Fixed crash when trying to load replay from save that doesn't contain level-init.dat ([https://forums.factorio.com/17884 more]). | ||
* Fixed incorrect default request amounts for shield and battery equipment due to typo ([https://forums.factorio.com/17879 more]). | * Fixed incorrect default request amounts for shield and battery equipment due to typo ([https://forums.factorio.com/17879 more]). | ||
* Fixed save with modded roboport could become unloadable without the mod ([https://forums.factorio.com/17882 more]). | * Fixed save with modded roboport could become unloadable without the mod ([https://forums.factorio.com/17882 more]). | ||
| Line 402: | Line 402: | ||
=== Scripting === | === Scripting === | ||
* Reading or writing LuaPlayer::character will now fail if the LuaPlayer isn't connected (see LuaPlayer::connected). | * 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 | * Lua API documentation is included in release packages (directory doc-html) | ||
| Line 418: | Line 418: | ||
* Added workaround for problem with AMD drivers that could cause missing or corrupted textures on some systems. ([https://forums.factorio.com/16911 more]) | * Added workaround for problem with AMD drivers that could cause missing or corrupted textures on some systems. ([https://forums.factorio.com/16911 more]) | ||
* Fixed that making a blueprint of a ghost was not saving circuit connections. | * Fixed that making a blueprint of a ghost was not saving circuit connections. | ||
* Fixed occasional crash during update after UAC dialog pops | * Fixed occasional crash during update after UAC dialog pops-up. ([https://forums.factorio.com/16045 more]) | ||
* Fixed that the value of the checkbox in tips and tricks wasn't set up properly.([https://forums.factorio.com/17629 more]) | * Fixed that the value of the checkbox in tips and tricks wasn't set up properly.([https://forums.factorio.com/17629 more]) | ||
* Fixed that rocket silo electric energy drain was applied twice. ([https://forums.factorio.com/17609 more]) | * Fixed that rocket silo electric energy drain was applied twice. ([https://forums.factorio.com/17609 more]) | ||
| Line 490: | Line 490: | ||
=== Features === | === Features === | ||
* Added | * Added --no-auto-pause: When running as a server, --no-auto-pause will prevent stopping the game when no players are connected. | ||
=== Optimizations === | === Optimizations === | ||
* Optimised the particle performance. Helps during heavy fights. | * Optimised the particle performance. Helps during heavy fights. | ||
=== Changes === | === Changes === | ||
* Showing the log file location when the game crashes, so it is easier to find when reporting the bug. | * Showing the log file location when the game crashes, so it is easier to find when reporting the bug. | ||
* The "graphics.force | * The "graphics.force-opengl" option default value is true when AMD Graphics card is present. | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed that multiple electric networks connected to a solar panel could be exploited to generate more energy. ([https://forums.factorio.com/16778 more]) The energy of the solar panel is now fractioned between all the networks it is connected to. | * Fixed that multiple electric networks connected to a solar panel could be exploited to generate more energy. ([https://forums.factorio.com/16778 more]) The energy of the solar panel is now fractioned between all the networks it is connected to. | ||
* Fixed character entities disconnected from players not working correctly when in vehicles. ([https://forums.factorio.com/16812 more]) | * Fixed character entities disconnected from players not working correctly when in vehicles. ([https://forums.factorio.com/16812 more]) | ||
* Fixed small | * Fixed small-pump and offshore-pump not saving/restoring circuit conditions in LuaItemStack::get_blueprint_entities/set_blueprint_entities. ([https://forums.factorio.com/16715 more]) | ||
* Fixed threading issue when loading games. ([https://forums.factorio.com/16808 more]) | * Fixed threading issue when loading games. ([https://forums.factorio.com/16808 more]) | ||
* Fixed OS X Finder argument crashing the game on startup ([https://forums.factorio.com/16719 more]). | * Fixed OS X Finder argument crashing the game on startup ([https://forums.factorio.com/16719 more]). | ||
| Line 521: | Line 521: | ||
=== Modding === | === Modding === | ||
* Replaced entity type "rail" with types "straight | * 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. | ||
| Line 545: | Line 545: | ||
* Destroyer electric beams now use soft additive blend mode. | * Destroyer electric beams now use soft additive blend mode. | ||
=== Changes === | === Changes === | ||
* Added | * Added --load-game: Will automatically load a save after initializing Factorio and go straight to the game, skipping main menu. | ||
* Moved MP / autosave information dialogues to the top half (better visibility of what is happening in the game) and added screen fading. | * Moved MP / autosave information dialogues to the top half (better visibility of what is happening in the game) and added screen fading. | ||
* Implemented time | * 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(). ([https://forums.factorio.com/16520 more]) | * game.print_entity_statistics() has been moved to player.print_entity_statistics(). ([https://forums.factorio.com/16520 more]) | ||
* Updated the tips and tricks pictures. (+added copy paste) | * Updated the tips and tricks pictures. (+added copy paste) | ||
| Line 562: | Line 562: | ||
* Fixed production GUI jumping to undesirable places when resized ([https://forums.factorio.com/16356 more]). | * Fixed production GUI jumping to undesirable places when resized ([https://forums.factorio.com/16356 more]). | ||
* Construction robots will be transferred to appropriate network when a logistic network splits ([https://forums.factorio.com/16147 more]). | * Construction robots will be transferred to appropriate network when a logistic network splits ([https://forums.factorio.com/16147 more]). | ||
* Fixed crash when auto | * Fixed crash when auto-re-filling ammo in tanks/cars ([https://forums.factorio.com/16375 more]). | ||
* Fixed wait slider in train GUI editing after deleting a station ([https://forums.factorio.com/16471 more]). | * Fixed wait slider in train GUI editing after deleting a station ([https://forums.factorio.com/16471 more]). | ||
* Fixed that negative emissions of power source (air filtering mod) could result into negative evolution factor. | * 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 ([https://forums.factorio.com/16342 more]). | * Fixed the game could hang when writing a message to log ([https://forums.factorio.com/16342 more]). | ||
* Fixed next save not being selected properly after clicking the Delete Save button ([https://forums.factorio.com/16498 more]). | * Fixed next save not being selected properly after clicking the Delete Save button ([https://forums.factorio.com/16498 more]). | ||
* Fixed module icons not showing in alt | * Fixed module icons not showing in alt-view on rocket silos ([https://forums.factorio.com/16381 more]). | ||
* Fixed mining progress bar staying on screen when not mining in certain situations ([https://forums.factorio.com/16448 more]). | * Fixed mining progress bar staying on screen when not mining in certain situations ([https://forums.factorio.com/16448 more]). | ||
* Fixed crash when loading 0.10 or older saves ([https://forums.factorio.com/16442 more]). | * Fixed crash when loading 0.10 or older saves ([https://forums.factorio.com/16442 more]). | ||
* Fixed crash when loading pre | * Fixed crash when loading pre-12.7 scenarios with redefined spawn location ([https://forums.factorio.com/16569 more]). | ||
* Fixed trains sometimes stopping on signals they reserved. | * Fixed trains sometimes stopping on signals they reserved. | ||
* Fixed personal roboport taking forever to deconstruct when there are a lot of deconstruction orders. | * 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 ([https://forums.factorio.com/16578 more]). | * Fixed a crash where the Lua stack would overflow and corrupt Factorio memory ([https://forums.factorio.com/16578 more]). | ||
* Fixed crash when using player.inventory.clear(). ([https://forums.factorio.com/16579 more]) | * Fixed crash when using player.inventory.clear(). ([https://forums.factorio.com/16579 more]) | ||
* Fixed that | * 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 ([https://forums.factorio.com/16619 more]). | ||
* Player <> entity transfer now ignores modules only when the entity has module inventory. | * Player <> entity transfer now ignores modules only when the entity has module inventory. | ||
* Fixed beacons affected steel furnaces ([https://forums.factorio.com/16634 more]). | * Fixed beacons affected steel furnaces ([https://forums.factorio.com/16634 more]). | ||
| Line 603: | Line 603: | ||
* Fixed enemy units getting stuck on transport belts ([https://forums.factorio.com/16148 more]). | * Fixed enemy units getting stuck on transport belts ([https://forums.factorio.com/16148 more]). | ||
* Fixed a crash caused by icon = "" in a prototype definition ([https://forums.factorio.com/16154 more]). | * Fixed a crash caused by icon = "" in a prototype definition ([https://forums.factorio.com/16154 more]). | ||
* Fixed a crash related to assembling machine not being re | * Fixed a crash related to assembling machine not being re-setup when recipe changes due to mod changes. ([https://forums.factorio.com/16108 more]) | ||
* Fixed LuaItemStack::set_blueprint_entities(nil) erasing tiles in blueprints. | * Fixed LuaItemStack::set_blueprint_entities(nil) erasing tiles in blueprints. | ||
* Fixed crash when fast | * Fixed crash when fast-transferring ammo while in vehicles. ([https://forums.factorio.com/16137 more]) | ||
* Fixed trains stopping on green signals ([https://forums.factorio.com/16033 more]). | * Fixed trains stopping on green signals ([https://forums.factorio.com/16033 more]). | ||
* Fixed crash when changing the force of a player who is currently not connected. | * Fixed crash when changing the force of a player who is currently not connected. | ||
* Fixed another problem with the missing maximise button after fullscreen. ([https://forums.factorio.com/16123 more]) | * Fixed another problem with the missing maximise button after fullscreen. ([https://forums.factorio.com/16123 more]) | ||
* Fixed desync problem related to duplicate order string in inventory groups leading to non | * Fixed desync problem related to duplicate order string in inventory groups leading to non-deterministic inventory sorting. ([https://forums.factorio.com/16041 more]) | ||
* Fixed putting a blueprint on transport belt could corrupt game save ([https://forums.factorio.com/16186 more]). | * Fixed putting a blueprint on transport belt could corrupt game save ([https://forums.factorio.com/16186 more]). | ||
* Fixed CTD that could happen when removing focused widget (rarely). ([https://forums.factorio.com/16129 more]) | * Fixed CTD that could happen when removing focused widget (rarely). ([https://forums.factorio.com/16129 more]) | ||
| Line 616: | Line 616: | ||
=== Scripting === | === 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. | * 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 | * 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. | * 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 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 | * Added LuaItemStack::cost_to_build - the cost in items to build a given blueprint. | ||
=== Modding === | === Modding === | ||
* The minimal energy_required for a recipe is 0.001 to avoid wrong behavior with values close to 0. | * The minimal energy_required for a recipe is 0.001 to avoid wrong behavior with values close to 0. | ||
| Line 628: | Line 628: | ||
=== Changes === | === Changes === | ||
* Added 5th level of character logistic slots research. | * Added 5th level of character logistic slots research. | ||
* New command line options for the headless server: | * 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. | * Entries in the mod list GUI are highlighted in red only when enabled and invalid at the same time. | ||
* Added natural case | * 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. | * 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 | * 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. | * Map scrolling speed now changes with zoom level. | ||
=== Bug Fixes === | === Bug Fixes === | ||
| Line 638: | Line 638: | ||
* Solved the "A blocking operation was interrupted by a call to WSACancelBlockingCall" error (hopefully as we can't reproduce it). ([https://forums.factorio.com/14251 more]) | * Solved the "A blocking operation was interrupted by a call to WSACancelBlockingCall" error (hopefully as we can't reproduce it). ([https://forums.factorio.com/14251 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). ([https://forums.factorio.com/9924 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). ([https://forums.factorio.com/9924 more]) | ||
* Fixed crash when a script attempted to access a previously | * Fixed crash when a script attempted to access a previously-destroyed GUI element ([https://forums.factorio.com/14802 more]). | ||
* Fixed that the Graphics.max | * Fixed that the Graphics.max-texture-size property in the config was removed after Factorio restart. | ||
* Fixed the tree bounding boxes. | * Fixed the tree bounding boxes. | ||
* Another attempt to fix map transfer problems. | * Another attempt to fix map transfer problems. | ||
| Line 651: | Line 651: | ||
* 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. ([https://forums.factorio.com/15219 more]) | * 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. ([https://forums.factorio.com/15219 more]) | ||
* Fixed desync issue related to inventory sorting and blueprints. ([https://forums.factorio.com/15569 more]) | * Fixed desync issue related to inventory sorting and blueprints. ([https://forums.factorio.com/15569 more]) | ||
* Fixed that amount_max in recipe specification actually worked as amount_max | * Fixed that amount_max in recipe specification actually worked as amount_max -1. ([https://forums.factorio.com/15589 more]) | ||
* Fixed that mining tiles did actually create mining particles+sound on the lastly mined entity. | * 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. ([https://forums.factorio.com/15986 more]) | * Fixed that the maximize button was disabled when Full screen was turned of in the settings. ([https://forums.factorio.com/15986 more]) | ||
| Line 666: | Line 666: | ||
* LuaEntity::belt_to_ground_type also works on a ghost. | * LuaEntity::belt_to_ground_type also works on a ghost. | ||
* Increased precision of floating point in save files to prevent some desyncs in multiplayer ([https://forums.factorio.com/15037 more]). | * Increased precision of floating point in save files to prevent some desyncs in multiplayer ([https://forums.factorio.com/15037 more]). | ||
* Added LuaEntity::revive() | * 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 | * Fixed that that the resource amount while creating the entity accepted non-positive values. ([https://forums.factorio.com/15567 more]) | ||
* Added LuaForce::set_spawn_position(surface, position) and LuaForce::get_spawn_position(surface) | * 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. ([https://forums.factorio.com/15564 more]) | * Fixed that the event queue was never cleared when scripting error occurs while processing it. This lead to processing the same event every update once the game was stopped when error happened. ([https://forums.factorio.com/15564 more]) | ||
| Line 677: | Line 677: | ||
=== Changes === | === Changes === | ||
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category. | * 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 | * 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) | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed setting circuit conditions desyncing/crashing multiplayer games. ([https://forums.factorio.com/15317 more]) | * Fixed setting circuit conditions desyncing/crashing multiplayer games. ([https://forums.factorio.com/15317 more]) | ||
| Line 690: | Line 690: | ||
=== Changes === | === Changes === | ||
* Smaller breaks between ambient music tracks, some volume tweaks and moved a few tracks to the interlude category. | * 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 | * 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 ([https://forums.factorio.com/15238 more]). | * Fixed a performance problem in the pathfinder that would cause complete lack of enemy attacks in certain situations ([https://forums.factorio.com/15238 more]). | ||
=== Scripting === | === Scripting === | ||
| Line 716: | Line 716: | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed that editing tiles in the map editor on the edge of currently generated map could result in a corrupted scenario. | * 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 | * Fixed potential stability problems when fast-replacing roboports (mod related). | ||
* Fixed non | * Fixed non-deterministic armor sorting which could cause desyncs. ([https://forums.factorio.com/14892 more]) | ||
* Fixed crash related to changing recipe prototypes used by entities in inactive chunks. ([https://forums.factorio.com/14713 more]) | * Fixed crash related to changing recipe prototypes used by entities in inactive chunks. ([https://forums.factorio.com/14713 more]) | ||
* Fixed circuit network contents sometimes being reset when removing connections or merging networks. ([https://forums.factorio.com/14908 more]) | * Fixed circuit network contents sometimes being reset when removing connections or merging networks. ([https://forums.factorio.com/14908 more]) | ||
* Fixed crash when Ctrl | * Fixed crash when Ctrl-clicking items to the player's main inventory when no character is attached ([https://forums.factorio.com/14952 more]). | ||
* LatencyState is suspended when player is killed (and waiting for respawn) in the Multiplayer. | * 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 ([https://forums.factorio.com/14963 more]). | * Fixed crash after finishing the game in MP with headless server ([https://forums.factorio.com/14963 more]). | ||
| Line 745: | Line 745: | ||
* Fixed electric furnace still glowing with no power. ([https://forums.factorio.com/15126 more]) | * Fixed electric furnace still glowing with no power. ([https://forums.factorio.com/15126 more]) | ||
* Fix of loading a map that contains mod with tiles, while the mod is no longer present. | * 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 | * Fixed that it was not possible to use fast-replace when player was very close to the building. ([https://forums.factorio.com/8144 more]) | ||
* Right side selection info GUI has fixed size. Description and text properties properly wrap. ([https://forums.factorio.com/15139 more]) | * Right side selection info GUI has fixed size. Description and text properties properly wrap. ([https://forums.factorio.com/15139 more]) | ||
=== Scripting === | === Scripting === | ||
| Line 752: | Line 752: | ||
* Added LuaEntity::rocket_parts read/write, usable on Rocket Silo. | * Added LuaEntity::rocket_parts read/write, usable on Rocket Silo. | ||
* Added LuaEntity::launch_rocket(), usable on Rocket Silo. | * Added LuaEntity::launch_rocket(), usable on Rocket Silo. | ||
* Added LuaLogisticNetwork | * Added LuaLogisticNetwork - an interface to logistic networks. | ||
* Added LuaLogisticCell | * Added LuaLogisticCell - an interface to logistic cells (roboport/player logistic information). | ||
* Added LuaTransportLine::get_contents(). | * Added LuaTransportLine::get_contents(). | ||
* Added LuaPlayer::connected read | * 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. | * 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. ([https://forums.factorio.com/15189 more]) | * Constant combinators now export their wire connections in LuaItemStack::get_blueprint_entities. ([https://forums.factorio.com/15189 more]) | ||
* Added Prototype::order/group/subgroup read + LuaTechnology::order read. | * Added Prototype::order/group/subgroup read + LuaTechnology::order read. | ||
* Added LuaRecipe::force read | * Added LuaRecipe::force read - the force that owns recipe reference. | ||
* Added LuaEntity::chain_signal_state read | * Added LuaEntity::chain_signal_state read - the chain state of chain signals. | ||
* Added LuaEntity::speed read/write | * Added LuaEntity::speed read/write - the speed of a car/tank. | ||
| Line 769: | Line 769: | ||
* Simple mechanism for multiplayer relaying via the server. | * Simple mechanism for multiplayer relaying via the server. | ||
=== Changes === | === Changes === | ||
* Renamed "multisampling" to "multisampling | * 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. | * Construction robots take things primary from the main inventory, then quickbar. | ||
* Reverted the order of inserter slot selection. ([https://forums.factorio.com/14656 more]) | * Reverted the order of inserter slot selection. ([https://forums.factorio.com/14656 more]) | ||
* Added Alt | * 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. | * 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.([https://forums.factorio.com/14249 more]) | * Construction robots will check if their target is still in the network area when they return to personal roboport for charging.([https://forums.factorio.com/14249 more]) | ||
| Line 781: | Line 781: | ||
* Fixed force building specific blueprints. ([https://forums.factorio.com/14622 more]) | * Fixed force building specific blueprints. ([https://forums.factorio.com/14622 more]) | ||
* Fixed setting player character to other player's character crashing the game. ([https://forums.factorio.com/14665 more]) | * Fixed setting player character to other player's character crashing the game. ([https://forums.factorio.com/14665 more]) | ||
* Fixed failed | * Fixed failed --apply-update returning success even when it failed ([https://forums.factorio.com/14681 more]). | ||
* Fixed the latency hiding inconsistency in the entity transfer action, entity rotation, blueprint selection deconstruction selection and others.([https://forums.factorio.com/14585 more]) | * Fixed the latency hiding inconsistency in the entity transfer action, entity rotation, blueprint selection deconstruction selection and others.([https://forums.factorio.com/14585 more]) | ||
* Fixed ghost inserter arrows being displayed incorrectly ([https://forums.factorio.com/14659 more]). | * Fixed ghost inserter arrows being displayed incorrectly ([https://forums.factorio.com/14659 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.([https://forums.factorio.com/14662 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.([https://forums.factorio.com/14662 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.([https://forums.factorio.com/14625 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.([https://forums.factorio.com/14625 more]) | ||
* Fixed that the new lamp entity was off | * Fixed that the new lamp entity was off-center. ([https://forums.factorio.com/14586 more]) | ||
* Fixed behemoth biter resistance specification. ([https://forums.factorio.com/14614 more]) | * Fixed behemoth biter resistance specification. ([https://forums.factorio.com/14614 more]) | ||
* Fixed that the game could crash when connecting train in a junction. ([https://forums.factorio.com/10295 more]) | * Fixed that the game could crash when connecting train in a junction. ([https://forums.factorio.com/10295 more]) | ||
| Line 825: | Line 825: | ||
It can still be manually specified in the config, but not in the graphic settings GUI. | 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. | The main reason is the trouble with tiling which doesn't really have a simple fix. | ||
* Changed the console spam | * Changed the console spam-prevention mechanic to check all messages for the last second instead of just the last entered one. | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed the Invalid Transport Line Index error. ([https://forums.factorio.com/14358 more]) | * Fixed the Invalid Transport Line Index error. ([https://forums.factorio.com/14358 more]) | ||
| Line 840: | Line 840: | ||
* Fixed that the smoke effect when building something always showed on the viewer surface. ([https://forums.factorio.com/14440 more]) | * Fixed that the smoke effect when building something always showed on the viewer surface. ([https://forums.factorio.com/14440 more]) | ||
* Fixed crash related to alerts on multiple surfaces. ([https://forums.factorio.com/14502 more]) | * Fixed crash related to alerts on multiple surfaces. ([https://forums.factorio.com/14502 more]) | ||
* Fixed copy | * Fixed copy-paste for cars/tanks. ([https://forums.factorio.com/14513 more]) | ||
* Fixed single locomotives not rendering on the chart view. | * Fixed single locomotives not rendering on the chart view. | ||
* Fixed the non standard number format of big numbers in the research tooltip GUI. ([https://forums.factorio.com/14517 more]) | * Fixed the non standard number format of big numbers in the research tooltip GUI. ([https://forums.factorio.com/14517 more]) | ||
| Line 847: | Line 847: | ||
* Fixed productivity bonus being lost with very high productivity values ([https://forums.factorio.com/14005 more]) | * Fixed productivity bonus being lost with very high productivity values ([https://forums.factorio.com/14005 more]) | ||
* Fixed that script errors didn't stop the game, and it was possible to possible the game by pressing SEC. | * Fixed that script errors didn't stop the game, and it was possible to possible the game by pressing SEC. | ||
* Fixed that non | * 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 preferring the Left side when picking up from the underground belt. ([http://www.factorioforums.com/forum/posting.php?t=14544 more]) | * Fixed that inserter was always preferring the Left side when picking up from the underground belt. ([http://www.factorioforums.com/forum/posting.php?t=14544 more]) | ||
* Fixed robots from personal roboport would keep transferring items from chest which was ordered for deconstruction | * Fixed robots from personal roboport would keep transferring items from chest which was ordered for deconstruction | ||
| Line 860: | Line 860: | ||
=== Features === | === Features === | ||
* Enabled swapping held blueprints with other blueprints directly. | * Enabled swapping held blueprints with other blueprints directly. | ||
* Force | * Force-building blueprints will mark any colliding trees for deconstruction. | ||
* Added filters to car and tank main inventories. | * Added filters to car and tank main inventories. | ||
=== Changes === | === Changes === | ||
| Line 869: | Line 869: | ||
* Fixed crash when removing mods that added/changed recipes ([https://forums.factorio.com/14029&p=94393#p94393 more]). | * Fixed crash when removing mods that added/changed recipes ([https://forums.factorio.com/14029&p=94393#p94393 more]). | ||
* Disabled repairing of combat robots ([https://forums.factorio.com/13984 more]). | * Disabled repairing of combat robots ([https://forums.factorio.com/13984 more]). | ||
* | * --start-server and --create now accept filenames with dots in them ([https://forums.factorio.com/13881 more]). | ||
* Combinators will no longer turn off when no wires are connected ([https://forums.factorio.com/13957 more]). | * Combinators will no longer turn off when no wires are connected ([https://forums.factorio.com/13957 more]). | ||
* Shift + click will move items into logistic trash slots only in character GUI ([https://forums.factorio.com/14137 more]). | * Shift + click will move items into logistic trash slots only in character GUI ([https://forums.factorio.com/14137 more]). | ||
| Line 876: | Line 876: | ||
* Inserters and logistic robots no longer extract from enemy chests ([https://forums.factorio.com/14192&p=95512 more]). | * Inserters and logistic robots no longer extract from enemy chests ([https://forums.factorio.com/14192&p=95512 more]). | ||
* Fixed health bar display on large entities like the rocket silo ([https://forums.factorio.com/14188 more]) | * Fixed health bar display on large entities like the rocket silo ([https://forums.factorio.com/14188 more]) | ||
* Fixed crash when loading some maps that were migrated from early | * Fixed crash when loading some maps that were migrated from early-0.11 versions ([https://forums.factorio.com/14128 more]). | ||
* Inserters now correctly pick up items from splitters ([https://forums.factorio.com/14120 more], [https://forums.factorio.com/13518 more] more]). | * Inserters now correctly pick up items from splitters ([https://forums.factorio.com/14120 more], [https://forums.factorio.com/13518 more] more]). | ||
* Picking up items from curved belts picks up from the correct line ([https://forums.factorio.com/14016 more]). | * Picking up items from curved belts picks up from the correct line ([https://forums.factorio.com/14016 more]). | ||
* Fixed that electric pole/roboport radius visualization were off | * Fixed that electric pole/roboport radius visualization were off-centered in low Graphics mode. | ||
* Fixed that turrets had too small remnants. | * Fixed that turrets had too small remnants. | ||
* Fixed bug when removing roboports during load migration ([https://forums.factorio.com/14017&p=94291#p94291 more]). | * Fixed bug when removing roboports during load migration ([https://forums.factorio.com/14017&p=94291#p94291 more]). | ||
| Line 891: | Line 891: | ||
* Fixed modded spitters could spit very far from their location when trying to destroy a tree ([https://forums.factorio.com/14106 more]). | * Fixed modded spitters could spit very far from their location when trying to destroy a tree ([https://forums.factorio.com/14106 more]). | ||
* Map editor wire editing works again. | * Map editor wire editing works again. | ||
* Fixed beacons stopping working when the modules where removed and re | * Fixed beacons stopping working when the modules where removed and re-inserted ([https://forums.factorio.com/14275 more]). | ||
* Fixed power armor GUI tooltips not showing sometimes. | * Fixed power armor GUI tooltips not showing sometimes. | ||
* Fixed v | * Fixed v-sync causing framerate to go bellow 60 when Windows Aero theme is enabled ([https://forums.factorio.com/13622 more]). | ||
* Flame | * Flame-thrower sounds volume is dependent on the distance of the player now. ([https://forums.factorio.com/13538 more]) | ||
* Tank can turn around without moving forward again. ([https://forums.factorio.com/13936 more]) | * Tank can turn around without moving forward again. ([https://forums.factorio.com/13936 more]) | ||
* Fixed tile building/removal sometimes removing buildings or killing the player. | * Fixed tile building/removal sometimes removing buildings or killing the player. | ||
| Line 910: | Line 910: | ||
=== Changes === | === Changes === | ||
* Train station names use natural string comparing (station "Iron 10" comes after "Iron 9", not after "Iron 1"). | * Train station names use natural string comparing (station "Iron 10" comes after "Iron 9", not after "Iron 1"). | ||
* New command | * 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. | * You can copy paste circuit network conditions between Inserter, Lamp, Pump and Offshore Pump. | ||
* The delete button in Load Game or Save Game dialogues now asks for confirmation before deleting | * The delete button in Load Game or Save Game dialogues now asks for confirmation before deleting | ||
* Locomotive on schedule can't be rotated while moving anymore. | * 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 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 | * Changed Assembling machine's auto-insertion behaviour when using speed module effects. Faster speed with fast recipes will insert more items sooner. | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Very rough support for RTL languages, the texts are no longer rendered backwards (but the GUI still is and multiline text will cause problems). | * Very rough support for RTL languages, the texts are no longer rendered backwards (but the GUI still is and multiline text will cause problems). | ||
| Line 929: | Line 929: | ||
* Fixed crash when trying to set filter on vehicle ammo inventories ([https://forums.factorio.com/13684 more]). | * Fixed crash when trying to set filter on vehicle ammo inventories ([https://forums.factorio.com/13684 more]). | ||
* Fixed mining concrete/tiles sometimes making water where it shouldn't be ([https://forums.factorio.com/13735 more]). | * Fixed mining concrete/tiles sometimes making water where it shouldn't be ([https://forums.factorio.com/13735 more]). | ||
* Fixed character | * Fixed character-logistic-trash-slots-2 technology prerequisite ([https://forums.factorio.com/13596 more]). | ||
* Fixed crash when calling game.player.surface.set_multi_command ([https://forums.factorio.com/13621 more]) | * Fixed crash when calling game.player.surface.set_multi_command ([https://forums.factorio.com/13621 more]) | ||
* Fixed electric wire rendering on low Graphics quality settings ([https://forums.factorio.com/13520 more]). | * Fixed electric wire rendering on low Graphics quality settings ([https://forums.factorio.com/13520 more]). | ||
| Line 943: | Line 943: | ||
* Fixed incorrect gun turret health ([https://forums.factorio.com/13748 more]) | * Fixed incorrect gun turret health ([https://forums.factorio.com/13748 more]) | ||
* Copy pasting now works for Small pumps and Offshore Pumps. | * Copy pasting now works for Small pumps and Offshore Pumps. | ||
* Fixed crash when loading single | * Fixed crash when loading single-player save in multiplayer without "Allow commands" checked ([https://forums.factorio.com/13584 more]). | ||
* Fixed not being able to set the UI scale back to normal after accidentally setting it to 200% ([https://forums.factorio.com/13750 more]). | * Fixed not being able to set the UI scale back to normal after accidentally setting it to 200% ([https://forums.factorio.com/13750 more]). | ||
* Fixed locomotive lights and vehicle indicators being rendered across different surfaces ([https://forums.factorio.com/13846 more]). | * Fixed locomotive lights and vehicle indicators being rendered across different surfaces ([https://forums.factorio.com/13846 more]). | ||
* Fixed not being able to fast | * Fixed not being able to fast-transfer stone bricks and concrete into entities. | ||
* Fixed splitters giving priority to one input belt ([https://forums.factorio.com/13683 more]). | * Fixed splitters giving priority to one input belt ([https://forums.factorio.com/13683 more]). | ||
* Fixed actions during saves strangeness ([https://forums.factorio.com/13830 more]). | * Fixed actions during saves strangeness ([https://forums.factorio.com/13830 more]). | ||
| Line 960: | Line 960: | ||
=== Scripting === | === Scripting === | ||
* LuaSurface::set_multi_command now takes an optional third argument specifying the force to send the command to. Default is the enemy force | * 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 | * 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) | * 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. | 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. | * Changed default maximum range of projectiles from 10^308 to 1000. | ||
| Line 973: | Line 973: | ||
* 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 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 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 ([https://www.factorio.com/blog/post/fff | * Added combinators (Arithmetic Combinator, Decider Combinator and Constant combinator). These allow more advanced manipulation with the circuit network logic ([https://www.factorio.com/blog/post/fff-88 more]) | ||
* The Lamp, Storage Tank, Small Pump and Offshore Pump can be connected to the circuit network. | * The Lamp, Storage Tank, Small Pump and Offshore Pump can be connected to the circuit network. | ||
* Multiplayer latency hiding (gives impression that some common tasks are performed immediately) Applies to character movement, mining buildings, building, fast replacing, opening guis, etc. | * Multiplayer latency hiding (gives impression that some common tasks are performed immediately) Applies to character movement, mining buildings, building, fast replacing, opening guis, etc. | ||
| Line 987: | Line 987: | ||
* Locomotives now show the contents of attached cargo wagons in their tooltip. | * Locomotives now show the contents of attached cargo wagons in their tooltip. | ||
* Trees regenerate health slowly. | * Trees regenerate health slowly. | ||
* Added support for transferring contents/settings when fast | * Added support for transferring contents/settings when fast-replacing all entity types. | ||
* Added modules to the alt | * Added modules to the alt-view for entities that support modules. | ||
* Factorio can run as a dedicated server without Graphics ([http://www.factorioforums.com/wiki/index.php?title=Multiplayer#Headless_server more]). | * Factorio can run as a dedicated server without Graphics ([http://www.factorioforums.com/wiki/index.php?title=Multiplayer#Headless_server more]). | ||
* Basic PvP: New forces can now be created and merged back together; a cease | * 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. | * IPv6 support for multiplayer. | ||
* DNS names can be used when connecting to multiplayer game. | * DNS names can be used when connecting to multiplayer game. | ||
| Line 997: | Line 997: | ||
* Building blueprints over existing ghosts restores the ghost time to live to full. | * Building blueprints over existing ghosts restores the ghost time to live to full. | ||
=== Changes === | === Changes === | ||
* Disabled loading of saves before 0.9.0 version (You can use 0.9.8 to load older saves and re | * 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. | * 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. | * 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. | ||
| Line 1,004: | Line 1,004: | ||
* Inserters can now extract from Roboports and Beacons. | * 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. | * 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 | * 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. | * 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. | * Power armor modules generate and consume 100 times more power in order to be able to charge construction robots. | ||
| Line 1,038: | Line 1,038: | ||
* Storage tank has a small window showing the liquid inside. | * Storage tank has a small window showing the liquid inside. | ||
* Combat robots attack beam ([https://www.factorio.com/blog/post/fff-84 more]) | * Combat robots attack beam ([https://www.factorio.com/blog/post/fff-84 more]) | ||
* New GUI icons: Weapons, ammo, status icons such as out | * New GUI icons: Weapons, ammo, status icons such as out-of-ammo or out-of-electricity | ||
=== Bug Fixes === | === Bug Fixes === | ||
* Fixed wrong item count in the logistic system when handling partially | * 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. | * Fixed the choppy (not smooth) movement when using the exoskeleton equipment. | ||
* item | * item-description localization now displays correctly when previewing recipes. | ||
* entity | * 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. | * 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 | * Very big entities no longer disappear at the edge of the screen | ||
| Line 1,059: | Line 1,059: | ||
* Fixed crash when trying to read LuaPlayer::opened on a dead player. | * 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 ([https://forums.factorio.com/10143 more]). | * Fixed crash when canceling deconstruction of a logistic container that was marked for deconstruction after the logistic network it was in lost power and then regained power ([https://forums.factorio.com/10143 more]). | ||
* Fixed LuaSurface::can_place_entity returning true when checking item | * Fixed LuaSurface::can_place_entity returning true when checking item-on-ground against item-on-ground ([https://forums.factorio.com/9247 more]). | ||
* Turrets can now be modded to use shotgun (and other not guided) ammo. | * 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 ([https://forums.factorio.com/13235 more]). | * Fixed research window appearing behind the selection/minimap pane when shown from research completion ([https://forums.factorio.com/13235 more]). | ||
| Line 1,065: | Line 1,065: | ||
* Fixed marking a ton of entities for deconstruction outside the construction range of roboports slowing down normal deconstruction rates. | * 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 ([https://forums.factorio.com/13368 more]). | * Fixed crash when removing electric poles from electric networks or circuit networks with large amounts of poles ([https://forums.factorio.com/13368 more]). | ||
* Fixed video | * 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 | * Fixed that control-clicking entire inventory into a machine installed modules. | ||
* Fixed another instance of the "Trying to make chunk at unreasonable position" bug ([https://forums.factorio.com/13399 more]). | * Fixed another instance of the "Trying to make chunk at unreasonable position" bug ([https://forums.factorio.com/13399 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 ([https://forums.factorio.com/4604 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 ([https://forums.factorio.com/4604 more]) | ||
| Line 1,074: | Line 1,074: | ||
* Ambient sounds are specified as prototypes so they can be extended and modified by mods. | * Ambient sounds are specified as prototypes so they can be extended and modified by mods. | ||
=== Scripting === | === Scripting === | ||
* Changed all the identifiers/methods/events/parameters. Underscores are used as word delimiter (findentities | * Changed all the identifiers/methods/events/parameters. Underscores are used as word delimiter (findentities -> find_entities). | ||
* Changed glob to global. | * Changed glob to global. | ||
* New object LuaSurface, accessible from player/entity as read property surface. | * 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 | * 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 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 | * Added LuaFluidPrototype - similar to LuaItemPrototype but for fluids. | ||
* math.random can now accept negative values for ranges eg x + math.random( | * math.random can now accept negative values for ranges eg x + math.random(-10, 10) | ||
* Added LuaRecipe::hidden and energy read. | * 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 | * 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 | * 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. | * LuaItemPrototype::group now returns the new LuaGroup object. | ||
* Added LuaEntity::is_crafting() | * Added LuaEntity::is_crafting() - returns true/false if the assembling machine or furnace is currently crafting a recipe. | ||
* Added LuaEntity::crafting_progress/bonus_progress | * 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. | * 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. | * 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 new blend modes for sprites using "blend_mode" property. Possible values: "normal", "additive", "multiplicative". | ||
* Added on_player_driving_changed_state event | * Added on_player_driving_changed_state event - passes the player_index who's driving state changed. | ||
* Added LuaEntity::belt_to_ground_type | * 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. | * Added several methods for manipulating gates: is_opened, is_opening, is_closed, is_closing, request_to_open, request_to_close. | ||
* Changed LuaEntity::neighbours: | * Changed LuaEntity::neighbours: | ||
For electric poles: the wire connections: {copper={}, red={}, green={}} | For electric poles: the wire connections: {copper={}, red={}, green={}} | ||
For transport | For transport-belt-to-ground: the input/output entity it's connected to (or none) | ||
For entities with fluid | 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 | * #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 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 | * 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::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. | * LuaEntity::recipe can now be set to nil to remove the recipe from an assembling machine. | ||
| Line 1,105: | Line 1,105: | ||
* Added LuaChart::chart_all (charts all the generated parts of the map). | * 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. | * 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) | * 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 | * 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() | * Added LuaForce::enable_research() - enables research for the force if it was disabled. | ||
* Added LuaSurface::spill_item_stack() | * 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 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. | * 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() | * 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. | * 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. | * 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::count write support. | ||
* Added LuaItemStack::can_set_stack(), set_stack(), clear() | * Added LuaItemStack::can_set_stack(), set_stack(), clear() - write support to a specific item stack. | ||
* Removed LuaEntity::stack, held_stack write support | * Removed LuaEntity::stack, held_stack write support - LuaItemStack::set_stack() can be used. | ||
* Removed LuaPlayer::cursor_stack write support | * Removed LuaPlayer::cursor_stack write support - LuaItemStack::set_stack() can be used. | ||
* Added LuaTrain::cargo_wagons read | * Added LuaTrain::cargo_wagons read - returns only the cargo wagons for the given train. | ||
* Added LuaEntity::remove_market_item | * Added LuaEntity::remove_market_item - takes an index to remove from a Market entity offer list. | ||
* Added LuaEntity::get_market_items | * Added LuaEntity::get_market_items - returns a table of offers the Market entity offers. | ||
* Added LuaForce::research_progress read/write | * Added LuaForce::research_progress read/write - a percent of 1 - the current research progress (0 if no research). | ||
* Added LuaEntityPrototype::turret_range read | * Added LuaEntityPrototype::turret_range read - the range of a given turret entity prototype. | ||
* Added player_index to the on_put_item event. | * Added player_index to the on_put_item event. | ||
* Added ghosts from manual building and blueprints to the on_built_entity event. | * Added ghosts from manual building and blueprints to the on_built_entity event. | ||
* Added LuaPlayer::enable_flashlight() | * Added LuaPlayer::enable_flashlight() - counterpart to disable_flashlight(). | ||
* Replaced LuaGameScript::kill_all_enemies() by LuaForce::kill_all_units(). | * Replaced LuaGameScript::kill_all_enemies() by LuaForce::kill_all_units(). | ||
* Changed on_researched events to return the relayed LuaTechnology object. | * Changed on_researched events to return the relayed LuaTechnology object. | ||
* Added LuaTechnology::force read | * Added LuaTechnology::force read - the LuaForce the technology belongs to. | ||
* Added LuaGame::create_surface | * 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. | * 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 | * 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 | * Added LuaSurface::map_gen_settings - the current map gen settings for the surface. | ||
* Added LuaGame::server_save | * 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 | * Added LuaGuiElement::parent read - the parent of the LuaGuiElement if any else nil. | ||
* Added LuaPlayer::index read | * Added LuaPlayer::index read - the numeric index of the LuaPlayer object. | ||
{{VersionNav}} | {{VersionNav}} | ||
[[Category:Version history]] | [[Category:Version history]] | ||
Latest revision as of 17:44, 26 December 2025
0.12.35
Bug Fixes
- Fixed the missing title in character logistics window.
0.12.34
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.
Bug Fixes
- 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
Bug Fixes
- 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/check box 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 average 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
Bug Fixes
- 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 blueprints 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
Bug Fixes
- 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 refineries 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 remote.call() 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)
Optimizations
- 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
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.
Bug Fixes
- 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 remote.call() within the same mod passing invalid data. (more)
- Fixed the typo in the error "multiplayer.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
Changes
- When the game starts with the base mod disabled, it asks you, if you want to enable it.
Bug Fixes
- 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 initialization failed. (more)
- Fixed random crashes when mining/closing and autosave happens at the same tick.
0.12.28
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.
Bug Fixes
- 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
Changes
- The area of 400X400 tiles is explored when the game starts.
Bug Fixes
- Fixed that merging two electric network didn't merge the statistics. (more)
- Fixed the cyclic/overlapping 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 inconsistency between the way inserters and logistic robots picked items from inventories. Logistic robots now prefer items at the end of the inventory and ignore inventory limit. (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).
- Optimized 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)
- Localization 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 popped 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
Bug Fixes
- 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
Bug Fixes
- 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: more Fix: more
- 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
Changes
- Updated sountrack.
Bug Fixes
- 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
Changes
- Scenario pack was moved to the base game package.
Bug Fixes
- 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 visualization 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 Signaling No Path after update (more).
- Fixed that accumulators kept their energy when destroyed and rebuilt 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 desynchronizations 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.
Sound
- Extended the soundtrack.
0.12.22
Bug Fixes
- 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 deconstruction 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
Changes
- Dropped support for OS X 10.6 Snow Leopard.
Bug Fixes
- 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. more)
- 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
Bug Fixes
- 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 inconstancy 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
Bug Fixes
- 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
Bug Fixes
- 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 equipment 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 formatting 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
Graphics
- New technology Icons!
- New item group icons.
- Updated the icons of rocket silo, beacon, sulfur, armors, stone brick and radar.
Bug Fixes
- 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
Bug Fixes
- 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
Bug Fixes
- Fixed that it wasn't possible to execute UI actions while the game was stopped (research, tips and tricks etc.)
- Fix of fix of loading of game containing Lua objects.
0.12.14
Graphics
- Added new smoke Graphics
Bug Fixes
- 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 although it looked like it. (more)
0.12.13
Bug Fixes
- 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
Bug Fixes
- Fixed another solar panel counting error. (more)
- Fixed that locale values in zip packages weren't loaded. (more)
- Fixed pushing of compound localized 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
Features
- Added --no-auto-pause: When running as a server, --no-auto-pause will prevent stopping the game when no players are connected.
Optimizations
- Optimised the particle performance. Helps during heavy fights.
Changes
- Showing the log file location when the game crashes, so it is easier to find when reporting the bug.
- The "graphics.force-opengl" option default value is true when AMD Graphics card is present.
Bug Fixes
- 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: more
- 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
Changes
- Script created beam entities will now destroy themselves when the source or target entity becomes invalid.
Bug Fixes
- 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
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 initializing Factorio and go straight to the game, skipping main menu.
- Moved MP / autosave information dialogues 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.
Optimizations
- 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.
Bug Fixes
- 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
Graphics
- New Graphics of the steel furnaces.
Bug Fixes
- 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 duplicate 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
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.
Bug Fixes
- 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 drifted 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
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)
Bug Fixes
- 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 occasionally taking too long.
- 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
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. (more)
- 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)
Optimizations
- Further Optimizations in size of the Multiplayer heartbeat (message sent every tick).
Bug Fixes
- 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 (more more).
- Fixed last wagon of long train did not wake up inserter at its end (more).
- Additional fix of the puff smoke appearing 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
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 more
Bug Fixes
- 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 text-fields 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 initialized 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
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.
Bug Fixes
- 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 locomotives 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 SEC.
- 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 preferring the Left side when picking up from the underground belt. (more)
- 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
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).
Bug Fixes
- Factorio with RTL languages no longer crashes on startup because of reversed font path.
- Fixed crash when removing mods that added/changed recipes (more).
- 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 (more).
- 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 (more, more more]).
- Picking up items from curved belts picks up from the correct line (more).
- Fixed that electric pole/roboport radius visualization were off-centered in low Graphics mode.
- Fixed that turrets had too small remnants.
- Fixed bug when removing roboports during load migration (more).
- 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
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 dialogues 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.
Bug Fixes
- 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) (more, more).
- 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 prerequisite (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 electric 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; more)
- 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
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 (more)
- The Lamp, Storage Tank, Small Pump and Offshore Pump can be connected to the circuit network.
- 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).
- 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 (more).
- 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 2x2 (incorrectly stated as 4x4); laser turrets are 4x more expensive and powerful, gun turrets are 2x more expensive
- Roboport tooltip now shows correct numbers of construction 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).
Optimizations
- Overall optimization 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 more).
- 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 leaves and the leafs are color-able.
- 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 (more)
- New GUI icons: Weapons, ammo, status icons such as out-of-ammo or out-of-electricity
Bug Fixes
- 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 relayed 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.