Alt-F4 #52 - Fluidic Power Benchmarking
-
- Long Handed Inserter
- Posts: 58
- Joined: Fri Aug 28, 2020 12:07 pm
- Contact:
Alt-F4 #52 - Fluidic Power Benchmarking
For issue #52, stringweasel returns with part two of the Fluidic Power Experiment where he dives into the rather surprising performance implications of his creation. If you liked last week’s article, you’ll like the second part this week. What a surprise!
Continue reading: https://alt-f4.blog/ALTF4-52/
Continue reading: https://alt-f4.blog/ALTF4-52/
-
- Filter Inserter
- Posts: 351
- Joined: Thu Jun 01, 2017 12:05 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Huh, interesting read, thanks!
Wouldn't that imply that ideas like viewtopic.php?t=68761 are not inherently as imperformant as one would assume?
Wouldn't that imply that ideas like viewtopic.php?t=68761 are not inherently as imperformant as one would assume?
- Stringweasel
- Filter Inserter
- Posts: 411
- Joined: Thu Apr 27, 2017 8:22 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
I think it's not as inperformant as it initially seemed, at least by the players. We can probably get quite far with more realistic electricity, but I do not think it should be included in vanilla Factorio.
It will still have an big influence on size of the bases you can build. There's a reason why players still go for solar instead of nuclear at massive scale. Now imagine a nuclear reactor almost the size of your megabase, all with fluid calculations. Personally I would rather be able to build at an gigantic scale than having more realistic electricity.
IMO it should stay as a mod. I'd rather have more control over electricity from the modding API to reduce the effect of the Electric Network. I'm still thinking of a good modding interface request to make to achieve this, so if anyone has ideas please share
And then there's of course a middle ground they could do as well, similar to the other mods I mentioned in Part 1. But IMO I'd rather have fully realisitic, or fully unrealistic electricity, not some mix of it.
Not sure what others would like though
It will still have an big influence on size of the bases you can build. There's a reason why players still go for solar instead of nuclear at massive scale. Now imagine a nuclear reactor almost the size of your megabase, all with fluid calculations. Personally I would rather be able to build at an gigantic scale than having more realistic electricity.
IMO it should stay as a mod. I'd rather have more control over electricity from the modding API to reduce the effect of the Electric Network. I'm still thinking of a good modding interface request to make to achieve this, so if anyone has ideas please share
And then there's of course a middle ground they could do as well, similar to the other mods I mentioned in Part 1. But IMO I'd rather have fully realisitic, or fully unrealistic electricity, not some mix of it.
Not sure what others would like though
Alt-F4 Author | Factorio Modder
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |Weasel's Demolition Derby
Official Contributor to Space Exploration
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |
Official Contributor to Space Exploration
Re: Alt-F4 #52 - Fluidic Power Benchmarking
You mean something like this?Stringweasel wrote: ↑Fri Nov 12, 2021 6:45 pm It will still have an big influence on size of the bases you can build. There's a reason why players still go for solar instead of nuclear at massive scale. Now imagine a nuclear reactor almost the size of your megabase, all with fluid calculations. Personally I would rather be able to build at an gigantic scale than having more realistic electricity.
That's a 2x25 reactor filling trains with 386 fluid wagons, which are about 2.8km long. Just the reactor alone means I can only run the game at ~170 UPS because the fluid/heat computations eat so much CPU.
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Maybe you could avoid majority of electric statistic collection by converting the fluidic power into heat and use heat using entities?
Even if the heat uses as much time as the electric statistics collection one benefit would be that heat is handled by multiple threads while electricity only uses one thread from your description.
Even if the heat uses as much time as the electric statistics collection one benefit would be that heat is handled by multiple threads while electricity only uses one thread from your description.
- Stringweasel
- Filter Inserter
- Posts: 411
- Joined: Thu Apr 27, 2017 8:22 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Thought about that, but it doesn't work, because heat entities doesn't have undergrounds (or links). So the power poles will have to touch one another, which will be kind of weird.
Alt-F4 Author | Factorio Modder
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |Weasel's Demolition Derby
Official Contributor to Space Exploration
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |
Official Contributor to Space Exploration
- Stringweasel
- Filter Inserter
- Posts: 411
- Joined: Thu Apr 27, 2017 8:22 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Also, the issue isn't the fluidic entities, and I'll have the same issue with heat entities. The problem is converting fluid (or heat) to electricity and back. But I think you're suggesting letting all entities be heat powered and skip that step? It would theorerically work, but I don't really want to do that. Then every machine in the game needs to be modified to be heat/fluid powered, which is almost impossible to maintain, and I'm not even sure how I will "connect" machines to the poles.
Alt-F4 Author | Factorio Modder
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |Weasel's Demolition Derby
Official Contributor to Space Exploration
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |
Official Contributor to Space Exploration
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Yes. Keep the fluid stuff as is. But the last step is converting fluid to heat and using heat powered machines instead of electricity.Stringweasel wrote: ↑Fri Nov 12, 2021 9:36 pmAlso, the issue isn't the fluidic entities, and I'll have the same issue with heat entities. The problem is converting fluid (or heat) to electricity and back. But I think you're suggesting letting all entities be heat powered and skip that step? It would theorerically work, but I don't really want to do that. Then every machine in the game needs to be modified to be heat/fluid powered, which is almost impossible to maintain, and I'm not even sure how I will "connect" machines to the poles.
The idea would be to have an invisible heat input in the center (upper left corner for 2x2 entities) of each machine and a line of invisible heat pipes to the nearest power pole. The power pole would be a fluid-to-heat converter. It would be important to place the heat pipes so that the power poles don't connect with each other. At least not in general, a few connections are fine. The goal is to have many heat networks though to take advantage of the threads.
It's too bad there isn't a connected heat pipe and connected pipe entity. That would be much better and would allow building an actual heat network between poles and map voltage drops to heat loss.
-
- Filter Inserter
- Posts: 351
- Joined: Thu Jun 01, 2017 12:05 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
What could help would be the option to disable statistics for a network from mods, no?Stringweasel wrote: ↑Fri Nov 12, 2021 6:45 pm IMO it should stay as a mod. I'd rather have more control over electricity from the modding API to reduce the effect of the Electric Network. I'm still thinking of a good modding interface request to make to achieve this, so if anyone has ideas please share
Also, maybe a way to teleport fluids. Like "linked belts", so you don't have the placement restrictions the mod currently has.
What I'd also still love to see would be a way to mark powerpoles as non-connected despite having a wired connection. You know, have a visual connection but technically separate electrical networks.
Especially a combination of the latter two would really improve the "fluidic power" thing I think.
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Doesn't look as nice but you can draw a line between the poles.DarkShadow44 wrote: ↑Fri Nov 12, 2021 11:54 pmWhat could help would be the option to disable statistics for a network from mods, no?Stringweasel wrote: ↑Fri Nov 12, 2021 6:45 pm IMO it should stay as a mod. I'd rather have more control over electricity from the modding API to reduce the effect of the Electric Network. I'm still thinking of a good modding interface request to make to achieve this, so if anyone has ideas please share
Also, maybe a way to teleport fluids. Like "linked belts", so you don't have the placement restrictions the mod currently has.
What I'd also still love to see would be a way to mark powerpoles as non-connected despite having a wired connection. You know, have a visual connection but technically separate electrical networks.
Especially a combination of the latter two would really improve the "fluidic power" thing I think.
- NotRexButCaesar
- Smart Inserter
- Posts: 1133
- Joined: Sun Feb 16, 2020 12:47 am
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
I think that there should just be an interface option to disable the production statistics, like there is an option to disable replay.Stringweasel wrote: ↑Fri Nov 12, 2021 6:45 pm IMO it should stay as a mod. I'd rather have more control over electricity from the modding API to reduce the effect of the Electric Network. I'm still thinking of a good modding interface request to make to achieve this, so if anyone has ideas please share
Last edited by NotRexButCaesar on Sat Nov 13, 2021 3:42 am, edited 1 time in total.
Ⅲ—Crevez, chiens, si vous n'étes pas contents!
-
- Filter Inserter
- Posts: 351
- Joined: Thu Jun 01, 2017 12:05 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Mhhh, not sure how that looks.
I think it should be more specialized than that. I wouldn't want to give up all statistics just for that.NotRexButCaesar wrote: ↑Sat Nov 13, 2021 2:01 am I think that there should just be an interface option to disable the production statistics, just like there is an option to disable replay.
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Sounds like https://wiki.factorio.com/Prototype/Rec ... from_stats but for boilers/generators.DarkShadow44 wrote: ↑Sat Nov 13, 2021 3:06 am I think it should be more specialized than that. I wouldn't want to give up all statistics just for that.
- Stringweasel
- Filter Inserter
- Posts: 411
- Joined: Thu Apr 27, 2017 8:22 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Exactly, that could work. Like Silari said:DarkShadow44 wrote: ↑Fri Nov 12, 2021 11:54 pm What could help would be the option to disable statistics for a network from mods, no?
I don't think it's a clean solution though. Hiding it from statistics means it will also not apply to the overall production/consumption of that network. This means your "Production" and "Satification" bar graphs will be wrong, and it might show you're on the brink of having a brownout, but actually you have enough power. Or visa versa. As Silari said it's similar to "hide recipe from production" and could be handled the same. We have control over recipes and can create cases where the Production/Consumption graphs don't make sense either, but,the power statistics is the only real feedback you get on your power production as a player, while for item production it's more visual with your belts, trains, etc.Silari wrote: ↑Sat Nov 13, 2021 5:15 am Sounds like https://wiki.factorio.com/Prototype/Rec ... from_stats but for boilers/generators.
Essentially, your machine might run slow and you wonder if it has low power. You click on the power pole to open the graph (or hover over it) and see a full green bar (or empty?), because the generator is hidden froms statistics. But internally it is actually running slower because of low power, and you can't see or verify it. IMO it's not very intuitive
Alt-F4 Author | Factorio Modder
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |Weasel's Demolition Derby
Official Contributor to Space Exploration
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |
Official Contributor to Space Exploration
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Why would you click on the power pole instead of just hovering over it and checking the electricity bar?Stringweasel wrote: ↑Sat Nov 13, 2021 8:16 amExactly, that could work. Like Silari said:DarkShadow44 wrote: ↑Fri Nov 12, 2021 11:54 pm What could help would be the option to disable statistics for a network from mods, no?
I don't think it's a clean solution though. Hiding it from statistics means it will also not apply to the overall production/consumption of that network. This means your "Production" and "Satification" bar graphs will be wrong, and it might show you're on the brink of having a brownout, but actually you have enough power. Or visa versa. As Silari said it's similar to "hide recipe from production" and could be handled the same. We have control over recipes and can create cases where the Production/Consumption graphs don't make sense either, but,the power statistics is the only real feedback you get on your power production as a player, while for item production it's more visual with your belts, trains, etc.Silari wrote: ↑Sat Nov 13, 2021 5:15 am Sounds like https://wiki.factorio.com/Prototype/Rec ... from_stats but for boilers/generators.
Essentially, your machine might run slow and you wonder if it has low power. You click on the power pole to open the graph (or hover over it) and see a full green bar (or empty?), because the generator is hidden froms statistics. But internally it is actually running slower because of low power, and you can't see or verify it. IMO it's not very intuitive
Re: Alt-F4 #52 - Fluidic Power Benchmarking
It's just a straight line instead of a wire that dips in between poles. And no shadow.
Re: Alt-F4 #52 - Fluidic Power Benchmarking
Heat using machines have the issue with connecting them, needing a number of heat pipes from power pole to machine. So maybe burner machines would be simpler like this:Stringweasel wrote: ↑Fri Nov 12, 2021 9:36 pmAlso, the issue isn't the fluidic entities, and I'll have the same issue with heat entities. The problem is converting fluid (or heat) to electricity and back. But I think you're suggesting letting all entities be heat powered and skip that step? It would theorerically work, but I don't really want to do that. Then every machine in the game needs to be modified to be heat/fluid powered, which is almost impossible to maintain, and I'm not even sure how I will "connect" machines to the poles.
The top is how it should look in the game with the power switch being the transformer. Bottom is what it actually is underneath. The transformer (chemical plant) takes the fluidic power and produces solid power and dumps it in a connected chest. The power poles are connected chests with the same ID as the transformer and have inserters that load the solid power into every entity in the rang of the power pole.
The connected chests and inserters can be compressed into a single tile with the pick-up position on the chest and drop-off on the center of each entity. Make the inserter use void energy and insanely fast to extend/rotate. Drawback for this method would be that burner machines have no drain. Advantage would be that a machine can have inserters from multiple unconnected power poles and would take energy from each.
- Stringweasel
- Filter Inserter
- Posts: 411
- Joined: Thu Apr 27, 2017 8:22 pm
- Contact:
Re: Alt-F4 #52 - Fluidic Power Benchmarking
This is probably possible. The annoying part is that sometimes power poles slightly rotate when add you circuit wire. There's no event for when that happens, and after that the copper cable will hang in the air. You can probably just connect it "close enough", but it's not a perfect solution.
That's a cool idea. As you mentioned though this will mess with burner machines. And also, it might behave odd for 1x1 machines like inserters. You would be able to pick up fluidic-solid-fuel from lamps for example. Inserters should be fine I guess having a chest and another inserter inside them, because it shouldn't change the input/output location. And you're going careful where you put it for assemblers and such so that normal inserters don't accidentally pick it up, or put something in the hidden chest.
In that way every solution has some side effect. A large portion of time during the development of Fluidic Power was going towards not accidentally connecting the power poles to normal poles. It's so easy to do because the power pole functions like any other underground pipe.
This makes me wonder. Maybe you could turn off power statistics for a specific force. Then I simply make all the fluid components part of that force, and the force simply doesn't have the ability to read statistics. Although they would probably not want to have something like that as a runtime setting, and rather a startup setting.
Alt-F4 Author | Factorio Modder
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |Weasel's Demolition Derby
Official Contributor to Space Exploration
My Mods: Hall of Fame | Better Victory Screen | Fluidic Power | Biter Power | Space Spidertron | Spidertron Dock |
Official Contributor to Space Exploration
Re: Alt-F4 #52 - Fluidic Power Benchmarking
The fuel would be only in the connected chests. For an inserter to pick it up accidentally would mean you have an inserter with the power pole as pickup point. Which doesn't make any sense so it's ok if that breaks.Stringweasel wrote: ↑Sat Nov 13, 2021 9:46 amThis is probably possible. The annoying part is that sometimes power poles slightly rotate when add you circuit wire. There's no event for when that happens, and after that the copper cable will hang in the air. You can probably just connect it "close enough", but it's not a perfect solution.
That's a cool idea. As you mentioned though this will mess with burner machines. And also, it might behave odd for 1x1 machines like inserters. You would be able to pick up fluidic-solid-fuel from lamps for example. Inserters should be fine I guess having a chest and another inserter inside them, because it shouldn't change the input/output location. And you're going careful where you put it for assemblers and such so that normal inserters don't accidentally pick it up, or put something in the hidden chest.
You wouldn't be able to pick up fuel from a "lamp" unless it's a boiler type entity with fuel pass through. You would set a fuel type so the fuel isn't usable for normal burner machines like burner inserters. I guess electric boilers that have a recipe that also outputs items would break. Because the inserter would pick up both the output and fuel. Can't win them all.