Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Mine-for-specific-stone designation  (Read 1826 times)

The Dark Bunny

  • Bay Watcher
    • View Profile
Mine-for-specific-stone designation
« on: August 20, 2008, 01:00:56 am »

I've seen a lot of people wanting a way to follow veins or clusters of ores/gems/bauxite/etc, but I've also seen good fortress design ideas ruined by trying to mine the vein out completely.  So I propose the following compromise: A conditional mining designation.  Designated like regular mining, but with a settings panel that allows the user to select which stone types are desired.  Any stone of the appropriate type that becomes revealed in a conditional-mine zone would be automatically designated for normal mining.  So you could have designations like "follow that tetrahedrite vein! ...But only if it doesn't cross into this area I'm going to be mining out for bedrooms later."
Logged

Draco18s

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #1 on: August 20, 2008, 01:29:25 am »

Bloat218
Logged

korora

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #2 on: August 20, 2008, 10:48:00 am »

Bloat218

Not quite.

But I think it would be a UI nightmare anyways.
Logged
DFPaint, a cross-platform 'screenbuilder' utility

MMad

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #3 on: August 20, 2008, 12:24:03 pm »

I suspect the potential issue this suggestion seeks to resolve could be more easily solved in a more straightforward way. Such as designating large squares of rock as "forbidden" or something.
Logged
"Ask not what your fortress can do for you - ask what you can do for your fortress."
Unapologetic ASCII abolitionist.

Granite26

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #4 on: August 20, 2008, 02:02:42 pm »

I suspect the potential issue this suggestion seeks to resolve could be more easily solved in a more straightforward way. Such as designating large squares of rock as "forbidden" or something.

Or just don't dig smoothed stone. 

It seems like what happens is

1:  Dig out initial fortress area,

2:  Make it pretty, smooth walls, etc

3:  Exploratory mining.

Step 3 is really the only point you want to follow veins...

So, add the ability to toggle vein following, don't dig out smoothed walls, and all designation of smooth tasks on unseen tiles.  (much like you can designate dig tasks on unseen tiles).

Starver

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #5 on: September 04, 2008, 09:14:13 pm »

My idea about vein-mining (I've seen several suggestions while searching/browsing the boards, and pointers to the Bloat item that already exists, but not read them all so excuse me if I'm repeating someone else) is for something like a (d)ig-(V)ein designation marker that opens a standard (d)ig-(d)[Mine] style of job on a chosen square (or squares) and then as each square is dug out any further adjacently revealed squares (or even already revealed squares, if lazy people are to be catered for who only designate one of two/more visibly connected same-type spots) of the exact self-same type as the the one just dug are auto-designated unless it has a warm/damp status (of the kind that would stop an "unseen area"'s digging designation).  The warmth/dampness encounter would not stop other areas of the vein continuing to be dug into, though a co-adjacent digging-in-progress would be similarly stopped from spawning a dig-out on such a forbidden spot if also adjacent and testable due to the same sanity checks.  As it never seriously attempted to send a digger to a spot known to be a problem, it also wouldn't generate the pause-and-Announce that the subsequent discovery of danger on dig-job applied to obscured areas would bring upon one.

I also had personal thoughts about an auxiliary settable option that would add "would break into an open space" as a selectable/deselectable veto for auto-designation.  Put simply, the open-space veto would check for any (known?) voids adjacent to the potential site and refuse the internal auto-dig on the potential break-through spot it if any of these were open space areas /not/ uncovered by the current Vein- (or Cluster- or Mass-)following job.  This would stop penetrating deliberately left walls (smoothed or otherwise) surrounding one's own rooms, out into the open through mountainsides and stumbling into chasms (although maybe you'd get the one gap made into it if unexpectedly penetrating the wall of an underground cavern is needed to discover its existence).



But to address the issues in this particular thread, could there also be a (d)ig-(R)eserve designation available?  d-R areas would act as an additional veto on the d-V process (as well as the aforementioned warmth/dampness, perhaps in place of the wall-breaching veto) and could even be useful to manually place upon discovered damp/warm rocks to prevent accidental selection by d-d[1].  Also imagine designating a room-wall grid as d-R with a few well-placed cursorings, removing the selections for doorways/corridors you want open from the start then selecting the entire area for d-d (automatically excluding the mask you left laid down), instead of selecting each and every room space individually and then the doorways between (assuming you don't use some fancy template implementing mod, of course).  Could it/should it also bar channelling in from above, maybe?

I'm sure your fertile imaginations could come up with more of the uses for this, depending on how the implementation is achieved.  Also I'm not married to d-V and d-R being the precise command sequence, especially if I've accidentally incurred upon the territory of some other method already in existence.

As far as the vein-follower is concerned, though, it might even be something that Toady would be willing to allow only upon Vein (or Cluster) resource squares, disallowing its use upon 'mass' stuff like the typical loam or granite strata, lest one effortlessly (leastwise at the keyboard, if not for the dwarf(s) assigned) set off a "point and click" evacuation and wander away, never to worry about the kinds of bad things that can happen (or come back to find one paused at the first hit of a damp stone, perhaps moments into the process).




(I'd also quite like an 'edge follower' auto-dig command (applied to a safe bit of rock adjacent to where you've found a damp, warm or space-adjacent wall and it'll auto-dig each and every safe square it discovers following the edge of that phenomenon (cutting out when there's no more safe squares, indicating circuit, edge of map or hitting an intersection of the original edge zone with a new warm/damp/edge-proximity zone, which is probably a trivially easy programming exercise).  But this may encourage a level of laziness or two beyond this wish for vein-following, apart the possible necessity of having the original request include input on whether to "follow to left" or "follow to right" where the choice is available. It might be deemed too powerful to "Fire and Forget" your miners while you deal with other things and come back to a perfectly designed cavity/more experienced miner in a way that might be considered 'unfair'. :D)


[1] I've often d-(s)moothed any discovered warm or wet stone to give that little extra visual warning/inhibition, even when I've not been bothered whether it ends up to be smoothed or not, and a d-(R)eserve designation would be an ideal compromise, even though it would mean that I'd need to give my idle good-for-nothing stoneworkers something else to do. ;)
Logged

Granite26

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #6 on: September 04, 2008, 09:30:38 pm »

what's wrong with (D)esignate - (V)ein that only digs economic or ores?

Your exploratory mining finds a vein, so you (d)-(v) the block off the the side.  If they reach the end of the block, they'll stop..

Starver

  • Bay Watcher
    • View Profile
Re: Mine-for-specific-stone designation
« Reply #7 on: September 04, 2008, 10:51:51 pm »

what's wrong with (D)esignate - (V)ein that only digs economic or ores?

Your exploratory mining finds a vein, so you (d)-(v) the block off the the side.  If they reach the end of the block, they'll stop..
That's the short way of saying what I was saying, yes. :D

(I tend to waffle, explore tangential options, problems and other issues, logical extensions, etc...  The above was essentially what I'd been thinking (as have others including Toady, from what I gather), but as I was following up to a thread talking about stopping such a vein dig (that doesn't yet exist) from tunnelling where it wasn't wanted I ended up adding the (d)-(R) idea as well as the possibly half-baked automatic stop conditions.

BTW, (d)-(v) is engraving-view toggling (and (d)-(r) an upward ramp), so I decided to go uppercase.   8))
Logged