Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2001:
[Freeciv-Dev] Re: multiplayer mode is all that counts
Home

[Freeciv-Dev] Re: multiplayer mode is all that counts

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Asher Densmore-Lynn <jesdynf@xxxxxx>
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: multiplayer mode is all that counts
From: Daniel L Speyer <dspeyer@xxxxxxxxxxx>
Date: Wed, 19 Sep 2001 22:25:54 -0400 (EDT)

On Thu, 13 Sep 2001, Asher Densmore-Lynn wrote:

> At 08:41 PM 9/13/01 +0200, Raimar wrote:
> 
> >> Scripting is fine for some tasks but 'ordinary' people don't enjoy it
> >> much. 
> >
> >> Besides we don't want to turn freeciv into Corewars do we? :-)
> >
> >It is an interesting option.
> 
> THIS is something I'd -happily- contribute to.
> 
> I really, really want client-side scripting, but I don't have the mad
> skills to code it. And when I looked at the AI code, I curled up into a
> little ball and sobbed. But the scripts, them I could write.
> 
> But if you shipped FreeCiv with a default set of ministerial scripts
> ("Combat Minister: Replace lost units in the city flagged as "owned" by CM;
> units not on Sentry will attack if they think they can win; opponent
> movement in my units line of sight will be sent to console") ("City
> Minister: Adjust city populations to avoid rebellions, warn if it'd be more
> efficient to change global luxury instead") ("Research Minister: Doing a
> quick test for each technology ('lots of defeated units? let's go for
> Ironworking'), suggest the next best tech to acquire")... and you left 'em
> turned on by default, but with an easy way to turn 'em off permanently...
> FreeCiv could be a lot more fun.
> 
> People could write up more elaborate scripts later... but the FreeCiv core
> would ship with a deliberately understated set.
> 

I think the general environment might be a set of hooks and scripting
actions.  I've been working on it for movement of enemy units.  The
archetechture I've built is a hooks list in the tile structure.  Whenever
the client receives a message that an enemy unit has moved onto a tile, it
looks at the tiles hooks and executes them (each hook consists of a
function pointer and a data pointer, though the function also receives the
co-ordinates of the tile and the unit the moved onto it).  This is a
pretty extendable system, and it seems similar to how humans play.

I think most of client-side AI could be done this way.  There could be
hooks for science report, combat, turn start, etc.

What does everybody think?

--Daniel Speyer
"May the /src be with you, always"


> Of course, then someone would just script up ICS. Ick-phooey.
> 
> --
> Asher Densmore-Lynn <jesdynf@xxxxxx>
> 
> 



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