Friday Facts #408 - Statistics improvements, Linux adventures

Regular reports on Factorio development.
woobilicious
Manual Inserter
Manual Inserter
Posts: 3
Joined: Mon May 16, 2022 5:29 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by woobilicious »

bman212121 wrote:
Fri Apr 26, 2024 1:58 pm
Async saving is one of those oddball things that seems like it's a workaround to a bigger problem. If saves were barely noticeable then why even bother to put the effort in for a feature that 1% of 1% of the userbase uses? Why not work towards a solution that helps all users?

<snip>
Async *is* the solution to saving stalls, the reason why unix fork() was implemented here is that it is stupidly simple...it's a single syscall followed by an if-else statement that checks parent/child status.

The issue is how do you get the entire game state, freeze it, copy it, and then unfreeze the main game, very fast, it's a lot more complicated when you don't have OS level access to the entire memory space. most database engines are built from the ground up, with the this in mind, they're designed to do sharding across multiple machines and be consistent, they also require careful design and expertise, file systems also have similar requirements. Note there is one such, free piece of software that might achieve this, called lmdb, it's stupidly fast and ACID compliant, but it would require a large part of factorio to be rewritten to use it.

revilowaldow
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sat Apr 27, 2024 5:59 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by revilowaldow »

Great to see continued Linux / Mac support.

Is there any information about the possibility of the Factorio server binary supporting ARM? Especially with native Apple Silicon support now a thing.
I've personally been keen to run a Factorio server off a free tier Oracle machine for a long time.

Toastinator
Burner Inserter
Burner Inserter
Posts: 8
Joined: Fri Sep 22, 2023 11:14 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by Toastinator »

You know, There's something funny about a "Global Statistics" Button in a game that is Across Multiple Planets! lol Just Poking fun!

User avatar
Lizzy
Long Handed Inserter
Long Handed Inserter
Posts: 60
Joined: Sun May 28, 2017 4:26 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by Lizzy »

Toastinator wrote:
Sat Apr 27, 2024 9:43 pm
You know, There's something funny about a "Global Statistics" Button in a game that is Across Multiple Planets! lol Just Poking fun!
Hahahahaha! Obviously the solution is having "global" checked mean the local globe and "global" unchecked mean all globes. That'd definitely be in the spirit of today's XKCD comic.

goodolrock
Manual Inserter
Manual Inserter
Posts: 2
Joined: Sat Oct 19, 2019 7:13 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by goodolrock »

An option for a logarithmic y axis view please! This helps see correlated trends across items which are produced on vastly different orders of magnitude

rldml
Fast Inserter
Fast Inserter
Posts: 179
Joined: Sun Mar 06, 2016 2:38 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by rldml »

Saving games in background is a killerfeature. I love it!

Greetings...

Svip
Long Handed Inserter
Long Handed Inserter
Posts: 97
Joined: Sun Apr 29, 2018 6:19 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by Svip »

Let me ruin the look of the new electricity production window. Now you cannot unsee it.
Attachments
fff-408-graph-ruined.png
fff-408-graph-ruined.png (3.75 MiB) Viewed 1492 times

dee-
Filter Inserter
Filter Inserter
Posts: 416
Joined: Mon Jan 19, 2015 9:21 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by dee- »

As a longtime Linux user I say: F*ck GNOME!

I welcome Wayland support, maybe a Wayland+Vulkan native version without legacy X11 and GL is possible?

vadcx
Burner Inserter
Burner Inserter
Posts: 14
Joined: Fri Apr 19, 2024 4:12 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by vadcx »

I wanted to send my friend a link to the "Clipboard woes" chapter of this FFF for being so awesome as to doing the right thing :tm: but your FFF headings do not have an HTML id attribute to link to it:

Code: Select all

<h4 class="">Clipboard woes</h4>
Usually CMS can auto-generate an ID from text for headings to be directly linkable.
---
Asynchronous saving works by using the fork syscall to essentially duplicate the game. ....
but the setting remains hidden because there are a few unsolved problems with it and it requires a significant amount of RAM to work.
But it shouldn't? Afaik it would only duplicate written-to pages in a Copy-on-Write manner. Yes, it's the entire world the parent process keeps modifying, but it is that huge?
Speaking of huge, huge page sizes support? 2 MiB on x86 should be very managable without paying attention to potential overhead in an edge case. I see there have been discussions of players playing with this on Windows, but no mention of Linux thus I assume Factorio isn't using them. They show great benefits to TLB latencies on Hotspot JVM.

