Anonymous Login
2019-06-17 18:51 UTC

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0001871OpenClonkObjectspublic2018-12-27 19:55
ReporterMaikel 
Assigned ToMarky 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusassignedResolutionopen 
Product Versiongit master 
Target Versiongit masterFixed in Version 
Summary0001871: Improvements to liquid system
DescriptionSome improvements that can be made:
* Allow multiple drain pipes for the pump and assign priority (interaction menu).
* [Done] Let a pump only pump certain liquids (interaction menu).
* [Done] Allow to pump from a tank like the steam engine or foundry.
* [Done] Create a tank structure which can hold more liquid O(10000) pixels.
* Give the pipe a mode where it floats on liquids, this can be useful in general, but also in the future for pumping concrete.
* Allow to block the pipe at its end, so that one does not pump water into places while transporting the pipe.
* Transfer liquid from barrel to foundry works, but back is a pain and the barrel needs to be opened before. Make this easier by looking into possible liquid containers in the clonk as secondary option.
* Use new type effects in the libraries.
* Implement a proper check when swapping pipelines at the pump.
* [Done] Implement proper checks for air pipes and their connections, they sometimes transform drains to source pipes and vice versa, i.e. the pump can have two drains.
* [Done] Fix the liquid test scenarios.
* Improve the liquid test scenarios.
* [Done] Move cut pipes into the inventory of the clonk if a free slot is available.
* [Done] Fix issues with disconnecting multiple lines of refinery drain in Rapid Refining.
* Add an easier way to attach and detach pipes from the diving helmet.
  Note: Attaching to the diving helmet is possible via inventory already.
  Cutting the lines is more complicated, though.
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes

~0005553

Marky (developer)

Concerning the last point -> I think you should be able to drag and drop the liquid into a barrel right now, but I may be mistaken.

~0005556

Maikel (developer)

There is no drag and drop. I will try to implement some of these features.

~0006040

Marky (developer)

I want to implement many of these, also because I am working with pipes on a private branch.

~0006043

Marky (developer)

What are the issues in the refinery drain?

~0006044

Maikel (developer)

I will fix these, I am also working on this list a bit and other problems that appear while testing. The refinery drain accepts multiple drain pipes because it allows to fulfill the goal faster, but removing them but the last connected one is impossible.

~0006045

Marky (developer)

Ok. Concerning the list: I think that the tests should be fixed already - at least I had a look at the tests not too long ago and I automated those tests with the air pipes.

I will definetely not do the one where the pump floats on something, because I do not understand the description.
I'd do the one with pipe blocking and transferring liquids back to the Clonk/barrel.

~0006196

Marky (developer)

What about restricting liquids in the containers to the material IDs? Originally I designed the system, having in mind that certain objects (pump) use material strings as an input, but most of the time we have the liquid as an object anyway, or you want something that you can display, so maybe changing the whole system to ID-only is worthwhile. I actually started that conversion, but reverted the changes when I came to the metal barrel (because it accepts really every liquid, but then there should be objects again, shouldn't they?)

 The only problem I can see is that DuroLava turns into Lava (or is there a DuroLava object?)

~0006197

Marky (developer)

Multiple drains and sources should be a general thing in the tank library, but it is unclear what the priority should do then, or if we should just allow multiple supply strategies to choose from? Strategies could be: distribute among drains equally / fill least effort first (=fill containers where you have to fill the least first) / fill largest effort first...

With a pump this seems easy, because it pushes the liquid to the containers. What about the other way, where a producer might request values from a tank or other supplier? In this case the source/drain logic is relative... of course, the pump adds a drain to the tank. Now, if the tank is connected to a producer that is a source for the producer, but a drain for the tank...
+Notes

-Issue History
Date Modified Username Field Change
2016-12-19 19:28 Maikel New Issue
2016-12-19 20:12 Maikel Description Updated View Revisions
2016-12-20 08:55 Marky Note Added: 0005553
2016-12-20 21:40 Maikel Note Added: 0005556
2016-12-25 16:52 Maikel Description Updated View Revisions
2016-12-26 19:23 Maikel Description Updated View Revisions
2016-12-26 19:24 Maikel Description Updated View Revisions
2016-12-26 19:26 Maikel Description Updated View Revisions
2016-12-26 19:31 Maikel Description Updated View Revisions
2018-01-12 08:05 Maikel Description Updated View Revisions
2018-01-12 08:05 Maikel Description Updated View Revisions
2018-01-12 11:02 Marky Assigned To => Marky
2018-01-12 11:02 Marky Status new => assigned
2018-01-12 11:04 Marky Note Added: 0006040
2018-01-13 09:58 Maikel Description Updated View Revisions
2018-01-13 10:07 Maikel Description Updated View Revisions
2018-01-13 10:07 Maikel Description Updated View Revisions
2018-01-13 10:33 Marky Note Added: 0006043
2018-01-13 10:41 Maikel Description Updated View Revisions
2018-01-13 10:42 Maikel Note Added: 0006044
2018-01-13 10:52 Marky Note Added: 0006045
2018-01-24 17:28 Maikel Description Updated View Revisions
2018-01-24 18:17 Maikel Description Updated View Revisions
2018-12-25 14:08 Marky Note Added: 0006196
2018-12-25 14:11 Marky Description Updated View Revisions
2018-12-25 14:55 Marky Description Updated View Revisions
2018-12-27 19:55 Marky Note Added: 0006197
+Issue History