Complete.Org: Mailing Lists: Archives: freeciv-dev: April 2002:
[Freeciv-Dev] Re: stop ai from building useless buildings (2) (PR#1362)
Home

[Freeciv-Dev] Re: stop ai from building useless buildings (2) (PR#1362)

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: stop ai from building useless buildings (2) (PR#1362)
From: "Per I. Mathisen" <Per.Inge.Mathisen@xxxxxxxxxxx>
Date: Sat, 6 Apr 2002 11:54:17 +0200 (MEST)

On Fri, 5 Apr 2002, Jason Short wrote:
> I like the idea behind this (a lot), but I think you're going about it
> slightly wrong.  I have always considered the handicap list as something
> not directly related to the AI, but that could be related to any player.

Not _those_ handicaps, surely.

What I want, eventually, is to get a list of player attributes that you
can pick, like you pick race attributes in custom race dialog in Master of
Orion 2. Each attribute carriers with it a % bonus or penalty to your
final score. In competitive human vs human games it can be used to give
some players an advantage while others a handicap. (And maybe all players
could get a number of "buy points" to acquire attributes for, just like in
MOO2...)

Is this something like what you think about? I don't think this has
anything to do with ai handicaps at all. The latter is for adjusting
the difficulty level of ai _behaviour_, not the game rules.

> I think it would be *easier* to accomplish what you're trying to do by
> using different difficulty levels.  For instance, with something like:
>
>    if (ai_difficulty(pplayer) >= 8) {
>      /* experimental code */
>    } else {
>      /* old code */
>    }
>
> you can then face off a difficulty-7 (hard) AI player against a
> difficulty-10 player.  (Note, there is no ai_difficulty(), it's
> something like pplayer->ai.skill_level instead.)

I don't like this. It does not present a logical and clean interface to
experimental code. We could have something like

        bool is_experimental(pplayer) {
                return (pplayer->ai.skill_level == 10);
        }

though. But I don't see the advantages of that.

> This doesn't work so well if all the difficulty levels are eventually
> used.  But I still feel having "experimental" be listed under the
> handicaps is somehow wrong...

Only if you think you can somehow use H_* handicaps for players. Which I
think is totally wrong.

> Of course, if you're just using this patch locally you can do whatever
> you want.  But I think you should consider what the "handicaps" should
> be before pushing for inclusion of such a patch.

I think the handicaps are there to adjust ai behaviour. I think was the
intention behind them and I think is how they should be used.

Yours,
Per

"While we're all in favor of Arafat doing more to suppress violence in
the Middle East, we fear that he doesn't have all that much influence on
the Israeli government. " --Sam Smith




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