Bay 12 Games Forum

Please login or register.

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

Author Topic: Make mining velocity depends on rock type  (Read 2544 times)

MightyEvilPunk

  • Bay Watcher
    • View Profile
Make mining velocity depends on rock type
« on: August 23, 2014, 03:17:53 pm »

Because everybody understands, that claystone and chalk is much more easy to dig, than basalt or granite.
Logged

Dorf and Dumb

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #1 on: August 24, 2014, 08:43:01 am »

Does seem funny to slog quickly through adamantine with a copper pick.
Logged

MightyEvilPunk

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #2 on: August 24, 2014, 03:52:04 pm »

Pick material and quality should influence too :)
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #3 on: August 25, 2014, 12:57:34 am »

What properties would determine mining speed? Would we have to add mohs hardness to materials? Because I've already spent enough time figuring out ultimate tensile strength, shear modulus and young's modulus and how they relate to in-game values, heh.

GavJ

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #4 on: August 25, 2014, 01:07:10 am »

Hardness by itself is unlikely to have a whole lot to do with mining. Very hard things can still be extremely brittle (and in fact often are! Especially minerals) and bashing a big crystal or vein with something much softer could easily shatter off bits for you to carry away.

You need some more generic measure of "toughness" which would, if you want to be realistic, have to depend on a dizzying array of different variables and assumptions that would be almost impossible to do for DF. Or probably for any purpose, I don't think we have the math and understanding to do that yet purely from our armchairs. Attempting to do this, you'd just make a hash out of it.

I think you have 3 feasible options:
1) Uniform speed (current)
2) Make up some purely intuitive values, and don't claim that it's based on anything scientific, because it's not. But may still be more fun.
3) Use actual physical data from tests done on rocks hit with pickaxes or similar. Either your own data done just for this game, or if you can somehow find an existing database, that.
Logged
Cauliflower Labs – Geologically realistic world generator devblog

Dwarf fortress in 50 words: You start with seven alcoholic, manic-depressive dwarves. You build a fortress in the wilderness where EVERYTHING tries to kill you, including your own dwarves. Usually, your chief imports are immigrants, beer, and optimism. Your chief exports are misery, limestone violins, forest fires, elf tallow soap, and carved kitten bone.

MightyEvilPunk

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #5 on: August 25, 2014, 01:59:03 am »

Gavj, you always bring balanced opinion. As I see, this article bring some weighted rock resistance measure. http://www.metal.ntua.gr/uploads/3290/254/Excavation_Engineering_Handbook_Tamrock.pdf
Logged

Romegypt

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #6 on: August 25, 2014, 09:48:56 am »

If I recall correctly, gavj has been with DF from the beginning. He mods as well, I have heard. btw, where does the name come from? Just something you made up?

Unlike gavj, I have only been in since just after 34 released. Awesome game though, can't wait for it to be finished. Doing an amazing job toady! If I had my own bank account (I'm almost 17, still havn't been able to find a job!) I'd be donating for sure! (and I likely will, once I get a good job.)

Gonna take my GED soon, so I can focus on a job and not worry about high school.
but anyways,
 AFAIK, pick type DOES increase speed. I havn't been able to find proof int he raws, but I had a novice dig 20 squares and timed him. (Copper pick) roughly 60 secs (I wasn't using a watch)
I gave him a steel pick and his speed increased roughly ten seconds (Or decreased?) so he now took 50. (I know he used it, because I melted the copper one afterwards).

He hadn't leveled up, so this suggests that it is job experience, not actual skill level, that improves time (Unlikely, as the difference was so large) or that picks DO increase speed, albeit rather slowly.
Logged

