Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2]

Author Topic: Seasonal Floods: 3D  (Read 4962 times)

Othob Rithol

  • Bay Watcher
  • aka Dark Snathi, Rain & Tom Bombadil
    • View Profile
Re: Seasonal Floods: 3D
« Reply #15 on: March 10, 2008, 09:43:00 pm »

um, I think you mean dam the river...

Othob Rithol cancels task : damning river
Othob Rithol has drowned.

martinuzz

  • Bay Watcher
  • High dwarf
    • View Profile
Re: Seasonal Floods: 3D
« Reply #16 on: March 11, 2008, 04:56:00 am »

quote:
Originally posted by zagibu:
<STRONG>Why not just make it possible for tiles to be filled in seven steps with any terrain, not just water? Or rather eight steps, from 0/7 to 7/7...</STRONG>

8 states, 7 steps...

Logged
Friendly and polite reminder for optimists: Hope is a finite resource

We can ­disagree and still love each other, ­unless your disagreement is rooted in my oppression and denial of my humanity and right to exist - James Baldwin

http://www.bay12forums.com/smf/index.php?topic=73719.msg1830479#msg1830479

kristleifur

  • Bay Watcher
    • View Profile
Re: Seasonal Floods: 3D
« Reply #17 on: March 11, 2008, 05:10:00 am »

quote:
Originally posted by Kagus:
<STRONG>But if this is implemented, I'd also like to see a bit more of a difference between soil and sand.  Growing crops in soil sounds fine to me, but growing it in sand has always looked weird.  Unless it's a cactus, but we don't grow those now do we?</STRONG>

The best carrots and potatoes I've were grown in sand in a geothermal area. Yum yum. RL magma + sand paradise.

Logged

korora

  • Bay Watcher
    • View Profile
Re: Seasonal Floods: 3D
« Reply #18 on: July 11, 2008, 04:28:16 pm »

I think this thread is worth reviving.

Currently (according to the wiki and the gamasutra interview) water never rises above the level of its source.  In order to have realistic floods, dams, and other effects, this should change.  If the wiki water pressure is correct, then DF already tracks water tile pressure.  Instead of stopping when it reaches its source height, water should stop rising when it reaches 0 pressure.  So far, nothing's different.

One other thing is water sources should have a pressure rating, in z-levels of water. The source could pressurize the water output tile up to the pressure rating, but no higher (if you let the rating be zero, this is the same as the current model as far as I can tell).

For screw pumps, this wouldn't have to change anything, but realistically screw pumps should be able to provide pressure.  Maybe an option when you build, at a higher power cost.  This lets you pump water up several levels with only one pump, but the power should probably still be 10 units per level (or maybe slightly less, or maybe it depends on part quality).  If the water has nowhere to go and the output has reached the pressure rating, the pumping animation should stop.  Maybe it should stop drawing power? That could create interesting logic possibilities.

For a flood, all that needs to happen is for the water source at the edge of the map to output pressurized water faster than it drains out the other side.  Then the water will naturally overflow the banks and follow existing contours in the land.

To make dams work, rivers/brooks/streams should have a pressure rating above 0, but normally the flow would be fast enough that it never fills up.  If you blocked the river, though, it would quickly pressurize and flow up.

Another cool thing would be if pressurized water started to eat away at soil/sand, so you wouldn't just get overflow, the banks would actually spread outward and eventually form a natural lake.  To reach equilibrium (lake stops spreading) you'd probably have to deal with evaporation rates though.  Maybe take away 1/7 from each exposed tile every so many ticks, based on temperature?  Or have a temp-based chance of losing 1/7 every time you check for static/non-static?

But why stop there? I'll throw out an even more ambitious/useless/difficult idea.  If you're pressurizing water in a cistern, particularly one with dwarf-made and/or one-tile-thick walls, there could be a pressure limit based on material before one of the walls bursts and water goes everywhere.  This would segue in nicely with new cave-in code, since presumably material strength will be handled then somehow (and pressure is probably the most convenient way to quantify it).  And if somehow you got pressurized water to freeze in such a vessel with nowhere to expand, you'd have an ice bomb.

TL;DR: Water should attempt zero pressure, not equalize height.  Cake will be served.  Thoughts?
Logged
DFPaint, a cross-platform 'screenbuilder' utility

Draco18s

  • Bay Watcher
    • View Profile
Re: Seasonal Floods: 3D
« Reply #19 on: July 11, 2008, 04:59:15 pm »

I'll just quote myself.

Quote
Originally posted by kaypy:
Ok, going into wishful-thinking damn-the-implementation-difficulty-full-speed-ahead mode:What I would like to ideally see is having rivers/streams of different depths. That way a brook is essentially a shallow/narrow river, and flooding is just a matter of changing the depth:Brooks would then be fordable due to being shallow and having ramped sides, rather than having their own special tile.
Quote

brook
#####^            ^###
##########^3^#########
######################^=ramp

A brook could 'flood' just by getting deeper to the point of needing swimming to cross
Quote

deep brook
#####^            ^###
##########^6^#########
######################

A river would normally not be fordable, and be wider, and may or may not have ramped sides (could depend on terrain- a gorge/cliff versus a floodplain for example)
Quote

river
#####             ^###
######777^############
######################

And would flood by getting additional water levels above level 7, as discussed above
Quote

river, flooding
#####222222221111 ^###
######777^############
######################

