Version history/0.13.0
Jump to navigation
Jump to search
0.13.20
Date: 29. 08. 2016
Bugfixes
- Fixed the demo wasn't working.
- Fixed equipment grid GUI didn't size properly in some cases. (more)
Modding
- Fixed "factorio_version" not being checked correctly in some cases. (more)
Scripting
- Fixed "unknown" error in some cases when using radio button GUI elements.
- Fixed crash when a mod custom event event would error. (more)
- Added LuaGuiElement::type read.
0.13.19
Date: 26. 08. 2016
Bugfixes
- Fixed that the Golem, Watch your step and doing it right didn't activate from steam cloud on new factorio installation.
- Fixed selection boxes of trains in specific situations. (more)
- Fixed that unclosable character window was opened when it was ordered to open exactly at the same tick when the character died. (more)
- Fixed possible desync caused by inserters disabled by circuit network. (more)
Scripting
- Added LuaSurface::regenerate_entity(...)
0.13.18
Date: 25. 08. 2016
Changes
- Changed train wait conditions to use standard Boolean precedence for evaluation, instead of a simple left to right accumulative evaluation.
Balancing
- Increased tank machine gun range to 20.
Bugfixes
- Fixed console command warning not sticking through save-load. (more)
- Fixed that vehicle machine guns would show in the logistics request and inventory filter selections.
- Fixed crash when number animation variations of unit-spawner entity is reduced. (more)
- Fixed clearing blueprints didn't clear the label. (more)
- Fixed crash when removing entities that had active alerts. (more)
- Fixed that sending random garbage to the RCON port could crash Factorio. (more)
- Fixed GUI size issues with modded recipes that have a ton of effects. (more)
- Fixed script errors with tight spot level 5. (more)
- Fixed the market entity not migrating/handling removed items it was offering. (more)
- Fixed sound settings not applying when pressing escape. (more)
- Fixed a crash that would happen after changing UI scale with the inventory open. (more)
- Fixed deconstruction would reset the build rotation value. (more)
- Fixed copy-paste between inventory sizes applying the inventory restriction oddly. (more)
- fixed game.regenerate_entitiy() not working at all. (more)
- Fixed that it was possible to create an assembling machine with zero energy usage. (more)
Modding
- Fixed crash when trying to connect wires to entities with 0 wire connection distance. (more)
Scripting
- Fixed LuaSurface::map_gen_settings.shift not working. (more)
- Fixed chunk positions would get improperly rounded instead of floored. (more)
- Added LuaConstantCombinatorControlBehavior::enabled read/write.
- Added upper limit to resolution parameter of LuaGameScript::take_screenshot function. Limit for width and height is 16384.
- Added LuaStyle::visible read/write.
0.13.17
Date: 17. 08. 2016
Bugfixes
- Fixed a crash caused by enemy AI. (more)
- Fixed crash due to false-positive detection of a save corruption. (more)
- Fixed circuit network controlled signal penalty once more (more)
- Fixed crash when removing mod with modded rocket silo. (more)
0.13.16
Date: 16. 08. 2016
Changes
- Changed the personal roboport so it reacts faster to jobs in range.
- Added graphics option "Enable tree sprite mipmaps" that should reduce GPU load when drawing large forests.
- Changed default value of "Lights render resolution" graphics option to 0.25. High values of this setting have negative performance impact on drawing lamps.
- When the first LUA command is used, players are warned that it would disable achievements.
- Changed default renderer for AMD GPUs back to DirectX.
- Rewritten sandbox scenario to work in multiplayer.
Bugfixes
- Fixed rail signals getting sometimes stuck as reserved. (more)
- Fixed that the game would crash when trying to load a save that contained unit groups with members in different surfaces. (more)
- Fixed combinators not drawing lights for the activity led.
- Reverted the change from Version: 0.13.12 that would disable and hide vsync in some cases. (more)
- Fix that biters wouldn't become aggravated when damaged by the flamethrower. (more)
- Fixed game sometimes not being focused properly on OS X. (more)
- Fixed that the car could shoot itself. (more)
- Fixed desync related to fast-replacing filter inserters with other inserters. (more)
- Don't remove a wall's circuit connection when gate is destroyed and ghost is created. (more)
- Fixed opened machine sound sometimes being high-pitched. (more)
- Fixed that some keybindings wouldn't register properly after a game restart. (more)
- Fixed that it would be possible to manually craft items the player does not have enough ingredients for. (more)
- Fixed playtime in public game browser being 0 for the first minute the server is up.
- Fixed train path finding penalty for circuit network disabled signals.
- Fixed rail planner collision checks for rails in west and south direction. (more)
- Fixed requester chest was missing vehicle impact sound. (more)
- Fixed that dragging the research button would drag and move the technology tree. (more)
- Fixed that the selected slot wouldn't update properly when the quickbar was rotated. (more)
Modding
- Fixed crash when mods use tables as key values in prototype data. (more)
- Added example definition of an electric energy interface.
- Fixed copy&paste on modded constant combinator would copy also number of item slots. (more)
- Fixed possible desync caused by inserters putting items directly to loaders.
- Fixed loader wouldn't stop loading to chest marked for deconstruction.
Scripting
- Fixed LuaEntityPrototype::resource_category crash. (more)
- Fixed changing force of construction or logistic robot would cause game state corruption. (more)
- Added LuaEntity::get_fuel_inventory().
- Added event on_player_changed_surface.
- Added LuaInventory::find_item_stack(...).
- Added LuaControlBehavior::disabled read.
- Added LuaVirtualSignalPrototype and LuaGameScript::virtual_signal_prototypes read.
- Changed LuaEntity::get_filter()/set_filter()/filter_slot_count to work on both inserters and loaders.
- Added an optional Boolean to LuaSurface::spill_item_stack to mark the created items with the to-be-looted flag.
- Added LuaSurface::get_connected_tiles(...).
- Added LuaSurface::get_hidden_tile(...).
- Changed Product::type to string containing "item" or "fluid".
0.13.15
Date: 06. 08. 2016
Bugfixes
- Fixed that rotating the quickbar would make the headless server crash. (more)
0.13.14
Date: 05. 08. 2016
Changes
- Surplus items from crafting are again available for crafting other items.
- For example, crafting two green circuits will no longer result in two extra copper wires in the player's inventory. This only applies to items that are automatically crafted as a prerequisite; items the player has explicitly requested to craft will not be used to satisfy the dependencies of any further orders.
- Factorio will output to console window in UTF8 on Windows.
Bugfixes
- Fixed crash when trying to connect copper wire to invalid entities out of range in the latency state. (more)
- Fixed burner fuel sources would keep their energy when dying and being rebuilt by robots. (more)
- Fixed inserters would try to grab items from rails instead of chests/entities when build in specific setups. (more)
- Fixed disconnecting chests or constant combinators not correctly clearing circuit network. (more)
- Fixed a crash that sometimes happened after canceling manual crafting. (more).
- Fixed a bug where canceling a prerequisite product would cancel more than necessary. (more)
- Fixed crash when trying to connect power switches in map editor. (more)
- Don't force Vsync off on OpenGL. (more)
- Fixed error in tight spot level 5. (more)
- Fixed a bug where a player's GUI would be reset when any other player in MP pressed the "switch active quickbar" button. (more)
- Don't allow sideloading onto a disabled belt. (more)
- Fixed game hanging with certain train configurations (loop where last rolling stock touches the first).
- Fixed chain signal colors not being updated when setting signal states from the circuit network (more)
- Fixed mod updates sometimes not being found with a large amount of mods.
- Fixed mods browser not being sorted after searching. (more)
- Fixed regenerating entities on map (more)
- Fixed watch-your-step achievement for real this time. (more)
- Fixed "failed to create display" error when switching to another window immediately after launching Factorio. (more)
- Fixed issues with saving to NTFS junctions. (more)
Optimizations
- Significantly reduced the high CPU usage caused by the main loop logic from 0.13.10.
Modding
- Fixed input loader didn't resume loading after being deactivated due to full target container. (more)
- Fixed crash when loader connected to splitter is destroyed. (more)
Scripting
- Fixed map corruption and crashes caused by some API functions allowing entities to be used across surfaces when they aren't setup to handle it. (more)
- Fixed evolution_factor could be set to a negative number resulting in base build errors. (more)
- Fixed crash when using entity of type 'flame-thrower-explosion' with 'create-entity' trigger effect. (more)
- Fixed LuaGameScript::take_screenshot() would fail if destination file contained non-English character in its path. (more)
- Added LuaEntity::filter_slot_count read.
- Added LuaEntityPrototype::mining_drill_radius read.
- Added LuaTrain::station read.
- Added LuaDamagePrototype and LuaGameScript::damage_prototypes read.
- Added LuaEntity::loader_type read.
- Added LuaRemote::remove_interface(name).
- Changed LuaRemote so interface names must be unique to maintain save/load determinism.
- LuaEntity::revive() will return the revived entity as a second return value if successful and if the ghost was an entity.
0.13.13
Date: 30. 07. 2016
Bugfixes
- Fixed OpenSSL launch issues on Linux (more)
- Fixed crash on Windows after multiple restarts when installing mods
Modding
- Added entity prototype flags "not-blueprintable" and "not-deconstructable".
Scripting
- Changed LuaEntity::order_deconstruction() to return true/false if it did the deconstruction instead of throwing errors.
- Added LuaPlayer::entity_copy_source - the source entity used during entity settings copy paste.
- Added LuaEntity::request_slot_count read - the number of request slots on the entity or 0 if none.
0.13.12
Date: 30. 07. 2016
Changes
- Vsync will be automatically turned off and hidden from the options menu if desktop composition(windows aero) is on.
Small changes
- - Locale additions and improvements.
Bugfixes
- Fixed auto trash slots were lost when player died in multiplayer. (more)
- Fixed that the headless server would consume 100% CPU. (more)
- Fixed that --mod-directory and other command-line arguments would be forgotten on Factorio restart through the mod manager. (more)
- Fixed that technology name and description locales didn't work correctly for tiered technologies.
- Fixed using flamethrower and slowdown capsule at the same time could ignite biter more than once and corrupt save.
- Fixed modules could end up in the input slot on furnaces. (more)
- Fixed unsightly message when changing player co lour in singleplayer. (more)
- Fixed inserter circuit "hold" read mode sending the signal 1 tick too late. (more)
- Fixed transport belt circuit condition ignoring 1 tick duration signals. (more)
- Fixed crash when saving the game fails due to the disk being full. (more)
- Fixed the "watch your step" achievement would get triggered by random source-less damage. (more)
- Fixed the render layer for turret range visualizations. (more)
- Fixed that an inserter could hold more items than its stack-size bonus, if it was created by fast-replacing a stack inserter. (more)
- Fixed automated fuel insertion into cars wouldn't fill the fuel inventory. (more)
Modding
- Fixed crash when technology prerequisites ended up being recursive. (more)
- Fixed crash caused by destroyer robot beams when compression was enabled for all sprites. (more)
- Fixed inserters with stack bonus not dropping the item to it's destination when deactivated. (more)
- The fluid icon for the storage tank now scales with the size of the storage tank. (more)
Scripting
- Fixed error when attempting to interact with LuaInventory that has a size > 255. (more)
- Fixed crash when robots charging would get disabled through mods. (more)
- Fixed wrong error when setting durability of an item. (more)
- Added LuaItemPrototype read properties: localised_description, place_as_equipment_result, place_as_tile_result, flags equipment_grid_size, inventory_size_bonus, capsule_action, attack_parameters, inventory_size, item_filters group_filters, sub_group_filters, filter_mode, insertion_priority_mode, localised_filter_message, extend_inventory_by_default, default_label_color, draw_label_for_cursor_render, attack_result, attack_range, category, tier, limitations, limitation_message_key, straight_rail, curved_rail, repair_result, selection_border_color, alt_selection_border_color, selection_mode_flags, alt_selection_mode_flags, selection_cursor_box_type, alt_selection_cursor_box_type, always_include_tiles, durability_description_key, durability.
- Added LuaItemStack::add_durability()/drain_durability().
0.13.11
Date: 25. 07. 2016
Small changes
- Further locale changes and polish.
- Horizontal mouse wheel scrolling is now translated to vertical scrolling, because of key binding problems on OS X.
- OS X blueprint book binding is changed back to Shift + Mouse wheel up/down, other custom horizontal mouse wheel bindings are changed to vertical.
Bugfixes
- Fixed that the Linux binaries would crash after handcrafting finishes. (more)
- Fixed offshore pump could be built on top of other offshore pumps. (more)
- Fixed pumjack output would show 0.0/s. (more)
- Fixed that "show pollution on minimap" didn't work when "show pollution on map" was not enabled. (more)
- Fixed scrolling on OS X.
- Fixed exploit of connecting energy producer to more networks and connecting them by switches. (more)
- Fixed long handed inserters couldn't pick up from the ends of cargo wagons. (more)
- Fixed that when a mod defined a technology with an invalid recipe, it could crash the game. (more)
Scripting
- Fixed accumulators with circuit connectors not working correctly when exported through get_blueprint_entities(). (more)
- Changed LuaSurface::find_entities/filtered to take either area, position, or neither instead of just area.
- Added LuaGroup::order read.
0.13.10
Date: 22. 07. 2016
Minor Features
- Added logistics auto-trash slots: the opposite of logistic request slots.
- Added --mod-directory: Specifies which mod directory to use
Changes
- Increased the size of the curved rail bounding boxes slightly so trains won't damage things built next to them.
- Server stdout messages now contain timestamps and message-type tags
- Biters and other units won't become aggressive as a result of friendly-fire.
Bugfixes
- Fixed golem achievement incorrectly showing as not-obtained when loading pre 0.13.9 saves in 0.13.9. (more)
- Fixed crash related to wire rendering after switching to copper wire while dragging wire. (more)
- Map generator tweaks (predictable starting area resources, water only in starting area works now, fixed a few bugs in biome generation).
- Fixed chat message rainbow when the game tick would go past 2147483648. (more)
- Fixed password field not being focused when connecting to a game. (more)
- Fixed rocket silo moving slow when using efficiency modules.(more)
- Fixed pressing Escape in multiplayer connect password dialog closed all GUI windows. (more)
- Fixed gates sometimes not opening soon enough. (more)
- Fixed side menu buttons being focus-able. (more)
- Fixed numbers display rounding up when it shouldn't. (more)
- Fixed constant combinator GUI slider sometimes showing different value than the number of items. (more)
- Fixed assembling machine GUI progress bars not sizing correctly. (more)
- Fixed tight-spot scenario missing walls around trees. (more)
- Narrower descriptions with more line breaking opportunities (mod list, roboport). (more)
- Fixed that cunning cancellation of crafting orders could result in free items. (more)
- As a result of this fix, your entire crafting queue will be lost when loading a save from 0.13.9 or earlier. We suggest that you finish or cancel all your crafting before upgrading.
- Fixed crash related to custom units. (more)
- Fixed mod enabling/disabling sometimes didn't restart the game. (more)
- Fixed several issues with build ability checks returning false but entities actually being buildable. (more)
- Fix that aggroing a huge amount of biters would cause UPS drop for a long time. (more)
- Fixed freeze when dragging sound sliders in some instances. (more)
- Fixed bullet shooting speed not working properly. (more)
Optimizations
- Improved performance when building large electric poles in the latency state by click-and-drag. (more)
- The game's main loop has been rewritten. This should increase performance in some cases and fixes some freezes and stability issues.
- For example game freezing when changing system time.
Modding
- Starting area is now 1.5x the size in tiles (also affects tier_from_start).
- Fixed manually defining the localised_name of an item didn't work correctly. (more)
Scripting
- Added LuaEntity::copy_settings() - copies settings from one entity to another as if the player did it.
- Changed LuaSurface::find_entities/count_entities/filtered to search the entire surface if the area isn't defined.
- Fixed crash when trying to set compound command with missing list of commands. (more)
- Fixed technology effects are now applied before the research_completed event is fired. (more)
- Added LuaGameScript::direction_to_string(...) - converts a defines.direction to the string name.
- Added LuaPlayer::clean_cursor() - acts as if the player pressed the "clean cursor" key.
- Added LuaEntity::mining_target read.
- Added properties to LuaSurface::create_entity to make the creation act as fast-replace building.
- LuaGameScript::take_screenshot now has an additional field "by_player" that when set will cause the screenshot to only be taken on that players local game.
- Added LuaEntity::circuit_connected_entities - the entities directly connected to an entity by the circuit network.
- Added LuaEntity::circuit_connection_definitions - the connection definitions for all wires connected to an entity.
0.13.9
Date: 15. 07. 2016
Changes
- Updated demo campaign tips images.
- Updated/Fixed locale entries.
- Removed --mp-load-game
- Default value for "Lights render quality" graphics options was changed to 1.0.
- If config.ini contains value lower than new minimum (0.25) it will be reset to the default value.
- Lights are rendered with linear filtering to improve quality for lower "Lights render quality" settings. (more)
- Added tips and tricks for pasting wagon slots and cycling in blueprint book.
- Mods are now sorted alphabetically in the mods list.
Bugfixes
- Fixed transport belt madness map showing an empty message dialog out of nowhere.
- Fixed transport belt madness being impossible. (more)
- Fixed crash on Linux when stdout was closed after starting Factorio. (more)
- Fixed trains of other forces could be seen in the Trains GUI. (more)
- Fixed inserters not saving custom pickup/dropoff when exported through the Lua blueprint interface.
- Fixed robots delivering modules into the recipe input slots instead of the module inventory. (more)
- Fixed performance issue caused by alt mode when some mods are installed and linear filtering is enabled. (more)
- Items stop correctly before a belt deactivated using the circuit network. (more)
- Fixed another case where a biter could get stuck. (more)
- Fixed crash when using --mp-connect to join a game that requires user verification. (more)
- Fixed train GUI would be too big to fit on screen with a large amount of character inventory slots. (more)
- Buildings with backer names containing non-ASCII characters are generated properly.
- Fixed logistic counts when changing stack sizes of items the player was holding.
- Fixed crash when right-clicking electric pole in Map Editor. (more)
- Fixed crash when building tiles would result in you dying. (more)
- Fixed disabled belts would still move the player. (more)
- Fixed crashes related to changing train conditions in the latency state.
- Fixed line breaking in description titles. (more)
- Fixed typo in description of flooring items. (more)
- Fixed blueprint icons not working as desired when paths where part of the selected area. (more)
- Fixed that a username change wouldn't save if the game crashed. (more)
- Fixed that clicking an alert button could show the wrong alert. (more)
- Fixed flooring placement preview rendered on top of turret base. (more)
- Fixed numpad home/end/other keys not working when numlock was off. (more)
- Fixed that the game password dialog showed the password. (more)
- Fixed that inserters at the very front of trains would sometimes not get enabled when a train would stop. (more)
- Fixed the difficulty settings for scenarios not working. (more)
- Fixed alignment of some pipe covers. (more)
- Fixed the watch-your-step achievement not working. (more)
- Rocket parts from building rockets in the rocket silo now show in production stats. (more)
- Fixed tracked achievements scrolling off screen when un-tracking them. (more)
- Fixed inserter sometimes only dropping one item on the ground before going back. (more#p183886)
- Fixed LuaGameScript::active_mods not showing the correct list of mods. (more)
- Fixed signals letting trains pass when the circuit network changes. (more)
- Fixed crash when deconstructing an entity with modules to be delivered while hovering the mouse over the entity. (more)
Scripting
- Fixed SpritePath to recipe that inherits icon from its result would not be considered valid. (more)
- Fixed crash when setting new research in the on_research_completed event. (more)
- Fixed error during the research completed event being un-clickable. (more)
- Added LuaTile::position read.
0.13.8
Date: 11. 07. 2016
Bugfixes
- Fixed craftable unit entities desyncing when held over belts. (more)
- Fixed character inventory size was limited at 255 instead of the correct 65536. (more)
- Fixed mouse wheel left/right bindings not working.
- Changed default blueprint book switching shortcut on OS X to Command + Mouse Wheel up/down
- Fixed aliens getting stuck sometimes. (more)
- Fixed inserters not putting fuel in modded burner assemblers in some situations (more)
- Fixed headless server would crash when loading save containing sprite-button. (more)
- Fixed maps loaded from versions < 0.13.7 not generating any more chunks (more)
- Fixed First Steps campaign character death error. (more)
Scripting
- Reverted changes related to 0.13.7 fix for (more). If entity specified in sprite path
- doesn't have an icon, button will be created anyway, but no sprite will be drawn inside of it.
- Added LuaGui::is_valid_sprite_path() function
- Fixed that if a land mine got blown up and replaced by a robot, it wouldn't arm itself. (more)
- Added LuaPlayer::admin read - if the player is an admin.
0.13.7
Date: 11. 07. 2016
Minor Features
- Holding the "drop item" key will keep dropping items.
- Rocks can be mined while holding blueprints.
Graphics
- Updated the stack inserter technology icon.
Balancing
- Medium and large worms spawn further from the starting area.
Bugfixes
- Connect game dialog remembers DNS the address as written rather than only IP (more).
- Science packs and ammo are now recorded in the items consumed portion of production stats.
- Fixed the mysterious crash when building rails. (more)
- Unified the mass production 3 achievement to 20 M (it was 10M in game and 100M on steam). (more)
- Fixed rendering layer of gate wall. (more)
- Fixed fullscreen toggle in graphics options. (more)
- Fixed mining drills using slightly too much energy per item mined.
- Fixed that rail signals connectable to two rails at the same time were marked as buildable even when the build ability was valid only for one of the rails. (more)
- Fixed burner inserters sometimes getting stuck. (more)
- Fixed inserters with stack bonus waiting for stacks indefinitely when there's nothing to take from. (more)
- Fixed blueprint previews with tiles and rails vs tiles with no rails. (more)
- Fixed crash that could sometimes happen when a biter couldn't reach a target for a long time. (more)
- Fixed on_player_placed_equipment was not called when quick transferring equipment into armor. (more)
- Fixed map generator problems very far from the start.
- Map size is now limited to 2000 km by 2000 km with a black bar rather than crashing when reaching this distance
- Fixed clean-cursor with armor not putting it into filtered slots in your quickbar. (more)
- Fixed that expansion chunk candidates values weren't updated properly. (more)
- Fixed landfills could be included in blueprints. (more)
- Fixed multiple instances of walls blocking movement when they shouldn't. (more)
- Fixed that the solaris achievement unobtainable.
- Fixed flamethrower turret would cause blueprint preview move up and down.
- Fixed crash when the currently-playing folder can't be deleted when exiting game. (more)
- Fixed crash when connection to the mod portal fails (more)
- Fixed Update Mods button being sometimes disabled (more)
- Fixed that LuaGameScript::write_file treated data as null-terminated byte string. (more)
- Fixed entities marked with "not-repairable" still being repairable manually. (more)
- Attempt to fix "Access is denied" error message during autosaves. (more)
- Fixed desync caused by transport belt connected to circuit network reading in pulse mode.
- Fixed save corruption when driving vehicles on transport belts in some instances. (more)
- Fixed copy-paste not waking up inserters when copying filters between different inserter types. (more)
- Fixed error when biters tried to expand while evolution factor was 0. (more)
- Fixed building paths not refilling the cursor in some instances. (more)
- Fixed unlocked achievements blinking too quickly. (more)
- Fixed crash when setting the force of a logistic container in ghost form. (more)
Scripting
- Fixed label size issues when using different font sizes or resizing the game window. (more)
- Fixed crash when trying to create sprite-button with valid SpritePath to sprite that doesn't exist. (more)
- LuaGuiElement::add won't create sprite-button and returns nil if invalid SpritePath is passed.
- Added an option to LuaSurface::set_tiles() to disable the correction logic for total control of what the tiles end up as.
- Added item-group, fluid, tile, virtual-signal and achievement icons to be accessible by the SpritePath used in the sprite-button element.
- Added SpriteButton to the scripting documentation.
- Added "grid" to the on_player_placed_equipment event.
- Added LuaRecipe::localised_name read.
- Added LuaGuiElement type "scroll-pane".
0.13.6
Date: 06. 07. 2016
Changes
- Stack inserters are unlocked by their own research that is dependent on advanced electronics and logistics 2.
- This also solves that stack inserters were available but not buildable in the campaign.
- Deconstructing and cancel deconstruction can be toggled between by using the modifier key. (more)
Bugfixes
- Fixed desync when inserters would insert things directly onto splitters. (more)
- Fixed that manipulating the fuel inventory of locomotives didn't count towards the inactivity condition. (more)
- A train with a circuit condition will now always stay at the station if no wire is connected. (more)
- Fixed that steamrolled achievement was obtainable by just killing the spawner, not only by killing it by impact. (more)
- Fixed the player getting stuck in some instances when using landfills. (more)
- Fixed crash when train stop that is in train schedule of some train was opened in the map editor. (more)
- Fixed crash when the player would equip power armor they currently had open while in the same tick a robot delivered items
- to the player which would end up in the new slots added by the power armor. (more)
- Fixed crash when mining tiles you're standing on that results in you being killed.
- Fixed load game GUI size issues when trying to load invalid save files. (more)
- Fixed fuel and water from pumps not being counted in the production stats consumed/produced items. (more)
0.13.5
Date: 05. 07. 2016
Minor Features
- Blueprints with labels will now show the label when holding them to-be-built.
- Once mining is started over non-resources, resources are ignored until the mine button is released. (more)
Changes
- Attempting to mutate the 'global' table of a mod in the 'on_load' event handler will result in an error.
- The 'on_load' event handler is *only* meant for re-registering conditional event handlers and setting up meta-tables.
- Use 'on_configuration_changed', 'on_init', and migration scripts in all other instances.
- When connecting circuit wires, the wire will re-anchor to the last entity clicked. (more)
- Increased collision box of stone walls slightly, to prevent the player getting stuck. (more)
- Power switch will not show electric sparks in some situations. (more)
Bugfixes
- Fixed the add-trains list treating stations with the same spelling but different case as the same station. (more)
- Fixed circuit network signals not properly migrating when removing mods. (more)
- Fixed incorrect pollution rendering. (more)
- When showing the count of entities in the network, it is now showing all entities connected in the network including sub-networks connected to power switches.
- crash when getting killed by a locomotive you currently had the GUI open for (for real this time). (more)
- When splitting electric networks because switch was turned off, the network with more entities is considered the "master one" which keeps the statistics.
- Fixed entity power bars in the electric network statistics GUI being sometimes scaled and colored improperly.
- Fixed the electric network statistics merging when networks are connected by turning power switch on.
- Fixed that the last train inserter didn't grab from the cargo wagon sometimes. (more)
- Fixed crashes related to bad circuit network state caused by old mods. (more)
- Fixed that biters couldn't find a path through a thick wall of trains. (more)
- Fixed that some of the achievements didn't get reported to steam.
- All the achievements data are reset when migrated to this version, those reported on steam will get reloaded.
- Fixed crafting machines using slightly too much energy per recipe crafted. (more)
- Fixed that the drop item doesn't consume the key event when there is nothing in cursor, so it works properly when the same control is used for something else.
- Fixed crashes related to bad circuit network state caused by old mods. (more)
- Fixed that enemies would start attacking rails and other nearby structures after the player passed by in a train. (more)
- Fixed chests in circuit network showing double their contents after fast replace. (more)
- Fixed that changing rails while trains where waiting on circuit conditions would cause the train to leave the station. (more)
- Fixed crash when 2 or more people would manipulate train schedules at the same time. (more)
- Fixed on_marked_for_deconstruction with tiles not including the player that marked the tile for deconstruction. (more)
- Fixed tile rendering off by half a tile in blueprint previews. (more)
- Fixed non ASCII characters didn't work in train stop names. (more)
- Fixed of the rail signal/train stop visualization planner in specific cases. (more)
- Fixed crash when opening train stops in the map editor. (more)
- Fixed miss-aligned blueprint entities when editing blueprints and removing rails/roboports. (more)
Optimisations
- Improved performance when there are a large (4000+) amount of alerts going off at the same time. (more)
0.13.4
Date: 03. 07. 2016
Changes
- For performance reasons: latency state blueprint building is automatically disabled if building blueprints with a combined total
- of more than 300 entities + tiles.
- Player names are now shown in the description pane instead of just "player". (more)
Bugfixes
- Fixed the "No such node (application_version)" error when starting a headless server
- Fixed modules could get into assembling machines that didn't allow them for the current recipe. (more)
- Fixed desync when holding most rotatable items for building in the latency state. (more)
- Fixed build-by-moving logic for underground belts and underground pipes. (more)
- Fixed construction robots grabbing items from the player cursor and trying to use them as repair packs. (more)
- Fixed killed entities not keeping modules to-be-delivered in some cases. (more)
- Fixed headless server being counted as a player for the player limit. (more)
- Fixed crash when belts would die due in some instances. (more)
- Fixed Lua GUI events getting fired before the actual GUI element was modified. (more)
- Fixed crash when getting killed by a locomotive you currently had the GUI open for. (more)
- Fixed fluid temperature restricted recipes didn't work when fluid flowed in from the left side of the machine.
- Fixed server crashing when starting a LAN game with no internet connection. (more)
- Fixed crash when modded walls didn't have a definition for connected gate visualization.
- Fixed energy bar on battery equipment. (more)
- Fixed bonus GUI size issues with lots of entities using the bonuses. (more)
- Fixed mod hotkeys not working when you'd have more than 1. (more)
Scripting
- LuaEntity::built_by can be used with ghosts if the inner ghost supports built_by. (more)
- LuaEntity::recipe can be read off furnaces as well as assembling machines.
0.13.3
Date: 01. 07. 2016
Changes
- Slightly reduced big electric pole collision box to allow squeezing between big pole and accumulator.
- Increased the distance between items on the belt from 0.28 to 0.28125.
- This way the the circuit network pulse for items will be every 9/4.5/3 ticks for normal/fast/express compressed belts. (more)
GUI
- Only games with the same application version are displayed in Browse Games screen.
- Removed tabs from Browse Games and Browse Mods screens and tweaked column widths.
Bugfixes
- Fixed mods directory not being created when installing mods (more)
- Fixed lab bonus speed not showing correctly in the bonus GUI sometimes. (more)
- Fixed crash related to killed flamethrower turrets in ghost mode. (more)
- Fixed that the game crashed in the user login dialog when the steam connection was not available.
- Yet another research window resizing fix.
- Fixed desync related to building-while-moving underground belts and pipe-to-ground.
- Fixed Steel chest recipe in New hope mission 02. (more)
- Fixed projectiles with negative accelerations 'hitting' at the incorrect position.
- Fixed bug related to building/removing poles connected to network with power switch. (more)
- Fixed that some items seemed to be repairable in multiplayer. (more)
- Fixed that modules could get lost when upgrading them. (more)
- Fixed timezone issues with the browse mods GUI.
0.13.2
Date: 30. 06. 2016
Changes
- Damage bonus in turret tooltip will now show both basic turret damage multiplier and turret damage bonus from research. (more)
- Limited multiplayer game name length to 60 characters.
- Moved the copper wire back to the intermediate category in the recipes.
- Inserters connected to the circuit network now have the option to only read hand contents.
- During biter migration, medium worms can now only spawn if the evolution factor is greater than 0.3, and big worms require evolution factor of 0.5.
Bugfixes
- Fixed occasional crash when downloading map. (more)
- Fixed rail signals set to red by circuit network going green in some situations. (more)
- Fixed rail signals not going back to green when when deselectiog "Close Signal" option.
- Fixed that running a command via stdin or RCON would crash the game if commands were allowed for admins-only. (more)
- Localized hard coded strings in power switch GUI. (more)
- Fixed enemy turrets would show player's damage bonuses in tooltip.
- Fixed repair packs (and mergable items in general) under flowing and making millions of items. (more)
- Added missing Lua defines for the rocket silo rocket inventory.
- Fixed train minimap preview schedule box not allowing scrolling. (more)
- Fixed game restarting after installing only one mod.
- Fixed game crashing when viewing info about a mod with space in its name (hopefully) (more)
- Fixed checking for mod updates taking very long.
- Fixed low framerate when pasting long text into console.
- Fixed filter inserter sometimes taking an extra item after the filter was unset. (more)
- Fixed inserter arrows in blueprints. (more)
- Fixed that it wasn't possible to require verification of user identity in server-settings.json.
- Fixed migration of internal circuit network signals. (more)
- Fixed some oddities when using the rail planner and quickbar-selecting other items.
- Fixed desync when building rail signals in close rail setups. (more)
- Fixed crash when reviving ghosts built by blueprints in the entity built Lua event handler. (more)
- Fixed LuaEntityPrototype::result_units spawn points only ever giving the last spawn point. (more)
- Fixed stack filter inserter sometimes showing more than one filter in alt mode.
- Research button position fix.
- Changed the technology prerequisite of solar panel from advanced-electronics to electronics. This also fixes the 2nd mission of the new hope campaign.
- Fixed that the headless server wouldn't be able to save the map if started like --start-server save.zip. (more)
- Fixed unminable rails when migrating saves to 0.13. (more)
- Fixed that the gate didn't open when it was on the same rail as the locomotive front joint. (more)
- Fixed that game name and description in the game browser didn't wrap.
- Fixed game did not run on Windows XP. (more)
- Fixed the ElectricEnergyInterface entity not drawing low power/no power icons.
- Fixed requester chest filters getting cleared when changing the force of the chest. (more)
- Fixed rocks not being ignored when rail planner ghost building. (more)
- Fixed that when a transport belt got destroyed and turned into a ghost, it wouldn't drop items on ground. (more)
- Fixed occasional random browse game GUI crash when moving close to the end of the list.
- Fixed script error in supply challenge. (more)
- Fixed that rail signal visualization helper was not working properly in some specific cases. (more)
- Fixed construction robots getting stuck when they return for repair pack to passive/active provider chest. (more)
Optimisations
- Optimized rendering of huge pollution clouds on map.
Scripting
- Added LuaEntityPrototype::spawn_cooldown - the spawn cooldown for enemy spawners.
- Added LuaEntity::power_production and power_usage read/write for the ElectricEnergyInterface type entity.
0.13.1
Date: 29. 06. 2016
Changes
- Added /demote to demote players from admins
Bugfixes
- Fixed crash when shift right clicking furnace fuel slots. (more)
- Fixed not being able to rename train stops. (more)
- Fixed stack filter inserters taking too many filters when building them by fast replace. (more)
- Fixed automatic insertion of satellites into rocket silos.
- Fixed flamethrower not unlocking on loading old saves in 0.13.
- Fixed map corruption and possible crashes when damaged stone rocks migrated from 0.12 saves got destroyed in 0.13. (more)
- Fixed that saving a map could crash under some circumstances. (more)
- Fixed that locomotives were not moving enough in reverse.
- Fixed that --create didn't work with just a filename. (more)
- Fixed that disabled and invalid mods were still marking the game as modded for the achievements.
- Fixed headless server crashed when launched with closed stdin. (more)
- Fixed that stack transferring (shift clicking) armor off your player could end up deleting the armor if you lost inventory space. (more)
- Fixed the watch your step achievement.
- Fixed downloading mods crashed the game (more).
- Fixed that starting with modded game still activated achievements from steam. (more)
- Fixed the kick message. (more)
- Fixed technology effects translation of worker robot storage and speed.
- Fixed crash when the game tries to remove old version of mod that is unpacked directory instead of a zip package. (more)
- Fixed that max player count was ignored when joining multiplayer game.
- Fixed that attempting to connect with 0.12 client to a 0.13 server wouldn't display the proper error message for the client and would display "unknown message type received" for the server. (more)
- Fixed too large capacity of internal pipe in flamethrower turret. (more)
- Fixed inserters and belts connected to circuit network turning on for one tick when something is disconnected or fast replaced in from the network. (more)
- Fixed that the technology description didn't wrap when it was too long, which also made the research button unreachable. (more)
- Fixed that there were walls over water in the tight spot scenario. (more)
- Fixed that can_build_entity command didn't check tile collisions.
- Fixed that the Research Finished text could flash too fast sometimes. (more)
- Fixed that failed attempt to determine public IP address crashes the headless server (more).
- Fixed graphical issue with lights when light render quality was set to low. (more)
- Fixed steel chests getting disabled when migrating 0.12 saves to 0.13 when the 0.12 save didn't have smart chests unlocked. (more)
- Fixed crash when using LuaForce::entity_build_count_statistics. (more)
- Possibly fixed hang when closing the Steam overlay on some Linux systems. (more)
Modding
- Added mandatory reversing_power_modifier property into locomotive prototype definition.
- Changed the logistic-robot-storage and logistic-robot-speed modifiers to worker-robot-storage and worker-robot-speed
0.13.0
Date: 27. 06. 2016
Major features
- Improved Multiplayer game UX (see more and more).
- Server games are published to the server and clients can browse existing games.
- Automatic discovery for the LAN games.
- Mod Portal integration. Factorio can list and install mods from the mod portal. (more)
- Achievements and Steam Achievements integration. (more)
- Modded games won't have the achievements recorded on steam.
- Rail planner tool simplifies the rail building. (more)
- Added fire. Fire will spread between trees and cause forest fires, causing a large amount of pollution to be released.
- Power switch. It can be used to control the energy flow. Power switch can be connected to the circuit network. (more)
- Added the Stack inserter - an expensive upgrade over fast inserters that can move several more items at a time.
- Flamethrower turret. Fueled with fluid, shoots a stream of burning oil towards oncoming enemies.
- Bonus GUI (accessible from sidebar GUI) showing bonuses the force has researched.
- Train station window contains a list of all trains (each can be opened) that have that station on their schedule.
- Single train GUI now has an additional panel which shows the minimap/camera view of the given train.
- Search field to the filter selection and recipes selection windows.
- Trains GUI. It displays all the trains as small minimaps with schedules, which can be searched.
- Extension of the train wait conditions. (more)
- New locomotive, cargo wagon and train stop graphics. Locomotives can be colored. The trains are a consistent size in horizontal and vertical orientations.
- New technology tree GUI. (more)
Minor Features
- Blueprints can be now edited.
- Added the Blueprint Book item - an item to manage blueprints. The book can be renamed and only holds blueprints.
- Map generator algorithm changed, further resource field now have greater richness.
- Added landfill, it can be used to replace water areas with grass.
- Added yellow/black striped concrete tile that is rotatable.
- Small sidebar GUI containing buttons for main menu, production statistics, etc.
- Armors have inventory size bonuses (10 for modular armor, 20 for power armor, 30 for power armor mk2).
- Underground pipes and belts are placed at max connecting distance apart when built by dragging.
- --scenario2map: Creates a save from a custom scenario, without initializing the graphics.
- The lamp can change it's color based on circuit network signals.
- Roboport is connectable to the circuit network. It sends the logistic network contents or the robot statistics of the network.
- Accumulator is connectable to the circuit network. It sends it's charge level as a percentage.
- Transport Belt is connectable to the circuit network. It can be turned on or off and it can send it's contents to the circuit network.
- Rail Signal is connectable to the circuit network. It will send the signal's state and can block trains from passing.
- Gate can be controlled through the circuit network by connecting to the wall next to it. It can be opened manually or send a signal if the player is nearby.
- Requester chest's requested items can be set automatically from the circuit network.
- Inserters can now send the item held in hand to the circuit network. Filter inserters can have their filters set automatically from the circuit network.
- Most entities that can be turned on or off by the circuit network can also be turned on or off by directly using a logistic condition.
- Circuit network and logistic network conditions can now be accessed by icons in the top-right corner of the entity's GUI, for all connectable entities.
- Connected Red/Green wires are highlighted when hovering over a combinator or entity connected to the circuit network.
- Wire disconnecting is incorporated in the latency hiding.
- Crafting machine item/fluid total craft counts are recorded per force.
- Intro sound in the loading screen.
- Improvements to the statistics GUI (electric network/production info).
- Added the ability to filter out things.
- Added the ability to view "all" information recorded.
- Made the GUI scrollable.
- Added /ban /kick /bans /admins and /admin commands.
- Added /color command, so changing color doesn't require access to Lua commands.
- When running as a server, Factorio now accepts console commands on standard input.
- When running as a server, Factorio can be told to listen for RCON connections.
- To use this, specify both the --rcon-port and --rcon-password parameters on the command line. The network protocol is specified here: link
- New parameter to start the headless server: --start-server-load-latest. Instead of accepting a save name, it will automatically load the latest save in the saves folder.
- The "disallow-commands" flag has been changed to "allow-commands" and accepts "true", "false", and "admins-only" for values.
- It is stored and shown which player built each of the machines.
- Added cluster grenades and grenade upgrades.
- Added flamethrower and flamethrower turret damage upgrades.
- When creating a new map using the --create command-line option, --map-gen-settings can be used to specify the map generation settings.
- Log file reopening on SIGUSR1 and a commandline option to disable log rotation.
- The default font looks better (improved hinting for the thinnest weight).
- Labels and values in descriptions have different colors.
- Item health bars are rendered green, yellow, red based off the % health remaining like entities.
- Modules support in blueprints.
- Equipment can be put in open equipment grids using standard inventory shortcuts (shift + click, ctrl + click).
Ease of use
- Turret displays its range when you hover over it.
- Rail signal/train stop placement indicator. (more)
- Indicator of train vehicle positions in a station when building next to track where would the train stop.
- It is possible to change the module in the slot to different one without having to clear it first.
- It is possible to upgrade modules to more powerful variant in machine by fast entity transfer.
- Clear cursor first cancels the current action (rail building, wire dragging, blueprint/deconstruction), and only removes the item from the cursor when pressed again.
- Saving a game changes selected name and directory for next saves. (more)
- Clicking different filtered slot in quickbar will try to clear the currently selected quickbar item if possible.
- Cleaning item in cursor that is taken from quickbar slot will try to refill the slot from the inventory if possible.
- Clicking on the warning icon will open the location on the map.
- Pressing E/Escape will close the map mode.
- It is possible to move the map by clicking and dragging.
- Hovering mouse over inventory logistic request slots makes matching items in inventory be highlighted.
- Fixed the zoom to cursor feature introduced in 0.8 that was non functional since 0.10.
- Improved the rail selection logic in junctions.
- Stone Rock can now be mined and deconstructed by robots. It gives some stone as resource.
- Combinators input and output arrows in alt mode. Additional alt mode information can be turned on in the options menu.
- The constant combinator has an on/off switch.
- Several non-stackable items can be swapped directly with counterparts (power armor, deconstruction planner, selection tools).
- Inventory filter slots can be copy-pasted from empty slots onto empty slots using the stack transfer/split controls (shift + left click, shift + right click by default).
Balancing
- The productivity module pollution addition was lowered (30%->5%, 40%->7.5%, 50%->10%), as the pollution generated by the machine is already increased
- by the additional energy production and time, it doesn't need to be so high as the modules are quite expensive already.
- Repair packs have double durability (100->200) and stack size (50->100).
- Changed stack size of raw wood (50->100) so it doesn't fill the inventory so quickly.
- Roboport have decreased transmission power consumption (200kw->50kw) while the robots (and their recharging) has increased power consumption (200kW per recharge slot to 1Mw per slot)
- Basically, covering area by roboports is cheaper, but using robots for transport is more expensive. To keep the personal roboport usefulness, energies used in personal roboport have been
- all multiplied by 10.
- Inserters are able to squeeze things "slightly" better to belts. more resources.
- Increased size of several green science and few blue science technologies.
- Increased inventory size of cargo wagon. (30->40)
- Oil yield drains to 10% two times slower.
- Big and behemoth enemies spawn 50% slower.
- Armor resistances are applied before the energy shield is used.
- Increased the ghost time to live when something is destroyed from 5 + 5 minutes to 30 + 30 minutes.
- Halved the mining time of rails, rail signals and walls.
- Changed the way evolution factor approaches the maximum (1).
- The addition of evolution factor was changed from addition * (1 - evolution) to addition * (1 - evolution)^2
- This means that the progress gets more slower towards the high values.
- Balanced train acceleration and top speed, additional wagons no longer slow trains so strongly.
- Changed the amount of items requested when copy-pasting assembling machines to requester chests for several recipes.
- Express underground belts require lubricant to match the express belts and express splitters.
- Increased battery equipment power storage, input, and output by a factor of 20.
Changes
- Reduced number of connections drawn between roboports in blueprint and roboports on map.
- More virtual signals for combinators.
- Virtual signals can be used in blueprint icons.
- Disabled loading of saves before 0.10.0 version (You can use 0.10.12 to load older saves and re-save them).
- Removed multiplayer peer-to-peer mode.
- Ghosts created by player no longer expire and can be placed before researching any technologies.
- Ghosts are brighter and easier to see.
- Alert of destroyed entity exists 2 times longer.
- Quickbar filters are set and unset using the same key.
- Loading a scenario without control.lua will automatically load the freeplay game mode scripts.
- This means new maps created in the map editor will get the freeplay game mode.
- Loading a scenario in the map editor will preserve it's scripts.
- This means custom freeplay/sandbox maps can be created in-game.
- Constant combinator can be rotated.
- All types of inserters can be controlled by the circuit and logistic network, once the respective network is researched.
- All types of chests can be connected to the circuit network. Smart Chest was removed from the game.
- Decider combinator "input count" option makes the combinator copy the count of the specified output signal from the input signals,
- instead of copying the count from the condition. This might break some setups. more
- Transport belt connectable entities will disconnect from incoming (and all other) belts when marked for deconstruction.
- The problem is solves is described in this bug report: more
- Spaces are now allowed in file names when saving.
- Changed the fluid color of heavy oil to match the icon color.
- Alert beep sound is activated only when something is destroyed, not by something damaged.
- Spitter attack distance is randomized slightly to make them look more organic.
- Rocket fuel can now be used as fuel.
- Saves given on command line (to options --start-server, --mp-load-game, --load-game, --create) are always absolute or relative paths.
- If the path is relative, it is relative to the current directory (where the binary is run from).
- Main menu background image is scaled proportionally now. (more)
- Renamed "research-effectivity" to "research-speed".
- Removed light entity info background option.
- Cleaned up freeplay and sandbox scenario scripts.
- Exiting vehicles now puts you to the left of the vehicle with respect to the orientation of the vehicle.
Graphics
- Health bars are partially visible when obstructed.
- High resolution in-game indicators.
- New fire graphics for Stone Furnace, Steel Furnace and Boiler.
- New icons for rocket fuel, low density structure, rocket control unit, satellite, car and tank.
- Entities show a circuit connector when connected to the circuit or logistics network.
- Added compression for some sprites to save video memory. This can be enabled in Graphics options.
- Added linear filtering for GUI icons. This can be disabled in Graphics options.
- New combinator graphics.
Optimisations
- Optimised GUI render.
- Minimap is rendered in 16bit colors to reduce memory usage.
- Less memory usage for entities that are connectable to the circuit network.
- Faster map unload on Quit to Main Menu or closing the game.
- Optimized pollution rendering on map and minimap.
- Optimised roboport radius rendering.
- Optimised biter pathfinding. (more more)
- Optimised save file times by doing compression in parallel.
Bugfixes
- Fixed recipe ordering when recipes had the same group and group order string.
- Limited number of explosion sounds for grenade, explosive cannon shells, explosive rockets.
- Underground belts won't connect if underground belt ghost is in the way. (more)
- File saving is done in a safer, more atomic way. This should help prevent some cases where a safe file or the config file can go missing.
- Building sound is played also for other players in multiplayer.
- Red/green wires change electric pole orientation the same way normal connections do. (more)
- Fixed the rotation of train vehicles to be built.
- Fixed clearing the player cursor stack and then inserting into the player quickbar in the same tick not preferring filtered slots. (more)
- Fixed unrecognizable item icons when playing on very low graphics settings. (more)
- Fixed that ghost building on power poles disconnects them, as it is the same shortcut. (more)
- Fixed multiple construction bots could be sent out to mine single tree. (more)
- Fixed that LuaGameScript::take_screenshot could take negative values of zoom or resolution. (more)
- Fixed robots would carry items from active provider chests to storage chests even when requester chest needed those items. (more)
- Fixed setting the cursor stack from script when having a selection from a filtered slot allowing the wrong item in the slot. (more)
- Items inserted into assemblers now update tooltips. (more)
- Map editor save GUI now always fits on the screen.
- Will explicitly show system mouse cursor when exiting Steam Overlay, just in case Steam forgets to do it. (more)
- Fixed that commands would still be disabled in single-player after loading a map created in MP with commands disabled. (more)
- Fixed that a biter could get stuck trying to attack a building in some cases. (more)
- Fixed unclear error message when attempting to run multiple instances of Factorio with same write-path. (more)
- Fixed the space key animating buttons. (more)
- Fixed fluid getting into the wrong inputs on assembling machines. (more)
- Long tooltip descriptions (below the minimap) won't stretch the whole right column.
- Fixed being able to copy settings onto and rotate entities marked as non-operable. (more)
- Fixed that player names wouldn't show up on the chart when UI scale was set to 100% or less. (more)
- Fixed that the same error message could appear twice in multiplayer. (more)
- Fixed equipment tooltips in equipment grids not showing when putting new equipment into the grid.
- Command key can be now used as a modifier in controls on Mac OSX(more).
- Fixed that a peer could kick every other peer from an MP game. (more)
- Fixed train air resistance calculation.
- Fixed wire drawing in the right-pane description for electric poles. (more)
- Fixed freeplay and sandbox scenario initial rocket count. (more)
- Fixed sandbox scenario wouldn't recognize rocket launches.
- Fixed modifying item stacks directly in the player wouldn't trigger an inventory sort in some instances.
- Fixed crash when modded locomotive uses other than burner energy source. (more)
Modding
- Mods need to have factorio_version value in their info which specifies major Factorio version they are suited for, default value is 0.12.
- Mods with non fitting version are not loaded.
- Added item_pickup_distance and loot_pickup_distance to player definition.
- Added invalid parameter error for data.extend function.
- Added the ability to define additional_pastable_entities for an entity which allows copy-paste between that entity type and the defined destination types.
- Useful in conjunction with the new copy-paste events.
- Added a new item type "selection-tool" that fires the events on_player_selected_area and on_player_alt_selected_area.
- Unified prototype names to be consistent with in-game names. (basic-transport-belt->transport-belt, *transport-belt-to-ground->*underground-belt, basic-splitter->splitter,
- basic-inserter->inserter, basic-mining-drill->electric-mining-drill, basic_beacon->beacon, basic-bullet-magazine->firearm-magazine, piercing-bullet-magazine->piercing-rounds-magazine,
- basic-grenade->grenade, basic-armor->light-armor, basic-modular-armor->modular-armor, basic-laser-defense-equipment->personal-laser-defense-equipment,
- basic-exoskeleton-equipment->exoskeleton-equipment)
- Construction robots will now use any available repair tool items instead of a fixed single item defined in the prototype for the robot.
- Various indicator and game icons are defined in the utility-sprites objects, so it is now moddable.
- Added new research options: character-crafting-speed, character-mining-speed, character-running-speed, character-build-distance, character-item-drop-distance,
- character-reach-distance, character-resource-reach-distance, character-item-pickup-distance, character-loot-pickup-distance, character-inventory-slots-bonus,
- deconstruction-time-to-live, character-health-bonus
- Sticker entity can deal damage.
- Added a new entity type "electric-energy-interface" that can consume, produce, and accept energy while also allowing all of its electric network parameters to be configured runtime.
- Added flags to energy_source prototypes "render_no_network_icon" and "render_no_power_icon" to prevent rendering those icons when set.
- Removed "inventory_order" prototype property as it wasn't actually used and isn't needed.
- Removed "radius_visualisation_picture" and "construction_radius_visualisation_picture" from roboport and roboport-equipment prototypes. The pictures were moved to core.
- If needed you can use "draw_logistic_radius_visualization" and "draw_construction_radius_visualization" Boolean properties to disable drawing radius in your prototype.
Scripting
- Moved LuaGame::daytime/wind/wind_orientation/wind_orientation_change/peaceful_mode to LuaSurface.
- Added LuaEntity::held_stack_position. It tells you the world position of the inserter arm.
- Added LuaGame::delete_surface. Deletes the surface passed in if the surface is deletable.
- Added LuaItemStack::create_blueprint() - sets up a blueprint as if a player did it.
- Added LuaItemStack::build_blueprint() - builds a blueprint as if the player built it in the world.
- Added LuaSurface::deconstruct_area() - deconstructs an area as if the player did it.
- Added LuaSurface::cancel_deconstruct_area() - cancels deconstruction over an area as if the player did it.
- Added on_pre_entity_settings_pasted and on_entity_settings_pasted events that pass the source and destination entities involved.
- Added "robot" to the robot related events.
- Added "chunk_position" to the on_sector_scanned event.
- Added optional "player_index" to on_marked_for_deconstruction/on_canceled_deconstruction when fired due to player actions.
- This field is nil when fired from from script/non player action.
- Added LuaEntity::crafting_progress/bonus_progress write.
- Added LuaForce:: item/fluid/resource/build counterparts to kill_counts.
- Added LuaFlowStatistics - used to read/write statistics data related to a given force (production, kills, etc).
- Removed LuaForce:: set_kill_count/get_kill_count/kill_counts - these are now readable through LuaFlowStatistics.
- Added LuaGame::disable_replay() - disables the replay for the current save game.
- Added several player related events: on_player_cursor_stack_changed, on_player_main_inventory_changed, on_player_quickbar_inventory_changed,
- on_player_tool_inventory_changed, on_player_armor_inventory_changed, on_player_ammo_inventory_changed, on_player_gun_inventory_changed,
- on_player_placed_equipment, on_player_removed_equipment, on_pre_player_died, on_player_died, on_player_respawned, on_player_joined_game, on_player_left_game
- Added events for tile building: on_player_built_tile, on_player_mined_tile, on_robot_built_tile, on_robot_mined_tile
- Added LuaEntity::damage_dealt/kills read/write - usable with turrets.
- Added LuaGameScript::active_mods - a table of active mod names to mod versions.
- Added LuaEquipmentGrid::get - gets the equipment at the given equipment grid position or nil if none.
- Added LuaEntity::player, returns the player connected to the character entity.
- Added LuaInventory::get_filter, set_filter, has_filters, can_set_filter methods to set/get/clear filters on inventories that support them.
- Changed LuaEntity::get_filter/set_filter parameters around to match the inventory versions. They also now only work on inserter filters.
- Added LuaPlayer::get_craftable_count/begin_crafting/cancel_crafting/crafting_queue to read/write crafting information for a player.
- Added modifiers to the character entity that stack with the force research bonuses but are unique to the character: character_crafting_speed_modifier, character_mining_speed_modifier, character_running_speed_modifier, character_build_distance_bonus, character_item_drop_distance_bonus, character_reach_distance_bonus, character_resource_reach_distance_bonus, character_item_pickup_distance_bonus, character_loot_pickup_distance_bonus, quickbar_count_bonus, character_inventory_slots_bonus, character_logistic_slot_count_bonus, character_trash_slot_count_bonus, character_maximum_following_robot_count_bonus, character_health_bonus
- Added LuaTilePrototype accessible from LuaTile::prototype and LuaGameScript::tile_prototypes.
- Added LuaEquipmentPrototype accessible from LuaEquipment::prototype and LuaGameScript::equipment_prototypes.
- Added LuaGuiElement::tooltip read/write - a localized tooltip for any GUI element.
- Added LuaCircuitNetwork readable off entities with circuit network connections and through control behaviors.
- Changed StickerPrototype::magnitude to StickerPrototype::target_movement_modifier. Speed of a Unit is not multiplied by value of target_movement_modifier.
- Added optional "limit" field to find_entities_filtered and count_entities_filtered to limit the results.
- Added "force" to the entity_died event when the killing force is known - nil otherwise.
- Added LuaEntity::unit_number - read - a unique ID field used by all entities having owners.
- Added LuaInventory::index - the inventory index the inventory reference uses.
- Added LuaEntity::supports_backer_name() - true when an entity supports a backer name.
- Added LuaEntityPrototype::belt_speed and underground_belt_distance read.
- Added LuaEntityPrototype::result_units the result units a biter spawner can spawn.
- Added LuaItemPrototype::ammo_type read.
- Multiple stickers (i.e. slowdown capsule + fire) can be applied to a unit entity.
- Added LuaEntity::get_quickbar() - gets the quickbar of the character or player.
- Changed LuaEntity::color to work for locomotives, cargo wagons, and characters - it will return nil if used on other entities.
- Added LuaEntity::mining_progress/bonus_mining_progress read write - for mining drill entities.
- Added LuaEntityPrototype::attack_result - the attack result for entities using attacks (beams, fire, landmines, projectiles).
- Added LuaEntityPrototype::final_attack_result - the final attack result of a projectile.
- Added LuaFluidPrototype::base_color + flow_color read.
- The Train changed state event now fires when a train goes from stationary to moving or from moving to stationary while under manual control.
- Prototypes can have the optional properites "localized_name" and "localized_description" to manually define the localized keys instead of using the auto generated keys.
- Added sprite-button GUI element, works the same way as button, but it can have sprite name assigned.
- Added sprite GUI element, can have the sprite name assigned/changed and has no interaction logic.
- Custom sprites can be defined in Lua data definition (type = sprite, the rest is sprite definition).
- Sprite identifier can either point to custom definition from the data, or have form <type>/<id>, type can be (item, entity, recipe and technology), for example button.sprite = "item/iron-plate"
- Renamed some defines (groupstate->group_state, circuitconnector->circuit_connector, circuitconditionindex->circuit_condition_index, trainstate->train_state)
- Removed game.regenerate_tiles().
- Removed game.get_player() and game.get_surface(): game.players[] and game.surfaces[] can be used instead.
- Changed game.players, game.surfaces, game.entity_prototypes, game.item_prototypes, game.fluid_prototypes, force.recipes, force,technologies to use custom access + iterator objects for improved performance.
- Changed game.players[] to work with both the player index and the player name.
- Added on_GUI_text_changed and on_gui_checked_state_changed events.
- Changed "defines" so they're available by default and removed the defines.lua file.
- Renamed LuaForce::logistic_robot_storage_modifier -> logistic_robot_storage_bonus to better match what it does
- LuaEntity has built_by read/write.
- game.player has been removed (use game.players[#] and associated event.player_index during events).
- game.local_player has been renamed to game.player and now works through remote calls.
- Offline players can be teleported anywhere (between surfaces or just around).
- entity.get_inventory(index) returns nil if it doesn't have an inventory for the given index instead of giving an error.
- entity.riding_state can be set on cars without players and the car will act as if it's being driven by a player (consume fuel).
- Changed LuaForce::current_research to accept "nil" to stop the current research.
- Added LuaTrain::front_stock and back_stock the front and back rolling stock entities of the train.