1. Factorio
  2. News

Factorio News

Version 0.17.76 released

Changes


  • Energy consumption is no longer shown in the tooltip for void energy sources.
Bugfixes


  • Fixed a bug in NPE where Compilatron would sometimes loop around smashing things. more
  • Fixed possibility of dying just before a cutscene in NPE, which would lead to a crash. more
  • Fixed game crashing in NPE if it can't find anywhere to spawn a biter. more
  • Fixed using dark coal icon on dark speech bubble background. more
  • Fixed a crash when loading modded saves without the mod when you had entities marked to be upgraded to the now removed modded items but the entity is still valid.
  • Fixed incorrect string for "Fuel Pollution" in tooltip. more
  • Fixed tooltip not showing max consumption correctly when using modules. more
  • Fixed battery equipment and accumulator tooltips showing wrong input flow limit when it's unlimited. more
  • Fixed item tooltips not showing custom_description. more
  • Fixed some item tooltips having incorrect title or description.
  • Fixed that hovering over a logistic request didn't highlight inventory items. more
  • Fixed pump tooltip not showing pumped amount when pumping from a fluid wagon. more
  • Show the products of a recipe more clearly when the product has a probability and/or an interval defined. more
  • Fixed a crash when restarting the game after it failed to load modded fluidboxes. more
  • Fixed tech tree quantity icon being shown incorrectly. more
  • Fixed an exploit related to upgrading ghosts while a robot is trying to work on them. more
  • Fixed target leading logic would cause turret to shoot outside of its range sometimes. more
Modding


  • Added AmmoTurretPrototype::entity_info_icon_shift.


You can get experimental releases by selecting the 'experimental' beta branch under Factorio's properties in Steam.

Version 0.17.75 released

Features


  • Construction robots will attempt to batch build tiles.
Changes


  • Tooltips reworked. They now have a new structure and look.
  • Properties in tooltips have been reorganized and reworked. Common properties have been added to categories.
  • Added more information to tooltips, for example to be able to calculate steam power and nuclear ratios.
  • Recipe and item tooltips are now separate. Item tooltips will be shown for each product in the recipe, if relevant.
  • Descriptions and Total Raw can be hidden using the interface setting.
  • Reorganized the interface settings menu.
Bugfixes


  • Fixed a crash when switching between the map editor and the ghost controller type. more
  • Fixed car movement animation played forwards when reversing. more
  • Fixed a crash related to using LuaCustomTables incorrectly. more
  • Fixed that accumulators wouldn't copy circuit signals correctly in some cases. more
  • Fixed a crash related to removing all collision masks from rails. more
Modding


  • Added ProductPrototype::show_details_in_recipe_tooltip. It determines if a product tooltip should be shown when hovering a recipe.
Scripting


  • Added filtering support for several common Lua events.
  • Added LuaEntity::logistic_network write for construction and logistic robots.
  • Added "lifetime" optional entity creation parameter for speech-bubble entities.
  • Added LuaEntityPrototype::max_distance_of_sector_revealed and max_distance_of_nearby_sector_revealed read.
  • Changed RecipePrototype so it calculates catalyst from ingredients and products automatically if not manually defined.


You can get experimental releases by selecting the 'experimental' beta branch under Factorio's properties in Steam.

Friday Facts #319 - New T-shirts Lua event filtering

Read this post on our website.

Hello,
There is a bit of a cold/flu going around the office, but it isn't severe enough to dampen our spirits (I don't like the daylight savings though).

New T-shirts (Jitka, Albert, Aleš, Klonan)

Ever since we launched the classic Grey T-shirt back in November 2017, we've been asked when we're going to have more designs. Over the last few months Jitka, Albert, and Aleš, have been working on our new collection, which is now available.

Check out our store page for full product details.

We chose the Inserter and the Electronic circuit, as we feel that they are some of the items that best represent the game.



Once again, its the small details of which we are really proud. This time we are incorporating the new Wube logo into the print, as well as continuing our Factorio Dude printed label.

We have also updated our classic Factorio logo on grey with the new T-shirt design, which means that all the T-shirts are available in 3XL (Triple-XL), including the older design which previously only went up to 2XL. We have also printed a small batch of the Factorio logo T-shirts in a Ladies cut.

