Update of /cvsroot/netrek/server/Vanilla In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2967 Modified Files: PROJECTS Log Message: Index: PROJECTS =================================================================== RCS file: /cvsroot/netrek/server/Vanilla/PROJECTS,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- PROJECTS 22 Apr 2006 11:31:52 -0000 1.8 +++ PROJECTS 6 May 2006 12:01:00 -0000 1.9 @@ -3,60 +3,41 @@ List of things to do in the future - - metaserver begins to list robots on a server after the - server has stopped sending player count updates by perhaps - the TCP query from the server is mistaken. + - dist-minimal target, to make ntserv & include only? - - vote per IP address only, not per slot + - config.h.in settings to move to configure --enable-feature + options, so that a separate config.h.in does not need to be + maintained by server administrators. - - separate ban and eject votes, ban to include effect of - eject, ban for an hour, or while the players that voted - still have the same slot (ban based on an a mask of slots - that voted for it) + - banned login for client with tryudp on seems to begin udp + negotiation, making it hard for the player to see the cause + of hang. -quozl's working notes ... { + - banned login can still tie up a slot for as long as it takes + for it to time out or the player to hit QUIT. -expiry by time - check list, remove based on time (time_t) -expiry by departure - check list, remove if any voters have gone (MAXPLAYER x p_no, p_pos) -connect - do expiry - pass if observer - check list of temporary bans, by ip address (p_monitor?) -login - do expiry - pass if guest - pass if observer (but set :ita for all) - check list of temporary bans, by p_name -refit mask wait - do not offer a team they have been banned from? -queue wait - do not accept a slot if they are banned from that team -eject vote - do expiry - insert entry into list - (time_t, p_name, p_monitor, n_voted MAXPLAYER(p_no, p_pos)) - if they are not banned from the other team, offer them a ship there -data - MAXPERSISTENTBANS (time_t, p_name, p_monitor, MAXPLAYER(p_no, p_updates, p_team, p_pos)) + - perm and temp bans in netrekd, have it access shmem and + detach. -BFGOD -BFTEAM -struct ban { - u_int b_flags; - time_t b_when; - char p_name[NAME_LEN]; - char p_ip[NAME_LEN]; - struct ban_matrix { - int p_no; - int p_updates; - short p_team; - pid_t p_process; - } b_matrix[MAXPLAYER]; -} bans[MAXBANS]; + - queue dump, once a sufficient queue has built, for each of + the queued players close the shared memory section for one + game and open a new one. Forward link from queue to next + section. -} quozl's working notes + - genocide, pause game, reveal cloakers, declare result, wait + five to ten seconds (sysdef GENOCIDE_WAIT), resume, blow + everyone up, reset galactic, if no queue do a balance + (sysdef GENOCIDE_BALANCE), if queue purge the slots. + + - timercide, pause game, reveal cloakers, declare result, wait + five to ten seconds (sysdef TIMERCIDE_WAIT), resume, blow + losing team up. + + - metaserver begins to list robots on a server after the + server has stopped sending player count updates by perhaps + the TCP query from the server is mistaken. + + - vote per IP address only, not per slot - prevent eject in initial two-minutes of ship time, if ship active,