Complete.Org: Mailing Lists: Archives: freeciv: November 2002:
[Freeciv] Re: rfc: autoattack
Home

[Freeciv] Re: rfc: autoattack

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Thomas Strub <ue80@xxxxxxxxxxxxxxxxxxx>
Cc: "Per I. Mathisen" <per@xxxxxxxxxxx>, <freeciv-dev@xxxxxxxxxxx>, <freeciv@xxxxxxxxxxx>
Subject: [Freeciv] Re: rfc: autoattack
From: Britton <fsblk@xxxxxxxxxxxxxx>
Date: Fri, 15 Nov 2002 11:54:17 -0900 (AKST)


On Fri, 15 Nov 2002, Thomas Strub wrote:

> On Fri, Nov 15, 2002 at 06:39:16PM +0000, Per I. Mathisen wrote:
> >
> > Since my suggestion of dropping the autoattack code didn't meet with
> > approval, I want to change it so that it actually works and is useful.
> >
> > So my new suggestion is:
> > For any unit that is moved, check adjacent squares for autoattack units.
> > For each of these, if the moved unit is hostile (at war) and weaker,
> > attack it. If the autoattack unit is a diplomat/spy, instead try bribing
> > the moved unit, and if that is impossible, try sabotage.
> >
> > This should at least make autoattack useful. The question is: Too useful?
>
> wow :-)
>
> This helps players with slow connections. I like it.
> Its a big step against clientsidescripting, and would help the AI too.
>
> And perhaps it should be configurablei.
>
> a = chance to win
> b = value of attacking unit
> c = value of attacked unit
>
> And if d = a*c/b bigger than a tuned value -> autoattack.

There's also the question of initiative.  In a situation where a high
attack/low defense unit moves in next to another such unit, it doesn't
seem to me that the moving unit should always be the one to get attacked.
In other words, you should be able to set your moving units to attempt to
try to autoattack as well, and who gets to attack who should be determined
in some reasonable way (lots of possibilities: who has more movement or
which unit could move into neighbors square for least cost, if
one unit can see further than other, etc.).

Britton Kerin



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