Complete.Org: Mailing Lists: Archives: freeciv-dev: May 1999:
Re: [Freeciv-Dev] Client AI
Home

Re: [Freeciv-Dev] Client AI

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Nicolas Brunel <brunel@xxxxxxxxxxxxxxxxxxxx>
Cc: freeciv-dev@xxxxxxxxxxx
Subject: Re: [Freeciv-Dev] Client AI
From: Daniel Sjolie <deepone@xxxxxxxxxx>
Date: Tue, 18 May 1999 02:54:35 +0200

On 1999-05-13 23:35:16, Nicolas Brunel wrote:
> Hello Daniel,
> 
>      in your previous mail, you seem to have 3 differents objectives :
>    - rewriting/restructuring the client. The main question is what for ?

See below...

> You talked about reconfigurable actions. What does it mean ?

Some examples (we have not yet discussed *how* to do this):
You could tell Your military servant to attack a enemy or region
according to a battle plan that could be loaded from a file...
Since the features of the servant will be clearly separated from
each other it will be easy to write such functions into a specific
feature without messing the other code up... No code will assume
anything about this piece of code...

> We still finding bugs or strange behaviours in the xaw-client after
> 3 years of testing ! Is it really worthwhile rewriting it ?

One of the heaviest reasons for rewriting the client is to get a
structure where it is a lot easier to find and fix bugs...
A structure with clear borders between code with different tasks...

> If you are ready to spend such a huge time on freeciv, please write
> macro managements fonctions which are lacking so much in freeciv.
> It would be really cool to draw an area on the map in which all cities
> will build settlers for example.

This a primary goal... :)
That is exactly what the servants would do...
The restructuring is to make adding and extending stuff like that
easily...

>    - rewriting the servants. That can be usefull if you invest enough time
> in it.

We don't want to rewrite anything... Not really anyway... :)
The functions that the servants will have that already exists can very
well be copied - no need to rewrite... I really do want to get to the
writing new servant functions (like the one above) part so I will spend
as little time/effort as possible rewriting anything old...

>    - AI client. A big big project. The actual AI took one month to be
> written. The one you intend to write will be more sophiscated.

Well, let's make a few distinctions here...
There will be two kinds of AI (servant and player simulating) and lots
of versions of the first kind...
The servants shouldn't be to hard one by one and it should be possible
to construct a basic player simulating (psim) AI with a resonable effort...
This will however leave the door open for more advanced psim AIs to be
written later... A *very* good thing in my mind...
They actually could get *very* advanced... :)

> I advise you to write a roadmap for all you intend to do. Your goal
> must be clear and simple. Without that, It will be very hard to handle
> a several thousand lines project. There is a risk that you spend much energy
>  without result.

I agree, to the letter...
That's what I'm doing... :)

/Daniel

-- 
Now take a deep breath, smile and don't take life so seriously... :)

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