Complete.Org: Mailing Lists: Archives: freeciv-dev: August 2002:
[Freeciv-Dev] Re: [RFC] Simpler movement rules.
Home

[Freeciv-Dev] Re: [RFC] Simpler movement rules.

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Gregory Berkolaiko <Gregory.Berkolaiko@xxxxxxxxxxxx>
Cc: Freeciv Development List <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: [RFC] Simpler movement rules.
From: Raimar Falke <rf13@xxxxxxxxxxxxxxxxx>
Date: Fri, 9 Aug 2002 11:28:04 +0200

On Thu, Aug 08, 2002 at 04:03:48PM +0100, Gregory Berkolaiko wrote:
> Hi all,
> 
> The current Freeciv unit movement rules are as follows:
> 
> -- If unit has more move points (MP) than it takes to make the move, the 
> move is taken and the MPs are reduced by the cost of the move
> -- Otherwise, if the unit is on full MPs, the move is taken and MPs are 
> set to zero
> -- Otherwise, the success of the move is determined randomly, with the 
> probability MP/cost.
> 
> This last rule causes a lot of problems: non-optimal routes selected by 
> goto routines, huge problems with AI code, 

> big complications for the current path-finding effort

Well at least my implementation can take care of it;) But I agree that
it adds complexity.

> , difficulties with bodyguard code and many more.
> 
> In CivIII, which implemented such Freeciv features as bodyguards and route 

What about Civ1 and Civ2?

> marking for (g)oto function, they decided that it's too much problem 
> and no good and amended the rule to:
> 
> -- If MPs > 0, the move is taken and new MPs := MAX(0, MP-cost)
> 
> This simplifies the code tremendously.  And doesn't change the gameplay 
> much.
> 
> I strongly suggest that we adopt the same rule.

> Please note that introduction of a server option moverule or such will 
> only make things worse.  The change must be done either fully or not at 
> all.

Ack.

        Raimar

-- 
 email: rf13@xxxxxxxxxxxxxxxxx
 "We just typed make..."
    -- Stephen Lambrigh, Director of Server Product Marketing at Informix,
                         about porting their Database to Linux


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