Friday Facts #318 - New Tooltips

Regular reports on Factorio development.
Honktown
Smart Inserter
Smart Inserter
Posts: 1036
Joined: Thu Oct 03, 2019 7:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Honktown »

mrvn wrote:
Mon Nov 04, 2019 12:14 pm
Pipes only check once per tick, which defaults to 60 ticks a second (the UPS). Pipes not only have a source, drain and internal buffer. They also have a flow. So while a simple source/drain would get 1/2, 1/4, 1/8, 1/16, ... fluid moved to the next pipe the flow means the fluid remembers it's flowing and pick up throughput. So the math is more complex.

Next to what you suggest: It's been suggested before and you skipped reading a lot of suggestions and discussion on the topic. What you describe is a pressure model for a fluid with no mass and no friction and no turbulence. Far from how a pipe behaves and not something the devs and most players want.
Updating at only 60 ticks a second would imply that they transfer 20 units max a tick. Kinda dumb but I guess?

You're right I didn't read the thread. Normally all the complaining I see is pipes terrible fall-off and how low-performance they are. For adding more complexity to the pipes, I have seen very little voicing. I could just be in the wrong threads/discussions. Most people complain they never use nuclear plants and minimize plumbing because pipes are a performance enough hog late-game.

I do like pipes behaving like singular entities, but it's egregious. Even if I have a pump pushing 1200 units per second, I get like 15 pipes before I end up with <5 fluid per second drainable at the other end. Nuclear being the example where I'd like to have my turbines away from my exchangers/reactor, except I need to have a bunch of pumps to reach >50 steam in the pipes.

There's a limit to how autistic"realistic" the game should be made. If people want realism they should remove 90% of the items from being able to fit in the inventory, and make the rest of the game un-fun as well.

For a net model, it'd be pretty simple to simulate friction: the maximum drain rate and fill rate is proportional to the number of pipes and some pipe constant. To go the full way it'd have to be from any drain to any and all sources, which is terrible performance-wise but doable.
I have mods! I guess!
Link

mrvn
Smart Inserter
Smart Inserter
Posts: 5756
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by mrvn »

Honktown wrote:
Mon Nov 04, 2019 12:17 pm
How does the power line code handle it. Clearly this is a problem that's been solved on the power line side, because when you run low on power, the game doesn't shit itself, but distributes a percent of power to each machine.
The code adds up all the providers and requesters of energy. Then it calculates the fraction produced / requested and goes back over all producers and requesters and takes/gives a fraction of the available or needed energy.

Note: A bit more complex because you have solar vs. steam vs. accumulators and laser turrets vs. everything else vs. accumulators. But it's still just two passes.

TheRaph
Fast Inserter
Fast Inserter
Posts: 232
Joined: Sun Sep 24, 2017 6:31 pm
Contact:

Re: Friday Facts #318 - New Tooltips

Post by TheRaph »

Masterpintsman wrote:
Mon Oct 28, 2019 11:57 pm
TheRaph wrote:
Sat Oct 26, 2019 3:34 pm
Just now my idea to let bots do more than one job:
^ What's in this post, please ^
I think Rseding didn't read it, because he hasn't written in this topic yet. Regarding to FFF it's his part:
Rseding91 wrote: Construction robot tile batching Rseding

gorothdablade
Inserter
Inserter
Posts: 23
Joined: Thu Mar 21, 2019 12:51 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by gorothdablade »

I would think that Belts would be simple since each one on the ground usually (in my experience) points to and from another belt... the exceptions being the beginning/end of the belt line, and tunnels/splitters. These belts also are generally speaking the same type of belt (unless you are combining slower ones into a faster one)

The algorithm could just check is the space this belt is dumping into another belt ghost, if so grab another belt and recur the check for that space (up until current max stack size), if it doesn't reach stack size start back at the initial space and go backwards (back being determined by what shape belt you have)

A similar argument could be made for pipes.

Power poles interestingly enough already are aware of neighboring power poles, (since the ghosts have ghost wires)

Honktown
Smart Inserter
Smart Inserter
Posts: 1036
Joined: Thu Oct 03, 2019 7:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Honktown »

mrvn wrote:
Mon Nov 04, 2019 12:14 pm
...
I checked news and looked through this thread. There's not much detail on the fluid system, though there are a few reddit posts.

I have to ask a serious question of the devs working on it: did they never hear of a f****** current source? In a news post they explicitly say "What it does not allow though is to limit the flow - one wire can, theoretically, run any current, but not so for the pipes, and we don’t want one pipe to be enough to supply whole factory"

