Complete.Org: Mailing Lists: Archives: freeciv-ai: July 2002:
[freeciv-ai] autoexplorers
Home

[freeciv-ai] autoexplorers

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Freeciv Development List <freeciv-ai@xxxxxxxxxxx>
Subject: [freeciv-ai] autoexplorers
From: Per I Mathisen <per@xxxxxxxxxxx>
Date: Tue, 2 Jul 2002 20:56:20 +0200 (MEST)

On Tue, 2 Jul 2002, Gregory Berkolaiko wrote:
> > discover huts (since there are distributes equally you have to
> > maximize your uncovered tiles/turn) and to explore the surroundings to
> > find good city spots. The current eXplorer mode doesn't meet the last
> > task.
>
> Well, there are some tasks that you cannot trust to anyone, let alone
> computer.  I won't waste my time trying to come up with an explorer mode
> which is perfect for all tastes, just because it will involve so many
> parameters that noone will ever use it.

Ah, but Raimar has got a point.

The current explorer mode is very bad at uncovering tiles for city
settling. It is, however, rather good at finding enemies. Those, I think,
are the two only modes of exploration that are needed.

Of course, then there is scooping up huts and empty cities, but that is
something common to both modes.

We will want client-side autoexplorers, which means moving it into
client/ai/common/.  This shouldn't present a big problem once the new
pathfinding interface is in. User clients should use the old mode always,
as this works fine as is.

On Tue, 2 Jul 2002, Raimar Falke wrote:
> It really is quite easy. You just have to circle one point (the
> capital for example or the center of known tiles at this island).

Hah. It is not easy.

Yes, in order to use the "explore greatest possible compact area" mode
(for settling) you need a reference point. As opposed to the "explore the
greatest possible amount of space" mode (for finding your enemy).

But, you will need to look at the terrain to avoid walking needlessly over
mountains when you could save a lot of time going around. That's one
warmap (or whatever you guys call it now). It is also needed for hut and
empty city finding.

Then you need to keep in mind that what we are really concerned with here,
isn't the number of tiles from your reference point and to the fogged
tile, but the move cost for your settler to go somewhere. So it makes a
lot less sense to explore a huge mountain range than to explore flat land
or follow rivers. So you need another warmap from the reference point and
outwards.

The best tile to explore is then something like (cost of warmap1)+(cost of
warmap2).

Now, the case is quite different when it comes to sea exploration. Since
the ocean is topographically flat, we don't need a warmap there, for
either mode. In the first mode, we should circle the continent. In the
second, we should just do as we do now. So we may want to separate the
land and ocean autoexploration functions, since they have very different
needs.

I did start rewriting the existing autoexplore in this direction, but
didn't get too far, partly because you can't overlap two warmaps in the
existing implementation.

Yours
Per



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