Importing an argument from another thread:
Hey guys! New here, but huge fan of the game. Always wanted to do an ecology/permaculture farming sim, (still haven't found a good one), and from the very beginning thought DF is a perfect start. I am irl a former-computer engineering student-turned-professional horticulturist and practical ecologist. I know agriculture is something on the development horizon, so hopefully I'm not too late here. There is already so much care that goes into world formation geology, it seems natural to continue that into dynamic game-play.
In one sense, I'm bumping this
http://www.bay12forums.com/smf/index.php?topic=76007.0 pretty exhaustive thread, but also wanted to bring my own spin, which will probably include some points already made, but may also offer a good marriage of intuitive simplicity and fun/challenging complexity.
I think a big part of the crux of soil and ecology and its translation into human understandable/programmable language is the overwhelming complexity that unfolds when you approach the subject from a reductive/scientific pov. Here, I think it would help to focus on the basic foundational, modular/symbolic concepts upon which all living processes (plant and dwarf alike) are modeled.
There are four ingredients to living processes: mineral, air, water, and carbon (the old Greeks called it fire, a simple model of synergetic carbon reduction/oxidation; combustion and respiration are ecologically very similar). Balance is an important concept (in fertile soil: 25% air, 25% water, 45% mineral, 5-10% carbon). Mineral is heavy/slow and air is insubstantial/fleeting, but water and carbon cycle endlessly through atmospheric and terrestrial phases, and in transition, they are extremely manipulable.
DF already does pretty well with the mechanics of water and its seasonal flux, though there are some tweaks that could be implemented with how it soaks into and is held in soil.
I think carbon would be a good place to start with adding a new mechanic around soil fertility modifiers to soil tiles (similar to the 1-7 depth-scale of water?). The roots of plants are really the primary builders of soil carbon; as they grow and die and regrow through the seasons, they leave behind carbon-rich air/water channels in the soil. In this way, disturbance associated with annual cropping systems depletes soil-carbon, while long-term/stable perennial cropping systems build soil-carbon. This type of soil-carbon would probably be part of world-generation. I would love to see an agricultural option that allows perennial guild/community style planting zones that could be built up around pre-existing fruit/nut trees, though I understand the current system of annual cropping has an attractive mechanizable aspect for many (hence our modern reliance on industrial fertilizers and machinery).
And then of course there are the possible fun sub-mechanics surrounding the translation/cycling of "waste" (refuse, corpses…) into "resource". Some waste is rich in carbon (wood and other dry/brown vegetation), while some waste is rich in nitrogen (green vegetation and especially animal products). Carbon and nitrogen have a kind of twin-sibling relationship. Too much nitrogen causes carbon to be quickly respirated (depleted) from the soil, and leads to collapse of soil-life when the artificially-applied nitrogen is eaten up and washed out of the soil (think like the binge-crash of sugar or hard-drugs), while too much carbon ties up plant-available nitrogen and/or leads to water-saturation/anaerobic conditions. In this way, there should be an appropriate sense of time and place regarding the manipulation of these resources.
Ideally, we "complex" these valuable resources by 1) facilitating interaction, and simultaneously 2) slowing/buffering the flow through the system. Terracing linked up to a drainage/water-source is a perfect example of complexing water. Planting nurse-logs/corpses in the ground, "chop-and-drop"/chip/leaf mulches are examples of complexing carbon into the soil system.
Mostly, the focus should be on the interactions of water and carbon, as these really lie at the heart of healthy soil and plants.
Gotta run,
Thanks again for a really fun game.
-B
And then responding to this:
For that mater, the core of what I am asking of you remains unanswered: How would players actually interact with any of this data?
Building latrines, stables, stockpiles, activity-zones, and hauling water, manure, mulch, and querying farm tiles and farmers' workshops. I don't think the average player wants to have to deal with more greater quantities/qualities of soil amendments than that. Am I understanding your question correctly? I don't think I can get more detailed, as I am not into modding the RAWs or whatever.
No, I don't think you're understanding the distinction I'm making.
You are talking about items in the chain of production for the simulation, I'm talking about interface. This thread is both about having a simulation, yes, but more importantly about the interface that allows the player to understand and interact with it.
See the
images in the TL;DR post (or the whole post if you haven't read it yet), and then the
Interface post, which explains in depth how the player would actually interact with this system.
To make a long story short, I am suggesting a whole new interface not dissimilar to the military screen, where agricultural activity (including ranching and forestry among others) are all scheduled by the player, then automatically carried out by the dwarves so as to eliminate the need for micromanaging a constant "add more fertilizer" button press that players, simply, would not remember to press.
To this end, I don't see why removing one or two resources from the game really makes the game simpler. Either you're suggesting a workshop and manual job assignment scheme, which would be
massively more micromanagement-heavy and complex, even with less "moving parts", or you're basically just saying you want to keep the overwhelming majority of what I talked about, you just want to make "carbon" be "more important" by removing some of the other variables.
From what you've said so far, I get the impression that you're not actually interested in a simpler system, you're trying to argue against "NPK" in favor of "CN" because of a political/philosophical opposition to modern fertilization practices. If so, that's perfectly fair, I enjoy such an argument more than arguing complexity of interface, but I'm still not sure what it is you actually want players to
see when they are operating in this system that would be different from what they see in the system currently outlined.
I'm not sure why people are so hung up on sevenths...
Because as a player, the 1-7 water-scale is the most immediately available presentation of an already-implemented finer-gradation than the all-or-nothing that-which-needs-to-be-dug and that-which-has-been-dug. Really, the programmable bits and the UI scale really don't matter so much as long as there is some kind of non-zero-sum spectrum of soil characteristics.
The thing is, it does matter significantly. Sevenths of water are crude and have to be handled with random motion taking place dozens of ticks for optimization reasons, but have to be large because they occupy 'physical space' to the point that they block portions of the map and force connectivity redraws. Plants already have growdurs that are only checked in hundreds of ticks because they're meant to be slow and not take up processor time too often, but they are also still measured in the hundreds. Sevenths need to have random checks, and that can mean forcing a dwarf to re-water a tile before he's even gotten to the next row of crops because of some randomly "bad rolls".
However, you do bring up the major, recurring theme I do have to bring home - players generally don't recognize the things they don't see. This is the core of my argument of why we can have complex systems without making it seem complex to a player: They just don't see the complex numbers, they only see the simple ones.
The objective shouldn't be to make a simple set of interactions, it should be to make complex interactions where the numbers the player doesn't directly need to interact with are hidden.