Complete.Org: Mailing Lists: Archives: freeciv-ai: May 2002:
[freeciv-ai] Re: ai bug when splitting up settlers

[freeciv-ai] Re: ai bug when splitting up settlers

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: "Per I. Mathisen" <Per.Inge.Mathisen@xxxxxxxxxxx>, freeciv-ai@xxxxxxxxxxx
Subject: [freeciv-ai] Re: ai bug when splitting up settlers
From: Raahul Kumar <raahul_da_man@xxxxxxxxx>
Date: Mon, 13 May 2002 05:12:04 -0700 (PDT)

--- "Per I. Mathisen" <Per.Inge.Mathisen@xxxxxxxxxxx> wrote:
> On Mon, 13 May 2002, Per I. Mathisen wrote:
> > settlers.c:void contemplate_terrain_improvements(struct city *pcity)
> ...
> > This fix seems to be necessary. This code was copy&pasted from the
> > F_CITIES code by whoever did the F_SETTLERS and F_CITIES split. I bet
> > there are a lot of other issues he did not fix also.
> Alas, the AI has no checks and balances on building of workers. It doesn't
> build all that many settlers since cities can't bear the food costs. And
> when it does build too many settlers, it merely ships them off to another
> island to settle down. Since we can't do the latter with workers, it
> builds way too many and they don't know what to do.

The settler problem is due to the AI favouring production over food need. Read
the advdomestic patches I sent in to the mailing list, or apply the
corecleanups 13 and just read advdomestic.c.

Ross seems to have a partial fix. He makes it favour setttlers when the number
of cities is fewer than 6. It seems to me basing it on available land mass
would be better.

> The entire code must probably be rewritten. It might attempt to estimate
> how many workers are needed on that continent and then build max that
> many. Then it could ship excess workers off the island. Aaarrgh. That will
> not be easy. Any other ideas?

We could build workers based on the minimap idea you had. The workers we need
is based on no of umimproved tiles in city radiuses, the amount of time it
would take the workers we currently have to improve them, aargh it gets hard

Simple idea: we build one worker for every 4 cities. As no of tiles left
umimproved in city radiuses drops, we lower production.


Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience

[Prev in Thread] Current Thread [Next in Thread]