Re: [Freecol-developers] New-colonists and Breeding-control options
On Thu, 28 May 2015 23:53:54 +0200 Fenyo feny...@gmail.com wrote: I have several objections to this patch as it stands. First, I would like to see some reasoning for why you would want to suppress colonist production at all. Very odd idea IMHO. I think it would have been better to discuss this on the developer list. Ok, background: There is a colony, where i do not want to make new colonists, because i need the food it produces. (And i have a lot of colonies where i do not want the new colonists, i want them to appear somewhere else, not in that colony) You can say for this that i should collect the food from such colonies with a wagon train or a ship, before the food reaches 200. But - unfortunatelly - i can not guarantee everytime that my wagon train or ship will arrive before the food hits 200. And when it does, it will convert the food to a new colonist. :( I have experienced this a lot in my games. And this population control is the solution for such problems. OK... that sort of makes sense. I am quietly mumbling just build more wagons, but I that is close enough to reasonable to not immediately dismiss. I am aware of the problem of food accumulating in the wrong places, but usually that is late in the game when the colony in question can reasonably just give the new colonist some horses and have it head off to a better place promptly. So what then is your use-case for controlling the breedable goods production? I am guessing you want to not give the horses any food? Does it have to be a ratio, or is a boolean sufficient? And if you really want a ratio, is this worth doing for other goods types? The game option for the breeding functionality makes more sense, and I think it is a good idea. However this whole area is very sensitive. Changing the code here needs to be done with caution, so I think you have no reason to fear. I have already tested it very thoroughly. And it works perfect. That is so easy to say. I am not immediately going to go all the way to allowing individual colony settings, but am willing to allow a global breeding control so we can check if this breaks anything. Once we are more confident it is working, I will be happy to consider the individual colony settings. It won't break anything. And i promise you that if we still find out it does, i will fix that very soon! But if you insist for a global value only at first, OK, now I understand *why* you want to do this, I can see that asking to go first to a global setting is not a good way to test it properly. Scratch that idea. Finally, the patch is way too complex, as it bundles several separable pieces of functionality. Yeah, i thought that myself too. But since the new colonist suppression is reproduction related just like the breeding, they have to be on the same panel: Reproduction. OK, this is where I am still not convinced. There is a high level similarity perhaps, but the internal mechanism is very different. I would much prefer the breeding part to be attached to the colony building for the goods type, and the population part to trigger a panel very similar to the current Build Queue --- to stop colonist production you would just clear the Population Queue. That would enable other interesting enhancements such as colonies that can produce particular colonist types. Not to mention separating the functionality as I would still strongly prefer. Cheers, Mike Pope pgpxrxEelnZjI.pgp Description: OpenPGP digital signature -- ___ Freecol-developers mailing list Freecol-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freecol-developers
[Freecol-developers] New-colonists and Breeding-control options
Ok, let's discuss this subject. I have several objections to this patch as it stands. First, I would like to see some reasoning for why you would want to suppress colonist production at all. Very odd idea IMHO. I think it would have been better to discuss this on the developer list. Ok, background: There is a colony, where i do not want to make new colonists, because i need the food it produces. (And i have a lot of colonies where i do not want the new colonists, i want them to appear somewhere else, not in that colony) You can say for this that i should collect the food from such colonies with a wagon train or a ship, before the food reaches 200. But - unfortunatelly - i can not guarantee everytime that my wagon train or ship will arrive before the food hits 200. And when it does, it will convert the food to a new colonist. :( I have experienced this a lot in my games. And this population control is the solution for such problems. I am sure that i am not the only one with this problem. Second, even if you do have a good reason, I do not see a need for a game option for a boolean value that should always be true. I presume you mean the global default value. Well, that's the point, it should NOT be always true. I will set it to FALSE in my games, so there will be no new colonist production at all everywhere, by default. And this is where the per colony setting comes to the picture. I want to turn on the new colonist production ONLY in the selected colonies (which are NOT the majority in my case). So i will turn it on only in those colonies, and it will be turned off by default everywhere else. The game option for the breeding functionality makes more sense, and I think it is a good idea. However this whole area is very sensitive. Changing the code here needs to be done with caution, so I think you have no reason to fear. I have already tested it very thoroughly. And it works perfect. And the main thing of this patch pack is in common\model\ProductionCache.java, private synchronized void update(). (everything else is just a UI or class for storing data, etc) update() is not a big code, you can easily see it through. If you want i can even explain it to you. :) I am not immediately going to go all the way to allowing individual colony settings, but am willing to allow a global breeding control so we can check if this breaks anything. Once we are more confident it is working, I will be happy to consider the individual colony settings. It won't break anything. And i promise you that if we still find out it does, i will fix that very soon! But if you insist for a global value only at first, i can temporarily turn off the per colony panel at all (invisible button), this way the global-default will apply always. And when you are satisfied, we can turn it back on with a single line modification. What do you say? Finally, the patch is way too complex, as it bundles several separable pieces of functionality. Yeah, i thought that myself too. But since the new colonist suppression is reproduction related just like the breeding, they have to be on the same panel: Reproduction. And because of this, they can not be separated, since that panel is not existent yet. (and i do not want to create it twice in two independent packs) Waiting your answers. :) Regards, Fenyo-- ___ Freecol-developers mailing list Freecol-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freecol-developers