That is exactly the kind fo thing I was thinking about.  I didn't put ramps in my little images as I was just depicting elevations.  :)As for the "digging under a river" I'd see the flood tiles being 1 level above the river (i.e. drop the tile) and if you damn the river, well, you didn't damn the flood level, the water is going to overflow.  You can turn off the "dry" flood tiles, but the wet ones will still spawn water, causing it to overflow your damn (possibly), thus looking normal.

You could do this even without doing any wacky stuff with pressure, just have a second (seasonal) source one z-level higher.
Logged

korora

  • Bay Watcher
    • View Profile
Re: Seasonal Floods: 3D
« Reply #20 on: July 12, 2008, 04:18:46 pm »

Using pressure has advantages, such as allowing dams to behave naturally.
Logged
DFPaint, a cross-platform 'screenbuilder' utility

Dame de la Licorne

  • Bay Watcher
  • Cats? Check. FPS? Uh-oh...
    • View Profile
Re: Seasonal Floods: 3D
« Reply #21 on: July 12, 2008, 04:44:25 pm »

<P></font><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><HR>

brook
#####^            ^###
##########^3^#########
######################<P>^=ramp
<HR></BLOCKQUOTE><font size="2" face="Verdana, Helvetica, sans-serif"><P>A brook could 'flood' just by getting deeper to the point of needing swimming to cross<P></font><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><HR>

deep brook
#####^            ^###
##########^6^#########
######################
<HR></BLOCKQUOTE><font size="2" face="Verdana, Helvetica, sans-serif"><P>A river would normally not be fordable, and be wider, and may or may not have ramped sides (could depend on terrain- a gorge/cliff versus a floodplain for example)<P></font><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><HR>

river
#####             ^###
######777^############
######################
<HR></BLOCKQUOTE><font size="2" face="Verdana, Helvetica, sans-serif"><P>And would flood by getting additional water levels above level 7, as discussed above<P></font><BLOCKQUOTE><font size="1" face="Verdana, Helvetica, sans-serif">code:</font><HR>

river, flooding
#####222222221111 ^###
######777^############
######################
<HR></BLOCKQUOTE><font size="2" face="Verdana, Helvetica, sans-serif"><P>And in case I wasn't far enough into crazy territory yet:<P>It might be nice to have more depth terrains. say floor, shallow ramp, ramp, tile-without-ceiling ("shallow-channel" maybe?), wall<P>Each of these would allow differing amounts of water (effectively displacing a some water) eg:
7/7, 5/5, 4/4, 2/2, 0/0
Thus providing shallow streams that will overflow instead of just getting deeper.<P>Only ramps would actually allow access to upper levels (although these could be used to smooth hills further- at which point wagons might need a gradual slope rather than plain old ramps...)<P>Just dont ask me how any of this can be done without murdering memory for tile types and cpu for flows...

As can be seen from my name/title  <----<P>I'm all for this, in any implementation at all, even a bad one. Flavor and all.<P>Silveron - I want a spillway too..being able to build a tile that could be set like a combo pressure plate/floodgate that allows water above level x to pass through would make all sorts of interesting water works. However a universal 7/7 depth for every tile would be a memory hog I am sure.<P>The whole flooding thing could be solved with the physics already on hand. Anyone that has played with pressurized water knows that a lot of water can move very far and quickly if it has 10 Zlevels on water column pushing it. So...<P>When the game generates the river, it (as suggested) tries to make a floodplain around the river, depending on type of river and local terrain. IE a brook would have a narrow one, and the floodplain would be narrower in granite than in silt.<P>When it comes time for the flood, the game just generates an huge volume of water, under pressure, on the tiles one z-level above the current source tiles. It will cascade down the river as well as move into the floodplain in a somewhat chaotic manner.<P>When I get a chance (after I finish the Goblin Rail Gun) I'll use my current fort to attempt to simulate this, and report if it works at all. I do have about 10000 units of power I am not using....

Both of these ideas together might create a fairly realistic flood, hopefully without too much work on Toady's part.  I would like to see flooding put back in the game.   :)
Logged
If software was real world, then it'd be something equivalent of hitting a nail with a hammer and having a building collapse on the other side of town.

Don't worry people, sometimes -moments occur

Idiom

  • Bay Watcher
  • [NO_THOUGHT]
    • View Profile
Re: Seasonal Floods: 3D
« Reply #22 on: July 12, 2008, 05:40:22 pm »

And when shoddy/failing construction/mechanical stuff is implemented, you could have dams burst and flooding! Awesome.

Of all the things I miss from the 2D version, seasonal flooding + underground arboretum =  8)
Logged

Reasonableman

  • Bay Watcher
  • ...Probably.
    • View Profile
    • Twitter is dead, long live Cohost
Re: Seasonal Floods: 3D
« Reply #23 on: July 12, 2008, 07:12:28 pm »

The problem lies in the fact that this will restrict any fort with a water source to people with 20 GHz processors. I mean, if the CPU has to calculate water paths and behavior for that amount of water every spring, we could run into some crippling lag. I think that before Toady implements any sort of complicated flooding behavior, he'd have to do some serious optimization, and possibly even multithreading.
Logged
A sane man must be reasonable, but a reasonable man need not be sane.

Faces of Mu

  • Bay Watcher
  • I once saw a baby ghost...but it was just a tissue
    • View Profile
Re: Seasonal Floods: 3D
« Reply #24 on: July 13, 2008, 09:16:56 am »

Yea, I miss the thrill of seasonal floods.  :-\

I was going to suggest that flooding waterways should also have a very small chance of destroying constructions (as in, to flood a bridge or building away), but I think I'm really thinking about landslides.
Logged
Pages: 1 [2]