[Freeciv-Dev] (PR#15249) Aggressive AI Could Fight Itself to Obsolence
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Subject: |
[Freeciv-Dev] (PR#15249) Aggressive AI Could Fight Itself to Obsolence |
From: |
"Benedict Adamson" <badamson@xxxxxxxxxxxxx> |
Date: |
Sun, 22 Jan 2006 16:40:40 -0800 |
Reply-to: |
bugs@xxxxxxxxxxx |
<URL: http://bugs.freeciv.org/Ticket/Display.html?id=15249 >
The AI tax-rate code, function ai_manage_taxes() in aihand.c, has the
following code fragment:
/* Ok, we now have the desired tax and luxury rates. Do we really want
* science? If not, swap it with tax if it is bigger. */
if ((ai_wants_no_science(pplayer) || ai_on_war_footing(pplayer))
&& pplayer->economic.science > pplayer->economic.tax) {
int science = pplayer->economic.science;
/* Swap science and tax */
pplayer->economic.science = pplayer->economic.tax;
pplayer->economic.tax = science;
}
Now, consider an aggressive (that is, on a war-footing) AI Democracy
which, because of careful previous budgeting or city improvements, does
not NEED any taxes or luxuries. The tax rate would be computed as 0% and
science as 100%, but then the code fragment above would swap them
around. The next turn, the AI would have even more cash in hand, and
thus even less reason to have a positive tax rate... but the fragment
would still set the tax rate to 100% and science to 0%. If the AI is
(almost) always on a war footing, it will fall behind in the technology
race.
The selection of tax rates for an AI on a war-footing perhaps should be
more subtle.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Freeciv-Dev] (PR#15249) Aggressive AI Could Fight Itself to Obsolence,
Benedict Adamson <=
|
|