Several weeks ago, we mentioned that we bought a new rack for the server room (FFF-315). The secret we have been keeping is that we didn't just buy new racks for the server room, but also for the merchandise room. Now that we have the new T-shirt collection, the shelves are filled quite nicely.



The new T-shirt collection is available on our website from today. Please bear in mind that we are packaging and shipping all the T-shirts ourselves in the office, we aren't handling things through any 3rd party distributor. What this means is that shipping isn't super fast and we can't really guarantee any shipment dates. Generally the T-shirts reach European addresses within 1 week, and reach North America within 2.

With Christmas approaching, shipping times may be longer, so if you are looking to gift a Factorio T-shirt this upcoming holiday season, we would recommend ordering as soon as possible. Please note we still impose a 3 T-shirt limit on all orders.

Lua event filters (Rseding)

Every so often someone makes a mod interface request that grabs my attention - not because of the actual benefits the request will give (although that helps) but from a pure challenge perspective: I start thinking "that sounds difficult (and fun) - but I think I can do it - so how I can do that in an efficient/expandable way?...".

Several weeks ago someone requested a way to filter the different prototypes from the game on the C++ side instead of having to do it all Lua side:
  • Grab all of them.
  • Iterate through them one by one.
  • Store only the ones I care about.
Their reasons made sense to me and it was one of those challenging things that grabbed my attention. I finished it - and it has been out for several weeks.

Shortly after that someone asked for the same system for Lua events; mentioning that most mods don't actually want most events when they subscribe to one - but only a small subset of what would trigger a given event. It also made sense to me and it was even more of a challenge to take the already working filtering system I had and make it work for something I didn't intend. The end result though works quite nicely and can be expanded as we find different events needing different filters.



What this means overall, is that modders will be able to write cleaner and more efficient Lua scripts, and everybody will benefit from less UPS spent filtering the events on the script side.

/r/Factorio Extra Life charity stream (Klonan)

This weekend the moderators over at the Factorio subreddit are taking part in the Extra Life charity event. They will be streaming Factorio to help raise money for Children's hospitals in the US and Canada. There are some more details on the Reddit post.

As always, let us know what you think on our forum.

Friday Facts #318 - New Tooltips

Read this post on our website.

Hello,
we just released 0.17.73, with 0.17.74 coming very soon. This is just some bug fixes and further pathfinding improvements, and we hope to be able to mark the release as Stable next week.

The new tooltips (Twinsen)


As part of our big GUI update, I've been working on one particular part: the tooltips. We worked not only on updating the style, but also how the information is structured and sorted, added missing information, removed irrelevant information. This concerns entity, item and recipe tooltips, but almost all tooltips were touched one way or another. Many things were changed. I will go through some of the more important changes.

The new look



First thing to see is the new style Albert has worked on. They now have the same general style as the technology tooltips. We tried to keep them as compact as possible, as sometimes there is quite a lot of information to show.

For the screenshots in this blog post, I set the background to be non-transparent. Unfortunately they don't blend very well with our blog background, but in game you will notice that they are slightly transparent and the also have a blurring effect. Together with the shadows, they integrate nicely in the game.

Categorization



As you may have noticed already, some common properties like electricity consumption are grouped into categories. Most of the work was defining these categories and trying to figure out what makes sense. These categories help grouping the information but also gives more context to some entity properties. Properties that are directly related to the selected entity type are placed in the "root" category that has no name. This is to avoid having pointless categories like "Inserter" and "Transport belt".

New information
The place where the categorization really shines is in the tooltips of power generating entities. Now it's much clearer what each entity does and what the ratios are. Entities related to nuclear power were especially confusing. Creating an optimal nuclear setup was almost impossible without the help of the wiki. Now all the important information is there.





Entity tooltips and item tooltips generally show the same properties, but I tried to make the entity tooltips show state information when possible. For example, here's how the item tooltips above look when the entities are placed in the game. Categories are even more useful now, since properties like the fuel inside the machine or the state of the fluid output pipe can now be grouped inside the relevant categories.



Other entities have more properties added to them, such as inserter rotation speed, rolling stock weight, laser turret energy use per shot, flamethrower turret burning and slowdown effect, and many more.

