Version history/0.18.0: Difference between revisions
Jump to navigation
Jump to search
(0.18.27) |
(0.18.28) |
||
Line 1: | Line 1: | ||
== 0.18.28 == | |||
Date: 28.05.2020 | |||
=== Gui === | |||
* Minor visual changes and fixes to achievement and tutorial related guis. | |||
=== Bugfixes === | |||
* Fixed that changing script areas and positions through the map editor in multiplayer as the client didn't work correctly. ([https://forums.factorio.com/85308 more]) | |||
* Fixed a crash when clearing logistic requests. ([https://forums.factorio.com/85323 more]) | |||
* Fixed some styles being defined twice in style.lua. ([https://forums.factorio.com/85337 more]) | |||
* Fixed follower robot count alert not showing correctly. ([https://forums.factorio.com/85313 more]) | |||
* Fixed container gui not showing logistics filters properly in large containers. ([https://forums.factorio.com/85338 more]) | |||
* Fixed wrong open/close sound for chemical plant. ([https://forums.factorio.com/85315 more]) | |||
=== Modding === | |||
* Added support to play a sound when opening dropdowns through opened_sound. | |||
* Improved performance by up to 2.5x when the game needs to iterate Lua tables on the C++ side. | |||
* Improved save/load performance of mod script data. | |||
=== Scripting === | |||
* Lua functions are now explicitly disallowed in the script 'global' table. | |||
* Added LuaSurface::generate_with_lab_tiles read/write | |||
* Added LuaEntity::mine(). | |||
== 0.18.27 == | == 0.18.27 == | ||
Date: 26.05.2020 | Date: 26.05.2020 |
Revision as of 16:13, 28 May 2020
0.18.28
Date: 28.05.2020
Gui
- Minor visual changes and fixes to achievement and tutorial related guis.
Bugfixes
- Fixed that changing script areas and positions through the map editor in multiplayer as the client didn't work correctly. (more)
- Fixed a crash when clearing logistic requests. (more)
- Fixed some styles being defined twice in style.lua. (more)
- Fixed follower robot count alert not showing correctly. (more)
- Fixed container gui not showing logistics filters properly in large containers. (more)
- Fixed wrong open/close sound for chemical plant. (more)
Modding
- Added support to play a sound when opening dropdowns through opened_sound.
- Improved performance by up to 2.5x when the game needs to iterate Lua tables on the C++ side.
- Improved save/load performance of mod script data.
Scripting
- Lua functions are now explicitly disallowed in the script 'global' table.
- Added LuaSurface::generate_with_lab_tiles read/write
- Added LuaEntity::mine().
0.18.27
Date: 26.05.2020
Graphics
- New high resolution icons for all items.
- New sprites for some equipment grid items.
Gui
- Logistic chests have a different layout.
- Visual improvements to the equipment grid.
- Minor visual improvements to most of the game GUIs.
- Minor layout changes to GUI of Combinators, Programmable speaker, Circuit and logistic connection windows, Rocket silo.
- Added a close button to most game windows.
Sounds
- New sounds for GUI interactions.
- New sounds for game interactions, such as pipette, rotate entity, build ghost, mine ghost, switching gun.
- Updating working sounds for many entities, such as substation, roboport, combinator.
- New working sound for rocket silo.
- New sound for night vision equipment, discharge defense equipment.
- New tile build sounds for landfill, concrete, stone bricks and refined concrete.
Changes
- Increased logistic filter count for requester and buffer chests from 12 to 30.
Scripting
- Changed script.raise_event() to only allow mod-created events and specific game events.
- Changed script.raise_event() to validate all required fields are provided for the given event being raised.
- Added event filters for script raised revive, destroy, and created events.
- Changed event erroring so errors during raise_event are properly blamed on the mod erroring.
- Changed raise_event ordering to match standard event ordering.
- All game events that support filters now filter correctly regardless of how they're raised (raise_event or actual game event).
0.18.26
Date: 21.05.2020
Changes
- Crafting machines will now refund item ingredients when crafting is cancelled before finishing.
- Disallowed saving over autosave files or making saves that begin with '_autosave'.
Bugfixes
- Fix tutorial description only mentioning 3 levels instead of the full 5. (more)
Modding
- Changed default value of return_ingredients_on_change property of furnaces, assembling machines and rocket silo to 'true'.
- Added script_raised_set_tiles.
- Added by_player to LuaEntity::copy_settings()
- Added by_player to LuaEquipmentGrid::take, take_all, clear, and put.
0.18.25
Date: 19.05.2020
Features
- Added new tutorial campaign levels 04 and 05. (https://www.factorio.com/blog/post/fff-347)
Changes
- Added a search bar to the mod settings GUI.
Bugfixes
- Fixed a crash when building entity ghosts that immediately get invalidated through script.
- Fixed that the choose-elem-button elem_type "signal" didn't show special signals. (more)
- Fixed that furnaces required module slots to be effected by beacons. (more)
- Fixed that some select-a-thing GUIs didn't have search bars. (more)
- Fixed that LuaEntity::revive({raise_revive=false}) would still raise the revive event.
- Fixed a crash when trying to iterate game.forces with the maximum number of forces created. (more)
- Fixed a desync related to fast-replacing modded beacons. (more)
- Fixed performance issue with initializing huge Lua arrays, that could cause loading of some modded saves take forever. (more)
Modding
- Added item prototype flag "draw-logistic-overlay".
- Added support to play a sound when a robot deconstructs something through utility-constants "deconstruct_robot".
Scripting
- Added on_force_reset event called when LuaForce::reset() is run.
- Added remove_colliding_entities and remove_colliding_decoratives parameters to LuaSurface::set_tiles().
- Added LuaSurface::get_script_area, edit_script_area, add_script_area, remove_script_area, get_script_position, edit_script_position, add_script_position, remove_script_position.
- Added 'elem_filters' onto choose-elem-button LuaGuiElements to control what options appear in the picker GUI.
- Added 'crafting-category' filter to EntityPrototypeFilters.
- Added 'has-ingredient-fluid', 'has-ingredient-item', 'has-product-fluid', 'has-product-item' filters to RecipePrototypeFilters which can accept a nested set of FluidPrototypeFilters or ItemPrototypeFilters.
- Added 'place-result', 'burnt-result', 'place-as-tile', 'placed-as-equipment-result' filters to EntityPrototypeFilters which can each accept a nested set filters.
- Added 'name' filter to EntityPrototypeFilters, FluidPrototypeFilters, and ItemPrototypeFilters which accepts either a single name or a list of names to accept, similar to LuaSurface::find_entities_filtered.
0.18.24
Date: 12.05.2020
Bugfixes
- Fixed version 0.18.23
0.18.23
Date: 12.05.2020
Graphics
- Added player footprints and footstep visual effects.
- Added car and tank dust and particle trail visual effects.
Changes
- Construction robots throw cliff explosives from afar the same as players do, instead of dropping them at the cliff.
- Changed rail segment visualisation colors to be more different from rail signal colors (red/green).
- Clicking a GUI now brings it to the front. Most noticeable when using the map editor or debug GUIs where they overlap.
Bugfixes
- Fixed that Fast splitters were missing a piece visually in East rotation top_patch (more)
- Fixed that inserters could insert modules for recipes into module slots in some rare cases. (more)
- Fixed that robots blowing up cliffs was different than manually blowing up cliffs. (more)
- Fixed limiting cargo wagon to 0 slots would break progress visualization for full cargo and empty cargo train conditions. (more)
- Fixed teleporting player between surfaces while the player was in a map view would not invalidate tile renderer cache. (more)
- Fixed that the "use different settings per save" setting didn't work for single player games. (more)
- Fixed crash due to use-after-delete when single unit builds a base in position that does not collide with the unit. (more)
Modding
- Added the Prototypes GUI (ctrl + shift + E).
- Added the Prototype Explorer GUI (mouse over most anything + ctrl + shift + F).
- Added support to play different sounds for entity ghosts depending on the size of the entity in the ghost through build_sound (for small), medium_build_sound and large_build_sound on the entity ghost prototype.
- Added support to play a sound when switching weapons defined through utility-sounds 'switch_gun'.
- Added support to play a sound when picking up items (F key) through utility-sounds 'picked_up_item'.
- Added optional 'turn_speed' to projectile prototypes.
Scripting
- Added "include_fuel" field to LuaItemStack::create_blueprint.
- Changed LuaSurface::create_entity so it places resource entities to center of a tile as map generator would. This can be overridden by optional snap_to_tile_center parameter. (more)
0.18.22
Date: 30.04.2020
Graphics
- Added shell particle effect for the artillery shooting.
- Added tinted scorch marks for explosion effects. Explosions on different tile types will result in scorch marks of different colors.
Changes
- Pressing escape/close GUI when a search field is focused only closes the search field instead of the entire GUI.
- Updated GUI styles for PvP configuration GUI.
- Unit groups will determine their collision mask based on the collision masks of their members. (more)
Bugfixes
- Fixed landfill spawning under player when building landfill elsewhere. (more)
- Fixed a crash when a train recalculating path during movement is unable to reserve rail signal within movement distance. (more)
- Fixed production statistics corruption when recipe returns some but not all catalyst. (more)
- Fixed a pathfinding crash related to changing tiles in a way that affected neighbouring tiles' transitions. (more)
- Fixed that malformed data in data.raw wouldn't show the minimal-mode failure GUI. (more)
Modding
- Fixed that writing to mod settings would silently ignore bad values.
- Added "allowed_effects" support to the lab.
- Added "creation_distance_orientation", "use_source_position", "height" and "vertical_speed" to particle creation parameters (related to shooting effect shell particles).
- Added "scorch_mark_color" to TilePrototype.
- Added util.remove_tile_references for easier compatibility maintenance with future game updates when removing base game tiles.
- Removed migration for CustomInputPrototype consuming types that were removed in 0.15.24.
0.18.21
Date: 24.04.2020
Bugfixes
- Fixed that the mod settings GUI was only showing hidden settings. (more)
- Fixed crash in mod updater. (more)
0.18.20
Date: 24.04.2020
Features
- Added new environmental trigger effects for grenade, artillery and nuke explosions. (https://www.factorio.com/blog/post/fff-343)
- Added 3 level 'First steps' tutorial Campaign. (https://www.factorio.com/blog/post/fff-342)
- Mini-tutorial improvements.
Changes
- Moved Compilatron and Compilatron speech-bubble entities from demo to base game files.
- Removed Introduction Campaign.
- Removed Compilatron chest, Compilatron roboport, Compilatron logistic chest.
- Removed Tutorial/Campaign Lualib (base/lualib).
- Removed other campaign-only prototypes, such as styles, sprites, sounds.
Bugfixes
- Fixed that thumbnails wouldn't show in the update-mods tab of the mods GUI. (more)
- Fixed that LuaSurface::spill_item_stacks return value didn't work correctly. (more)
- Fixed that the research progress of the current tier showed for next queued tier in the technology GUI. (more)
- Fixed that the game didn't validate modded rail-planner item type values and would crash in some cases. (more)
- Fixed that modded units with consider-tile-transitions in their collision mask would cause the pathfinder to crash. (more)
Modding
- Empty layers in sprite or animation definition will yield an error now. (more)
- Added support for playing a sound when using smart-pipette.
- Added support for playing activate/deactivate sounds for night vision.
- Added support for playing a sound while an resource-style is being mined through mining_sound.
- Added mod-setting value "hidden" to hide mod settings from the GUI.
- Added 'invoke-tile-trigger' and 'destroy-decoratives' trigger effects.
- Added 'rotate-offsets' to the create-particle trigger effect.
- Added 'trigger_effect' to tiles. It is called with the 'invoke-tile-trigger' trigger effect.
- Added 'trigger_effect' to decoratives. It is called when the decorative is destroyed with the 'destroy-decorative' trigger effect.
Scripting
- Added on_pre_script_inventory_resized and on_script_inventory_resized events.
- Added 'allow_paths_through_own_entities' and 'no_break' path finding flags.
- Added LuaModSettingPrototype::hidden read.
- Added 'to_be_deconstructed' to the options for LuaSurface::find_entities_filtered. (more)
- Added LuaGuiElement::badge_text read/write.
0.18.19
Date: 20.04.2020
Bugfixes
- Fixed a crash when loading saves from 0.18.12 and older while re-spawning and having personal logistics researched. (more)
- Fixed offshore pump selection box to match the new graphics. (more)
- Fixed possible performance issue related to animated trees in OpenGL rendering backend. (more)
- Fixed opening the character GUI through hotkey when the logistic tab isn't visible. (more)
- Fixed that curved rail ghosts selection didn't work quite right. (more)
- Fixed that the offshore pump would play sounds even when it wasn't doing anything. (more)
- Fixed wrong Lua docs for LuaCommandProcessor::add_command. (more)
- Fixed a desync when personal logistics is researched while a player is disconnected from the server with personal logistics disabled. (more)
- Fixed a crash when moving armors around in other players inventories in multiplayer. (more)
- Fixed a regression issue with the select-a-signal GUI related to group ordering. (more)
- Fixed that trying to load a save created from a scenario in a now disabled/removed mod would crash the game. (more)
- Fixed a crash when trying to join games through Steam when the Steam API fails to initialize.
- Fixed that the character corpse wasn't included in the post-player-died event 'corpses' parameter. (more)
- Fixed that trains pathfinder could create non contiguous path in case of single segment cycle with a single train stop. (more)
Modding
- Added warning for empty layers in sprite or animation definition. In next release, this will become an error. (more)
- Added a check to make sure placeable_by.count isn't larger than the placeable_by.item.stack_size. (more)
- Added support to play sounds when left clicking radio buttons and checkboxes.
- Added ParticlePrototype::fade_away_duration and vertical_acceleration.
- Rolling stock entities can no longer have next_upgrade set.
- Added support for rotated_sound on entity prototypes.
Scripting
- Fixed that LuaEntityPrototype::fluidbox_prototypes didn't include fluid energy source fluidbox prototypes.
- Added LuaEntity::productivity_bonus, pollution_bonus, speed_bonus, and consumption_bonus read.
- Added LuaGameScript::create_inventory() and get_script_inventories().
- Added LuaInventory::destroy() and resize().
- Added LuaInventory::mod_owner read.
- Added LuaEntityPrototype::adjacent_tile_collision_box, adjacent_tile_collision_mask, adjacent_tile_collision_test, center_collision_mask read to access new offshore pump prototype properties.
- Added "final-health" to the entity-damaged event.
- Added "final-health" to the entity-damaged event filter.
- Added LuaGameScript::max_force_distraction_distance, max_force_distraction_chunk_distance, max_electric_pole_supply_area_distance, max_electric_pole_connection_distance, max_beacon_supply_area_distance, max_gate_activation_distance, max_inserter_reach_distance, max_pipe_to_ground_distance, max_underground_belt_distance read.
- Added LuaEntity::deplete().
0.18.18
Date: 08.04.2020
Changes
- Adjusted steam engine and turbine collision boxes so player can walk between two steam engines.
- Roboports allow exporting both logistics and robot stats at the same time. (more)
Graphics
- Added offshore pump remnants.
- Added new dying effects for biters, spitters, worms, and spawners.
Gui
- Added confirmation box for deleting blueprint book.
Sounds
- New or updated sound effects include:
- Transport belts - new concept for these sounds.
- Turrets rotation sounds and fold/unfold.
- Weapons improved and made more powerful, e.g. submachine gun, shotgun, gun turret, vehicle machine gun, Laser and electric beam.
- Particles: Water splashes, Tree debris.
- Various mix level tweaks including the train, enemies.
- Attenuations (audible distance) adjusted for entities such as Pipe, Substation and Offshore Pump.
- New sound when walking over ore patches.
- Default Sound Settings Updated:
- Music, Game Effects and Walking sound lowered, Environment sounds and Master Level raised.
- Zoom audible distance and volume levels adjusted.
- Maximum Environment Sounds increased (edited).
Bugfixes
- Fixed mining entity with randomized mining result amount would never return the largest defined amount. (more)
- Fixed crash when loading replay. (more)
- Fixed reading LuaPlayer::entity_copy_source when the player is dead. (more)
- Fixed that upgrading and delivering modules at the same time didn't work right. (more)
- Fixed a crash when closing the game while some GUIs are shown. (more)
- Fixed crash when setting max_group_gathering_time and min_group_gathering_time to the same value. (more)
- Fixed discharge defense equipment had the wrong sprite in the equipment grid. (more)
- Fixed that artillery wagons wouldn't show out of ammo icons. (more)
- Fixed that modded cargo wagon colors wouldn't copy correctly through blueprints. (more)
- Fixed furnaces with recipes using fluid ingredients could cause crash. (more)
- Fixed a crash when removing a player that has modded associated character entities. (more)
Modding
- Furnaces now ignore off_when_no_fluid_recipe property of their fluid box definition. Fluid boxes will not be disabled based on enabled recipes. (more)
- Changed colored concrete tiles to be non-mineable.
Scripting
- Added LuaEquipmentPrototype::automatic.
- Added "include_entities", "include_trains", "include_station_names", and "include_modules" fields to LuaItemStack::create_blueprint.
- Added LuaRoboportControlBehaviour::read_logistics and read_robot_stats
- Removed LuaRoboportControlBehaviour::mode_of_operations
0.18.17
Date: 27.03.2020
Bugfixes
- Fixed Map Generator GUI becoming larger than the screen. (more)
- Fixed Blueprint Setup GUI becoming larger than the screen. (more)
- Fixed number pad Enter would be ignored by personal logistic request setup GUI if it was bound to in-game action. (more)
0.18.16
Date: 25.03.2020
Graphics
- New water splash effects using water particles instead of an animation.
- New animations for leaf particles.
Bugfixes
- Fixed the tank not being properly centered to its bounding box (graphical issue).
- Fixed GUI windows not drawing properly when they can't fit the screen width. (more)
- Fixed glowing Heat pipe ending sprites. (more)
- Fixed some character bonuses in bonus GUI not being printed correctly. (more)
- Fixed character GUI player color sliders not changing chat colors (more)
- Fixed that hotkeys wouldn't work while using the character logistics GUI in some cases. (more)
- Fixed a desync related to unit speed changing while part of a unit group. (more)
- Fixed some Trigger Effects not showing correct repeat count in tooltips. (more)
Scripting
- Added LuaEntity::effective_speed
- Added LuaControl::is_flashlight_enabled
- The 'on_ai_command_completed' event will now fire for distraction commands.
- Added 'was_distracted' to the 'on_ai_command_completed' event. If true, it means the completed command was a distraction command.
0.18.15
Date: 20.03.2020
Changes
- ENTER key can now be used to confirm the small "Set request" pop-up windows.
Bugfixes
- Fixed that defines.gui_type was missing some values. (more)
- Fixed tabs not changing correctly in the item select gui for train circuit/item/fluid conditions. (more)
- Fixed that deleting blueprints didn't work in some cases. (more)
- Fixed a crash related to fast-replacing character entities through mods. (more)
- Fixed that the "watch your step" achievement wouldn't show the achievement popup. (more)
- Fixed script error when starting the mini-tutorials. (more)
- Possibly fixed setting up heavily edited blueprints could drop players in multiplayer. (more)
- Fixed that the graph in statistics GUI wouldn't show some data series if the search was being used. (more)
Scripting
- Serpent now uses 0 instead of nil as a placeholder in case of cyclic references. This will help prevent some specific desyncs with custom scenario or mod scripts.
0.18.14
Date: 18.03.2020
Gui
- The production statistics and electric network GUIs now have a new look.
- The kills GUI (K keyboard shortcut) has been removed. Kills statistics are now accessible as a tab in the production statistics GUI.
Bugfixes
- Fixed an issue with nested items in items. (more)
- Fixed Character GUI missing logistics tab due to missing technology migration. (more)
- Fixed Character GUI recipes constantly scrolling up when crafting or when inventory changes. (more)
- Fixed that simple mouse click on double slider button would not set a slider as active. (more)
- Fixed that tabbing out of empty high value textfield of double slider would reset it to 0. (more)
Scripting
- Removed the defines.gui_type.kills value from defines.gui_type.
0.18.13
Date: 17.03.2020
Gui
- The character GUI now has a new look.
- Personal logistics has been moved to a separate tab. Logistic requests and auto trash have been merged into one panel.
- Using quick inventory transfers in the player inventory of the character gui will transfer the items either to weapons and armor slots or to trash slots depending on the selected tab, regardless of item type.
- Updated the look of filter, item and circuit signal selection GUIs.
Changes
- Personal logistics are now unlocked by a single research. This unlocks personal logistic requests and auto trash(unlimited count), plus 30 character trash slots.
- Removed the restriction of not allowing to have two identical blueprints in the blueprint library or blueprint book.
- Allowed to delete blueprint/books/upgrade planners/deconstruction planners also when opened in other inventory.
- Removed the utility slots (to create blueprint, book etc) from blueprint library as it is now available directly through quick tools menu.
- Allowed to edit blueprints in the blueprint library the same way as when it is an item.
- Allowed to export blueprint books in blueprint library (it was only possible in inventory before).
- Allowed to choose whether train fuel should be included in a blueprint.
Bugfixes
- Fixed that 3rd last row of 4th sheet of gun turret shooting had duplicate frame. (more)
- Fixed desync when changing recipe that was outputting large amount of fluid per crafting cycle to recipe that outputs low amount of fluid. (more)
- Fixed sprite button would not respect draw_shadow_under_picture style property. (more)
Modding
- Added main_menu_background_image_location to utility constants.
Scripting
- Removed LuaStyle::extra_padding_when_activated read/write.
- Added LuaStyle::extra_top_padding_when_activated, extra_bottom_padding_when_activated, extra_left_padding_when_activated and extra_right_padding_when_activated read/write.
0.18.12
Date: 10.03.2020
Bugfixes
- Fixed that some Lua events related to inventories would always report invalid. (more)
0.18.11
Date: 10.03.2020
Graphics
- Fixed player character shadow didn't animate in idle state when not facing north.
Bugfixes
- Fixed that LuaEntity::splitter_filter would reject a LuaItemPrototype. (more)
- Fixed smart entity collision mode in tile editor did not work with offshore pump. (more)
- Fixed that modded shortcuts that spawned items not visible in the blueprint library didn't work. (more)
- Fixed that technology tooltips didn't show debug tooltip data the same as other tooltips. (more)
- Fixed that crafting machines would report as supporting backer names through the Lua API. (more)
- Fixed that un-researched recipes couldn't be used while in the map editor. (more)
- Fixed that the removed-content GUI didn't include some translations. (more)
- Fixed a desync related to invalid rail signal requested to be closed by circuit network. (more)
Modding
- Added InserterPrototype::chases_belt_items. (more)
Scripting
- Added LuaEntityPrototype::inserter_chases_belt_items read.
- Added surface to the selected-area events.
- Changed LuaSurface::spill_item_stack() to return the created entities if any.
0.18.10
Date: 03.03.2020
Graphics
- New offshore pump graphics.
Changes
- Removed the sound effect from the console-only electric-energy-interface.
- Item localised name takes priority over place-result localised name when showing item's tooltip. (more)
- Offshore pump is now buildable on ground tile adjacent to water instead of water tile adjacent to ground.
Bugfixes
- Fixed that the map generator GUI didn't reset to the correct defaults when changing presets. (more)
- Fixed blueprint window sizing for wide blueprints.
- Fixed some cases of not considering dark background icon when drawing alt mode overlay. (more)
- Fixed that burner generator idle_animation and animation could have different frame counts.
- Fixed icons with overlays were drawn incorrectly when used in sprite widget. (more)
- Fixed crash when loading map after removing fluid recipes with indexes. (more)
- Fixed spitters would not break from attacking an obstacle when the obstacle moved away. (more)
Modding
- Added Instrument Mode to support mod development tools.
- Added optional burner generator prototype properties always_draw_idle_animation, performance_to_sound_speedup and min_perceived_performance.
- Added optional offshore pump prototype properties min_perceived_performance, adjacent_tile_collision_box, adjacent_tile_collision_mask and center_collision_mask.
- Changed offshore pump graphics definition. Old definition will still be accepted, but is deprecated.
Scripting
- Added optional parameters daytime and water_tick to LuaGameScript::take_screenshot() function.
0.18.9
Date: 25.02.2020
Features
- Added Rocket rush scenario. (https://factorio.com/blog/post/fff-335)
Changes
- Changed Team production team joining system and cleaned up the map sets.
- Changed Wave defense bounty system and refactored unit spawning logic.
- Changed fire sticker to deal damage only once per 10 ticks.
Graphics
- Added big scorch mark which is now used by atomic rocket and nuclear reactor meltdown.
Bugfixes
- Fixed that fluid energy source effectivity was not shown in the tooltip. (more)
- Fixed that the default column ordering in the update-mods GUI didn't match the visual ordering. (more)
- Fixed that train could accelerate for one tick into wrong direction when train stop is disabled. (more)
- Fixed that minimap would not allow setting temporary train stop when train would have to change movement direction. (more)
- Fixed damage value in sticker tooltip was 60 times too small.
- Fixed icons with overlays were drawn incorrectly when used in rich text. (more)
- Fixed PvP error when DEFCON was active alongside normal labs. (more)
- Fixed that modded recipes with no products or no ingredients still showed those sections in the recipe tooltip. (more)
- Fixed that modded burner generator equipment didn't show pollution in the tooltip. (more)
- Fixed teleporting or changing the force of an entity with a control behavior that was connected to the logistic network. (more)
- Reverted optimisation that caused inserters picking up items from belts to be slower.
Modding
- Added support to filter on-damaged trigger effects through the trigger prototype definition.
- Added secondary_draw_order property to simple-entity prototypes.
- Added StickerPrototype::damage_interval, defaults to 1.
Gui
- Updated the window of creating/editing blueprint.
Scripting
- Added LuaTile::surface read.
- Added event filtering support to on_sector_scanned and on_entity_cloned.
- Added "original-damage-amount", "final-damage-amount" and "damage-type" filters to the on_entity_damaged event filters.
- Added LuaGameScript::is_valid_sprite_path().
- Removed the required argument from LuaEnity::to_be_deconstructed() because it did nothing.
0.18.8
Date: 18.02.2020
Bugfixes
- Fixed that setting infinity filters through script didn't update the GUI. (more)
- Fixed that dedicated server authentication didn't work when using the token option. (more)
0.18.7
Date: 18.02.2020
Graphics
- New visuals for poison capsule effect.
- New dying effect and remnants for flying robots.
Sounds
- Entity destroyed alert - Sound softened and lowered in volume.
- Weapon sounds (WIP) - new Pistol, Submachine gun, Gun turret, Laser turret.
- Logistic chests open sound (WIP).
- Poison capsule cloud (WIP).
Bugfixes
- Fixed that reordering heat buffers during the same tick a different heat buffer was built would leave the heat buffer state corrupted. (more)
- Fixed that entity sounds with probabilities would loop forever once they started playing. (more)
- Fixed rocket silo tooltip did not include contents of the rocket result inventory. (more)
- Fixed that styles were applied to wrong slot in a filtered train view. (more)
- Fixed that server authentication would fail if both the token and username and password were provided. (more)
- Fixed that changing inserter pickup/dropoff through mods didn't work correctly. (more)
- Fixed that combat robots had their fire resistance overwritten. (more)
- Fixed that rolling stocks were not pulled correctly when train was moving through curved rails. (more)
- Fixed that LuaEntityPrototype::burner_prototype didn't work for the burner-generator entity type. (more)
- Fixed janky construction robot flying animation during repair work. (more)
Scripting
- Added optional LuaItemStack::build_blueprint raise_built.
- Added LuaInventory::find_empty_stack(), count_empty_stacks(), and get_insertable_count().
- Added LuaEntityPrototype::heat_energy_source_prototype, fluid_energy_source_prototype, and void_energy_source_prototype read.
- Added LuaGameScript::encode_string() and decode_string().
- Added on_player_set_quick_bar_slot.
- Added on_pre_player_toggled_map_editor.
- Removed LuaPlayer::name write. (more)
- Removed core lualib util.encode() and util.decode().
0.18.6
Date: 11.02.2020
Bugfixes
- Fixed infinite loop in renderer when trying to render water reflections created by off-screen entities under some circumstances. (more)
0.18.5
Date: 11.02.2020
Bugfixes
- Fixed a crash related to multiple blocks reserved for different trains but later merged by placing a rail. (more)
- Fixed that construction robots were missing their working animation. (more)
- Fixed circuit network debug visualization text overlap. (more)
- Fixed the circuit network tooltip backgrounds didn't highlight correctly. (more)
- Fixed that script.active_mods wouldn't be accurate when loading save files in some cases. (more)
- Fixed that the sync-mods-with-save feature would try to download mods it didn't need to in some cases. (more)
- Fixed that trains pathfinder could create non contiguous path in case of single segment cycle with a junction. (more)
- Fixed possible crash when units were attacking rails with train on them. (more)
- Fixed pump would consume energy and play animation when it tried to transfer very small amount of fluid but failed to do so. (more)
- Fixed creating fire entity by trigger effect invoked by a particle would crash the game.
- Fixed overriding LuaSurface::brightness_visual_weight would cause light map to appear in map view. (more)
Scripting
- Building entities with from items with 0 health will set the entity to 1 health instead of 0. (more)
- Added LuaGameScript::reset_time_played() which will reset the 'Time played' to 0.
0.18.4
Date: 06.02.2020
Balancing
- Wave defense difficulty will scale with online player count.
- Wave defense hard difficulty will give 50% less bounty on each kill.
Sounds
- New sound for small explosion.
- Combat robots now have their own explosion sound.
- Shotgun has more variety so it sounds less repetitive.
- Vehicle impacting wooden objects (e.g chests) now sounds subtly different to crashing into trees.
- A few minor volume level changes including lowering the offshore pump and electric furnace.
Bugfixes
- Fixed a crash when saving fails due to mod issues. (more)
- Fixed a crash that would happen when the player entered a vehicle when some biters were aggroed at them. (more)
- Fixed that cargo wagons built while a train is moving didn't animate the doors correctly. (more)
- Fixed an error when using modded night vision defined in zip files. (more)
- Fixed a performance issue with assembling machine result slot tooltips. (more)
- Fixed that items marked with the mod-openable flag couldn't be opened from the quickbar in some cases. (more)
- Fixed that train could fail with chain signal sequence escape maneuver when path goes multiple times through a rail segment.
- Possibly fixed seam on terrain at certain position and zoom level. (more)
- Fixed that sometimes wave defense would trigger victory before killing all spawners. (more)
Scripting
- Fixed that writing to LuaForce::stack_inserter_capacity_bonus was limited to 200 instead of 254.
Modding
- Changed definitions of map colors of beacons, pipes, heat pipes, roboports and steam engines, so they can be overridden by friendly_map_color. (more)
- Added ParticlePrototype::ended_on_ground_trigger_effect.
- Added fuel burnt results to the item tooltip.
- Loader remnants will pick rotation the same way as underground belts do. (more)
0.18.3
Date: 30.01.2020
Graphics
- Applied LUT color correction to new explosions.
Sounds
- Transport belts - high frequencies reduced.
- Train - pitch scaling reduced and sound levels remixed (Work in Progress).
- Inserters lowered in level slightly (Work in Progress).
- Compilatron muted as it was too annoying.
- Removed scrollbar GUI click sound.
Changes
- Overwriting a save file will show a confirmation if the selected save has more playtime on it than what you are about to save. (more)
Bugfixes
- Fixed tile rendering would break at extremely low zoom. (more)
- Fixed dragging train schedules in the train GUI. (more)
- Fixed a crash when migrating loader entities in blueprints. (more)
- Fixed fast entity split to burner inserters. (more)
- Fixed that the pump could never reach its pumping speed of 12000/s. (more)(more)
- Fixed logistic and combat robots were missing dying explosion effect.
- Fixed migration of 1x1 loaders from pre-0.18 saves. It still might result in loss of items on transport lines that start on the migrated loaders.
0.18.2
Date: 28.01.2020
Graphics
- Improved map colors by adding specific colors to beacons, pipes, heat pipes, roboports and steam engines.
Sounds
- New or updated sound effects include:
- Pump, pumpjack, boiler, heat pipe, offshore pump, substation.
- Logistic and construction robots, roboport.
- Train.
- Rocket takeoff sequence.
- Car and tank (pitch scaling adjusted to sound more natural).
- All transport belts, splitters, inserters, assembling machines, power switch.
- Added some UI sounds that were missing.
- Shotgun, small explosions.
- Entity destroyed alert.
- New sound tech includes:
- Listener position set to centre of screen by default. This will allow you to hear what you see even when in map mode.
- The ability to turn off the Doppler effect in Lua, used for the Substation so far.
- environment-audible-distance setting increased to 30 so you can hear entities a bit further away.
- zoom-volume-coefficient changed so you can hear more of the world when you zoom out. This will help with combat and give a greater sense of the overall factory.
Bugfixes
- Fixed that pressing escape in some log-in screens lead to blank screen or incorrect states. (more)
- Fixed enemy walls should not render as connected to ghosts, since enemy ghosts are not visible. (more)
- Fixed undo on self-looped combinator ghosts not restoring wires. (more)
- Fixed achievement cards not showing description when descriptions are turned off in interface settings.
- Fixed that inserters from 0.17 save files could end up teleporting items into/from trains. (more)
- Fixed that the sync mods with save GUI wouldn't size correctly. (more)
- Fixed that thrown capsules could end up broken forever if thrown at exactly the right tick. (more)
- Fixed crash when using "create-entity" trigger effect item to create an artillery flare. (more)
- Fixed map view night LUT. (more)
- Fixed a crash that would sometimes happen when a biter, who was in previous versions of the game aggroed by a player in a car or tank, was aggroed again. (more)
- Fixed crash when joining a game through Steam without having previously logged in.
Modding
- Migrating loaders between loader and loader-1x1 will maintain the loader type (input/output). (more)
Scripting
- Added LuaSurface::create_particle().
- Added LuaEntityPrototype::inserter_pickup_position and inserter_drop_position read.
0.18.1
Date: 23.01.2020
Changes
- Train stop at train's starting segment exit is no longer counted into penalty. (more)
- Inventory transfers mini-tutorial has been updated to feature the quickbar.
- Split the map editor sub-menu into more options so it's more clear when scenarios are copied and when they are edited directly.
Bugfixes
- Fixed replay gui covering tooltips. (more)
- Fixed tooltips in statistics window not showing force modifiers. (more)
- Fixed electric mining drill was missing dying explosion. (more)
- Fixed when using OpenGL backed turret range overlay was rendered incorrectly when zoomed in. (more)
- Fixed a crash when using script.get_event_order during control.lua init. (more)
- Fixed that LuaForce::reset_technology_effects() could change the enabled/visible when disabled state. (more)
- Fixed wrong lua docs about what event(s) could be filtered. (more)
- Fixed a wrong error message related to multiplayer and migration scripts. (more)
- Fixed crash when rail with temporary train stop is removed. (more)
- Fixed crash if you attempted to ping a train wagon immediately after placing it on a multiplayer server with high latency. (more)
- Fixed that clicking the drop-down widget in the map editor script section would stop the mouse from working. (more)
- Fixed nightvision effect was applied to zoomed-to-world view sometimes. (more)
- Fixed that enemies would attack rails. (more)
Modding
- Changed default value of LoaderPrototype::structure_render_layer from "transport-belt-circuit-connector" to "object", in order to be consistent with other on-belt structure sprites. (more)
Scripting
- Added LuaEntity::get_damage_to_be_taken().
- Added LuaSurface::brightness_visual_weights to add back ability to control darkness of the night runtime per-surface. (more)
0.18.0
Date: 21.01.2020
Features
- Steam users can now log in automatically through Steam without needing their Factorio account password.
- Steam users without a Factorio account can create one by providing only a username.
- Reworked main menu structure.
- Added a "Continue" button which quickly loads the latest save game.
- Added a "New Game" GUI that shows all the ways to play the game
- Added a setting to the map editor to show/hide the extra entity settings.
- Added a map editor GUI to edit force data modifiers.
- Added a PvP team option to create a moat around the starting area.
Graphics
- Added animation to water.
- Added animation to trees.
- Added LUTs and color corrected the game sprites.
- Added sliders to the graphics settings to adjust brightness, contrast, and saturation.
- Added on damaged effects for most entities.
- Added specific dying explosions for most entities.
Sounds
- New or updated sound effects include:
- Nuclear reactor, chemical plant, furnace, fire, burner mining drill.
- Tank.
- Mining by hand, chopping wood
- Roboport door, Combat robots
- Player footsteps.
- Biter and Spitter footsteps.
- Worm breathing, Spitters and Biters, idling and attacking.
- New sound features include:
- The ability to fade out sounds instead of a sudden stop, e.g. for the furnace.
- Varying the pitch of sounds to a min/max level, to add more variety.
- A 'Random, no repeat' feature to reduce repetition, especially on sounds that happen frequently, such as player steps.
- The sound for the game has also been rebalanced to highlight certain sounds and make others fade into the distance.
- The default sound settings have also been updated to improve this mix.
Optimizations
- Optimized particle logic.
- Improved performance when side-loading transport belts.
- Improved performance of inserters interacting with assembling machines and furnaces.
- Improved performance of inserters when the circuit network turns them off.
- Improved performance of mining drills and inserters in general.
- Improved performance of burner entities.
- Improved performance polluting entities.
- Improved performance of smoke producing entities.
- Improved performance logistic and construction robot performance when they're flying towards their target.
- Improved performance of furnaces and assembling machines that use fluids.
- Improved heat pipe performance by 3x.
- Improved item request proxy performance by turning them off in 99%+ of the cases.
- Improved locomotive, cargo wagon, and fluid wagon performance by turning them off in 99%+ of the cases.
- Electric networks, fluids, and heat pipes are updated in parallel if you have enough cores.
- Improved script rendering performance for text and lines.
- Improved performance of rotated bounding boxes.
Bugfixes
- Fixed the recipe tooltip showing negative values for some complex recipes. (more)
- Fixed graphical glitch when GUI element with blurred background got out of bounds of the screen. (more)
- Fixed hard coded English string in NPE. (more)
- Fixed potential crash in NPE when Compilatron is pointing at something that gets deleted. (more)
- Fixed issue where sometimes you couldn't move to the second area in NPE. (more)
- Fixed issue where Compilatron would sometimes tell you to build more boilers when that was not the problem. (more)
- Fixed issue where Compilatron's speech bubbles could block you from interacting with the world behind him. (more)
- Fixed items with excessively long names squashing the count label in the recipe tooltips. (more)
- Fixed accumulator charge text in statistics bouncing around because of inconsistent number of digits. (more)
- Fixed train path finding penalty when there are 2 or more trains in block. (more)
- Fixed a crash when creating trains during the player moved event that was caused by the player getting ejected from a vehicle because the vehicle died. (more)
- Fixed a crash when removing mods that had custom GUI elements. (more)
- Fixed a crash when using Lua event filters when the thing to be filtered becomes invalid. (more)
- Fixed that some turret sounds could be heard on other surfaces. (more)
- Fixed that the tooltip for the generator would not show its efficiency correctly. (more)
- Fixed a crash related to building tiles in multiplayer with some mods. (more)
- Fixed that turrets would sometimes fail to attack things that are in range. (more)
- Fixed follower robot lifetime tooltip property not taking into account following_robots_lifetime_modifier. (more)
- Fixed cliffs sometimes getting marked for deconstruction when they shouldn't have been. (more)
- Fixed inconsistent rounding in the statistics window. (more)
- Fixed a desync when setting .active=false on beacons through script. (more)
- The map will be re-charted when the mod configuration changes. (more)
- Fixed inserters sometimes not being highlighted when selecting a large modded vehicle. (more)
- Fixed a crash when entity grid would destroy itself during update. (more)
- Fixed a crash with rich text tags and dynamic images. (more)
- Fixed setting the held stack of an inserter didn't update the inserter state correctly. (more)
- Fixed tooltip alignment in some specific cases. (more)
- Fixed a crash when lua removes pipe-to-ground between entity revive and deferred pipe connection fix. (more)
- Fixed a crash when setting infinity chest filters to legacy items. (more)
- Fixed that splitters could be set to have invalid bounding boxes that would lead to corrupt saves. (more)
- Fixed word wrapping of rich text containing tag that doesn't fit given width would duplicate the tag on multiple lines. (more)
- Fixed if migrating old achievement data to Steam Cloud failed, the old file would not be deleted resulting in the same error on every startup. (more)
- Fixed train pathfinding penalty for circuit network closed rail signal was not applied in some cases. (more)
- Fixed a crash when mods would define construction robots without some sprites. (more)
- Fixed that trying to do 0 damage would still trigger the entity-damaged event. (more)
- Fixed a save corruption issue related to modded loaders with different belt_distance values. (more)
- Fixed that train would forget amount of ticks waiting at signal when doing repath. (more)
- Fixed that train pathfinder was not counting penalty of last segment length in path cost. (more)
- Fixed PvP error on configuration changed. (more)
- Fixed pump tooltip showing double pumped amount when pumping to fluid wagon. (more)
- Fixed manual ghost revive of a loader in unload mode would not work in visually matching direction. (more)
- Fixed calling LuaEntity::order_deconstruction() on item-request-proxy would corrupt the game state leading to crash. (more)
- Landfill can be placed over shallow water.
- Fixed that LuaEntity::color wouldn't accept "nil" to reset the color. (more)
- Fixed that train pathfinder was not counting penalty of opposite train stop at last segment.
- Fixed that train pathfinder was counting penalty of whole starting segment instead of only part in front of locomotive. (more)
- Fixed that train pathfinder would return single segment path even if there are shorter, multi segment ones. (more)
- Fixed technology screen not showing modifier tooltips when tooltip descriptions are disabled. (more)
- Fixed belt tooltips sometimes showing their speed in exponent format. (more)
Modding
- Added UnitPrototype::light.
- Removed the "particle" prototype type.
- Added the "optimized-particle" prototype type.
- Added the "burner-generator" prototype type.
- Removed GeneratorPrototype::burner.
- Added the "pass_through_mouse" option to speech bubble styles. This lets mouse interactions fall through to interact with the world behind.
- Added optional "radius_color" property to capsule prototype.
- Removed EntityPrototype::emissions_per_tick, it is replaced by emissions_per_second.
- Removed EnergySourcePrototype::emissions_per_second_per_watt and emissions, they are replaced by emissions_per_minute.
- Removed TilePrototype::ageing, it is replaced by pollution_absorption_per_second.
- Removed ItemPrototype::stackable, primary_place_result_item and can_be_mod_opened, they were replaced by ItemPrototypeFlags "not-stackable", "primary-place-result" and "mod-openable".
- Added "probability" to trigger items and trigger effect items.
- Added "script" trigger effect item. It will call the "on_script_trigger_effect" when triggered.
- Added AttackParameters::rotate_penalty and AttackParameters::health_penalty.
- Added generic support for rendering radius visualisations on entities through radius_visualisation_specification.
- Changed construction robots and logistic robots sprites to be optional.
- Changed the loader prototype type so it has a fixed belt_distance of 0.5.
- Added the prototype type "loader-1x1" that has a fixed belt_distance of 0.
- Changed render layer of belt structures (underground belt, splitter, circuit connector) to object layer. They now have special sorting logic, so they are not rendered over player or cars.
- Horizontal directions of splitter sprites were separated to two sprites (for purposes of the special sorting logic).
- Added AttackParameters::ammo_categories.
- Added optional artillery projectile property "rotatable".
- Scenarios can now contain a description.json file. In the file "order" determines the sorting in the New Game gui; "multiplayer-compatible" determines weather the scenario is shown for multiplayer games.
- Added "multiplayer-compatible" to description.json file of campaigns also.
Scripting
- Added on_unit_group_finished_gathering and on_build_base_arrived events.
- Added LuaRendering::bring_to_front().
- Changed LuaGameScript::particle_prototypes to reference the optimized-particle type.
- Added LuaGuiElement::scroll_to_item() function.
- Renamed LuaInventory::hasbar(), getbar() and setbar() to supports_bar(), get_bar() and set_bar().
- Added LuaEquipmentPrototype::attack_parameters read.
- Added on_script_trigger_effect event.
- Set lower limit of zoom parameter of LuaGameScript::take_screenshot to be 0.0315 (1 pixel per tile) instead of allowing any value greater than 0.
- Added LuaPlayer::get_infinity_inventory_filter(), set_infinity_inventory_filter() functions.
- Added LuaPlayer::remove_unfiltered_items, infinity_inventory_filters read/write.
- Added LuaSurface::get_entities_with_force().
- Added optional "dealer" parameter to LuaEntity::damage().
- Added "force" filters to the on_built_entity and on_robot_built_entity event filters.
- LuaSurface::min_brightness doesn't have any effect on rendering as brightness of night depends only on color LUT of night.