Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Implementing a Duty Cycle for Pumps for Dwarven Shower  (Read 923 times)

ullrich

  • Bay Watcher
    • View Profile
Implementing a Duty Cycle for Pumps for Dwarven Shower
« on: January 16, 2012, 02:40:46 pm »

Since powered pumps pump fluid faster than it can flow implementing an on/off automatic toggling (duty cycle [http://en.wikipedia.org/wiki/Duty_cycle]) would be very useful for a project I'm working on.

Legend
Spoiler (click to show/hide)

w  p  w
w  u  w
m w
w  p  w  w
h  h  =
w  w  p  w
w  w  u  w
w  w  m w
w  w  p  w

Having pumps clean dwarves with a shower and reabsorb and purify the dirty water from the shower, however pumps pump to fast and I will result in something like a 7 water on the in square and 0 water on the out square.

I searched but all I got was military results cause the word duty :(.

Alternatively since the red P square if the pump is walkable if I put them in a line which solves the pumping speed problem then they may walk around the shower preventing the benefits.

w  p  w
w  u  w
w  m w
w  p  w
=  h   =
p  w
w  u  w
w  m w
w  p  w

Now ascetically I really want a straight path for dwarves to walk which is why I ask to get a way for getting a duty cycle for pumps. If thats not possible I'll just have to make it ugly.
Logged
Ullrich cancels Work: Interrupted by Dwarf Fortress
Dwarf Fortress: Engraved is an image of a Human and a video game. The Human is making a plaintive gesture.

MagmaMcFry

  • Bay Watcher
  • [EXISTS]
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #1 on: January 16, 2012, 03:27:43 pm »

If you just want to make dwarves clean, a 3x3 ramped basin full of 2/7 water will do the trick perfectly. They won't be contaminated after they exit the pool. If you suck water out of a tile full of contaminated water, the contamination will stay and it's not going to be any cleaner if you put water inside again. Either dwarves will clean the smudge away or they won't. If you want to implement an on/off toggling cycle, look here. But if you have a limited water supply, moving water has the chance to evaporate, and still water is your better bet.
If you really really want a shower, try installing floor grates on the corridor level and the level above, and then letting water fall through. Try not using an infinite water source for this unless you're perfectly sure that it absolutely can't flood your fort, because it will if it can.
Logged

ullrich

  • Bay Watcher
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #2 on: January 16, 2012, 03:56:45 pm »

If you just want to make dwarves clean, a 3x3 ramped basin full of 2/7 water will do the trick perfectly.
Well I normally do this but in my last 2 embarks I have yet to see a dwarf clean the pool in 20 years of game play, so I wanted a more reliable way to keep it clean especially with the new nasty syndromes that will be coming with the next patch.

If you suck water out of a tile full of contaminated water, the contamination will stay and it's not going to be any cleaner if you put water inside again.
Unless its changed since version 0.31.21 pumps do remove contamination this way, I had a set up that worked with this but had problems with dwarves being pushed through fortifications.

Edit: Thanks for the link btw.
« Last Edit: January 16, 2012, 03:59:59 pm by ullrich »
Logged
Ullrich cancels Work: Interrupted by Dwarf Fortress
Dwarf Fortress: Engraved is an image of a Human and a video game. The Human is making a plaintive gesture.

MagmaMcFry

  • Bay Watcher
  • [EXISTS]
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #3 on: January 16, 2012, 05:44:28 pm »

If you just want to make dwarves clean, a 3x3 ramped basin full of 2/7 water will do the trick perfectly.
Well I normally do this but in my last 2 embarks I have yet to see a dwarf clean the pool in 20 years of game play, so I wanted a more reliable way to keep it clean especially with the new nasty syndromes that will be coming with the next patch.

If you suck water out of a tile full of contaminated water, the contamination will stay and it's not going to be any cleaner if you put water inside again.
Unless its changed since version 0.31.21 pumps do remove contamination this way, I had a set up that worked with this but had problems with dwarves being pushed through fortifications.

If the contamination is really removed by pumps, try this here! A modified version of your design that should probably eliminate all problems:

Code: [Select]
####..####
####..####
#.<%vv%>.#
#.<%vv%>.#
#.<%vv%>.#
#.<%vv%>.#
#.<%vv%>.#
#.<%vv%>.#
..<%vv%>..
####..####
####..####

Code: [Select]
# = Wall
. = Floor
v = Down Ramp
<%, %> = Pumps

Every time the pumps are triggered, the whole pool will completely clean itself. To refill, just drop 4 7/7 water tiles into the basin from somewhere above.
To stop dwarves from going around the pool instead of through, just mark the pumps as restricted using {d}-{o}-{r}. Now dwarves really have no excuse not to step into the pool for at least one tile.
Logged

rephikul

  • Bay Watcher
  • [CURIOUSBEAST_IDEA]
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #4 on: January 16, 2012, 06:45:09 pm »

dwarves dont NEED to be directly under the water to be showered. The mist created by falling water, which spread 2-3 tiles would be enough. Morever, going through mist give them happy thoughts. You can do a compact mist generator with a single block of water run 24/7 using windmill or something. Simple, standardized and proven.
Logged
Intensifying Mod v0.23 for 0.31.25. Paper tigers are white.
Prepacked Dwarf Fortress with Intensifying mod v.0.23, Phoebus graphics set, DFhack, Dwarf Therapist, Runesmith and a specialized custom worldgen param.

ullrich

  • Bay Watcher
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #5 on: January 16, 2012, 07:33:24 pm »

To stop dwarves from going around the pool instead of through, just mark the pumps as restricted using {d}-{o}-{r}. Now dwarves really have no excuse not to step into the pool for at least one tile.

This solves the problem by itself, totally forgot about doing restricted on the one square thanks.
Logged
Ullrich cancels Work: Interrupted by Dwarf Fortress
Dwarf Fortress: Engraved is an image of a Human and a video game. The Human is making a plaintive gesture.

Triaxx2

  • Bay Watcher
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #6 on: January 16, 2012, 08:44:49 pm »

I like to set a pump to draw water into a hole, dropping down onto a floor tile surrounded by grates. This diffuses the water and generates a lot of mist. Put it over the main entry and floor grates leading back to another pump stack rising it for the original pump. Total amount shouldn't matter because the lower level will be 7/7 and the rest will either be that, or mist.
Logged

ullrich

  • Bay Watcher
    • View Profile
Re: Implementing a Duty Cycle for Pumps for Dwarven Shower
« Reply #7 on: January 17, 2012, 08:58:26 pm »

WRAP UP:

1) Did various testing all my initial designs don't work, since pumps pump faster than water can fall as such they cause flooding.
-> solved by moving the in pump down 1 z level
--> Pumps will pump any where between 0/7 and 7/7 water into the tile per step thereby making it unfeasible by continuous path disruption (forcing the initial red path), alternatively depending on construction order the square will be always 0/7
* Additionally when drawing water from a river and feeding the filtered water back into the river caused MASSIVE frame loss from 300 fps to 80 fps

2) To remove continuous water movement and reduce the number of pumps the following system was designed.
+ causes 0 frame loss, compact, easy to maintain enough water [looses ~1-2 levels of water per season (can be feed surplus water in 7/7 increments easily to keep it toped up)]
- occasionally dwarves will pass through unwashed (if they walk through the frame after the water is drawn from the pool before it flows back into it from adjacent squares)
-> can be mitigated by mirroring system on other side

Legend
Spoiler (click to show/hide)

Level 1
Code: [Select]
w  w  w
w  h  w
w /|\ w
w  .  w
=  h  =
w  w  w

Level 0
Code: [Select]
w w w
w r w
w F w
w F w
w r w
w w w
Logged
Ullrich cancels Work: Interrupted by Dwarf Fortress
Dwarf Fortress: Engraved is an image of a Human and a video game. The Human is making a plaintive gesture.