Complete.Org: Mailing Lists: Archives: freeciv-dev: July 1999:
Re: [Freeciv-Dev] Idea for 2.0
Home

Re: [Freeciv-Dev] Idea for 2.0

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Freeciv Dev <freeciv-dev@xxxxxxxxxxxx>
Subject: Re: [Freeciv-Dev] Idea for 2.0
From: Tony Stuckey <stuckey@xxxxxxxxxxxxxxxxx>
Date: Thu, 15 Jul 1999 12:27:43 -0500

On Wed, Jul 14, 1999 at 11:29:09PM -0400, Greg Wooledge wrote:
> The only good way to get all of the above working correctly is to enforce
> it at the server.  If the client is told all of the units in a stack, it
> could be hacked by the player to give information the player should not
> have.  (Under Civ2 rules, you can determine that an enemy boat is carrying
> one or more passengers (or shares the square with another boat) by the plus
> sign, but you can't know what those passengers are until you attack and win.
> But if the server tells the client what all the units on the boat are, the
> player has information (s)he shouldn't have.)

        This is not entirely true.  You are shown the pieces individually
as they move onto the square in question.  Someone with a good memory or a
quick screen shot key could retain more information.  You are correct that
transports loaded outside of visibility should only ever be shown as a
single unit with a plus sign.
        This same "cheat" was possible in Civ1 and Civ2.

        Civ has very intricate lines between what information you're told
and what you have to guess.  Whether we want the client to make any
attempt (even for a single turn) at retaining information it previously
knew for certain, I don't know.

> So, every way I look at it, the server needs to be modified.  It has to
> be more selective about what information it sends to the player.

        Right.

> But for fog of war specifically, there's another factor.  The player
> should be able to see a tile (s)he has already explored, even if it's
> not updated.  Thus, the client has to keep a copy of the last "version"
> of a tile sent by the server.  That's all fine, and trivial... until you
> get to the saved game.  When a game is loaded, and a client reconnects,
> it should get a copy of the map just like the one it had when the game
> was saved.  Thus, the server must also know what the client sees -- which
> means the server must keep a record of every client's "view" of the map.

        Yup.

> (I don't know what informtion the server currently keeps.  I suspect
> that it's just a bitmap which tells whether each square is "known" or
> "unknown".  This would need to be extended -- the server would have to
> keep a structure which records what the client knows about each tile --
> the terrain type, the visible unit/city (if any), terrain improvements,
> pollution, and maybe more.  For each client. :( )

        Pretty much.
-- 
Anthony J. Stuckey                              stuckey@xxxxxxxxxxxxxxxxx
"When I was young, the sky was filled with stars.
 I watched them burn out one by one."  -Warren Zevon

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