Additions to the fluid system
Moderator: ickputzdirwech
Additions to the fluid system
Hello there,
i have some ideas (or wishes ;D) how to improve the fluid system.
1. Separated properties for liquids and gases
- You define one fluid prototype, this contains boiling and freeze (minimum) temperature.
- If you hover a pipe, there can be a property that shows "liquid" or "gaseous".
Not so important stuff:
- Depending on the temperature of fluid in the pipe, the pressure and speed are values for gases (low) or fluids (higher).
- A property "viscosity" would be great, that also affects speed and pressure.
- Each pipe decreases the temperature by a certain value (e.g. 0.2 degree).
2. More Temperature working
- It should be possible to define a (minimum and/or maximum) temperature in a recipe, e.g. you need 60-80 degree hot water to craft the recipe.
- If the fluid has not the needed temperature, the process takes more time (like efficiency of steam engines now).
- The same with result fluids of recipes.
If no temperature is given the ambient temperature is the result temperature.
- A cooling machine wouldnt be bad.
- If pipe A holds cold water and pipe B holds hot water, the average of both temperature is formed (like now with the fluid mixing if you mix two fluids).
- boilers heat water infinitely (or let's say max. to 500 degree ), but the higher the temperature of fluid the more fuel the boiler needs.
Hope that ideas will be implemented to the game
LG
i have some ideas (or wishes ;D) how to improve the fluid system.
1. Separated properties for liquids and gases
- You define one fluid prototype, this contains boiling and freeze (minimum) temperature.
- If you hover a pipe, there can be a property that shows "liquid" or "gaseous".
Not so important stuff:
- Depending on the temperature of fluid in the pipe, the pressure and speed are values for gases (low) or fluids (higher).
- A property "viscosity" would be great, that also affects speed and pressure.
- Each pipe decreases the temperature by a certain value (e.g. 0.2 degree).
2. More Temperature working
- It should be possible to define a (minimum and/or maximum) temperature in a recipe, e.g. you need 60-80 degree hot water to craft the recipe.
- If the fluid has not the needed temperature, the process takes more time (like efficiency of steam engines now).
- The same with result fluids of recipes.
If no temperature is given the ambient temperature is the result temperature.
- A cooling machine wouldnt be bad.
- If pipe A holds cold water and pipe B holds hot water, the average of both temperature is formed (like now with the fluid mixing if you mix two fluids).
- boilers heat water infinitely (or let's say max. to 500 degree ), but the higher the temperature of fluid the more fuel the boiler needs.
Hope that ideas will be implemented to the game
LG
Last edited by Natha on Sat Apr 25, 2015 1:22 pm, edited 10 times in total.
Re: Additions to the fluid system
It's not the first time I see idea about enchancing fluid system and introducing gases. It's much more likely to be implemented (I'm big fan of this idea) if you (re)design and describe the fluid/gas mechanics - how should temperature work, how it should spread and dissolve into enviroment, etc. For now it is very simple and will need big rework to allow what you ask for.
Re: Additions to the fluid system
The thing with temperature isnt very difficultpsorek wrote:It's not the first time I see idea about enchancing fluid system and introducing gases. It's much more likely to be implemented (I'm big fan of this idea) if you (re)design and describe the fluid/gas mechanics - how should temperature work, how it should spread and dissolve into enviroment, etc. For now it is very simple and will need big rework to allow what you ask for.
Water from pump has ambient temperature (or a little bit below).
Fluids/gases can be heated/cooled in boilers/cooling machines.
Chemical recipes (reactions) should define a specific temperature for each liquid/gaseous input/output.
Maybe the temperature of fluids in pipes can slowly adjusted with the ambient temperature.
Re: Additions to the fluid system
Yes very nice you have listed many things that are like the real world,
But what would any of this add to the gameplay?
Its not much of an 'improvement' to list how things can be different
But what would any of this add to the gameplay?
Its not much of an 'improvement' to list how things can be different
Re: Additions to the fluid system
Hmm...its mostly for chemical processes...In my current mod i need gases for the chemical reactions and liquefied gases to store the gases efficient in barrels/tanks. The "improvement" would take me some work and its realistic, because the most chemical processes need high temperature/produce high temperature.
Re: Additions to the fluid system
Well, it will not be. Or better: I really doubt it...
Fluids have this dependency between
- heat,
- pressure and
- volume.
Which is too much afford to calculate in a game.
See this simulations to understand the problem:
https://phet.colorado.edu/de/simulation/gas-properties
http://www.phy.ntnu.edu.tw/ntnujava/index.php?topic=25
and many more, if you search for thermodynamic and gas....
Fluids have this dependency between
- heat,
- pressure and
- volume.
Which is too much afford to calculate in a game.
See this simulations to understand the problem:
https://phet.colorado.edu/de/simulation/gas-properties
http://www.phy.ntnu.edu.tw/ntnujava/index.php?topic=25
and many more, if you search for thermodynamic and gas....
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
For my usage, point 2 and 1b (without adjust pressure and speed) would be sufficient. I think that isnt too difficult to implement And maybe they can implement a entry in pipe gui (if you hover the gui) whether the fluid is liquid or gaseous (these calculations shouldnt be too difficult too).
Re: Additions to the fluid system
Ok, tell me please how that should work in detail?
- What should happen, if you put a liquid into a row of boilers and some liquid reach the temperature you want within a tick (=change the state), and some not?
- How do you want to reach an exact temperature? Which kind of regulation do you need/want?
- I didn't understand your correlation between pressure and speed for gases: Why are pressure and speed for gases low and for fluids high?
- What should happen, if you put a liquid into a row of boilers and some liquid reach the temperature you want within a tick (=change the state), and some not?
- How do you want to reach an exact temperature? Which kind of regulation do you need/want?
- I didn't understand your correlation between pressure and speed for gases: Why are pressure and speed for gases low and for fluids high?
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
1. you should know how a boiler heats a certain fluid (know heat capacity and so on), so you can calculate how many boilers/coolers and distances between those you need to reach a certain temperature.ssilk wrote:Ok, tell me please how that should work in detail?
- What should happen, if you put a liquid into a row of boilers and some liquid reach the temperature you want within a tick (=change the state), and some not?
- How do you want to reach an exact temperature? Which kind of regulation do you need/want?
- I didn't understand your correlation between pressure and speed for gases: Why are pressure and speed for gases low and for fluids high?
2. -,,-
3. gases need more pressure than liquids to flow in the same speed (because the particles are far away from each other).
Re: Additions to the fluid system
Ok, that I meant with "detail". This is not detailed.Natha wrote:1. you should know how a boiler heats a certain fluid (know heat capacity and so on), so you can calculate how many boilers/coolers and distances between those you need to reach a certain temperature.
Let's say you have a pipe with boilers:
Code: Select all
input >>>============ O O O O O O O O O O O O O O ===================>>>> output
Water, 15 degrees Boilers Steam, 120 degrees
Now I reduce the flow to 50%, or even lower: What comes out then?
Now I increase the flow to 200% or much more: What comes out then?
How can I control the boilers, that they heat "just enough"?
How would this simple system behave, if this system changes from 20 UOL throghput suddenly to only 1 UOL? How can I prevent it from overheating?
If I put the hot steam into a storage tank and the temperature sinks, so that that the output is just water with 80 degrees, how does Steam and Water that mix together in the tank?
Wouldn't that block the pipes: An chemical plant needs steam with 120 degrees. Now there comes water with only 80 degrees. The fluid won't be taken and blocks now the input of the chem. plant?
I don't say it isn't a good idea, I just want to know, what you think how this can work.
Factorio is a game and doesn't need to be physically correct, but this is just the opposite of what is physically correct. Or better: It depends on many more factors and a limited model like yours will confuse, if it behaves differently then awaited. What is awaited behavior? Good question.3. gases need more pressure than liquids to flow in the same speed (because the particles are far away from each other).
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
- bobingabout
- Smart Inserter
- Posts: 7352
- Joined: Fri May 09, 2014 1:01 pm
- Contact:
Re: Additions to the fluid system
I think the best method for "Water goes in, steam goes out" for boilers, is exactly that, Water goes in, Steam comes out, and nothing else. so one boiler can only produce so much steam, even if it has more water. this steam then powers the generator turbines, rather than the temperature of the fluid going into it.
The problem with this is that boilers then require an "input" and an "Output" that explicitly has Water in and Steam out, or auto-recipe kind of like how the smelting furnaces work now. This is less of a problem Logically (how the game does it in code) and more of a problem Practically (using it in game) Because that means the current daisy chain method we currently use on boilers will no longer work.
To get around this you could consider the whole block of boilers as the machine, so you can daisy chain boilers, and have water in, and steam out. But then still there's a further issue:
>>>====oooo====oooo====>>>
boilers with a few pipes in the middle. the pipes in the middle could be pipe to ground for a reason, maybe there's things in the way. would the game be able to detech those middle pipes as still being part of the boiler chain?
The problem with this is that boilers then require an "input" and an "Output" that explicitly has Water in and Steam out, or auto-recipe kind of like how the smelting furnaces work now. This is less of a problem Logically (how the game does it in code) and more of a problem Practically (using it in game) Because that means the current daisy chain method we currently use on boilers will no longer work.
To get around this you could consider the whole block of boilers as the machine, so you can daisy chain boilers, and have water in, and steam out. But then still there's a further issue:
>>>====oooo====oooo====>>>
boilers with a few pipes in the middle. the pipes in the middle could be pipe to ground for a reason, maybe there's things in the way. would the game be able to detech those middle pipes as still being part of the boiler chain?
Re: Additions to the fluid system
I think not.
Think of something like this:
Not very useful, but possible and valid design.
Think of something like this:
Code: Select all
O O O O O O O O ======= >
====O O O O O O O O
O O O O O O O O ======= >
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
The water is heated faster (more per boiler) => 150+ degreeNow I reduce the flow to 50%, or even lower: What comes out then?
The water is heated slower (less per boiler) => 100 degreeNow I increase the flow to 200% or much more: What comes out then?
The flow can be controlled with pumps.
Maybe "smart" boilers?How can I control the boilers, that they heat "just enough"?
The amount of UOL doesnt rly matter, only the flow speed (ok, this is one point which is not very realistic )How would this simple system behave, if this system changes from 20 UOL throghput suddenly to only 1 UOL? How can I prevent it from overheating?
if you neglect that tanks are isolated and the contained fluid shouldnt change its temperature, ALL fluid in tank is cooled, not only parts of the fluid.If I put the hot steam into a storage tank and the temperature sinks, so that that the output is just water with 80 degrees, how does Steam and Water that mix together in the tank?
[/quote]Wouldn't that block the pipes: An chemical plant needs steam with 120 degrees. Now there comes water with only 80 degrees. The fluid won't be taken and blocks now the input of the chem. plant?
You have to control you pipes, and if necessary you must lead away the excess fluid.
I notice that my idea isnt so simple as i actually thought (even seemingly simple things like min/max temperature for recipe inputs/outputs)
Re: Additions to the fluid system
If liquids would be simple, I could predict the weather for the next 3 years.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
For those problems we should prefer my suggestion 1b (one fluid with minimum (freeze) and boil temperature). The boilers should work like now, incoming fluid is heated, depending on coal in the boiler, and the heated fluid is the output. So if one boiler in the middle of the chain heats water to 100 degree, it is still water. The next boilers heat th water to 100+ degree and so on (infinitely high temperatures (or, let's say, 500 degree)). But steam engines will only work efficient with water over 100 degree. If the water is below 100 degree, it would work, but not efficient (like now).bobingabout wrote:I think the best method for "Water goes in, steam goes out" for boilers, is exactly that, Water goes in, Steam comes out, and nothing else. so one boiler can only produce so much steam, even if it has more water. this steam then powers the generator turbines, rather than the temperature of the fluid going into it.
The problem with this is that boilers then require an "input" and an "Output" that explicitly has Water in and Steam out, or auto-recipe kind of like how the smelting furnaces work now. This is less of a problem Logically (how the game does it in code) and more of a problem Practically (using it in game) Because that means the current daisy chain method we currently use on boilers will no longer work.
To get around this you could consider the whole block of boilers as the machine, so you can daisy chain boilers, and have water in, and steam out. But then still there's a further issue:
>>>====oooo====oooo====>>>
boilers with a few pipes in the middle. the pipes in the middle could be pipe to ground for a reason, maybe there's things in the way. would the game be able to detech those middle pipes as still being part of the boiler chain?
Maybe it can be implemented, that recipes, which need fluid with a certain temperature, only work efficient if the fluid has the certain temperature, otherwise e.g. the crafting time will be decreased.
Re: Additions to the fluid system
I think the boilers could be made rotatable, and have one axis for water, one axis for steam.
So water flows left and right through a row of boilers, and steam flows up and down. Or rotate the boilers for the opposite.
So you feed water into the left most boiler. It applies heat. If the temperature is less than boiling, no steam is created. If the temperature is boiling, steam is created, and flows up/down.
So the water stays flowing left to right, with some turned into steam and sent out the top pipes. I think the 'steam engines' could be built this way as well. Steam in one axis, condensate in the other.
So water flows left and right through a row of boilers, and steam flows up and down. Or rotate the boilers for the opposite.
So you feed water into the left most boiler. It applies heat. If the temperature is less than boiling, no steam is created. If the temperature is boiling, steam is created, and flows up/down.
Code: Select all
^ To steam engines
|
|||||
====BBBBB==== water keeps flowing, but would be at 100(if the boilers are adding enough energy)
^offshore pump here
Re: Additions to the fluid system
Thats also a good idea. But I think, the idea like the current way (water in, warmer water out; steam engines only work efficient if water is between 100 and ... 150 degree) is the best (easier to set up)starholme wrote:I think the boilers could be made rotatable, and have one axis for water, one axis for steam.
So water flows left and right through a row of boilers, and steam flows up and down. Or rotate the boilers for the opposite.
So you feed water into the left most boiler. It applies heat. If the temperature is less than boiling, no steam is created. If the temperature is boiling, steam is created, and flows up/down.
So the water stays flowing left to right, with some turned into steam and sent out the top pipes. I think the 'steam engines' could be built this way as well. Steam in one axis, condensate in the other.Code: Select all
^ To steam engines | ||||| ====BBBBB==== water keeps flowing, but would be at 100(if the boilers are adding enough energy) ^offshore pump here
Last edited by Natha on Sun Apr 26, 2015 9:30 am, edited 1 time in total.
Re: Additions to the fluid system
I like this idea!starholme wrote:So the water stays flowing left to right, with some turned into steam and sent out the top pipes. I think the 'steam engines' could be built this way as well. Steam in one axis, condensate in the other.Code: Select all
^ To steam engines | ||||| ====BBBBB==== water keeps flowing, but would be at 100(if the boilers are adding enough energy) ^offshore pump here
There is just one problem: Is this idea useful? What needs the player to do? How much is the afford? Is this worth playing? What game-value does it bring?
My thoughts are:
- That would be a big afford to heat steam from 100 to 150 degrees, compared to now, where I need to heat it just to 100 degrees without state-change.
- Even if it would make sense: What did the player has from it? More energy for less coal? Only that? Why should players use that?
- I think we are speaking here not longer from steam engines, more about steam turbines. 600 degrees steam.
That would indeed bring something new into the game, a much bigger energy per UOL then now.
Summary: I see the game-value of having different fluid states not in more power, other generators or so, I see, that we can store more energy per space. That will be very useful together with some kind of regulation (circuit network), to have really big power, if you really need it.
. o O ( .... solar eclipses, they love those "long nights", you know ... )
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
Ah... I remembered some more or less interesting discussion in the Steam-Mod:
https://forums.factorio.com/forum/vie ... 234#p60178
https://forums.factorio.com/forum/vie ... 234#p60178
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Additions to the fluid system
I've been thinking a bit more about it...and you idea is now very good for me above all it's realistic. The current way, only to heat the water, is not the most realistic (in input you have water, at the output steam. How to ensure that the steam flows in the right direction?).starholme wrote:I think the boilers could be made rotatable, and have one axis for water, one axis for steam.
So water flows left and right through a row of boilers, and steam flows up and down. Or rotate the boilers for the opposite.
So you feed water into the left most boiler. It applies heat. If the temperature is less than boiling, no steam is created. If the temperature is boiling, steam is created, and flows up/down.
So the water stays flowing left to right, with some turned into steam and sent out the top pipes. I think the 'steam engines' could be built this way as well. Steam in one axis, condensate in the other.Code: Select all
^ To steam engines | ||||| ====BBBBB==== water keeps flowing, but would be at 100(if the boilers are adding enough energy) ^offshore pump here