Blog search

Friday Facts #318 - New Tooltips

Posted by Twinsen, Rseding on 2019-10-25

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.

Friday Facts #391 - 2023 recap

Posted by Vinzenz, raiguard on 2023-12-29

Hello, Another year has come to an end, from all of us here we wish you good fortune in the year to come.

Friday Facts #374 - Smarter robots

Posted by kovarex, Oxyd, Klonan on 2023-09-01

Hello, today we are going to talk about some flying robot behavior improvements. Some of the problems we fixed were reported countless times, so I hope that some people will appreciate it :).

Friday Facts #409 - Diminishing beacons

Posted by V453000, Earendel on 2024-05-03

Hello, Today we're going to take a look at a feature some of us have dreamt of changing for years now - the beacon transmission. The main purpose of beacons is to allow massively increasing your production in the late game while being more than just a module or a faster machine. To make use of beacons you need to adjust your building layout for them. Beacons succeed in this role, but...

Friday Facts #92 - Personal roboport

Posted by Michal on 2015-06-26

Hello, this week's Friday Facts is brought to you by Michal (one of the new guys). We are getting close to release of 0.12. We're trying to fix as many bugs as we can; trying to get everything stable and polished. Currently we are so busy that we even haven't had time for any team building activity with Rseding91 who has come to visit us for next few weeks. So, I am going to take advantage of this no-big-news week to present more closely a feature I have been working on for the last month or so.

Factorio version 0.16 - Now stable

Posted by Factorio Team on 2018-03-29

Since the release of 0.16 experimental in early December, we have had over 30 bugfix releases, and are confident that 0.16 is ready to be enjoyed by all players. The goal of 0.16 is to wrap up the addition of any major features, so we can begin to focus on the final steps towards a 1.0 release.

Friday Facts #177 - Difficulty settings

Posted by Rseding91 on 2017-02-10

0.15 status Work has been going swiftly on 0.15, but there are still many major topics we have left to close. We mentioned previously that our estimate for release would be near the end of February, and while this has been our internal goal, we won't quite be able to make it. One of the main reasons for this delay is us underestimating how long it would take to stabilize 0.14 and the new multiplayer code. We thought that because it was a relatively small 'major' release, that it would not take much time to make it stable. However the great community members playing the experimental version kept finding bugs for us to fix, and even now there are still several 0.14 bugs being identified and fixed in 0.15. The extending bug fixing of 0.14 was no doubt necessary, but it has led us to be somewhat behind schedule on several features of 0.15. Our current optimistic estimate is that we will be able to release an experimental version of 0.15 at the end of March, and we will keep you all up to date on its progress.

Friday Facts #18

Posted by Tomas on 2014-01-24

