Bay 12 Games Forum

Please login or register.

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

Author Topic: Thoughts and Suggestions  (Read 1710 times)

epsilon76

  • Escaped Lunatic
    • View Profile
Thoughts and Suggestions
« on: August 15, 2020, 11:19:58 pm »

One of the things I've began to realise is how close to realism this game tries to get. Lately, I've been indulging in some interesting Primitive Living videos and when I come back to Dwarf Fortress, Im intrigued by just how 'close to life' Toady has made this game. Not only is it highly educational but in some ways, when it comes to this stuff, its also very realistic. Kudos to Toady on his very clever eye for detail.

That being said, I have a few thoughts/suggestions regarding more realism for this game.

One of the first things I've thought about is the idea of Murky Ponds. I love the concept of rain but why cant people dig a hole on the surface, to see it slowly fill up with rain and create there own Murky Pools? If you want to, you can look at water seepage so rain on soil just seeps into the earth beneath it but rain on hard stone gets collected and builds up gradually. Given how extensive the water calculations are in this game, it just makes me wonder why Toady chose the concept of specific Murky Pool regions instead of just 'Water fills up your Dam'. You could introduce the concept of rain seepage / draining into soil below. That would be one suggestion which I think would be awesome to have. Water is fun to play with. I could imagine you'd have heaps of fun with Liquid mechanics if you could dig your own channels, create your own Dams and do lots of stupid watery things.

Probably one of the first things you'd do if stuck in a forest on your own, would be to shape yourself a rock cutting tool. Why cant I grab the nearest rock, sharpen it on another rock and make myself a cutting tool? It would be slow as hell, but could this rock not be used to cut trees ( crude hand based axe ) and/or used for mining ( very crude pick axe/shovel ). In the event that I forgot to bring my pick axe and the game is over, I could sharpen a rock and use it as a really crude tool. Again, you could adjust the time rates so it takes forever to cut down a tree as opposed to having an appropriate metal tool. You could make it seriously painful ( as it is in real life ) to ensure you have the appropriate tools.
https://www.youtube.com/watch?v=HlJivKNHzyk

I absolutely love the concept of Spinning, Weaving and making Clothes. Having watched tonnes of 'How to make clothes in the real world' videos, it seems absolutely awesome. A very common way of making silk is through Silk Worm Harvesting ( which in real life need to be fed leaves twice per day ). Can we not embed a feature into game for something similiar? The idea of harvesting silk from spiders does seem interesting but feels a little misplaced to me. I love the concept of spiders being these scary, evil and frightening creatures that eat you alive in caves. Somehow, it feels to me that Dwarf Fortress has taken the concept of a Spider and turned it into something similiar to a harvestable sheep. I think you could do much more with spiders then just have them as silk farms. Maybe this area could be explored a little more and Spiders can become the scary evil beasts they are supposed to be. It would be kinda cool if Spiders hunted your dwarfs in the underground caves ha ha. Frighteningly scary ha ha. Silkworm Farming ( for silk ).
https://www.youtube.com/watch?v=b8rX5DRusNI&t=25s

In the early stages of the game, I think Pottery should be given a lot more emphasis then it receives. Stuck in the bush with absolutely nothing, all you've got in front of you is Mud, Water and some Trees. Pottery is everything. Usually, the best Clay is where pools of water get stuck or somewhere swampy. Sure, you have Lumber and Stone Crafting, but I'd argue Pottery comes before Stone Crafting. Its pretty much one of the first things I would think you'd want up when you've got absolutely nothing.
https://www.youtube.com/watch?v=D59v74k5flU

I absolutely LOVE the idea of how Geology has been incorporated into the game. Sedimentary, Igneous and Metamorphic Rocks. I think the Geological concepts make this game hugely entertaining. Watching Geological Videos on Mineral Identification is hugely entertaining. One of the things I noticed recently, aside how easy it is to Smelt a Rock full of minerals, is also how people underestimate the dangers of such smelting. As has been pointed out in the Dwarf Fortress Documentation, there are a large number of Minerals which are very dangerous. The most dangerous in the entire world, being Cinnebar ( Mercury ) and Arsenic. In real world videos, I've seen people trying to Smelt Rocks in real life totally neglecting that they are full of Arsenic. My suggestion is to bring in the appreciation for Metal Poisoning similiar to Dampness/Magma, a message can come up saying 'Poisonous rock detected' or something. You could potentially even introduce health effects for things like Mercury Poisoning heh. Im guessing Toady tried to avoid this decision because he liked having the different colours to build walls but maybe there could be different ways to colour rocks? Perhaps it might not be such a bad thing to introduce a concept of 'This rock is poisonous and will kill you' heh. Given what I believe is Toadys attempts at realism in Dwarf Fortress, I wonder if the Pro's outweigh the Con's in this regard? It might also make the game a little more interesting. Its a good thing rocks arent Radioactive lol.
https://www.youtube.com/watch?v=ZtYJAy-6pWs