https://www.factorio.com/blog/post/fff-260

Did they not talk to any engineers?!

Here's a model in multisim in like 20 minutes (think the capacitances are right - L(R)C's are annoying). Under normal simulations this circuit would oscillate infinitely quickly, but because we can control time, we can force the oscillation to occur at 1/4 cycle intervals: the inductor is charged. the inductor is discharged and C's are charged and the other inductor is flowing. The C's distribute energy to both inductors, and the inductor distributes some of its energy back. A self-balancing circuit. Adjusting the C values for different fluids affects the energy propagation rate (and therefore "friction"). Branches can be simplified. Drains are periodic current drains available when neighbor I greater than 0, filled by current drained.

Their current description is mostly the same, except they have to enforce a flow limit. A current source inherently sets a flow limit.
pipes.png
pipes.png (25.4 KiB) Viewed 6679 times
The mathematics are a bit inverted: LC sets the "period", so the value of interest here is actually a divisor. If not, you'd end up with smaller values required to increase the propagation rate. I think.

Edit: actually, this is a perfectly propagating circuit I think. lol. increase or decrease the C values as needed.
I have mods! I guess!
Link

Koub
Global Moderator
Global Moderator
Posts: 7585
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Koub »

@fluid enthusiasts : do you really want to restart the discussions from :
viewtopic.php?f=38&t=62489
viewtopic.php?f=38&t=63736
viewtopic.php?f=38&t=64009
not to mention :
viewtopic.php?f=6&t=60488
viewtopic.php?f=6&t=61689
and other offsprings ?
Koub - Please consider English is not my native language.

User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1215
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by valneq »

Koub wrote:
Tue Nov 05, 2019 9:34 am
@fluid enthusiasts […]
I believe the previous posts were about changing the electric network from a balance calculation to an actual simulation of currents and voltages.
The threads you mention deal with optimizations of the fluid simulation.

Koub
Global Moderator
Global Moderator
Posts: 7585
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Koub »

valneq wrote:
Tue Nov 05, 2019 3:11 pm
Koub wrote:
Tue Nov 05, 2019 9:34 am
@fluid enthusiasts […]
I believe the previous posts were about changing the electric network from a balance calculation to an actual simulation of currents and voltages.
The threads you mention deal with optimizations of the fluid simulation.
If you reread the topic starting from viewtopic.php?p=464508#p464508, you'll see it's about fluid flow calculations, and how it can be approximated/simulated by electric circuits. At least, it's my understanding, I still may be wrong.
Koub - Please consider English is not my native language.

Honktown
Smart Inserter
Smart Inserter
Posts: 1036
Joined: Thu Oct 03, 2019 7:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Honktown »

I know I sound insulting, but I can appreciate the amount of work the devs put into fluids, and how annoying the problem is. All depends on A) what one expects, B) what's mentally feasible, and, most importantly, C) legacy (i.e. not breaking things or anyone elses' things, too much, at least)

Personally, as long as it behaves in a reasonably sane manner, I couldn't care less. I do get annoyed when I put down 20 pipes and have to struggle to get the fluids going faster than atoms per second, but I consider it a uh, "challenge" of the complexity of playing Factorio
I have mods! I guess!
Link

Serenity
Smart Inserter
Smart Inserter
Posts: 1011
Joined: Fri Apr 15, 2016 6:16 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Serenity »

The new tooltips are very nice, but I would really like another option: disable the "last user" entry. It has no meaning in singleplayer

User avatar
DanGio
Filter Inserter
Filter Inserter
Posts: 398
Joined: Sat May 10, 2014 6:22 pm
Contact:

Re: Friday Facts #318 - New Tooltips

Post by DanGio »

Serenity wrote:
Wed Nov 06, 2019 7:36 pm
The new tooltips are very nice, but I would really like another option: disable the "last user" entry. It has no meaning in singleplayer
+1, it could be even like : last user tooltip entry is always hidden unless it's relevant. This could be triggered by :
- the game has been hosted in multiplayer at least once, or
- the game contains entities placed by different players, or
- whichever trigger is easier to implement & accomplish the same thing

Brambor
Fast Inserter
Fast Inserter
Posts: 163
Joined: Thu May 07, 2015 1:52 pm
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Brambor »

Feedback:
I liked how we saw "903.5 seconds for raw crafting" before, will ultimate precision and time in seconds be possible to customised via default settings? Or it doesn't fit?