vadcx
Burner Inserter
Burner Inserter
Posts: 14
Joined: Fri Apr 19, 2024 4:12 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by vadcx »

catpig wrote:
Fri Apr 26, 2024 12:43 pm
If all you're missing for Win11 is the TPM thingy, there's ways to turn off that requirement. MS even allows some new systems to be shipped like that.
offtopic

bleistift2
Burner Inserter
Burner Inserter
Posts: 10
Joined: Sat May 25, 2019 3:25 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by bleistift2 »

> Are there any other statistics improvements you can think about for 2.0?

I haven’t read through all of the 130 posts before me, so pardon if I’m repeating what someone else said.

I often find myself wanting to know, for instance, how many iron plates I’m producing and consuming. Currently I need to search for the iron plates in both sides of the statistics window, because production and consumption are sorted independently, and the colors are based on the sort order. I’d like the colors to be shared on both sides, so if iron plates are blue on the left side, they’re also blue on the right side, even if they’re not the most-consumed item.

derangedpenguin
Manual Inserter
Manual Inserter
Posts: 1
Joined: Wed May 18, 2022 2:39 am
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by derangedpenguin »

Eternal wrote:
Fri Apr 26, 2024 12:10 pm
Oo this is lovely... i didnt understand shite from all that but im certain is important...
now...

i want more hotbars.... even in WOW i had like 8 or so....

and i want to play next Torio... so please give us , like u always did.... alfa - beta - gamma - tetha... NOW! ... pls :D

I would prefer LONGER bars. More bars take too much vertical storage out of my ultra wide.
Or an option to move the bars to the sides would be awesome.

Also, do you guys need any test player?
I'll do the work for free

GhostPirate
Inserter
Inserter
Posts: 20
Joined: Fri Dec 28, 2018 4:55 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by GhostPirate »

Currently I need to search for the iron plates in both sides of the statistics window
Use ctrl+f to search, it filters both sides at the same time

GhostPirate
Inserter
Inserter
Posts: 20
Joined: Fri Dec 28, 2018 4:55 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by GhostPirate »

Statistics improvements: I really want to be able to check the production or consumption of a certain zone in my factory. Can we enable stats for selected regions?

Thank you!

AndrolGenhald
Inserter
Inserter
Posts: 48
Joined: Tue Mar 22, 2016 6:35 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by AndrolGenhald »

I love that you still natively support Linux, it's really great and it's one of the reasons I love Factorio so much and recommend it to all my friends. I've been daily driving Linux for over a decade now and the only reason I keep a Windows machine around is for games that don't run well on Linux. Proton is great, but native support is so much better, I've been using async save on my server for years without running into any issues. Also love to see that you're upstreaming code to SDL, that's awesome!

Also, wtf Gnome, I didn't realize they stopped doing server side decorations entirely at this point, so glad I switched to KDE when Gnome 3 caused me too many headaches.

dzaima
Burner Inserter
Burner Inserter
Posts: 12
Joined: Fri Dec 12, 2014 8:14 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by dzaima »

CommunistCatgirl wrote:
Sat Apr 27, 2024 3:59 am
As for server-side decorations the situation is a bit more complicated than this post and a lot of people make it out to be and I'm a bit disappointed to see GNOME dragged through the mud for something that isn't really their's or anyone particular party's fault directly. Wayland was designed with modularity and extensibility in mind and not only desktop use. This kind of modularity means that only the core wayland spec is mandatory to implement by anyone while everything else is essentially optional and depends on what kind of usecase the compositor is targeting. Unfortunately this does lead to some feature fragmentation (one of the side effects of trying to make one thing that is generic that works for everything) but it does mean that if factorio or any application wants to run on any compositor they would have to work within the core spec + xdg_shell as much as possible. In other words, if it wasn't GNOME today it would be another compositor tomorrow that didn't support CSD for a variety of reasons that would then require the use of libdecor anyway. In fact the reference wayland compositor Weston (though not really meant for desktop use directly) and Valve's Gamescope do not support the protocol. The xdg-decoration spec even states "If compositor and client do not negotiate the use of a server-side decoration using this protocol, clients continue to self-decorate as they see fit."
Were SSD to be mandatory, it would indeed suck that the compositors that don't care about any consistency, whose count is and likely will stay in the single digits for quite a while, would have to take the couple hours to draw a flat-color rectangle with 3 buttons on it, but, as-is, the problem is significantly worse, requiring each of thousands of applications to do it instead. And if those very-few compositors think it's that much of a problem, they could share a library to do it for themselves server-side, relieving hundreds of client-side applications from having to add a dependency for what should be an utterly trivial feature.