If you wanted to be really evil, you could also introduce a concept of 'Mineral Identification' but Im pretty sure thats going too far ha ha ( maybe a hard setting? lol ). It probably loses the fun factor.

Somebody mentioned previously the idea of implementing Tectonics into the MapGen. I think that'd be awesome. I think you could also do some really interesting things regarding the Rock Positions, Layouts and Formations of the maps themselves. I'd like to see less structure. More swiss cheese, empty air pockets, isolated pockets of water / magma and absurdities beyond existing caverns which make digging through layers of rock more interesting. Earthquakes and Cave Ins could be interesting ha ha.
 
Does a Dwarf ( or Human ) breathe? A pretty important problem when it comes to Caves is lack of oxygen? In the real world, miners take special gauges with them when they go deep underground to ensure pockets of CO2 dont rise up on them and choke them to death. Im guessing dwarfs dont need to breathe heh. Short of a surface to ground air conditioner system ( which I suspect isnt a thing for Dwarfs lol ), maybe there's the concept of underground oxygen generation factorys ( aka rooms consisting of Plants and Trees to generate oxygen ). Maybe 50 levels down, you might need an oxygen room full of plants to absorb all that excess CO2 so the dwarfs can breath lol.
Living Underground - https://www.youtube.com/watch?v=wxozN_ussjw&t=335s

x Where's the Mithril Armour? Im guessing thats Adamantine?
x A trapdoor trap which opens up the floor beneath you and the helpless victim falls into the abyss below ( You can do the same with Draw Bridges but should it just be its own Trap? )

