Complete.Org: Mailing Lists: Archives: freeciv-ai: January 2005:
[freeciv-ai] Tech want

[freeciv-ai] Tech want

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-ai@xxxxxxxxxxx
Subject: [freeciv-ai] Tech want
From: Per Inge Mathisen <per@xxxxxxxxxxx>
Date: Fri, 7 Jan 2005 09:59:24 +0000 (GMT)

The current system for bumping tech want for units is just insane, in my
opinion. The process_*_want() functions calculate some kind of WAG number
for every unit in the game, and increases tech want for it by that number,
totally irrespective of whether that unit is the best for any purpose.
Due to the way it is done, his also leads to excessive tech want for some
units late in the tech tree, that drowns out any other tech wants.

I would like to do away with the tech want in process_*_want() almost
entirely. Only if we need a specific defender or attacker should we bump
tech want.

Actually, I believe that the current AI tech system is fundamentally
broken, and the only reason it "works" is because a) eventually all techs
are requirements for some military tech somewhere, so they eventually get
researched due to military tech want, and b) we have extremely ugly hacks
like the govt hints.

So what would I suggest in its place? A very few, very selective tech want
bumps, like in govt eval code, diplomat defense code, ferry code, and
defense and attack code. Other than that, we can read a prioritized list
of techs to research from a ruleset file. We can compile this list by
looking over pille's shoulder while he is playing ;)

Yes, this is sort of cheap, but it is very fast, as it avoids doing
calculations into the future, and I think it should be quite reliable and
give pretty good results.

  - Per

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