Date: Friday October 25, 2002 @ 2:07 Author: cameron Update of /home/netrek/cvsroot/Vanilla In directory swashbuckler.real-time.com:/var/tmp/cvs-serv7373 Modified Files: README.developers Log Message: edits by Zach the AI **************************************** Index: Vanilla/README.developers diff -u Vanilla/README.developers:1.3 Vanilla/README.developers:1.4 --- Vanilla/README.developers:1.3 Thu Oct 10 01:36:05 2002 +++ Vanilla/README.developers Fri Oct 25 02:07:20 2002 @@ -1,5 +1,5 @@ -$Id: README.developers,v 1.3 2002/10/10 06:36:05 cameron Exp $ +$Id: README.developers,v 1.4 2002/10/25 07:07:20 cameron Exp $ README for developers @@ -27,20 +27,11 @@ Source comments are for the next person trying to understand the code. -Source Editing Hints - # hints on using GNU Emacs - bind "meta-x compile" to a key - use "control-x `" to move to next error in compilation results window - use "control-x v v" to commit one file if required - use "control-x 4 a" while positioned in changed source to fix ChangeLog - use "control-x v =" to produce a diff on that file vs CVS - use "etags *.c *.h" to build a tag list of variable names - use "meta-." to find a definition of a variable or function - New Developer Familiarisation Documentation by Jeffrey Nowakowski, 27th March 2000 with edits by James Cameron, 10th October 2002 +with edits by Zachary Uram, 25th October 2002 Server Processes @@ -48,27 +39,26 @@ (aka newstartd) Listens for incoming clients that want to connect to the server. Reads the .ports file which tells it - what programs to run when a client connects. Normally, forks - an ntserv process for each client, but handles other things + what programs to run when a client connects. Normally, it forks + an ntserv process for each client, but it also handles other things such as the player list for the metaserver. ntserv - Communicates with the client. Will start daemon if shared - memory doesn't exist. Each player has their own ntserv - process. + Communicates with the client. It will start as a daemon process + if shared memory doesn't exist, or if there are no free shared memory segments.. Each player has their own associated ntserv process. daemon - Maintains the game state. Will start robots like hockey if - .sysdef option is set. Sends data to metaserver if the - .metaservers file is configured. + This process maintains the game state. It can start robots such as hockey if + .sysdef option is set. It sends data to the metaserver if the + .metaservers file is configured properly. Shared Memory Contains the game state. This is updated by both ntserv and the daemon. It isn't touched by newstartd, all queueing is handled by - ntserv. Use 'ipcs' command to see it on the operating system. + ntserv. Use 'ipcs' command to see if the shared memory segment is present in the operating system. Globals