Tooltip separation



The recipe tooltip was kind of a Frankenstein's monster of recipe information and item information mashed together. We also had the problem with what properties to show when a recipe has multiple output products. The solution was to split the tooltips and show a "multi-tooltip" when hovering a recipe,

Now, when hovering over a recipe in the crafting menu the recipe tooltip will be shown. An additional item tooltip will be shown for every product, as a separate tooltip, if the item tooltip has a description and/or properties to show. While this improves things quite a bit in vanilla, complex mods will benefit from it even more. Recipes can now have their own textual description and each separate product can be explained independently if necessary.



The same mechanism is used for the tooltip shown when hovering a logistic request in the character window.

This means that an item tooltip will look the same regardless if it's shown while hovering a recipe, an item in the player inventory or a logistic request. No more mixing of information.

Most of the implementation is done, just a few tweaks and bugfixes left to do, plus any changes based on your feedback. If all goes well, the new tooltips will be part of one of the next experimental feature releases, which we hope to release in the next couple of weeks. After that, more GUIs to come.

Construction robot tile batching (Rseding)

One of the things I've wanted to tinker with for some time is having a construction robot build multiple things at the same time. Construction robots spend the vast majority of their time just flying around doing very little work and can technically use the cargo capacity research but only ever use it for logistic related things.

https://cdn.factorio.com/assets/img/blog/fff-318-not-batched.mp4

One of the main things which stopped me from looking into this in the past was performance concerns: figuring out which thing(s) a robot can work on in a batch gets expensive very quickly and with robots existing in the 10s of thousands range I can't just make each one 5 times as expensive.

A few weeks ago I thought I finally figured out a way to at least make robots able to batch build tiles without loosing too much performance. The thing is: when tiles are built they are built in large square patterns so I can safely assume there will be other tiles to be built directly next to a given tile that hasn't already been assigned a robot to work on. After some experiments and then several re-works to optimize what was already quite fast I was satisfied with the result.

https://cdn.factorio.com/assets/img/blog/fff-318-batched.mp4

Of course, the next question people ask is: what about doing it for entities? I could, but it doesn't make as much sense for them because they aren't always 1x1 (performance drops off quickly as the size grows - tiles are always 1x1), aren't typically built in tightly packed squares like tiles are, and in the common case it would just make robots more expensive to run while rarely making them build faster. So, for now they just batch build tiles.

https://cdn.factorio.com/assets/img/blog/fff-318-batched-comparison.mp4
As a more direct comparison, Boskid made this nice setup using two forces with different cargo bonuses.

As with the tooltips, the tile job batching will be released as part of our next experimental feature release, which we're calling internally 'Stable 3' (0.17.69 is Stable 1, 0.17.74 will be Stable 2). As always, let us know what you think on our forum.

Version 0.17.73 released

Graphics


  • Extended transport belt sprites a little bit to avoid rendering glitches at some zoom levels.
Bugfixes


  • Added missing max_work_done_per_tick in map-settings.example.json. more
  • Fixed that accumulator settings could not be copy-pasted. more
  • Fixed that generators could rotate and render incorrectly. more
  • Fixed bad quest GUI in NPE. more
  • Fixed a crash related to the map editor "recipe locked" setting for assembling machines. more
  • Fixed that Military science pack was sorted after Chemical science pack in the Lab GUI.
  • Fixed low quality texture compression would create major artifacts on some sprites. more
  • Fixed a crash when reading storage_filter on infinity chests. more
  • Fixed a crash when reading LuaEntity::tree_stage_index_max in some cases. more
  • Changed blueprinting selection previews to include both tile ghosts and tiles when only tile ghost entities are being selected. more
  • Fixed a crash that could happen when path_resolution_modifier was set to very low values. more
Modding


  • Changed input_flow_limit and output_flow_limit so 0 means 0 instead of unlimited (no value still means unlimited).
Scripting


  • Added LuaEntity::driver_is_gunner read/write.
Balancing


  • Changed: Amount of copper-cable in Introduction scenario crash site.
  • Changed: Increased minimum size of a resource deposit to 100 in the Introduction scenario.

You can get experimental releases by selecting the '0.17.x' beta branch under Factorio's properties in Steam.