Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 13 14 [15] 16 17 ... 35

Author Topic: Improved Farming, Rebooted: Agricultural Revolution  (Read 136338 times)

Silverionmox

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #210 on: February 20, 2011, 06:42:01 am »

Keep in mind though, that soil states aren't generated randomly. Neither are the available plants. In a given embark the available soil will match the available plants.

In addition, a grow/not grow dichotomy is to be avoided. There will be plants that do decently over a wide range, but especially well in a small range.

The many variables are needed in order to assure that farming can go wrong in a variety of ways, and need a variety of ways to fix it.
Logged
Dwarf Fortress cured my savescumming.

AngleWyrm

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #211 on: February 20, 2011, 07:43:27 am »

In addition, a grow/not grow dichotomy is to be avoided. There will be plants that do decently over a wide range, but especially well in a small range.

Let's say that any given plant at least grows over 90% of the range of values for a given metric; that the bottom 5% is too little and the top 5% is too much of a given soil metric for a given plant. That means that if there was only a single variable, then there's a 90% chance that a given plant and a given soil combination would work.

Now let's look at what happens when we make it ten variables, and all of them have the same 90% coverage with only 5% on the ends that doesn't grow. In order for any given plant to grow, it must be in the 90% span of all ten metrics. That's 0.9^10 = 34% coverage. Another way to look at it is to say that even in this extreme of a 90% span of allowable values in all variables, about 2/3 of all plants cannot grow in any given soil type.

And this scenario is the exact opposite of "vast differences" in plant soil preferences. If we narrow the ranges to create more variety in plant preferences, the number of plants that can grow in a soil quickly drops off.

Engineering an acceptable solution could be done like this: Let's say we decide that the idea of having only 1/4 of all plant types grow on any given soil is a reasonable distribution. Furthermore, we wish to have a variety in plant soil preferences, say only 50% of the range of any given variable is viable. Then the math becomes 0.5^x = 1/4, where x represents the number of variables needed to achieve this goal. Solving for x: x = log(1/4) / log(0.5) = 2 variables.

Another scenario: have only 1/20 of all plant types grow in any randomly selected soil sample, and have plant preferences set to 50% of each variable's range. The result: x = 4.3 variables. Since variables can only be an integer, we can fudge around with it by setting x=5, and then letting the percentage range or number of plant types change. Let's let the percent range change, so that the formula is: x^5=1/20. Solving for x, the span of viability on each of five variables becomes about 55% of the range.
« Last Edit: February 20, 2011, 10:39:04 am by AngleWyrm »
Logged

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #212 on: February 20, 2011, 10:42:35 am »

Anglewyrm, you're sort of arguing against one of the basic goals of the system, here.  Of course part of the point is to have hundreds of different types of growable plants.

You're looking at this whole thing as a sort of binary game, where there has to be one plant for every single possible value of every soil variable, which isn't at all what this is going for.  What this is going for is simulating an ecolosystem that is player-manipulable.  I'm trying to make an interconnected system of plants, animals, fungi, and bacteria that seem like a real living system to the player, and which the player can interact with to gain the resources they need in either an efficient and sustainable way, a ruthlessly efficient and unsustainable way, an inefficient but sustainable way, or a foolishly inefficient and unsustainable way.

The differences between some of the nutrients can be fairly subtle, and somewhat intentionally so - almost all plants are going to want NPK.  The differences between pollutants is more major.  Pollutants are supposed to be bad, and there are supposed to only be a couple of plants that can survive heavily polluted lands.  Their purpose isn't to have an entirely separate set of hundreds of plants for the "growing plants in radioactive waste" end of the spectrum, it's to not have hundreds of plants that grow in radioactive waste.  Arguing that this system means there will have to be an equal number of "don't live in horribly polluted land" plants as "do live in horribly polluted land" plants is frankly a little odd. 
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

AngleWyrm

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #213 on: February 20, 2011, 11:00:15 am »

...and the simple act of picking which plant to plant in your soil can become a truly meaningful choice for the player.

This requires at least two viable plants to plant in any given soil, on average. Any less takes away from "truly meaningful choice".
« Last Edit: February 20, 2011, 11:14:05 am by AngleWyrm »
Logged

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #214 on: February 20, 2011, 11:14:56 am »

...and the simple act of picking which plant to plant in your soil can become a truly meaningful choice for the player.

This requires at least two viable plants to plant in your soil, on average. Any less and there is no "truly meaningful choice".

I'm talking about making hundreds of plants possible in the game.  I specifically said so multiple times.  I have absolutely no idea where you are coming up with this notion that I'm saying anything other than that. 

Did you read that last spoilered-out post?  The part about all the different things you can farm?  If plants can have over a dozen different purposes, from industrial uses to decorative ones to environment manipulating ones to trade to oxygen production to light production to alchemy components to just plain food and drink production, then you have meaningful choice even in the same soil conditions. 

