Complete.Org: Mailing Lists: Archives: freeciv-ai: May 2002:
[freeciv-ai] Re: Generalised improvements AI support
Home

[freeciv-ai] Re: Generalised improvements AI support

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Raahul Kumar <raahul_da_man@xxxxxxxxx>
Cc: "Per I. Mathisen" <Per.Inge.Mathisen@xxxxxxxxxxx>, Freeciv-ai <freeciv-ai@xxxxxxxxxxx>
Subject: [freeciv-ai] Re: Generalised improvements AI support
From: Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 7 May 2002 18:05:01 +0200
Reply-to: rf13@xxxxxxxxxxxxxxxxxxxxxx

On Tue, May 07, 2002 at 08:44:21AM -0700, Raahul Kumar wrote:
> 
> --- Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
> > On Tue, May 07, 2002 at 08:13:18AM -0700, Raahul Kumar wrote:
> > I'm only worried it might get a little too complicated. The flags code is
> > simple to understand, simple to code and simple to extend. The gen. impr.
> > approach is none of the above. But this is another discussion.
> > 
> > Simple to extend? *Bullshit* cough. I seem to remember two people who've
> > already run hard into Raimar's decision that the current no of flags + 2
> > was enough.
> > 
> > We already agreed that it has to be extended.
> 
> We haven't agreed on whether that was the right approach. Per and yourself 
> seem
> to just want to extend the current no of flags. 

> The problem is that the flag approach requires someone who
> understands C to use it. That skillset is not that common among
> Freeciv users.

We had indeed this discussion.

> Also, the flag approach swiftly becomes very complex. It takes multiple flags
> to implement something as clear and simple as unit_defend. In fact, 
> unit_defend
> gets rid of pikemen,horse, Aegis and numerous other effects.

This complexity is orthogonality. Which is a good thing. You can
create a unit which has the F_SETTLERS, F_PIKEMEN, F_HORSE, F_MARINES
flags set.

> > > And simple to understand: Have you read combat.c? The convulutions I had 
> > > to
> > go through to support Aegis properly etc is fast reaching the point where 
> > the
> > > flags system cannot cope.
> > > 
> > > And worst of all, the flags system is only open to two coders, Per and
> > myself. Have you seen anyone else send in patches? The AC approach is 
> > better.
> > Moving stuff into rulesets is the obvious and smart approach.
> 
> > I don't have hard numbers but I have the feeling that this will eat a
> > lot of CPU.
> 
> I suspect this might be the case, but performance comes after getting it
> correct.
> 
> > Ben: If I understood this correctly you can't give numbers how much
> > gen-impr affects an autogame because the AI hasn't been adopted?!
> 
> There's Andi Payne's patches. Per has them. In truth, the current AI doesn't
> cope with ANY major ruleset changes well. 

> This is hardly the fault of gen-impr.

No. But an autogame provides a good usage of the various methods and
you can draw some conclusions from it.

Ben: generic_city_refresh is a nice high level function. Do you have
numbers on this function? xyz ms per call with current CVS and abc ms
per call with gen-impr.

        Raimar

-- 
 email: rf13@xxxxxxxxxxxxxxxxx
  Tank: So what do you need? Besides a miracle.
  Neo: Guns. Lots of guns.
    -- From The Matrix


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