[Freeciv-Dev] Re: freeciv feedback
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Martin Olveyra wrote:
>
> >
> > It would be easier to use client side scripting to test & design new AI
> > code.
> > This way you have minimal
> > effects on the affects on the freeciv codebasse. (And you don't need to
> >
> > recompile every small tweak ;-) )
> > This way the developer can act as a guide to the AI script and correct
> > some of
> > the decisions
> > made by the AI at run time (and trace it to sea where the AI's decision
> > making
> > failed)
> > You don't want to start developing complete AI Clients ( LOTS of work).
> > The current Freeciv client-server interface seams addiquate to drive
> > client
> > side AI scripting.
> >
> > Personally I'm not so sure about the fuzzy logic part to start with .
> > First you
> > need to make the
> > AI capable of (Responding to attacks, Invading & conquering of its own
> > ).
> > Once you have this you can use fuzzy logic to decide best tactics /
> > strategies.
> >
> > The one thing I think lacking in the AI is grouping (Fleets,
> > Battalions,
> > Squadrons) each
> > controlled by an AI entity (a general / admiral) with specific long-term
> >
> > objectives.
> >
> > ( I am working on this and client side scripting (CSL , JavaScript and
> > Guile)
>
> That is very interesting. How advanced are you in that work?
Client Scripting :
CSL (C Scripting language) scripting is functional ( GTK -gui
only):
o Units (exposed most functions & all enum as constants)
o Terrain (exposed most functions & all enum as constants)
o Map (exposed most functions & all enum as constants)
o Client- Server API (exposed most function needed by the client
(control.c) )
o Cities (Must still implement)
o Diplomacy (Must still implement)
o Player (Must still implement)
Javascript work in progress (GTK-gui only):
o Redesigning the interface. (Changing from global methos/functions
to exposing Javascript classes ( Unit,City,Map,Player ) and
assotiating the client-server requests with each Class
Guile scripting : (GTK-gui only)
o just started with design.
AI Entities:
Implementing Client Side only (for now):
o Economic Entity : Still needs implementation (This entity Controls
Production in cities so that Military entities can make requests
for New Units / Upgrades etc, Requests will be priotitised ,
queued and distibuted to aprppriate cities under its control.)
o Defensive Military Entity : Work in progress (Very Simple Patrol
near all Cities/ If the Borders (currenlty discused in list) are
implemeted it would make it very easy to patrol around the border/
Needs lots of work, Needs to know about deplomisy so it does not
destroy allied units etc..).
o Agresive Military Entity : Have not started with this, But this
Entity will have to know something of logistics in order to make a
succesfull Invasions, Also needs to know about Diplomisy So it dont
invade your allies, Needs the Econimc Entity to replenish lost
units /cruise missiles etc... and place conquired cities under the
control on the Economic Entity,
The scripting interface is very simple so other xxx-gui can easily be
supported.
* Needs to add a "Add to script" command in he Orders menu
* Needs to have a "File selection Popup/Dialog" screen to select the
ScriptFile.
I did post a Patch with the CSL Scripting code on freeciv-dev "22 Nov
2001": Look in the mailing list archive (It seems to be down at the
moment)
|
|