Dirst

  • Bay Watcher
  • [EASILY_DISTRA
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #7 on: August 25, 2014, 09:55:19 am »

Gavj, you always bring balanced opinion. As I see, this article bring some weighted rock resistance measure. http://www.metal.ntua.gr/uploads/3290/254/Excavation_Engineering_Handbook_Tamrock.pdf
Looks like Table 2.3.2 Protodyakonov classification of rock hardness is the money shot here.  A quick-and-dirty approximation can be to multiple digging time by the "f" value, or its square-root or something depending on how we want to play-balance it.

Logged
Just got back, updating:
(0.42 & 0.43) The Earth Strikes Back! v2.15 - Pay attention...  It's a mine!  It's-a not yours!
(0.42 & 0.43) Appearance Tweaks v1.03 - Tease those hippies about their pointy ears.
(0.42 & 0.43) Accessibility Utility v1.04 - Console tools to navigate the map

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #8 on: August 25, 2014, 02:24:07 pm »

Only miner skill and soilness of the mined material determine mine speed; nothing else matters.

Anyway, perhaps something can be done with the already-existing strength (YIELD,FRACTURE) and stress-strain (STRAIN_AT_YIELD) properties?

Dirst

  • Bay Watcher
  • [EASILY_DISTRA
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #9 on: August 25, 2014, 02:27:59 pm »

Only miner skill and soilness of the mined material determine mine speed; nothing else matters.

Anyway, perhaps something can be done with the already-existing strength (YIELD,FRACTURE) and stress-strain (STRAIN_AT_YIELD) properties?
If someone has one of those tools lying around that parses raws into wide spreadsheets, we could figure out what value or combination of values the "f" rating is correlated with.
Logged
Just got back, updating:
(0.42 & 0.43) The Earth Strikes Back! v2.15 - Pay attention...  It's a mine!  It's-a not yours!
(0.42 & 0.43) Appearance Tweaks v1.03 - Tease those hippies about their pointy ears.
(0.42 & 0.43) Accessibility Utility v1.04 - Console tools to navigate the map

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #10 on: August 25, 2014, 02:38:33 pm »

It might just be easier to look at the real life values. For the mats in-game, all strength properties are just the material's ultimate tensile strength in kilopascals multiplied by some arbitrary value while all stress-strain properties are the above-mentioned value divided by the relevant stress-strain modulus and multiplied by 10000.

So tensile/bending strain at yield is (ultimate tensile strength/young's modulus)*10000.
Compressive/impact is (uts/bulk modulus)*35000 (3:5 is the arbitrary compression value)
Shear/torsion is (uts/shear modulus)*10000.

I may have bending/torsion mixed up.

GavJ

  • Bay Watcher
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #11 on: August 25, 2014, 02:48:49 pm »

It might just be easier to look at the real life values. For the mats in-game, all strength properties are just the material's ultimate tensile strength in kilopascals multiplied by some arbitrary value while all stress-strain properties are the above-mentioned value divided by the relevant stress-strain modulus and multiplied by 10000.

So tensile/bending strain at yield is (ultimate tensile strength/young's modulus)*10000.
Compressive/impact is (uts/bulk modulus)*35000 (3:5 is the arbitrary compression value)
Shear/torsion is (uts/shear modulus)*10000.

I may have bending/torsion mixed up.

Yes but when you hit something with a pickaxe, it simultaneously causes cleaving, compression, and possibly tension (through wedging action). Additionally, you'd be more likely to break stuff with a pickaxe if you hit along a crystal plane or for things like conglomerates, in between especially large grains, etc.

So sure, you have some individual numbers, but how do you combine them in what proportions etc.?
Logged
Cauliflower Labs – Geologically realistic world generator devblog

Dwarf fortress in 50 words: You start with seven alcoholic, manic-depressive dwarves. You build a fortress in the wilderness where EVERYTHING tries to kill you, including your own dwarves. Usually, your chief imports are immigrants, beer, and optimism. Your chief exports are misery, limestone violins, forest fires, elf tallow soap, and carved kitten bone.

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #12 on: August 25, 2014, 03:01:01 pm »

At this point, I would get some values throug POOMA: Pulled Out Of My Ass. Make up some values that make sense if you don't think about them too hard. I mean, DF already does that a lot where materials are concerned (see Iron's raws). Since we don't actually have accurate not-tensile values, somewhat inaccurate mining speed probably wouldn't be too bad.

Dirst

  • Bay Watcher
  • [EASILY_DISTRA
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #13 on: August 25, 2014, 03:11:44 pm »

It might just be easier to look at the real life values. For the mats in-game, all strength properties are just the material's ultimate tensile strength in kilopascals multiplied by some arbitrary value while all stress-strain properties are the above-mentioned value divided by the relevant stress-strain modulus and multiplied by 10000.

So tensile/bending strain at yield is (ultimate tensile strength/young's modulus)*10000.
Compressive/impact is (uts/bulk modulus)*35000 (3:5 is the arbitrary compression value)
Shear/torsion is (uts/shear modulus)*10000.

I may have bending/torsion mixed up.

Since I don't have time to chase down all of that data, maybe a spot-check will do?

The "f" ratings for several DF stones are:

Basalt20
Chalk2
Dolomite8
Gypsum2
Marble8
Peat0.6
Quartz10
Rock Salt2
Sand0.5


Some have ranges, a few of which are really wide:
Bituminous Coal1-1.5
Clay0.8-1.5
Conglomerate4-10
Granite8-15
Limestone2-10
Sandstone2-10
Schist2-15

This would be easier to analyze with the DF stats in some kind of table.

Edit: I checked, and all of the layer stones have default values from the stone template for every strength measure other than solid density, so there's no way to find the answer by correlation.  The "f" number given above is 0.1 * "uniaxial compressive strength" in megaPascals.
« Last Edit: August 25, 2014, 03:35:10 pm by Dirst »
Logged
Just got back, updating:
(0.42 & 0.43) The Earth Strikes Back! v2.15 - Pay attention...  It's a mine!  It's-a not yours!
(0.42 & 0.43) Appearance Tweaks v1.03 - Tease those hippies about their pointy ears.
(0.42 & 0.43) Accessibility Utility v1.04 - Console tools to navigate the map

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Make mining velocity depends on rock type
« Reply #14 on: August 25, 2014, 08:30:21 pm »

In that case, why, you could just use COMPRESSIVE_FRACTURE. That value is the force in kilopascals required to fracture a material when compressed, just as COMPRESSIVE_YIELD is the force required to make it irreversibly deform (AFAIK). Therefore, Basalt's COMPRESSIVE_FRACTURE should be 2000. Isn't that something.
« Last Edit: August 25, 2014, 08:32:17 pm by Putnam »
Logged
Pages: [1] 2 3