TUXDB - LINUX GAMING AGGREGATE
by NuSuey
NEWSFEED
▪️ GAMES
▪️ STEAM DECK ▪️ DEALS ▪️ CROWDFUNDING ▪️ COMMUNITY
tuxdb.com logo
Support tuxDB on Patreon
Currently supported by 9 awesome people!

🌟 Special thanks to our amazing supporters:


✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Arch Toasty][Benedikt][David Martínez Martí]

Steam ImageSteam ImageSteam ImageSteam ImageSteam ImageSteam Image
Friday Facts #209 - Optimisation is a way of life

I need to make a confession. I'm addicted. Addicted to optimisation. I earned some money by the game ... you know .. I could just .. I don't know .. play games and ... have some leisure time, but do you know what would be the problem? I would have to think about some Factorio optimisations I wanted to do anyway. When I go to bed in the evening, I think about cache locality and data structures. I dream about ways to reorganize structures to minimize the amount of data needed to be read to perform Factorio logic. When I walk in the park, i visualize the tricks that could be done to decrease data and logic dependencies. This usually only stops when I see how many bugs need to be fixed after release when lot of changes are done.

Electric network optimisation


The electric network optimisation for 0.16 was simple in principle. We currently have one continuous buffer of electric connector data stored in the electric network. It needs to be iterated twice (first for calculation, second for power distribution).
The change was to categorize energy connector data by the prototype:
It adds another layer of indirection when something needs to be added/removed from the network, but that happens quite rarely. The advantage is, that all the prototype specific values, like inputFlowLimit, outputFlowLimit etc. can be accessed once at the beginning of the processing of one category, which (together with other size squishing), results in a much smaller memory layout, which results in faster iteration of the algorithm. The conclusion is that electric network transfers are more than twice as fast compared to 0.15.

Smoke optimisation


Smoke already had the first iteration of optimisation 125 weeks ago. But Factorio is many times faster since than, so smoke started to appear in our profiling again. The problem was that even creating the smoke object and registering it on the map was slowing the game down. The plan was to make something we internally call TrivialSmoke. The Trivial smoke data size is 32 bytes which is quite small compared to the previous "smoke as entity" size of 256 bytes. It contains only the most basic data squashed as much as possible, and it is stored in a continuous piece of memory on the chunk it was created.
As the updates happen in regular intervals (120 ticks), it is always guaranteed, that the smokes to be updated this tick are at the beginning of the buffer, I don't have to check the rest. The same buffer is used for update and for render, so these objects don't need any other references to it. It is similar to the Chunk update planner mentioned in fff-161, just flattened. The result is, as expected, that the smoke creation/update/removal times were significantly reduced.

The logistic bots dilemma


The dilemma is, whether to use similar approach to the logistic bots as for the smoke. This would mean that logistic bots would be created/updated/removed very fast and their memory footprint would decrease a lot, but they wouldn't be regular entities any more. They couldn't be mined (which could be for the better actually), couldn't be attacked or damaged by anything (which again, would be welcomed by some players). I'm quite sure that it shouldn't apply for the construction robots, as they are more related to the fighting part of the game, but logistic robots aren't. The dilemma is, whether changing the game rules like this just for optimisation isn't going too far.

Running total


