[Freeciv-Dev] Re: (PR#11311) death to smallpox?
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
<URL: http://rt.freeciv.org/Ticket/Display.html?id=11311 >
(Eddie Anderson) wrote:
> I'm opposed to this. I think that our ability to adapt and
>remake the land around our cities (in a variety of ways) is one of
>the more interesting (and realistic) options that Freeciv provides.
>I admit that the AI seems to have trouble using this ability
>effectively.
>
>
Being able to remake the land is orthogonal to and does not require a
worker model. The issue is simply defining an appropriate cost, and
exposing it in game terms. Currently, changing a terrain type requires
you to 1) build a settler or engineer, 2) spend turns moving them to the
tile and terraforming. The cost of this is directly related to the
support costs of the unit, and indirectly related to the opportunity
cost of the shields required to build it, as well as the irritation of
the player having to spend real time to perform any of this. A
different model of terraforming could simply define a drain on city
production. Minus 1 shield, 2 food, and 1 gold per turn, for as long as
the terraforming task takes. (1 turn for a road, 24 for Swamp ->
Jungle, whatever.)
But again, this is not related at all to having "workers". If "Hills"
simply give a -5% build cost modification to the build queue, making the
decision to terraform is simply based on the cost-benefit analysis.
> What if this code could be made simpler (and perhaps easier to
>maintain)? Please consider this proposal:
>[...]
> 2) Not vulnerable to ping-ponging (e.g. transforming plains to
> forest to plains to forest ...)
> 3) Not destructive to previous work (e.g. irrigating a hill which
> already has a mine on it)
>
Needs change over time. Also remember that the original Civ
Terraforming model was inconsistent. Sometimes "Irrigating" terrain
gave you +1 food, sometimes it changed the terrain type entirely.
Separate the ideas of "making the best of what you have" and "Changing
the world to be the best it can be".
> With these restrictions (unless I've missed something), the
>terrain around an AI's city would eventually (if worked on long
>enough) reach "done" (i.e. no more work is possible here). The AI,
>one hopes, would recognize that and stop building and dispatching
>workers and engineers to that city. Then the AI could turn its
>attention to other tasks (one hopes).
>
One thing that still seems to be missing from this analysis is the total
time for the changes. There's no guarantee that this can be
accomplished within the 550-ish turns of a normal game.
> Even better, perhaps the AI could even be programmed to
>recognize a point of diminishing returns and stop working on the
>land even before it gets to "done". Regardless, hopefully a
>restricted "vocabulary" combined with a foreseeable end result (i.e.
>"done") will make it easier to program the worker/engineer AI.
>
> What do you think?
>
>
It is exactly that kind of search which takes the CPU time.
|
|