Topic: tree planting locations
GunChleoc![]() |
Posted at:
2016-04-28, 11:46 UTC+2.0
This is already what we're doing. The forester only searches for a spot when he goes out.
This is what we're already doing right now (except that we have no probability threshold)
This would be the change we want. Busy indexing nil values ![]() ![]() |
Tibor |
Posted at:
2016-04-28, 11:49 UTC+2.0
Be more precise, now we just search for empty field (field as a space) ![]() ![]() |
teppo |
Posted at:
2016-04-28, 17:43 UTC+2.0
This is not really a problem.
In my experience, WL runs out of CPU before running out of memory. At least on small and medium sized maps.
There are more than one way to do it.
That is a real problem.
Not really. Fishers and fishbreeders would benefit, too. Maybe even farmers in the distant future, if somebody makes terrain affinities for all the crops. I suppose that the code could be written so that the other workers are not harmed (but did not do any reading before writing this). ![]() ![]() |
GunChleoc![]() |
Posted at:
2016-04-29, 08:34 UTC+2.0
Yes it could, no problem. This will be an optional parameter, and whether it's used will depend entirely on the lua init files. Busy indexing nil values ![]() ![]() |
king_of_nowhere![]() |
Posted at:
2016-04-29, 17:12 UTC+2.0
i just realized something. someone mentioned - if i understood correctly - that a forester will pick randomly one of the six trees with the best chance to grow on the terrain. that means some terrains are actually much less fertile than they are meant to be. for example, desert meadow is supposed to be the most fertile desert place, and in fact palm roystonea has 100% of growing there. But, since other desert trees are adapted for drier places, it means the second most favorable tree has only a 40% chance. The sixth more likely plant only has 28%. So, it means meadow is actually rather infertile, with only 50% chance of growing a tree planted by a forester. If the forester can already calculate the growth probability, it should choose more smartly than that. I don't say that it should always choose the best tree, because we want some variability. but maybe it should not choose trees that have less than half the chance of the best tree? unless the forester does not pick with random chances but rather it is more likely to choose the best trees, so that would be fine too. ![]() ![]() |
teppo |
Posted at:
2016-04-29, 19:41 UTC+2.0
Currently, the probability of picking a tree is weighted by the square of its growth probability. In your example, there would be about thirteen of the best trees for each 6th best one. If the forester would only pick the best tree, then the map would look rather boring. This way, there are still eye candies and the overall the selection of trees is decent.
Edited:
2016-04-29, 19:43 UTC+2.0
![]() ![]() |
king_of_nowhere![]() |
Posted at:
2016-04-29, 22:08 UTC+2.0
oh, ok, wheighted probability is fine. ![]() ![]() |
GunChleoc![]() |
Posted at:
2016-04-30, 17:31 UTC+2.0
Thanks for looking that up, teppo. Busy indexing nil values ![]() ![]() |
teppo |
Posted at:
2016-05-02, 15:18 UTC+2.0
What do we want to do with this issue? Who draws the conclusion? I still like the minimally invasive solution where forester simply would not plant the no-grow trees: almost trivial to implement. However, I have the feeling that that does not gain wide acceptance. The next best way would, in my opinion, to be a weight in slot choice: Hopeless terrains would be visited less often, but still a >0 probability, and the forester always attempts to plant a tree into a slot he visits. I would like to cache the probabilities instead of recalculating them over. This of course would couple this issue with the unsolved bug regarding very infrequent but still existing terrain changes. One bonus question: Should we also give the forester the ability to plant nearly-inpenetrable forests (=ones that never mature, and therefore acts as some sort of defence line)? Of course that would be "unnatural" if the aggressor would be unable to instruct his woodcutters to chop the no-log trees, too, but would add another aspect to the game. ![]() ![]() |
GunChleoc![]() |
Posted at:
2016-05-02, 16:24 UTC+2.0
I think the consensus so far is to rank the unoccupied fields by probability to grow. I think we can ponder more on caching possibilities once we have an actual implementation - things might just fall into place during the coding process. Busy indexing nil values ![]() ![]() |