I benchmarked a huge save of Vaclav (https://imgur.com/a/qDDs1), and it can already run 2.4 times faster in 0.16 compared to 0.15 so we met our "2 times faster release" quota, but I'm afraid that this won't stop the addiction.

Stone path update


Almost all of the terrain has been updated for 0.16, which includes the high-res update of it. We will certainly cover the terrain/trees/decals improvements in future FFF. Here I would like to present the new version of the stone path terrain made by Ernestas. It is inspired (as many things in Factorio) by the eastern style of pavements, and I'm starting to be a fan of his work.
As always, let us know your thoughts, ideas and feedback on our forum.


[ 2017-09-22 19:15:28 CET ] [ Original post ]

Factorio
Wube Software LTD. Developer
Wube Software LTD. Publisher
2020-08-14 Release
Game News Posts: 506
🎹🖱️Keyboard + Mouse
Overwhelmingly Positive (164072 reviews)
The Game includes VR Support
Public Linux Depots:
  • Factorio Linux64 [306.86 M]
  • Factorio Linux32 [300.1 M]
Available DLCs:
  • Factorio: Space Age
Factorio is a game in which you build and maintain factories. You will be mining resources, researching technologies, building infrastructure, automating production and fighting enemies. In the beginning you will find yourself chopping trees, mining ores and crafting mechanical arms and transport belts by hand, but in short time you can become an industrial powerhouse, with huge solar fields, oil refining and cracking, manufacture and deployment of construction and logistic robots, all for your resource needs. However this heavy exploitation of the planet's resources does not sit nicely with the locals, so you will have to be prepared to defend yourself and your machine empire.

Join forces with other players in cooperative Multiplayer, create huge factories, collaborate and delegate tasks between you and your friends. Add mods to increase your enjoyment, from small tweak and helper mods to complete game overhauls, Factorio's ground-up Modding support has allowed content creators from around the world to design interesting and innovative features. While the core gameplay is in the form of the freeplay scenario, there are a range of interesting challenges in the form of the Scenario pack, available as free DLC. If you don't find any maps or scenarios you enjoy, you can create your own with the in-game Map Editor, place down entities, enemies, and terrain in any way you like, and even add your own custom script to make for interesting gameplay.

Discount Disclaimer: We don't have any plans to take part in a sale or to reduce the price for the foreseeable future.

What people say about Factorio


  • No other game in the history of gaming handles the logistics side of management simulator so perfectly. - Reddit
  • I see conveyor belts when I close my eyes. I may have been binging Factorio lately. - Notch, Mojang
  • Factorio is a super duper awesome game where we use conveyor belts to shoot aliens. - Zisteau, Youtube

MINIMAL SETUP
  • OS: Linux (tarball installation)
  • Processor: Dual core 3Ghz+Memory: 4 GB RAM
  • Memory: 4 GB RAM
  • Graphics: OpenGL 3.3 core. DirectX 10.1 capable GPU with 512 MB VRAM - GeForce GTX 260. Radeon HD 4850 or Intel HD Graphics 5500
  • Storage: 3 GB available space
RECOMMENDED SETUP
  • OS: Linux (tarball installation)
  • Processor: Quad core 3GHz+Memory: 8 GB RAM
  • Memory: 8 GB RAM
  • Graphics: OpenGL 4.3 core. DirectX 11 capable GPU with 2 GB VRAM - GeForce GTX 750 Ti. Radeon R7 360
  • Storage: 3 GB available space
GAMEBILLET

[ 6102 ]

8.49$ (15%)
16.39$ (18%)
8.25$ (17%)
21.99$ (12%)
12.74$ (15%)
25.19$ (16%)
17.79$ (11%)
16.96$ (15%)
20.74$ (17%)
35.14$ (12%)
16.59$ (17%)
8.49$ (15%)
17.39$ (13%)
17.54$ (12%)
12.74$ (-42%)
12.72$ (15%)
16.96$ (15%)
7.11$ (11%)
49.79$ (17%)
4.44$ (11%)
2.22$ (78%)
8.39$ (16%)
24.89$ (17%)
8.78$ (12%)
8.49$ (15%)
21.74$ (13%)
6.63$ (17%)
35.59$ (11%)
20.97$ (16%)
16.99$ (15%)
GAMERSGATE

[ 764 ]

9.55$ (36%)
7.64$ (49%)
2.48$ (77%)
0.68$ (86%)
0.21$ (79%)
1.0$ (80%)
7.64$ (49%)
8.49$ (58%)
14.87$ (40%)
0.34$ (91%)
0.75$ (85%)
1.05$ (85%)
10.83$ (28%)
1.35$ (89%)
4.49$ (55%)
11.62$ (54%)
17.0$ (57%)
0.53$ (92%)
3.4$ (83%)
9.09$ (35%)
0.37$ (63%)
7.92$ (74%)
0.51$ (74%)
0.85$ (83%)
5.1$ (74%)
0.68$ (89%)
2.55$ (83%)
7.0$ (53%)
7.5$ (70%)
3.06$ (83%)

FANATICAL BUNDLES

Time left:

12 days, 11 hours, 4 minutes


Time left:

19 days, 11 hours, 4 minutes


Time left:

8 days, 11 hours, 4 minutes


Time left:

5 days, 11 hours, 4 minutes


Time left:

13 days, 11 hours, 4 minutes


Time left:

15 days, 11 hours, 4 minutes


Time left:

36 days, 11 hours, 4 minutes


Time left:

356461 days, 3 hours, 4 minutes


Time left:

18 days, 11 hours, 4 minutes


Time left:

47 days, 11 hours, 4 minutes


Time left:

33 days, 11 hours, 4 minutes


HUMBLE BUNDLES

Time left:

0 days, 5 hours, 4 minutes


Time left:

2 days, 5 hours, 4 minutes


Time left:

7 days, 5 hours, 4 minutes


Time left:

9 days, 5 hours, 4 minutes


Time left:

14 days, 5 hours, 4 minutes

by buying games/dlcs from affiliate links you are supporting tuxDB
🔴 LIVE