Complete.Org: Mailing Lists: Archives: freeciv-dev: January 2001:
[Freeciv-Dev] Re: [PATCH] Unit movement
Home

[Freeciv-Dev] Re: [PATCH] Unit movement

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx (Freeciv developers)
Subject: [Freeciv-Dev] Re: [PATCH] Unit movement
From: Reinier Post <rp@xxxxxxxxxx>
Date: Tue, 16 Jan 2001 17:04:29 +0100

On Mon, Jan 15, 2001 at 03:24:04PM -0800, ccrayne@xxxxxxxxxxx wrote:
> In <20010115224521.C820@xxxxxxxxxx>, on 01/15/01 
>    at 10:45 PM, Reinier Post <rp@xxxxxxxxxx> said:
> 
> :First of all, I'm very thankful as a Freeciv user to see
> :the problem of client-side AI being addressed in code.
> 
> I appreciate your support, and welcome your continued participation in
> these discussions.

Thank you.

> :Freeciv was designed as an asynchronous message sending system in which
> :there is no feedback for requests.
> 
> Considering only the communication subsystem, this is true. However, from
> the standpoint of a human player, there is feedback for almost every
> request. For example, a player presses a direction key and sees a unit
> move.

You are correct, this is often the case, for example, when units can move
multiple steps the user will usually executes them in sequence.  But it
is fundamental to gameplay (aside from performance aside) that this is
not a requirement: you can always move one step, then do some other work,
and finish the move later.  So your description fits the user's actions
on individual objects, but not user interaction as a whole.

> :The two of you seem to approach the
> :task of writing client-side AI algorithms as if you're really dealing
> :with a synchronous RPC-like system in which the client issues a request,
> :waits for the feedback, then continues its operation.
> 
> Raimar can speak for himself, but I do not support any change to the
> asychronous nature of the existing communications subsystem.

I should have worded this differently.  You seem to be thinking of a
model in which feedback from server requests is connected to the request
that originated them.  To me this suggests these requests would be part
of imperative programs, to which the requests would act as RPC.
But you didn't actually write that.  It cannot be a regular C program
unless you create large numbers of processes/threads.  I don't think
that would be feasible.  Maybe I'm just not seeing how you or Raimar
intend to specify these algorithms.

-- 
Reinier



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