Each of those does different things to the soil, and that means that in order to reset the soil conditions to do it again, you need to go to different lengths to get the soil back.  That doesn't mean an entire set of plants for every single possible permutation of soil conditions, that just means that different plants may require different amounts of care to get back to the right starting point.

This doesn't, however, mean that I need to have hundreds of plants possible for every single permutation of soil conditions, which is just absurd.  Land pollution is something you want to avoid because plants won't grow in heavily polluted soil. That's why you want to avoid choices that will pollute land you want to continue cultivating, even if it means passing up shorter-term benefits.  That shouldn't be a radical concept.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #215 on: February 20, 2011, 02:59:18 pm »

Actually, let me try a more illustrative example of why the notion that we need to have plants that survive in both "high" and "low" amounts in every variable is rather odd.

If we go by a system where every single variable had a set of plants suited for every value the integer could hold, then that means we would need to do the same for one of the variables - water.

This means that roughly half the plants would need water in the soil, and drain water out of the soil when they grew, but the other half would then need dry soil, and create water from nowhere and add it to the soil as they grew but die if they added too much.  This is just a little kooky. 

It is not at all out of line to suggest that some variables are generally good for plants, like water, and either soil nutrients or biomass, while some other variables are generally bad for plants, like soil pollution, and that the overwhelming majority of plants generally want water, good soil, and a low concentration of toxins in the soil.

There are some variables which exist purely to differentiate where one set of plants can grow as opposed to another set of plants, such as to prevent palm trees from growing in a tundra, or a cactus from growing in a marsh, which would include environment, pH, and the CEC-D variables, but this does not at all apply to every single variable I have talked about.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #216 on: February 20, 2011, 06:42:55 pm »

Livestock
Spoiler (click to show/hide)
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #217 on: February 20, 2011, 06:43:23 pm »

Cross-Culture Agriculture
Spoiler (click to show/hide)
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

jseah

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #218 on: February 21, 2011, 05:32:08 pm »

Just to say I'm still here.  Still liking it!

In my mind, the future DF having all of this would be a pretty nice game. 
Logged

sockless

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #219 on: February 21, 2011, 11:49:29 pm »

Anglewyrm:
Your maths is flawed.
You are assuming that the soil values are completely random and mutually exclusive; they are not. The chances are, that if some of the variables are right for a plant to grow, then the others will be too, maybe one or two variables would need to be fixed for it to grow well, but most plants would be able to grow in most soil types.

The NPK system is used for the vast majority of plants anyway, so if that was wrong, you would be able to grow very little. The only 2 variables that would really make a difference to whether a plant grows or not would be salinity and pH, but that should be around right for most plants.

Anyway, as Kotaku has said, the idea proposed in this thread is that there will be hundreds of different plants. For this scenario, we will imagine that your reasoning was sound. Lets assume that there are only 100 plants, a small value, there would be 34 different plants for you to grow. Right now there are 21 plants in total, 3 of which we can't actually grow. So it doesn't matter if two thirds of plants wouldn't grow, because there would be heaps of plants anyway.

You may try to rebut that Toady can not be bothered to code 100 different plants. This is probably true, especially since he'd have to research every plant. Instead, he could leave it to the community to make the RAWs and just package it into the game.



Kotaku:

I don't seem to see much information on how seeds will be implemented. Here's how I think that they should be:

Berries: Berries should be planted straight, since I don't think that dorfs could be bothered eating around the seeds of strawberries.
Tubers: Tubers are commonly grown by replanting a part of the roots (potato), but they can be planted by seed too (carrot).
Grain: Since grains are the seeds, grain would work as both seed and food.
Fruit: Fruit seeds and stones can be kept after being eaten, so they would stay like the classical plants in the game.
Nuts: Nuts would work the same as grains.

Also, fruit should be able to be thrown on soil to grow as well.
Logged
Iv seen people who haven't had a redheaded person in their family for quite a while, and then out of nowhere two out of three of their children have red hair.
What color was the mailman's hair?

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #220 on: February 22, 2011, 09:13:32 am »

You may try to rebut that Toady can not be bothered to code 100 different plants. This is probably true, especially since he'd have to research every plant. Instead, he could leave it to the community to make the RAWs and just package it into the game.

Actually, I have talked a little with Sphalerite on that front.  He made a piece of code that generates procedural crops for the current farming system, and he might be interested in putting together a variation on it that will allow for a fairly set strict of balancing rules to create a good sample size of crops.  I could always just create a bunch of them by hand, as well, since those are generally fun.

Setting up some bounds for a procedural set of crops would also generally be interesting, anyway, since that means we could easily just have procedural plants every game, anyway.  That way, you could enjoy the detective work of finding out how best to balance your ecology every single game.

Kotaku:

I don't seem to see much information on how seeds will be implemented. Here's how I think that they should be:

You have good timing, I was actually just about to write the "Plant Growth Stages and Farming Tasks" section, and had actually forgotten to mention the seed collection methods.

