************************************ Credits ****************************************
The original Expert game coders -- for releasing the original 3.2 expert source
Id software -- obvious reasons
Incinerator ---- wrote in new ctf mode and several fixes.. maploop fix
Mazrim ---- general coding fixes --- pak file checking ... done

Inspirations...
	Q2 Expert community -- the players.. thanks

******************************* Install notes ****************************************
-----------------------Install Instructions..-----------------------------------------

the zip file includes:
filelist.txt is a directory listing of all the files in this package


Linux users
******** Note ----- before installing back up your current gamei386.so----------------
Just rename it to gamei386so.32 so you know what it was...

win32 users
---------------------------------------------------------------------
rename your existing gamex86.dll if you dont want to lose it
--------------------------------------------------------------------
Clean install
--------------
Follow the "expert.txt" instructions included in the 
quake2\expert3.3.2\docs folder

-----------------------------------------------------------------------
I have included the q2admin version 1.13 directory and all the if you 
want to use it just rename quake2\q2admin to quake2\release
-----------------------------------------------------------------------

*************************************************************************
I would suggest backing up your existing configuration folders..ie ctf/ctf,
ctf/dm, all your cfg files in ctf folder, and batch files.. the easiest way
is to copy the whole ctf folder to another backup folder like quake2/ctfbak
**************************************************************************

Unzip the files with winzip to the drive using folder names to unzip to
example : unzip to c:\ .. make sure use folder names is checked off

This will place all the new files in an quake2\expert3.3.2 folder , 
copy the contents or move the contents of the expert3.3.2 folder to ctf folder


Modify the .bat,.cfg files to your liking 
at the least the bat files need an ip change

Modify the .cfg files to your liking or pull the lines out you need and add 
them to your cfg file. This file should stay in ctf path.
******************************* Files included ***************************************
q2ctf.bat --- typical win32 commandline 
------------------------------------------------------------------------
cd ..
start quake2.exe +set game ctf +set dedicated 1 +set public 1 +set ip "127.0.0.1" +set port 27910 +exec exctf.cfg
-------------------------------------------------------------------
Linux commandline -- 
./quake2 +set game ctf +set ip "your server ip" +set port "27910" +set dedicated 1 
+set public 1 +exec exctf.cfg

exctf.cfg
Sample Configuration file to run the server with new features..

gamei386.so
Linux expert ctf version 3.3.1 ... modified by Incinerator[DKM] --- icq 40084883

damagedropdoc.htm --- describes the new ctf mode of play in detail with client/server 
commands and settings.. If you use this you should probably add something to your 
motd(Message of the day) to tell the users to bind the *dropflag* command.
This file is typically located in the quake2/ctf/ctf path. It may be different per
server. 
For more question about this I am at icq 40084883... or wmcincin@clanwmc.com

***************************************************************************************
                                   Additions made
******************************* Damagedrop CTF server *********************************
Read the enclosed html... Damagedropdocs.htm
***************************************************************************************

                                      Changes made
**************************  Sv prop -- map loop fix ***********************************
Modified the ExitLevel feature..
(This is the function called to change levels at the end of the game)

Currently this supports maps in pak files and maps in baseq2/maps folder and ctf/maps.

This Adds crash protection for map loop not being run or properly or maploop is missing 
completely. This basically will load the same map if the sv prop values for the maploop 
are missing instead of using the maps internal next map property value.. 
In an expert server this typically isnt used anyway..The original intent of the next 
map property in a map was for the original quake2 Mission paks.
(At least I would assume that). So, with that in mind the network play seems to benefit
from this in the respect that if an sv prop is spelled wrong or the 
***************************************************************************************

**************************** Added a new sv loadmap command ***************************
***************************************************************************************
****** This only supports maps that are in pak files and, files in baseq2/maps
******* as well as ctf/maps
**************************************************************************************
Usage on server console              --- sv loadmap mapname
Usage for rcon                       --- rcon password sv loadmap mapname

example ....                         --- rcon password sv loadmap q2ctf1
        - (the above will load q2ctf1 if its not in a pak file currently)

example of a bad map request         --- rcon sv loadmap q2cfgghjkgh 
	- the server will respond map not found

what this command does is checks to see if the map exists first before trying to open 
or change to a new map..so if a remote console user types in the wrong map name the 
server will not change to the map or crash because of a bad mapname.. It has been 
thoroughly tested on win32 systems and now finally on linux. 

**********************************    pullspeed  **************************************
This allows the grapple/hook pulling speed to be adjustable... i have tested this to 
as high as 20000 and as low as -20000 .. it works either way..
If the number is a negative number it will push you away from the hook..
USAGE ---
server console --- pullspeed number ----- example... pullspeed 420
rcon usage     --- rcon pullspeed number


This is a server only option can be positive or negative values -- default is 420
***************************************************************************************

********************************  Rapidfire fix *************************************** 
fixed spectator firing bug -- it is now a only useable when not in expert play mode
ie.  DM

***************************************************************************************
                                 AUTORESTART FEATURE 
***************************************************************************************
This is used in conjunction with several things.
2 new cvars made for the server
autorestart 0|1 		//default is 0
init_srvr_cfg "filename.cfg"  	//default is exctf.cfg

This intercepts the following commands that will crash the server or shut it down
killserver, map, gamemap or any other freak thing that may crash the server dll or 
Linux gamei386.so 

I have included some new server aliases that will allow the server to be shutdown if that
is what you want to do..

The servers initial cfg file listed in your batch files to start the server is included 
in the cfg file that starts the server. For example, if the server runs exctf.bat and it 
calls exctf.cfg the init_srvr_cfg "exctf.cfg" should be set in it.. more documentation is 
included in the cfg files on this.. if you clear this value the server will just shutdown
I recommend against this..  the autorestart 0 is set in the exctf.cfg on purpose. 
Leave this as is. Instead, change autorestart in ctf/ctfcycle.cfg to 0 to disable the 
autorestart features on server shutdown.
I recommend server ops type the command "alias" at the console to see the new 
alias commands added to the server..
---------------------------------------------------------------------------
Basically they are as follows, and are already included in the startup files
----------------------------------------------------------------------------
alias killserver "autorestart 0;killserver"

//this will kill the server and quit q2
alias stopserver "autorestart 0;killserver;quit"

//this will restart a server
alias restart "autorestart 0; killserver;exec %s,init_srvr_cfg;autorestart 1"
//----------------------------------------------

