Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2003:
[Freeciv-Dev] (PR#4387) The Return of the Rand() Moves
Home

[Freeciv-Dev] (PR#4387) The Return of the Rand() Moves

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: per@xxxxxxxxxxx
Subject: [Freeciv-Dev] (PR#4387) The Return of the Rand() Moves
From: "John Wheeler" <jdwheeler42@xxxxxxxxx>
Date: Tue, 2 Sep 2003 21:21:25 -0700
Reply-to: rt@xxxxxxxxxxxxxx

[glip - Sun Aug 31 18:01:27 2003]:

> /*************** Current mode (unittools.c/try_move_unit) **********/
> 
> We have 3 numbers: full move points (F) of a unit, current (C) move
points 
> of the unit and the required (R) move points for the move being tried.
> 
> The move will succeed with probability 100% if
> either
>   F == C
> or
>   C >= R
> Otherwise, it will succeed with probability C / R.
> 
> /************************* Proposal ******************************/
> 
> The proposal is to implement a system where no probability is needed.  
> There are three possible flavours:
> 1. Strict -- only moves with 100% probability will succeed.
> 2. Fast -- as long as C > 0, the move will succeed.
> 3. Mixed -- move will suceed if probability > threshold value.

4. Negative -- if C <= 0, move always fails, else move always succeeds,
and C -= R [which means that C would need to be a signed integer]. 
(When a new turn comes, C += F.)  So, for example, a warrior would have
to rest for two turns after climbing a mountain.

This would eliminate the randomness, but would not solve the problem of
stacks, if you wanted to have units with different move rates move
together.  I think the solution to this is to either create stacks that
explicitly move together or have a 'follow the leader' command (perhaps
with a warning if the leader has a faster move rate).

Another thing negative movement would be useful for is a 'retreat'
command, where units would avoid combat whenever possible -- including
trying to move when attacked -- and head for the nearest friendly city.

(Both these suggestions probably deserve seperate tickets, with "refers
to" or "children" of this ticket -- how do you do set up relationships
in RT?)

-- 

++JohnWheeler


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