I realise this game is called DWARF fortress but Toady has mentioned in his previous videos that he isnt opposed to allowing people to play Human Characters ( Let me play an Evil Necromancer Fort, who grows power and spreads shadow across the land... and I'll love you long time heh ). I think the realism only makes the game even more entertaining. Not only are there heaps of things to tinker, blow up and destroy, but its also pretty cool when you walk away and think, " Hang on... there was something somewhat real about some of that " ha ha.

Anyway, just some stupid ideas. Troll away.
« Last Edit: August 15, 2020, 11:51:01 pm by epsilon76 »
Logged

Reelya

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #1 on: August 16, 2020, 02:58:20 am »

One of the first things I've thought about is the idea of Murky Ponds. I love the concept of rain but why cant people dig a hole on the surface, to see it slowly fill up with rain and create there own Murky Pools? If you want to, you can look at water seepage so rain on soil just seeps into the earth beneath it but rain on hard stone gets collected and builds up gradually. Given how extensive the water calculations are in this game, it just makes me wonder why Toady chose the concept of specific Murky Pool regions instead of just 'Water fills up your Dam'. You could introduce the concept of rain seepage / draining into soil below. That would be one suggestion which I think would be awesome to have. Water is fun to play with. I could imagine you'd have heaps of fun with Liquid mechanics if you could dig your own channels, create your own Dams and do lots of stupid watery things.

There are good reasons for that. If rain was modeled as water in the game, it could fill up a pool or other depression, but this would take considerable processing power.

The game can pre-place any shaped pools it wants, but it's a far cry from that to determining dynamically whether any specific hole or depression is sufficiently pool-shaped.

So, a half-way idea to actually modeling the rain is that the game could look at a hole you dug, and work out "hey, that looks like a Murky Pool! I'll turn it into one!" but this is more complicated than you'd think. It's easy for a human to determine whether a thing is pool-shaped but Toady would have to create an algorithm capable of working that out and determining pools from non-pools. Like if you built a walled garden you wouldn't like it if the computer decided it was a pool and filled that with water the next time it rained, but how is it supposed to tell that from a walled pit you built which you intended to collect rain?
« Last Edit: August 16, 2020, 03:05:53 am by Reelya »
Logged

Shonai_Dweller

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #2 on: August 16, 2020, 03:03:41 am »

But the day when heavy rain floods your trade depot because you built it on low ground will be welcomed with much hilarity.
Logged

Reelya

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #3 on: August 16, 2020, 03:07:44 am »

Or you built walls around the depot and that triggered the pool detection code and now you have carp swimming around in your depot.

epsilon76

  • Escaped Lunatic
    • View Profile
Re: Thoughts and Suggestions
« Reply #4 on: August 16, 2020, 06:28:15 pm »

Or you built walls around the depot and that triggered the pool detection code and now you have carp swimming around in your depot.

Admittedly, I havent given it much thought but Im sure in the world of Algorithm, there'd certainly be a way. It would take a while to think it through but I dont think it would be that impossible. I'd argue that there's more time and effort gone into creating a Murky Pool System which in the end, provides for far less realism. However, you do raise a good point about CPU cycles. It could be a hit to certain peoples CPU's. Nevertheless, I think the Murky Pool system is a pretty dodgy workaround to a problem like this.
Logged

Reelya

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #5 on: August 16, 2020, 06:41:51 pm »

There's no thought or time put into the current system. It just plops down a few tiles labeled as being part of a pool at random on the map. It's extremely basic. It's literally just rolling some dice then deciding to plop a pool in that area rather than placing trees there. There's no deep logic behind where the pools are, the way you code something like this literally is just rolling some dice and deciding what to place there, because it doesn't actually matter.

You have an unrealistic idea that this magic sauce "algorithm" would make that workable.

The problem is that no matter how sophisticated that algorithm, it is very unlikely to work how the *player* expects. Say you make a pit, which you want filled with water, but someone else makes another pit that they don't want filled, and how is it exactly supposed to tell that from a walled courtyard that you don't want filled, or a walled well, which you DO want filled? What if you cut stairs into an underground room, should that count as a pool now? If not, what if you built some stairs in a murky pool, should that no longer count as a murky pool, because it's got stairs in it and could be an exposed underground room? and these are just a few of the edge cases.

The problem is that  the logic here would quickly get ridiculously complicated to try and work out what should count as a pool and what should not, and the most likely result is that the game would appear to just want to fill exposed rooms more or less on a whim and the logic would be so convoluted that nobody would even be able to articulate how it's making these decisions.

This would be a poorly written / slapped together algorithm. And even well written algorithms written by top experts fuck up all the time:
https://www.youtube.com/watch?v=Rzhpf1Ai7Z4
« Last Edit: August 16, 2020, 06:46:09 pm by Reelya »
Logged

Shonai_Dweller

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #6 on: August 16, 2020, 08:17:53 pm »

There's no thought or time put into the current system. It just plops down a few tiles labeled as being part of a pool at random on the map. It's extremely basic. It's literally just rolling some dice then deciding to plop a pool in that area rather than placing trees there. There's no deep logic behind where the pools are, the way you code something like this literally is just rolling some dice and deciding what to place there, because it doesn't actually matter.

You have an unrealistic idea that this magic sauce "algorithm" would make that workable.

The problem is that no matter how sophisticated that algorithm, it is very unlikely to work how the *player* expects. Say you make a pit, which you want filled with water, but someone else makes another pit that they don't want filled, and how is it exactly supposed to tell that from a walled courtyard that you don't want filled, or a walled well, which you DO want filled? What if you cut stairs into an underground room, should that count as a pool now? If not, what if you built some stairs in a murky pool, should that no longer count as a murky pool, because it's got stairs in it and could be an exposed underground room? and these are just a few of the edge cases.

The problem is that  the logic here would quickly get ridiculously complicated to try and work out what should count as a pool and what should not, and the most likely result is that the game would appear to just want to fill exposed rooms more or less on a whim and the logic would be so convoluted that nobody would even be able to articulate how it's making these decisions.

This would be a poorly written / slapped together algorithm. And even well written algorithms written by top experts fuck up all the time:
https://www.youtube.com/watch?v=Rzhpf1Ai7Z4
And the map rewrite is coming so now is surely the right time to suggest a better version. I say, make it realistic and have players build a roof or a drain if they don't want a space to fill up with rain water. Designated areas as magically able to fill with water and others somehow not is just weird.
Logged

Reelya

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #7 on: August 16, 2020, 08:32:52 pm »

That was kinda my point. There's no half-way version of this, Toady either models rain as a thing with physics or not.

The idea of somehow "deciding" that a thing is pool / not a pool "algorithmically" was a counter-example of why any bodged system cannot work. It's never going to determine that to the player's satisfaction without accidentally (and unpredictably) deciding to just flood rooms now and then you didn't want flooded.

So the original suggestion of just dig a pool and the computer notices and goes "hey that's kinda like a pool, i'll make those tiles, and only those tiles fill with water" isn't going to work, unless you're happy for it to make mistakes such as you walling off your fortress and it therefore decides the whole interior is a pool. After all, even the concept of "ground level" is arbitrary here, so if you have a rule that a pool is anything that's a finite sized hole one level below ground level, then how big qualifies, what's ground level anyway, and do raised walls count as being the ground level at the top, or at the bottom? With the obvious drawback that you can no longer just make pits.
« Last Edit: August 16, 2020, 08:40:39 pm by Reelya »
Logged

Uthimienure

  • Bay Watcher
  • O frabjous day!!
    • View Profile
Re: Thoughts and Suggestions
« Reply #8 on: August 16, 2020, 08:39:18 pm »

Let us keep in mind that it takes a LOT of rain to fill up any low ground with water.
If you're envisioning those murky pools out in the middle of flat plains being wet because of rain, I don't agree.
They look much more like typical small ponds, which in real life are filled because of either the water table or springs.
In order to have rain create a murky pool, there would need to be a significant watershed slope feeding into it.
If this doesn't make sense, go out and dig a shallow area in your yard and wait for rain. If it fills, see how long it stays full.
« Last Edit: August 16, 2020, 08:42:08 pm by Uthimienure »
Logged
FPS in Gravearmor (925+ dwarves) is 2-5 (v0.47.05 lives on).
"I've never really had issues with the old DF interface (I mean, I loved even 'umkh'!)" ... brewer bob
As we say in France: "ah, l'amour toujours l'amour"... François D.

Shonai_Dweller

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #9 on: August 16, 2020, 08:58:34 pm »

So, collecting water is just a matter of putting a barrel outside, or lining a dug out pit with paving stones. That should be implemented once requiring water stores becomes more important in the game.

Now, taking the suggestion off into the realms of future physics engines. Realistically, what can dwarves do to ensure their holes in the ground don't get flooded every time it rains?

And what can we do to prevent major disasters when we foolishly build our new homes on flood plains?
Logged

Uthimienure

  • Bay Watcher
  • O frabjous day!!
    • View Profile
Re: Thoughts and Suggestions
« Reply #10 on: August 16, 2020, 09:08:03 pm »

(1) So, collecting water is just a matter of putting a barrel outside, or lining a dug out pit with paving stones. That should be implemented once requiring water stores becomes more important in the game.

(2) Now, taking the suggestion off into the realms of future physics engines. Realistically, what can dwarves do to ensure their holes in the ground don't get flooded every time it rains?

(3) And what can we do to prevent major disasters when we foolishly build our new homes on flood plains?
(I added the numbers in the quote)

1. Absolutely, if the barrel is under the edge of a roof it would catch lots of water. If out in the open, just a 1/4" or 1/2" or whatever the rainfall was.

2. To prevent flooding, they could simply make a downslope off the stairwell feeding into a drainpipe/tunnel to the map-edge, or to a cistern like we do with aquifers.

3. I hope Toady can implement proper drainage properties for the various top soil layers... sandy, loamy, clay, etc.  Then a floodplain would be a realistic outcome of slow-draining flatland next to a river. Cool.  Dwarves could easily dig ditches (channels) for drainage.
Logged
FPS in Gravearmor (925+ dwarves) is 2-5 (v0.47.05 lives on).
"I've never really had issues with the old DF interface (I mean, I loved even 'umkh'!)" ... brewer bob
As we say in France: "ah, l'amour toujours l'amour"... François D.

Shonai_Dweller

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #11 on: August 16, 2020, 10:11:24 pm »

(1) So, collecting water is just a matter of putting a barrel outside, or lining a dug out pit with paving stones. That should be implemented once requiring water stores becomes more important in the game.

(2) Now, taking the suggestion off into the realms of future physics engines. Realistically, what can dwarves do to ensure their holes in the ground don't get flooded every time it rains?

(3) And what can we do to prevent major disasters when we foolishly build our new homes on flood plains?
(I added the numbers in the quote)

1. Absolutely, if the barrel is under the edge of a roof it would catch lots of water. If out in the open, just a 1/4" or 1/2" or whatever the rainfall was.

2. To prevent flooding, they could simply make a downslope off the stairwell feeding into a drainpipe/tunnel to the map-edge, or to a cistern like we do with aquifers.

3. I hope Toady can implement proper drainage properties for the various top soil layers... sandy, loamy, clay, etc.  Then a floodplain would be a realistic outcome of slow-draining flatland next to a river. Cool.  Dwarves could easily dig ditches (channels) for drainage.
Great. And when Toady starts implementing drainage systems, it's only a short rabbit hole away from the "waste" arc.  :)

Oh what fun will be the gameplay questions forum. "My dwarves are complaining of having to wade through foul water to get to the dining room and my hospital is full due to a dysentery epidemic, please help".  :)
Logged

