Complete.Org: Mailing Lists: Archives: freeciv-ai: December 2002:
[freeciv-ai] Re: rfc: ai properly evaluate governments
Home

[freeciv-ai] Re: rfc: ai properly evaluate governments

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-ai@xxxxxxxxxxx
Subject: [freeciv-ai] Re: rfc: ai properly evaluate governments
From: "Per I. Mathisen" <per@xxxxxxxxxxx>
Date: Thu, 5 Dec 2002 11:51:21 +0000 (GMT)

On Thu, 5 Dec 2002, Raimar Falke wrote:
> On Thu, Dec 05, 2002 at 02:19:04AM +0000, Per I. Mathisen wrote:
> > +/* Dynamic weights used in addition to Syela's hardcoded weights */
> > +int shield_priority;
> > +int food_priority;
> > +int trade_priority;
> > +int happy_priority;
> > +int unhappy_priority;
> > +int angry_priority;
>
> Nice. Very nice. My only problem is the "in addition to Syela's
> hardcoded weights". Is it possible to convert all users?

Eventually, yes. I'm not going to do that in one big patch, though...

> > +  val += (val * bonus) / 100;
>
> You know that these are arbitrary?!

I thought I said that ;)

> IMHO these values are a good
> examples of the move-values-out-of-code idea from Gregory.

Yes, but where?

> Can you also compare your function with the existing one? What do you
> do better? How does the results change?

I was careful to maintain existing behaviour when it comes to
racing-for-Republic. So early game is identical, except it doesn't show
Republic as a goal most of the time (slight bug in set-goal code, I
think), but that is cosmetic.

After achieving Republic, however, it goes straight for Democracy. This is
bad. It needs some kind of cooldown countdown to avoid wasting all tech
efforts on governments. It is possible that this is because I only played
with a single AI, however - the AI uses enemy units and cities to prime
its tech tree so maybe it would work better in multiplayer.

In any case, it goes for Democracy. This is good in that it calculates
this will give it more trade, which is correct. This is bad in that the
time should be better spent going after other techs.

  - Per



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