This is an archive of patch notes originally posted on 02 Oct 2025.

Factorio

Version 2.0.69 released as stable

Posted by Sanqui on

Hello,
today we have a nice stable version for you

Bugfixes


Changes

  • Added absorbed pollutant name to tile description in Factoriopedia.
  • Changed manual mining when the inventory is full to not drop the mined result on the ground.
  • Improved the mod API search to find union literals, define leaf nodes, and more.

Graphics

  • Deprecated OpenGL support on Macs. It will still exist for older versions of macOS, but may not receive future updates.
  • Fixed Metal graphics backend throttling the FPS when the display refresh rate isn't a multiple of 60 Hz. https://forums.factorio.com/129946
  • Made Metal the default graphics rendering API for Macs.
  • Removed Graphics backend user setting.

Minor Features

  • Partially fulfilled wait conditions use different background color to indicate progress.
  • Splitters can be connected to circuit network.

Modding

  • Added "scripted" technology trigger.
  • Added FluidWagonPrototype::connection_category.
  • Added FusionGeneratorPrototype::burns_fluid.
  • Added FusionGeneratorPrototype::effectivity.
  • Added LightningPrototype::attractor_hit_effect.
  • Added MiningDrillPrototype::resource_searching_offset.
  • Added RoboportPrototype::render_recharge_icon.
  • Added RobotWithLogisticInterfacePrototype::max_payload_size_after_bonus.
  • Added __TECHNOLOGY__ and __RECIPE__ built-in locale parameters.
  • Added recipe_icon_scale chart utility constant.
  • Added support for heating_energy to FusionGeneratorPrototype and ThrusterPrototype.
  • Changed CargoWagonPrototype to use EntityPrototype::icon_draw_specification when drawing cargo wagon content.
  • Changed DisplayPanelPrototype to use render_layer from icon_draw_specification when drawing icon.
  • Changed Generator and FusionGenenerator tooltips to not show temperatures when in burns_fluid mode.
  • Removed "research-progress" product type from RecipePrototype.


Scripting

  • Added LuaCustomChartTag::position and surface write.
  • Added LuaEntity::get_movement() and set_movement().
  • Added LuaEntity::mining_area read.
  • Added LuaEntity::rail_length read.
  • Added LuaEntity::transitional_request_target read.
  • Added LuaEntityPrototype::fluid_buffer_size, activation_buffer_ratio and fluid_buffer_input_flow read.
  • Added LuaEntityPrototype::get_attraction_range_elongation() and get_energy_distribution_efficiency().
  • Added LuaEntityPrototype::range_from_player, combat_robot_friction, destroy_action and follows_player read.
  • Added LuaEntityPrototype::spider_engine read.
  • Added LuaEntityPrototype::strike_effect, attractor_hit_effect, damage and energy read.
  • Added LuaEntityPrototype::support_range read.
  • Added LuaFluidBox::get_fluid_segment_extent_bounding_box().
  • Added LuaForce::script_trigger_research().
  • Added LuaGuiElement::icon_selector read.
  • Added LuaHelpers::multilingual_to_lower().
  • Added LuaInventory::get_item_count_filtered().
  • Added LuaInventory::get_item_quality_counts().
  • Added LuaItemCommon::entity_driver_is_gunner, entity_auto_target_without_gunner and entity_auto_target_with_gunner read/write.
  • Added LuaItemCommon::entity_logistic_sections and entity_request_from_buffers read/write.
  • Added LuaItemCommon::entity_logistics_enabled and entity_enable_logistics_while_moving read/write.
  • Added LuaItemPrototype::get_module_effects().
  • Added LuaLogisticNetwork::custom_name read/write.
  • Added LuaPlayer::get_recipe_notifications().
  • Added LuaPlayer::swap_characters().
  • Added LuaRecord::export_record().
  • Added LuaRecord::get_selected_record().
  • Added LuaSplitterControlBehavior.
  • Added custom_tooltip_fields reads to all LuaPrototypes that support it.
  • Added flip_horizontal and flip_vertical parameters to LuaPlayer::build_from_cursor().
  • Added in_gui to custom input events.
  • Added maximum_quality_jump utility constant.
  • Added on_cargo_pod_started_ascending event.
  • Added on_player_dropped_item_into_entity event.
  • Added previous_target and previous_quality to on_marked_for_upgrade event.
  • Added skip_fog_of_war to LuaPlayer::can_build_from_cursor().
  • Added surface_index to all UndoRedoActions.
  • Changed LuaEntity::color read/write to also work for character corpses.
  • Changed LuaSpacePlatform::destroy_asteroid_chunks() to return the number of destroyed chunks.