Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.
Sign upMining Mod #18459
Conversation
This comment has been minimized.
This comment has been minimized.
|
Is this an attempt at Dwarf Cataclysm? |
This comment has been minimized.
This comment has been minimized.
|
https://en.wikipedia.org/wiki/Aluminium Better yet, could you add iron ore?
Dwarf Fortress is an attempt at Dwarf Cataclysm. What is your opinion of the idea? |
This comment has been minimized.
This comment has been minimized.
Dwarf Fortress is of course epic. If it's an attempt at this give up now - you won't even come close. It would be interesting to see how this idea pans out although I'm concerned it could be abandoned at some point due to the scale of the work required. This could leave us supporting a partial and unmaintained implementation. The codebase is littered with such abandoned ideas. One way of reducing that risk is to outline the whole of your intended design and also to reduce the maintenance burden (well structured data, documentation, unit tests etc) |
This comment has been minimized.
This comment has been minimized.
|
the largest barrier to dfda is the 21zlevel limit. since each zlevel represents untold distance (a triffid grove being 2 levels deep in coregame and mines being upwards of 6 and labs potentially as deep implies relatively shallow distance), and half are above groud and useless, ive always held the view that unless somebodu starts building skyscrapers the easiest fix is to move to ground up. but, dfda isnt trying to emulate fortress mode, but medely adventure mode |
This comment has been minimized.
This comment has been minimized.
I am perfectly aware that I will never manage to get even one element of terrain in line with the level of detail Dwarf Fortress has. The reasoning was more or less first thought up in discussion during this pull request: #18395 The idea is more along the lines of a way to make more materials available in a way that additionally encourages players to actually attempt mining. Something that adds the framework to alternative methods of getting minerals, but not to the level of detail Dwarf Fortress manages. Doing so would be unfeasible for any sane contributor.
This was the first idea for a "will be added in the later" example of ore. As it stands an iron ore item will probably end up being high-skill and involve making it into lumps of steel, as we do not really have a distinction between iron and steel with respect to the metalsmithing items.
Even going to z-level minus-five is more than most players will be willing to explore, I suspect. |
This comment has been minimized.
This comment has been minimized.
|
Additionally, apologies for the belated responses, as I had been working on the foundation for this and testing in-game for most of last night. |
This comment has been minimized.
This comment has been minimized.
|
It may be best if you work on this locally for the time being. There isn't much need to add it yet unless you anticipate either it being used in it's current form or contributions from other authors |
This comment has been minimized.
This comment has been minimized.
|
I did intend to add other ores and thus expand the metalworking side of it, admittedly. I thought it would make the pull request more manageable if I added the simpler ores firsts, namely existing minerals plus native metals. @Coolthulhu has additionally mentioned it as a bit odd that any rock can randomly contain rock salt and coal, and cited the hackiness of that idea as a good reason to find other, saner methods of implementing any future ores. Current implementation if the simplest method of several to add that feature, allowing for testing and getting a feel for the how often ores will show up in the terrain, how practical it is for players to find them, along with the effects on both gameplay and game balance such an idea would have. |
This comment has been minimized.
This comment has been minimized.
|
I recently found an artifact that destroys loads of terrain, and wouldn't mind this change. Firstly, though, there should probably be implemented more uses for the materials it produces-- copper is useful for some rudimentary tools, but in endgame has little purpose, and can't even be used to make copper wire. Same with aluminum and even things like gold and silver (arcana gives them reasons to exist, but not basegame). |
This comment has been minimized.
This comment has been minimized.
|
Copper wire definitely sounds reasonable. We could also rework handloading. The need for multiple copper tubes is a bit strange when plain copper could be used instead. Any suggestions regarding aluminum though? There are a large number of items stated to be made of aluminum that don't allow it in the recipe, so that might be one option. We lack any equivalent to the small copper, silver, and gold though. |
This comment has been minimized.
This comment has been minimized.
|
Hm. Possibly a recipe to make extra-light frames out of aluminum ingots instead of pipes? There are other light vehicle bits that could see this change, though I'm not at home to check a good list off hand. The ability to make aluminum foil would also make mining useful for finding aluminum foil fletching. And if aluminum foil were necessary as a tool for some kinds of baking or something, that'd also be interesting. Maybe a separate PR though? I'm not sure. |
This comment has been minimized.
This comment has been minimized.
|
Those both sound like viable ideas, but I might advocate implementing them in a separate pull request. The more common coal, rock salt, niter (if gunsmithing, but also for salted meats), and sulfur (gunpowder and other chemical uses) might be the more immedaitely useful things a survivor would mine for. Later on additions like galena or hematite might also make this mod more desirable. But again, that can wait for a future pull request if others deem that acceptable? |
This comment has been minimized.
This comment has been minimized.
|
Hm. Maybe the changes that can affect basegame (maybe melting down aluminum cans and making foil, or making copper into wire, etc.) should be put into basegame, and the mining mod will come as a secondary source of all those materials. I think if you'd like to make the mod more complete, adding galena or hematite now would be easier rather than later, when people are already using the mod and generating stone which will proceed to be absent of iron ore. |
This comment has been minimized.
This comment has been minimized.
|
That might be acceptable then, adding the ores I intended to implement. And yes, I assumed that making the metals more usable in vanilla would be the proper method, while adding the ores themselves to the mod. |
This comment has been minimized.
This comment has been minimized.
|
There we go, apologies for the delay. Have now implemented two potentially more usable ores as suggested, galena and hematite. Galena is mainly a source of lead, along with some silver. Hematite can be made into lumps of steel, but doing so requires coal/charcoal and limestone. Since scrap/chunks/lumps are meant to be somewhat makeshift and vaguely either iron or steel, we can assume that this is a crude mild steel. Either way, both recipes can only be learned via books, unlike the previous simpler recipes. |
This comment has been minimized.
This comment has been minimized.
DO WANT. |
This comment has been minimized.
This comment has been minimized.
|
Fine-tuning the content as mod material is fine for the moment though, while I am actively maintaining said mod at least. Whatever method allows for the foundation for this concept to be laid. |
This comment has been minimized.
This comment has been minimized.
|
The problem here is that materials are neither rare in DDA nor especially useful. For each mined material you need to give an example of something useful that could be made from it. The mining interface is painful so I'm not seeing a reason players would actually want to do it if otherwise avoidable. Adding new uses for materials would be good but these need to be well worked into the game and have some necessity. Lets take galena for example from which you can smelt lead. Readily available in the towns so we'll presume your hiding in the woods (legitimate challenge play).
I can't see a solution to the former (plastic). The latter could be dealt with via craftable muskets - but again you need to make sure the steps are all possible in the woods. Before you go further with this you need to tackle the materials workflow. Get a piece of paper out and start sketching. If you get enough down we can help you implement some recipes and ideas - lots of anciliary benefits to mainline from this. If you get far enough I'll help you rewrite mining to be less awkward. Extracting minerals comes last though - you're going in the wrong order here. The foundation is in the utility of mining - currently none. Fix this and you have a workable concept. |
This comment has been minimized.
This comment has been minimized.
|
Hmm. Blackpowder is useful for some of the firearms though. It would work better if they were allowed in more of a few other cartridges that were around when blackpowder was in use, perhaps. However, the big stumbling block there is that blackpowder requires a book to learn. Maybe that should be changed? Sulphuric acid is also useful once you have some niter, as then you can start producing more saltpeter. Copper wiring and a few other material sanity changes were also on my list so far. Silver and gold have also been used as electrical connects, so adding those to batteries could help a bit. The addition of hematite is perhaps the most outright practical ore, though also the most complex to make usable. Again it needs a book to be used, but it further adds uses to coal and limestone. |
This comment has been minimized.
This comment has been minimized.
|
Related to the concept of making black gunpowder more usable, I did have an idea. Perhaps a flintlock weapon that is in between the shoddy makeshift weapons and the flintlocks in terms of skill demands. Another idea that came to mind would be a double-barreled flintlock. These ideas could be combined into one by implying that it is not a finely-crafted piece like the other flintlocks, and would make sense as genuine multiple-barrel flintlock firearms are rather rare. We have the pepperbox, but that can not be crafted, and likely for the best. Having two shots would also help make an otherwise statistically inferior flintlock more practical as a weapon, by filling a niche the other, harder-to-craft weapons do not. |
This comment has been minimized.
This comment has been minimized.
|
It's worth sketching your intended recipes out. This might be better moved to an issue and/or the forums as you want to get the intended balance worked out before you write (or commit) any code. It doesn't have to be perfect but a rough idea of where you are going will lead to a much better result. |
This comment has been minimized.
This comment has been minimized.
|
Never really been on the forums, and from what I can tell an issue might be better. I will mention a few rough ideas worked out here there:
|
This comment has been minimized.
This comment has been minimized.
|
...are you serious, mugling? Poked my head back on here to confirm that all the recent screwups for my old mods have finally been fixed, and now I'm drooling at the thought of Dorf Days Ahead. I'm assuming that Rivet is to, given the only feedback she's given so far. |
This comment has been minimized.
This comment has been minimized.
|
Only if it's well thought out in advance. This PR is in the wrong order - work out the later stages first then work backwards from there. |
This comment has been minimized.
This comment has been minimized.
|
I did state that I have ideas for further utility of this. I thought that the actual foundation here would be making the actual mining part. And getting the hard part out of the way was what my initial priority was. For now though, if needed I have a list of all suggestions either devised by me, or stated by others: #18478 |
This comment has been minimized.
This comment has been minimized.
|
I would also like feedback from others (such as @Rivet-the-Zombie) regarding the actual implementation of this idea, as well as concrete feedback on exactly which of the multiple ideas presented are actually needed to make this mod useful. At present part one of (possibly) two gunpowder-related pull requests is being rebased, so those will reinforce the utility of bituminous coal, niter, brimstone, and galena. This leaves a wide array of possible ideas to make native copper, silver, gold, and aluminum more useful, most of which have been listed in the issue I have created. Finally, we have hematite. Iron/steel is already extremely useful, so this is the odd one out. |
This comment has been minimized.
This comment has been minimized.
|
Just a side note-- an extremely rare chance to uncover a map tile with an artifact buried in stone would be interesting, ala mine finales. Maybe a higher chance the deeper one goes. |
This comment has been minimized.
This comment has been minimized.
|
I was considering either that, or a Dwarf Fortress shoutout involving a hollow vein. Regarding your idea, I was thinking that foothills, underground anomalies, and other mapgen occurrences would be a possible future addition. However, I do not know how to spawn artifacts in JSON mapgen. |
This comment has been minimized.
This comment has been minimized.
|
There is never a shortage of metal in the game. Mining as a late game activity for larger amounts of metal actually worsens the interface concerns. It's also much less efficient than just deconstructing frames. |
This comment has been minimized.
This comment has been minimized.
|
There is also the idea that it should be an improvement on the existing way minerals are procured from rock. Random drops from generic solid rock have been considered less than ideal. Additonally, they are tedious in their own way due to the low odds of getting anything, let alone what it desired. It must be noted that no matter how easy we make mining, players will only go for it for three reasons:
By its very nature, this feature is not intended to be the primary method of obtaining resources. It is meant to be an alternative. While tedium is a bad balancing factor, it should ideally require some degree of effort and a bit of luck. If you are weighing this explicitly against scavenging, then there is no way I can see you approving of this concept. |
This comment has been minimized.
This comment has been minimized.
|
@mugling, it's a mod for Dwarf Fortress nerds. I didn't get this kind of absurd "no, not until your mod is perfect" demand back when I was a modder. You're literally the only one here stonewalling this, over demands that no one is going to be able to fulfill. Personally I don't know how this contributor hasn't run out of patience by now. |
This comment has been minimized.
This comment has been minimized.
Given the endless sandbox nature 1 and 2 never apply. The third is subjective but balancing via tedium is always wrong.
It will have marginal appeal. That doesn't make it unworthy but there does have to be some balance as we don't have unlimited resources. We are approaching half a million lines of JSON which is difficult to maintain whenever we update the core code. Incomplete features are a major problem - all pain and no gain - so the design problems do need resolving first. Or put in simpler terms until two days ago trying to use a pickaxe resulting in a segfault - that's how much attention mining received. What is the priority trying to make a release or widening the project scope further? |
This comment has been minimized.
This comment has been minimized.
|
Reasons 1 and 2 are a concern if the player is stationary, which they have a good chance of being if metalworking is a concern. And it should be noted that there will always be more ideas and more reasons why an alternative source of metal would be desirable. We can make mining more usable, but is this already a potential benefit to players willing to invest effort as-is. I will admit that this is frustrating. You are asking more of me than I believe I can implement. Give me a concrete, solid list of what I need to do, and I can at least attempt it. If there is any of these UI improvements you can implement instead, then please do so. One idea I had was possibly adding some surface hint that there might be metals below. I would perhaps want to research De Re Metallica or some other historical source of info on prospecting, but that alone would allow attentive players to get closer to what they are after, and make blindly tunneling through rock the last resort. That said, I need a solid understanding of every single thing this mod requires. So far you have been coming up with more and more requirements gradually, often just after each solution I propose to a prior problem. I know that is surely not your intention, but it feels like it, and is making this difficult. |
This comment has been minimized.
This comment has been minimized.
Is this a good idea then? You only just started contributing so this project is ambitious and it might be good to get your grounding first. This idea needs to be done well and then supported or not done at all. Not having this merged doesn't stop you working on your mod - plenty of author have mods outside of the source tree. Having it in the tree means you will consume the projects resources - for example you already got a fix for that segmentation fault when mining. It's not that you're unwelcome but you should really expect to have to make your case. I'm asking you to add the content that would be of general benefit first. |
This comment has been minimized.
This comment has been minimized.
|
That has not answered my concerns. If it requires that I set this project aside to contribute in other ways, get used to handling the code, and implement ideas one at a time, then so be it. |
This comment has been minimized.
This comment has been minimized.
|
Mugling, you're pulling more demands out of your hat at random, and evading questions that would require you set a real, definitive list objectives. You're moving goalposts here. |
This comment has been minimized.
This comment has been minimized.
|
@DangerNoodle, any chance you could upload this elsewhere if Mugling is going nowhere with the whole "answering the fucking question" thing? Or hell, I'll download the branch and dropbox it myself if needed. |
This comment has been minimized.
This comment has been minimized.
|
Never made use of dropbox to be honest, have not needed to so far. I guess it is fine for you to do so. |
This comment has been minimized.
This comment has been minimized.
@chaosvolt Could we talk on the forums sometime? |
This comment has been minimized.
This comment has been minimized.
|
Sent a PM. I was kinda done with the forums in the absence of any current screwups involving my old mods though. I wouldn't even be on here still if I hadn't seen this mod while checking up on said old mods. :V |
This comment has been minimized.
This comment has been minimized.
To my knowledge you can do that, or place a link to your mining mod PR on the Cataclysm-DDA mods forum: http://smf.cataclysmdda.com/index.php?board=3.0 |
This comment has been minimized.
This comment has been minimized.
|
Never really posted on the forums, only occasionally lurked there. |
This comment has been minimized.
This comment has been minimized.
|
As I suggested in #18478, I have further updated the branch. Added a few surface hints for mineral veins have been added. Currently these are hinted at by things like outcroppings, hills, and fragmenta. Additionally altered the odds of veins spawning, and altered coloration of veins (and probable veins) on the map. Currently I can not see any feasible way to make river-based veins work sanely, as any mapgen entries would have to mesh with the river. In contrast, shipwrecks stick out like a sore thumb. While the current method is a bit simplistic, it at least makes surface prospecting possible. |
This comment has been minimized.
This comment has been minimized.
|
Swiggity swooty, will grab the thing to update the dropbox'd version. I still think you should re-open this and get @Rivet-the-Zombie or @Coolthulhu's opinion on this, since @mugling's opinion can basically be summed up as "this needs more stuff, but I'm not gonna set a concrete goal list for what I want because then they're gonna hold me to that list" :V |
This comment has been minimized.
This comment has been minimized.
|
Thank you then. Regarding that, at a bare minimum #18452 is essential to this. Other than that, most of what I had planned to support this mod has been implemented by now. |
This comment has been minimized.
This comment has been minimized.
|
UI is still a significant problem - this could be fixed by refactoring of activities to support a queue but compared to releasing |
This comment has been minimized.
This comment has been minimized.
|
I am unsure how high a priority UI is for this. I mean, what is it with regards to UI that is the problem? The branch presently has surface indicators of veins underneath, so it is possible for attentive players to find veins without having to blindly tunnel through rock. Blindly tunneling through rock will always be the sub-optimal way to find veins. Whether in real life, in Dwarf Fortress, or in this mod, there are more efficient ways to prospect. Holding back the mod due to the least efficient method of mining being unfeasible does not sound like a valid objection. |
This comment has been minimized.
This comment has been minimized.
Essential. It would be tedious to the point of unusable without it.
Nobody is stopping you developing this in a branch of your own and/or distributing it yourself? |
This comment has been minimized.
This comment has been minimized.
|
I have been keeping the branch updated. That said, it is worth empathizing: scouting out signs of veins and digging down is always going to be less tedium than tunneling through rock hoping to encounter a vein. Making mining less tedious overall would be desirable, but my principal objection here is that you are presenting this as a vital problem without presenting any ideas for a solution. You are also being vague as to WHAT element of the UI is the problem here, and no one can present solutions if you do not identify the problem. As I have said in the associated issue, these are your objections. The onus is on you to clarify them when asked. And I have already asked repeatedly. |
This comment has been minimized.
This comment has been minimized.
...see why I've accused @mugling of bullshitting you? ಠ_ಠ |
This comment has been minimized.
This comment has been minimized.
Hang on a minute. You arrived a few weeks ago so where is it written that the developers have to argue with you until you chose to concede? Given you cannot queue activities via the UI this mod could only be a tediously painful way of obtaining metal (click, wait, next tile, click, wait, next tile) that is already available in silly abundance. This PR isn't a patch nor incremental progress - it's a complete tangent to the current game. The code base is littered with off-topic ideas from new contributors that were then abandoned and which were of sufficiently marginal appeal that nobody else picked them up. The tangent part is less important if you had a track record of contributions but as-yet you don't. Nobody is stopping you writing this in a branch of your own. Why is it you don't want to follow that plan? |
This comment has been minimized.
This comment has been minimized.
Not necessarily. That depends on how are the signs presented. Now, if the sign was a message like "You spot a copper vein, far northeast" - that would do it. |
This comment has been minimized.
This comment has been minimized.
My apologies. I only meant this in that it would help if the problem was more clear. Otherwise a solution cannot be devised. As you are the one pointing out the problem, you need to be clear what the problem is, or else a solution can not be devised. That is the only thing I meant when I said the onus is on you to clarify it. I am assuming from this that some form of queue or other way to automate mining is what you meant?
Right now the signs are somewhat overt, but they are not highlighted in the form of "there is a vein under here" or such.
That is what I am currently doing, and others are hosting the mod content given I have stated I am not active on the forums. While it would be acceptable to maintain the mod outside of the main game, I had still retained hope that it would be an acceptable addition to the game itself. My apologies for this. |
This comment has been minimized.
This comment has been minimized.
|
Why not turn the bash terrain action into a toggled mode instead of requiring the player to press b+arrow key every time? The player could mine by simply walking into a wall after enabling bash mode once. |
This comment has been minimized.
This comment has been minimized.
|
Possible, except you don't smash to operate the pickaxe. |
This comment has been minimized.
This comment has been minimized.
anontahoe
commented
Oct 12, 2016
|
just create a "mine shaft" construction menu entry that lets you select a rectangle like in DF. |
This comment has been minimized.
This comment has been minimized.
anontahoe
commented
Oct 20, 2016
|
furthermore, in addition to letting the player select a rectangle to be mined out, you need to solve the food issue so he doesn't die while he's working through the queue. |
DangerNoodle commentedSep 21, 2016
This mod is an attempt at an idea I mentioned during an earlier pull request. Currently leaving this as mod content might be the best option in the meantime, but content can be mainlined if desired.
Adds mapgen entries containing mineral veins and clusters, scattered about through normal terrain. These essentially use the overmap method to add random veins in the least intrusive manner I could think of, as I do not think that source code changes would be easy for me to implement.
Veins can occur in both shallow and deep format. Shallow veins will have only a single vein/cluster directly underneath the surface. Deep veins/clusters range from z-levels minus-two to minus-five, but each z-level has only a 75% chance of containing anything. Deep metals occur less often than shallow ones, and have different weights of potential minerals.
In addition to pre-existing rock salt, coal, niter, and sulfur being potential finds, the mod adds native copper, silver, gold, and aluminum. These require you to melt them down into usable material, but are relatively simple to do so, being native metals.
Additionally changes mundane rock to no longer be a source of coal or rock salt.
Even with occurrences set rather high, this makes ore somewhat rare, but reasonably possible to find with some attempt to poke around.
More complex ores that would require actual smelting are planned for the future, but for the time being this is more than enough.