Matokage

  • Escaped Lunatic
  • Shadowy Shadow
    • View Profile
Re: Thoughts and Suggestions
« Reply #12 on: August 17, 2020, 08:18:32 am »

I'm surprised that you guys are discussing that. I suggested just that on the terrible Suggestions Thread but I didn't even noticed this one before writing my post. But why I thought it would be terrible is because of the flooding resulting from water shedding, since we usually embark on hilly or mountainous regions, it would be hard for newbies and casual players (even tough it's hard to imagine a casual DF play session) to warp their heads around such a concept as their fort fills up on the firsts rains. The soil penetration and water table was one of the things that would be a hassle for new players that end up with a flooded fort with out knowing why.

Another hassle would be the flooded human forts on adventure mode. I found more than once a castle generated on lower ground that would otherwise fill and flood, not even mentioning it's a bad strategy design to make a castle on low land.

Another thing that would brake/exploit the water shedding mechanic is the map size. On small maps, the water shedding would be small, be cause a small portion of the topography is begin rendered, but on bigger maps, it would be much more present, shedding much more water.

Also, I'm a drafter at a Land surveying firm and I do some field work now and then. But even specialized software (AutoCAD Civil 3D) struggles to get water shedding of a given map right. Coding a water shedding, soil penetration and water table formation would be a big pain in the back side, and FPS death would be unavoidable on bigger maps. Imagine checking every tile that water falls on, at every tick, and doing math on each one, and the next Z level after that, and that goes on and on until it hits a rock layer, in which case it spreads and starts forming an aquifer on a map that didn't had one in the first place. Not to mention that water can penetrate some kinds of rock and even erode chalky stone, leaving a hole where it used to be.
« Last Edit: August 17, 2020, 08:56:26 am by Matokage »
Logged

Reelya

  • Bay Watcher
    • View Profile
Re: Thoughts and Suggestions
« Reply #13 on: August 17, 2020, 12:03:23 pm »

There's also the fact that if you embark somewhere how it looks when you arrive should be the 'normal' state of affairs. If you settle in a valley and the first time it rain it turns into a lake permanently due to flooding then that wouldn't make any sense. It should have been a lake all along then.

So in other words not bothering to model the effects of rain would be preferable in some cases. We can just assume that sites that aren't already flooded when you get there have sufficient natural drainage to deal with the rains that already happen there. The amount of water normally there would in fact be the equilibrium amount: you can imagine it drying out a bit more in between rains and being a bit wetter after rains, but the normal state of affairs is the average amount.
« Last Edit: August 17, 2020, 12:09:14 pm by Reelya »
Logged

Matokage

  • Escaped Lunatic
  • Shadowy Shadow
    • View Profile
Re: Thoughts and Suggestions
« Reply #14 on: August 17, 2020, 01:06:53 pm »

There's also the fact that if you embark somewhere how it looks when you arrive should be the 'normal' state of affairs. If you settle in a valley and the first time it rain it turns into a lake permanently due to flooding then that wouldn't make any sense. It should have been a lake all along then.
That's why soil penetration values would be important. Sandy loam could let water seep almost freely, but clay on the other hand can have a water seepage value close to zero. In the given scenario, a lake would form if the soil is predominately clay, but a small pond or even just a muddy soil on loam.

So in other words not bothering to model the effects of rain would be preferable in some cases. We can just assume that sites that aren't already flooded when you get there have sufficient natural drainage to deal with the rains that already happen there. The amount of water normally there would in fact be the equilibrium amount: you can imagine it drying out a bit more in between rains and being a bit wetter after rains, but the normal state of affairs is the average amount.

Yeah, that would lead to not just soil penetration but soil saturation values. That alone could cause several bugs on this behavior if plants water absorption model isn't present. It would call for a MASSIVE rework/modeling of a weather system just to implement a non-game breaking water shedding model to the game.
Spoiler (click to show/hide)
« Last Edit: August 17, 2020, 07:30:00 pm by Matokage »
Logged
Pages: [1] 2