Also, inserter turns 302°/s, that's great, but how do I understand how fast an inserter is from that? Factorio looks 3D, and the inserters are not moving only in a circle, sometimes they go up and down the transport belt, or into assembler.
My intuition tells me it transports
(302°/s / 180°) items =(about) 5/3 items per second. Is that correct? Could you write (about 1.67 items/second) in the GUI?
Then perhaps 1.67 items/second * (1 + 11) for stackable?

User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1215
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by valneq »

Brambor wrote:
Thu Nov 07, 2019 12:08 am
[…]
Also, inserter turns 302°/s, that's great, but how do I understand how fast an inserter is from that? Factorio looks 3D, and the inserters are not moving only in a circle, sometimes they go up and down the transport belt, or into assembler.
My intuition tells me it transports
(302°/s / 180°) items =(about) 5/3 items per second. Is that correct? Could you write (about 1.67 items/second) in the GUI?
Then perhaps 1.67 items/second * (1 + 11) for stackable?
I think it is not that simple. Have you ever seen the grey burner inserters failing at grabbing items from a half-empty red belt, or an inserter failing at picking up an item from an underground facing away from the inserter? The inserter simulation in Factorio is more sophisticated, as you just mentioned yourself: they aim at an item before they pick it up, they need to decide which side of the belt to pick it up from, and which side of the belt to drop it at (always far side without special mods).

I believe that the rotation speed is primarily for comparison between different inserter types: burner inserter vs. yellow inserter vs. long-handed inserter vs. fast inserter. That makes it at least a bit easier to understand the relative difference in throughput.

Giving a straight throughput of X items/s would suggest that it is a constant throughput. But it is not quite so predictable.

Honktown
Smart Inserter
Smart Inserter
Posts: 1036
Joined: Thu Oct 03, 2019 7:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Honktown »

Oh oh! I forgot to say I REALLY like the fluid consumption tooltips for the pump and boiler. I wanted them so badly I asked in the mod request section. Got sick of "ok so do I have enough water? ...pump and boile are completely f'ing useless... okay turbine * 2 is the normal way we do things... alright I have x many pairs of turbines and they're consuming y water...". If I wasn't good at math it'd be a huge pain to try and figure out whether or not the water was enough. Sure you can memorize 40:20:1 but then you add modded boilers or start looking at heat exchangers (heat exchanger is missing the fluid consumption/generation tooltip by the way).

A suggestion: instead of having neighbor bonus as %, have it as MW. It'd be much clearer how it affects things. Starts off at 0 MW neighbor bonus, and when you give it a neighbor, it's 40MW. Someone will want to know if it's consistent, so they give it another neighbor: 80MW bonus in the tooltip. A lot more intuitive that "a neighbor gives it 40MW". It's not necessary to know it's a percent, and people will catch that if they use a modded reactor that has higher power: "this is an 80 MW reactor and the neighbor bonus is 80MW. It's 100% more per neighbor, not 40MW"
valneq wrote:
Thu Nov 07, 2019 2:29 am
Brambor wrote:
Thu Nov 07, 2019 12:08 am
[…]
Also, inserter turns 302°/s, that's great, but how do I understand how fast an inserter is from that? Factorio looks 3D, and the inserters are not moving only in a circle, sometimes they go up and down the transport belt, or into assembler.
My intuition tells me it transports
(302°/s / 180°) items =(about) 5/3 items per second. Is that correct? Could you write (about 1.67 items/second) in the GUI?
Then perhaps 1.67 items/second * (1 + 11) for stackable?
I think it is not that simple. Have you ever seen the grey burner inserters failing at grabbing items from a half-empty red belt, or an inserter failing at picking up an item from an underground facing away from the inserter? The inserter simulation in Factorio is more sophisticated, as you just mentioned yourself: they aim at an item before they pick it up, they need to decide which side of the belt to pick it up from, and which side of the belt to drop it at (always far side without special mods).

I believe that the rotation speed is primarily for comparison between different inserter types: burner inserter vs. yellow inserter vs. long-handed inserter vs. fast inserter. That makes it at least a bit easier to understand the relative difference in throughput.

Giving a straight throughput of X items/s would suggest that it is a constant throughput. But it is not quite so predictable.
Maybe they should have an item rate and a "miss speed" i.e. it can deliver x many items per second, but you'll run into problems if the belts above y speed (or a slightly slower corner, let's ignore that). The two things I'd want to know with inserters are a) the delivery rate and b) when is a belt too fast. Can be calculated from the inverse of the turning rate, and the hunt speed or whatever it is internally.
I have mods! I guess!
Link

mrvn
Smart Inserter
Smart Inserter
Posts: 5756
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by mrvn »

