Complete.Org: Mailing Lists: Archives: freeciv-dev: March 2003:
[Freeciv-Dev] Re: client/server authentication (PR#1767)
Home

[Freeciv-Dev] Re: client/server authentication (PR#1767)

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: undisclosed-recipients:;
Subject: [Freeciv-Dev] Re: client/server authentication (PR#1767)
From: "Mike Kaufman" <kaufman@xxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 25 Mar 2003 19:30:12 -0800
Reply-to: rt@xxxxxxxxxxxxxx

On Tue, Mar 25, 2003 at 01:37:31PM -0800, Per I. Mathisen wrote:
> 
> I really don't like the auto_attach feature, which looks like it was
> supposed to was a configurable option, but really isn't.
> 
> What is the justification for it? I certainly wouldn't like to be forcibly
> pushed into controlling an AI player if I was in the chatline when the
> game started. If I wanted to control an AI player, I'd do it explicitly,
> and I'd want to choose which one, too.
> 
> I want to commit auth2-3d without this feature.

the short answer is no. the long answer is:

Yes, auto_attach is going to be a configurable option. Again, these three
patches are preparatory patches. The reason that it is not now an option
(and is set to TRUE) is because the necessary coolness is not present.

By the way, auto_attach does not forcibly push you into controlling AI
players. It by default attaches a connection to a player at the beginning
of a new game. If it is FALSE, then at the beginning of a new game, 'start'
will not work because there will be no players to start.

Example: server on pubserver is started. 4 people login. If auto_attach is
TRUE, then when /start, the server will attach each connection to a [new] player
and the game will start.

Example: same as above, but what if you want a two-player deathmatch and
the other two people will observe each of the other players? 

Example: you have ten people logged in, but you only want a 4-player game
(for some reason or another). you need to pick which connections get
players. The rest get stuck in the "staging area".

You've got to have a way of designating which of the connections will be 
controlling a player. This is where the not-yet-seen 'attach' command comes 
in. A connection with cmdlevel ctrl can manually attach a connection to a 
player slot. Then using an 'observe' command can set other connections to 
observe that player slot. Note that at this point, players have NOT been 
created yet (game.nplayers == 0).

Most of the time, however, you're not going to need to mess around with
this. Any connections wanting to observe might show up after the game has
started. At that point, all the players have been assigned. Most of the
time, anybody logged in at pregame is going to want to play. So at pregame,
you want a minimum hassle: people log in, /start, go. This is where
auto_attach comes in. Any connections that aren't yet assigned a player
slot (observation commands and such can still be made) is assigned one and
off we go.

Most of the time, this option will never get changed. It only needs to be
set to FALSE for fine-grained control.

Since the observation and multiconnect commands are not yet implemented,
being able to set auto_attach to FALSE is pointless, hence the absense of
code.

-mike



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