If a compositor wants to only target a specific use-case, it could just decide to not implement things not needed for said use-case (or, say, support SSD where the decorations are empty and enabling them is a no-op; if they don't want decorations, they, well, should be fine with not having decorations).

The obvious end-game of no guaranteed SSD, for the 99% of applications which don't have reason or resources to write linux-specific decorations, is, clearly, unquestionably, just slapping on libdecor, a library whose only job is to fill the hole of GNOME, and which won't fit in with the application, and won't fit in with the compositor (maybe unless the compositor happens to be GNOME, or someone for whatever reason decides to extend libdecor to match their compositor instead of contributing SSD for said compositor directly).
CommunistCatgirl wrote:
Sat Apr 27, 2024 3:59 am
And there are benefits to CSD as well. For example, visual consistency of different applications is basically impossible unless they are using the same toolkit and were made with the same design language. With SSD the only thing that is achieved is the window decoration looking out of place compared to the window itself. In fact I really like how the black decoration looks in the screenshot of the user from the CSD bug report, it matches the black vignette of the factorio main screen way better than a bright white decoration from a user using light theme on their desktop ever could.
Indeed, there's absolutely a place for CSD, but that's no reason to make it mandatory. I doubt the black color changes when getting in-game where it'll cease to fit in, and you absolutely cannot expect that most applications will do any such color matching (never mind for the tiny marketshare of linux, as I doubt much such effort goes/would go to even windows/macOS).

valantis
Manual Inserter
Manual Inserter
Posts: 2
Joined: Sun Mar 03, 2019 2:51 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by valantis »

A major improvement would be the ability to view production/consumption numbers in terms of percentage of capacity. If my factory is only consuming 15 units/sec of a product while the assemblers could consume 20 units/sec, being able to view that would tell me much more about where the bottlenecks might be than just knowing my factory is producing and consuming 15 units/sec.

linktothepast83
Inserter
Inserter
Posts: 36
Joined: Sun Jan 24, 2021 3:54 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by linktothepast83 »

A small aesthetic change for easier visibility i would like to see, for the graphs to have colored lines on a white background instead of colored lines on a black background. Colors have better visibility on a whiteboard than on a blackboard, hopefully we can have a similar experience ingame as well. I have also seen many great suggestions i would like seen, like for the time frame options to be a slider or a dropdown on the top right without wasting precious height space of the window for it, also them retaining the last value picked when you close the window.
Last edited by linktothepast83 on Sat May 04, 2024 7:21 pm, edited 1 time in total.

Rammix
Burner Inserter
Burner Inserter
Posts: 13
Joined: Sat Nov 12, 2016 1:49 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by Rammix »

Just an unimportant off topic question.
Is (or will be) the multi-pointer functionality (2 or more active mouse cursors) supported in Factorio 2.0? Could be fun playing the game with two mice simultaneously.

FuryoftheStars
Smart Inserter
Smart Inserter
Posts: 2765
Joined: Tue Apr 25, 2017 2:01 pm
Contact:

Re: Friday Facts #408 - Statistics improvements, Linux adventures

Post by FuryoftheStars »

Rammix wrote:
Tue Apr 30, 2024 3:56 pm
Just an unimportant off topic question.
Is (or will be) the multi-pointer functionality (2 or more active mouse cursors) supported in Factorio 2.0? Could be fun playing the game with two mice simultaneously.
I am curious... are there any computer games that support this? I've never actually played one (or heard of one) that did.
My Mods: Classic Factorio Basic Oil Processing | Sulfur Production from Oils | Wood to Oil Processing | Infinite Resources - Normal Yield | Tree Saplings (Redux) | Alien Biomes Tweaked | Restrictions on Artificial Tiles | New Gear Girl & HR Graphics

Post Reply

Return to “News”