Brambor wrote:
Thu Nov 07, 2019 12:08 am
Feedback:
I liked how we saw "903.5 seconds for raw crafting" before, will ultimate precision and time in seconds be possible to customised via default settings? Or it doesn't fit?

Also, inserter turns 302°/s, that's great, but how do I understand how fast an inserter is from that? Factorio looks 3D, and the inserters are not moving only in a circle, sometimes they go up and down the transport belt, or into assembler.
My intuition tells me it transports
(302°/s / 180°) items =(about) 5/3 items per second. Is that correct? Could you write (about 1.67 items/second) in the GUI?
Then perhaps 1.67 items/second * (1 + 11) for stackable?
Inserters have only one joint to turn, the base. They turn in 2D. The rest is the arm elongating and shortening, which is much slower.

Also the arm rotates 180° to deliver an item but then it has to go back 180° to the starting point. So it would be 302/360 or 5/6 items/s.

User avatar
valneq
Smart Inserter
Smart Inserter
Posts: 1215
Joined: Fri Jul 12, 2019 7:43 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by valneq »

mrvn wrote:
Thu Nov 07, 2019 10:40 am
Also the arm rotates 180° to deliver an item but then it has to go back 180° to the starting point. So it would be 302/360 or 5/6 items/s.
This is a reasonable estimate, however I am pretty sure this is not exact: When you have a regular inserter in front of a completely full belt, the first item it finds is not exactly in the center in front of it, but a bit to the left or to the right. So in most cases it it will not turn exactly 180° for each item transport.

mrvn
Smart Inserter
Smart Inserter
Posts: 5756
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by mrvn »

valneq wrote:
Thu Nov 07, 2019 2:22 pm
mrvn wrote:
Thu Nov 07, 2019 10:40 am
Also the arm rotates 180° to deliver an item but then it has to go back 180° to the starting point. So it would be 302/360 or 5/6 items/s.
This is a reasonable estimate, however I am pretty sure this is not exact: When you have a regular inserter in front of a completely full belt, the first item it finds is not exactly in the center in front of it, but a bit to the left or to the right. So in most cases it it will not turn exactly 180° for each item transport.
If the belt moves it chases the item and might have to turn 190° till it catches up. Inserters are reactive and not predictive. It turns in the direction that is shorter for where the pick up item is currently. Not where it might be when it arrives to pick it up. It's certainly not exact even if the inserter doesn't miss the item and has to go for the next one.

Ecconia
Burner Inserter
Burner Inserter
Posts: 15
Joined: Thu May 10, 2018 5:26 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by Ecconia »

Uff, I have been using it for a while now, BUT

In my opinion, there is something wrong with the sorting of entries.

The whole design looks really nice, but its kind of darker and more details, which distracts my eyes from the relevant data.
In the previous Tooltips, you had Signals and the "remaining ore of a patch" at the bottom. Which was nice, since these two are the most important information which I frequently check. However both moved somewhere to the top.

The almost only non-static information has been moved away from a catchy location. I am looking somewhere in the middle and have then move my eyes to a corner and always miss the location of the remaining ore amount, since I have to focus on where in the toolbox it is.
Screenshot from 2019-11-24 21-42-21.png
Screenshot from 2019-11-24 21-42-21.png (41.13 KiB) Viewed 6074 times
A similar issue happened to the inventory crafting receipts. There used to be a very important information right at the top of every receipt. That was the crafting time. By no means the font size of that information shrinked. But the space and the location narrowed a lot. Makes it kind of difficult to catch it when quickly looking at it.
Screenshot from 2019-11-24 21-43-52.png
Screenshot from 2019-11-24 21-43-52.png (71.99 KiB) Viewed 6074 times
There is no real boundary to the section below it, cause the colors are almost the same (except some very small line). There also is no catchy item anymore. Its a small mini-clock now.

With these three for me important information to be at annoying positions, it kind of makes it hard for me to enjoy the nice looks of the new Tooltips.
I hope you have not completely finalized the Tooltips and still find room to improve them.

Best Regards, ~Ecconia

EDIT: Also if for example a Miner has no resources anymore, one still tries to find that ore symbol, which is not there anymore. Instead of checking the location.
Last edited by Ecconia on Wed Nov 27, 2019 10:44 am, edited 1 time in total.
Factorio API doc is my sworn enemy who keeps me raging! One day I will delete/defeat you!

mrvn
Smart Inserter
Smart Inserter
Posts: 5756
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #318 - New Tooltips

Post by mrvn »

Having chest content or signals at the top/middle also means that the rest of the information shifts around whenever the content/signals need an extra line or fewer lines. With requester/provider chests that can happen a lot.

Post Reply

Return to “News”