Complete.Org: Mailing Lists: Archives: freeciv-dev: January 2000:
[Freeciv-Dev] Re: Why client-side AI could be a Bad Thing
Home

[Freeciv-Dev] Re: Why client-side AI could be a Bad Thing

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: Why client-side AI could be a Bad Thing
From: Steven Burnap <sburnaplinux@xxxxxxx>
Date: Sat, 29 Jan 2000 16:12:37 +0000

Mike Jing wrote:

>
> I tend to agree on this one.  The biggest disadvantage of the AI is the lack
> of an overall strategy, i.e. it doesn't have an eye for the "big picture".
> Therefore, the AI "need" to cheat in order to compete with a good human
> player, as it is doing now on the "hard" level.
>
> The way it is envisioned, I think, is that the client-AI should behave no
> differetly from a human player, as far as its communication with the server
> is concerned.  Therefore, cheating will not be possible for client-side AI.
> Tough luck.
>

I've been itching to try to prove this wrong, but as I'm not a game designer, I
haven't really had the opportunity.  I did a lot of AI stuff in college, but I'm
no where near the game industry today.  (Or anything else where AI means
anything.)  Good Human level strategy is likely not possible, but I think what 
is
possible today is a damn site more than anything anyone has yet attempted.  I'm
seriously thinking of starting to develop a client side AI.  The advantage the
client side has is two-fold.  One, it enforces the rules.  You do pretty much 
have
to act like a player.  Secondly, it is much more modular.  You can create
different "personalities" of AIs pretty much independently of anything else.
 
Different "personalities" can improve difficulty quite a bit.  There was an old
OS/2 game called "Galactic Civilization" that did this quite nicely.  (And had 
the
best strategy AI I've ever seen.)  Basically, when the game starts, each AI
randomly chooses its personality of play.  It might pick a defensive strategy, 
or
a blitzkrieg type thing, or whatever.  What makes this hard to play against 
versus
a standard AI is that you can't find the one true strategy that beats it.  What
beats one personality loses to another.  This means you have to react to their
strategy, more like you would to a human player.

Client side AIs make this easier as each personality can be a loadable module. 
(This is how the OS/2 game did it.)

The other reason I think that a really good AI can be done is that most games, 
like
CivII, etc. that freeciv compares with do everything serially.  Civ II has to do
all of the AI stuff before the human player gets impatient.  By putting the AI 
in
another process (even if on the same machine), you get a huge amount of 
processor
time to use.  No human ever uses 100% of the CPU!

An ideal bot would throw together a quite set of commands, and then improve them
over time.  This would mean that it would be "done" whenever all the human 
players
were.  Additionally, if the right data was saved across turns, much of the
difficult strategy level calculation could be done only on turns when it had 
time.

Steve Burnap

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