In the last thread, when I did a mockup, I wound up having special tokens where seeds would either require destroying the crop (I.E. the crop was a seed) or that they would produce seeds upon destroying the crop (like a fruit, you can pluck out the seeds, and use those for a new tree even while using the tree's fruit).

Having just two ways of doing things seems rather... boring, though, doesn't it?  Maybe there should be some crazy extra ways to create seeds?  Seeds that can only be created through alchemy, and their fruits don't bear seeds at all.  You have to use alchemy to create another seed for each plant.  I don't know what you could grow from a plant like that, but it must be unbelievably rare and valuable.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

Andeerz

  • Bay Watcher
  • ...likes cows for their haunting moos.
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #221 on: February 22, 2011, 04:31:09 pm »

Argh!  I have not had time to read all of this thread, and I do not know if the following idea has been explored with regard to procedural generation of crops.

I don't know if you have yet read "Guns, Germs, and Steel", but there is a considerable section dedicated to crop and animal domestication from wild species and how this influenced the progress of various cultures around the world.  It also goes into detail as to what attributes made one plant or animal species domesticatable(sp?) and others not as likely or virtually impossible to domesticate.  These factors would be awesome to look into when it comes to procedurally generating crops or domesticated animals and what civs use which domesticated animals or crops in world gen.  I wish I had the book on me right now... it has a wonderful summary of exact attributes.

Good examples given in the book include why corn took so long to domesticate, why certain wheat like grasses were never or never could have been domesticated by humans to yield a wheat-equivalent in the Americas, why animals like zebras and wildebeasts were never domesticated in Africa, why horses, sheep, chickens, pigs, and cows were able to be domesticated and not their relatives, etc... 

I know plant and animal domestication could take centuries if not millennia depending on species and other factors.  Therefore it would certainly be beyond the time scope of fortress mode and possibly even world gen, but if not, then maybe it could be worth modeling...  But even if the process of domestication is not plausible or useful to model, I still think the underlying characteristics of what makes things domesticatable should be!

Just some food for thought!  I might return to this later!

:3
Logged

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #222 on: February 22, 2011, 05:58:56 pm »

Plant Growth Stages and Farming Skill
Spoiler (click to show/hide)
« Last Edit: March 28, 2016, 02:00:40 pm by NW_Kohaku »
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

NW_Kohaku

  • Bay Watcher
  • [ETHIC:SCIENCE_FOR_FUN: REQUIRED]
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #223 on: February 22, 2011, 06:05:45 pm »

Ahh, after a double-up of short ones, I'm back to climbing the real hump articles.

The next three are going to be some of the most difficult for me to complete, since they involve the most technical and far-reaching of the sections, but they're also the last three before I can finally say that this suggestion is "complete", or at least, a full version 2.0 of the suggestion, which I can then muddle around with.  I certainly still need to do some more work on the interface section, which I kind of left only mostly complete.

I don't know if you have yet read "Guns, Germs, and Steel", but there is a considerable section dedicated to crop and animal domestication from wild species and how this influenced the progress of various cultures around the world. 

[...]

Just some food for thought!  I might return to this later!

I know, I've been meaning to read that one for a while, now.  I guess I'll have to give it a look-over before trying to get much more serious with this, although I want to sort of just get the last few sections put onto digital paper, and then try to fiddle around with the exact mechanics of it from there.
Logged
Personally, I like [DF] because after climbing the damned learning cliff, I'm too elitist to consider not liking it.
"And no Frankenstein-esque body part stitching?"
"Not yet"

Improved Farming
Class Warfare

AngleWyrm

  • Bay Watcher
    • View Profile
Re: Improved Farming, Rebooted: Violate the Earth!
« Reply #224 on: February 22, 2011, 06:40:02 pm »

You are assuming that the soil values are completely random and mutually exclusive; they are not. The chances are, that if some of the variables are right for a plant to grow, then the others will be too, maybe one or two variables would need to be fixed for it to grow well, but most plants would be able to grow in most soil types.

What I'm assuming is that they are independent variables, not mutually exclusive. That is to say, it is possible to have 1% in one variable and 99% in another variable, and furthermore that there isn't a dependency that says if one measurement is at 50% another will never be at 5%. The assertion that "Chances are if some of the variables are right, then others will be too" has only now been stated. If there are rules of dependency, they will need considerably more clarity before they can be programmed and analysed.

I've explored a couple possible scenarios, and given calculatable solutions for each of them. If you have another set of values you wish to try, then just plug them into the formula: spanPercent ^ numVariables = growPercent, where spanPercent is the average width of growable conditions in a typical variable, and growPercent is the percentage of all plants that will grow there, on average.

Note that these are average values, and they are part of the plant specifications. It is possible to have one measurement where everything above 10% is acceptable and another where everything below 90% is acceptable, and they average out to two variables with a 90% viability range. The design of the framework and the design of the plants that will live in it are interdependent, not independent.
Logged
Pages: 1 ... 13 14 [15] 16 17 ... 35