Complete.Org: Mailing Lists: Archives: freeciv-dev: October 2003:
[Freeciv-Dev] Re: (PR#6566) Re: Re: Barbarians
Home

[Freeciv-Dev] Re: (PR#6566) Re: Re: Barbarians

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: chrisk@xxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#6566) Re: Re: Barbarians
From: "rwetmore@xxxxxxxxxxxx" <rwetmore@xxxxxxxxxxxx>
Date: Sun, 19 Oct 2003 07:38:48 -0700
Reply-to: rt@xxxxxxxxxxxxxx

Christian Knoke wrote:
> On Sun, Oct 19, 2003 at 12:21:08AM -0400, Ross Wetmore wrote:
[...]
>>There really should be almost no coordination between barbarian units,
> 
> Why not?
[...]
> Each barbarian horde can be conrolled by a seperate AI player. All barbarian
> AI players are teamed. They are relatively weak because they are few and
> they are scattered. They need not to be weak by representing them with weak
> units, though. Give them average strenge.

This is probably just noise level complexity and overkill. What is the
practical difference between a single barbarian player with scattered units
popping up all over and a bunch of teamed individual players ... unless
you want to let observers of the game manage a single barb unit, I suspect
the teaming flavour is far more trouble than it is worth.

But fundamentally, coordination is just not a characteristic of berserkers
which is what Civ barbarians really are all about. They are a random irritant
and not an opponent.

> When you play with normal AI players on the same continent from the
> beginning, they have a good balance between aggressiveness and coordinated
> settling and development, up to a certain point. When I play gen 1, I *have*
> to see for my defence. That makes me think that normal AI can be a quite
> good implementation for barbarians, more than the current one. But I can be
> mistaken. We'd have to test it and compare current barbs with AI barbs, of
> course.

If you want an AI opponent, then there is already code for an AI opponent.

The rationale for barbarians is something different than a standard AI, and
has almost none of the features you say you are looking for. You can get your
opponent with an AI that has an aggressive Attilla personality, heavily weighted
to attack with little or no defensive concerns.

The question is more a code development choice of whether barbarian code is
close enough to be considered a variant of normal AI code and thus shared, or
they are something unique like other disasters (which Freeciv doesn't have yet).

> Computer power shouldn't be the problem.
> 
> I'd think (as a non-coder, please forgive me), if you  set up minimal
> restrictions for barb AI's that might be necessary, and if you keep those as
> simple as possible, then you'll even end up with an easier maintainable code.

Yes, it is a question of how one wants to arrange the code, and whether as one
moves to AI code with more than one personality, barbarians fall close enough
to be within the range of standard AI behaviours, or they are something so
different as to require a completely independent handling mechanism.

If barbs were close, then adding new civ's by allowing barbarians to "gas up"
at cities they capture, and evolve into a new civ if there are an appropriate
number of captured cities in a close enough spread, might be an interesting
feature, i.e. the barbarian faction undergoes "civil war" with a block of
cities hiving off to form a new player (with non-barb characteristics now, of
course).

> Christian
> 
>>Thus, much of the AI code is useless, a lot of the rest needs to be
>>tailored specifically for barbarism, rather than (collective) sanity,
>>and only a minimal thread running through it all is likely common code.
>>
>>The key question to resolve is whether to include barbarian behaviours,
>>or lack of, as optional elements in the range of any player's personality,
>>and have the options checked as one resolve each player's activities, or
>>one optimizes the checks out and has a high level split into a barb and
>>non-barb activity path.
>>
>>The latter, of course means that many elements will need to be duplicated
>>and the divergence over time of the two relatively independent branches may
>>become a problem (i.e. a coder didn't bother to update the barb path so
>>they start losing out on new abilities like teleport unit handler code or
>>something). But there is no reason why a normal player shouldn't be able to
>>drop a bunch of suicide units off in another's back field, and turn them
>>loose to do as much automated damage as possible, i.e. to go into auto-barb
>>mode, like auto-settlers.
>>
>>There are tradeoffs plus and minus either way :-)
>>

Cheers,
RossW
=====




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