Hello, today the Factorio Friday Facts turn 18. That is considered an age of maturity in many countries. So the glass of Jagermeister on my desk is completely justified :) The time here in Prague feels just like whooshing around us faster and faster with the end of January approaching rapidly. That was the original estimate for the release of 0.9 but now it seems that it will take a week or two more. The usual "everything takes longer than expected" has applied this time as well. The current development version has placeholders for some new entities (like a plain rectangle box saying "oil refinery" or another one with "chemical plant") and we really want to make proper graphics for these and deliver the basics of new oil content as a whole package. Recently we got a bug report claiming that the game is too slow. The guy who posted it was right, the game was running well under 60fps. In our defence it needs to be added that his factory was pretty monstrous. It was actually the biggest one we have seen by far. Just to get an idea, his factory had 9000 solar panels, 15 000 laser turrets and thousands of logistic robots. So kovarex took it as a challenge to squeeze as much performance from the engine as possible taking this save as a reference. He has been working on it for the past couple of days. The most significant optimizations he made are: Efficient dispatch of pending logistic robots. This was probably the cause of the biggest slowdown in the given save. Wake-on-demand mechanism for inserters. Until now the inserters always asked every tick the objects in front of / behind itself whether they should transfer anything. Now, instead they put themselves to sleep and the object wakes them up when its state changes (that means there is a chance a transfer will be required). Improved cache locality for the electric energy network. The result: game update dropped from roughly 30 milliseconds per 1 update to about 10 milliseconds (and there is more to come). Of course not everybody will get this amount of performance improvement (the optimizations are aiming at the game update for big factories). But in general this batch of improvements pushes the bar for the size of the factory further up. The work on the oil industry has entered the last phase. The fluid and recipe mechanisms as well as new entities are ready and now it is all about adding the actual content. I have been studying the oil refining process quite a bit recently and also I took this opportunity to refresh some bits from my high school chemistry curriculum. The way it shapes now the oil industry will be a middle to late game resource. Its usage will start somewhere between the green and blue science pack and its products will cover a variety of areas (fuel, plastics, lubricants, explosives, etc.). There has been quite some discussion about the oil industry on the forums. If you are interested and want to contribute your opinion you can do so in this thread for instance. Kuba and Albert have been working together a bit on the integration of the new doo-dads into the map generator. The goal is to approach the scenery compositions shown in the previous posts . Though that is difficult (because those compositions are hand made and imho very good) the doo-dads should greatly improve the current flatness of the landscape anyway. On top of this Kuba has been busy with a neat feature when the game will natively treat zip archives as directories (so the saves / mods can be zip packages). And of course Albert's table is full of "oily stuff" - now comes the interesting part - the oil mining drill, the oil refinery and the chemical plant. Today's picture is a glimpse into the internals of Factorio. The screenshot shows a diagram of entities' (objects on the map) class inheritance structure generated by doxygen. If you feel like expressing your opinion regarding anything above then go ahead and do so on our forum.

Friday Facts #315 - New test servers

Posted by Klonan on 2019-10-04

New test servers We recently bought and assembled some high-end PCs, with the hope to gauge performance, speed up running tests, and potentially consolidate the number of servers we are maintaining internally. The two lucky CPUs were a i9-9980XE 18-core and a Ryzen 3900X 12-core. We are using the time to complete our test suite in 'heavy mode' as a benchmark. Heavy mode basically saves and reloads the game each tick, and compares a CRC of the map from before and after. It is super slow to run, but the heavy test is critical to help find any possible determinism issues. There is some more info on 'heavy mode' in FFF-63. As a baseline, the 'standard' CPU in the office for developers is the i9-7900x 10-core, which runs heavy tests in about 530 seconds. In real time this is 8 minutes and 50 seconds, a long time for a team member to sit around for results before they can push. We can do better! As you would expect, the new 18-core was blazing fast, with a test time of about 400 seconds, shaving off over 2 minutes. However the Ryzen was a different story, with a test time of about 600 seconds. This goes against what we predicted, where more cores and higher frequency mean lower test times. The initial results from the 12-core Ryzen were worse than from the 10-core Intel; not a good start. So I did some digging and some research, and the answer I arrived at was RAM. When we ordered the parts, not much thought was given to the selection of RAM, just some standard 16GB 2666MHz sticks to fill all the slots. Luckily, I looked on a local Czech website, and they had some stock of the brand new G.SKILL 3600MHz Trident RGB Neo, a high performance RAM stick made exactly to suit our new Ryzen CPU. After installing the new RAM, we had a test result that better matched our expectations: 450 seconds. We knew beforehand that Ryzen liked fast RAM, but we didn't realize how significant of a difference it could make. So now we have set up both these new machines to run tests automatically after each commit, and we are very happy with the result. The new i9-9980XE can compile and run heavy tests faster than our old i7-4790K can compile and run just normal tests. Having it run automatically also frees up individual developers from the responsibility of running heavy tests locally, so they can just push as normal and continue working.

Friday Facts #242 - Offensive programming

Posted by kovarex on 2018-05-11

Hello, this post is going to be more technical than usual, yet it might still be interesting to know the background of the process for some people.