Complete.Org: Mailing Lists: Archives: freeciv-dev: January 2000:
[Freeciv-Dev] Re: Some questions
Home

[Freeciv-Dev] Re: Some questions

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: Some questions
From: Jeff Mallatt <jjm@xxxxxxxxxxxx>
Date: Mon, 03 Jan 2000 17:05:42 -0500

At 2000/01/03 16:26 , Daniel Zinsli wrote:
>Jeff Mallatt <jjm@xxxxxxxxxxxx> writes:
>> Are you asking for strict turn order amongst the AI players (and the AI 
>> controlled units of human players), during the AI phase, or amongst the 
>> human players during normal play as well?
>
>Among ai and normal players, ala civ2. (strict turn order)

I already find multi-player games very boring, having to wait for the other 
players to complete their turns.  I would find it both more boring and very 
frustrating not being able to do anything while another player takes an hour to 
move up a bunch of units and blow away something of mine.

However, others may like it, so...

Toward the end of main() in server/civserver.c is the while loop that runs the 
game.  sniff_packets() handles human-player interactions.  auto_settlers(), 
ai_start_turn(), auto_attack(), end_year() and check_spaceship_arrivals() 
handle AI-players and the "automatic" happenings of human-players.

All of these routines handles all players.  For strict turn order, you'll have 
to sort of turn all these routines inside-out, then call each of them once (in 
order) for each player.  This is certainly an over-simplification.

Beyond this comparatively "simple" change, there are probably complicated 
client-communications issues I haven't even begun to consider.  Such as, when 
and how to allow treaty negotiations?  You can't just turn off all packets from 
all human players that aren't "in their turn" in sniff_packets().

jjm


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