Header
The server-side options and configurations are very powerful. It is suggested to take some time and read thru this few sites of the Excessive Plus manual.



Configuration System

READ THIS CAREFULLY!
The configuration system was completely redesigned and has absolutely nothing common with the old! You still have different configurations inside the conf/ directory but they use a different syntax and you CANNOT /exec them!

Also some of them are STATIC (!) and cannot be changed! This was made to ensure a compatibility between different servers, so if you join i.e. a server with the 'excessive3.cfg' you can be sure that it will be the 'excessive3.cfg' and nothing else!

If you want to know more about the Configuration System and how to load or create different settings, read this section!




Server-Side Only

Yes! Excessive Plus is fully compatible to be played without any client-side modifications!
That also means that your server will be more popular and filled with new gamers because they don't need to download anything to play on a Excessive Plus server.
Use the /players command to see who is playing with/without the client-side modification.

But nevertheless it's very recommended to play it with the client-side modifications because there are so many nice and useful features!




Game Types

In Excessive Plus you have 4 great and all new gametypes to play with!
Of course the old are still unchanged and there like Free for All (g_gametype 0), Tournament (g_gametype 1), Team Deathmatch (g_gametype 3) and Capture the Flag (g_gametype 4).


Tournament, 1on1 (g_gametype 1)

Well, yes you all know what it is but Excessive Plus added a new feature to have map rotations for this gametype.
The rotation works the same as for any other gametype.


Return the Flag, RTF (g_gametype 5)

This one is more difficult than the regular Capture the Flag but also the better team game. Though the only difference is that you have to carry your own flag back to your base, it is harder than it sounds!
Be aware of double flag carriers, they can be your best friends but also your worst enemys.


One Flag CTF, 1FCTF (g_gametype 6)

This is another Capture the Flag variant. You basically have to pickup the Neutral Flag (White Flag) in the middle of a map and try to get to the enemy's base to score a point.
Don't forget that it's the enemy base and therefore well protected! You better get your team with you to have a bigger chance to capture.

Many maps support this gametype like q3wcp*, q3w*, q3wxs* etc. but you can also add support for other maps (q3ctf1-4, see oneflagctf.txt).


Clan Arena, CA (g_gametype 7)

Clan Arena matches are played in "arenas." Each map may have one or more arenas in it. Once you are in the arena you will be put in line to fight. Of course you can play ordinary maps as well. The principle is simply. Hunt down the enemy team to win. Once you got fragged you have to wait until the round ends only then you will respawn.


Freeze Tag, FTAG (g_gametype 8)

This is a great teamplay gametype. It is a lot like that game you may have played as a kid, but without the killing. In Freeze Tag you try to eliminate the entire enemy team.
If you kill someone then they will become frozen. So to eliminate all, you'd need to freeze everyone, making them all frozen at the same time.
This will give your team a point and the round will start over again. If you are ever frozen, a teammate can come rescue you by standing next to your icy body for three seconds. You'll then be set free and can join the battle again.


Protect the Leader, PTL (g_gametype 9)

Another teamplay gametype where you have to prevent that your leader gets hurt.
Each team has a granted team leader who is carrying your team's flag.
The enemy team of course tries to kill your leader to win the round and it is your job to prevent this! The one who kills the leader gets the new leader and automatically is hunted by the other team.




Cron Tab

Set the xp_crontab "crontab.txt" variable to the file where your crontab script is.
A crontab is basically a list of commands that are executed at a given date/time.
The syntax format is the same as the *nix crontab use.
Here is a short overview:

Each line has the format:
minute  hour  day  month  dayofweek    /command
For any of the above values, an asterisk (*) can be used to specify all valid values. For example, an asterisk for the month value means execute the command every month within the constraints of the other values.

A hyphen (-) between integers specifies a range of integers. For example, 1-4 means the integers 1, 2, 3, and 4.

A list of values separated by commas (,) specifies a list. For example, 3, 4, 6, 8 indicates those four specific integers.

The forward slash (/) can be used to specify step values. The value of an integer can be skipped within a range by following the range with /. For example, 0-59/2 can be used to define every other minute in the minute field. Step values can also be used with an asterisk. For instance, the value */3 can be used in the month field to run the task every third month.

Any lines that begin with a hash mark (#) or a double slash (//) are comments and are not processed.

Example:
# examples
* * * * *	/say this is executed every minute!
* * * * 1	/say this is executed every minute but only on mondays!
*/5 * * * *	/say this is executed every 5 minutes!
0 15 5 2 *	/say this is executed on the 5th February at 15:00 o'clock!

# change config at midnight
0 0 * * *	/exec your-midnight-fun.cfg





Ban System

Set the xp_bans "bans.txt" variable to the file where your ban list is.
The Ban System's syntax is pretty much like the Configuration System.
I think this example should be self explaining.

Example:
Name {
    "*yourname*" {        // ban all who have 'yourname' in their names
        IP: 92.18.0.4     // allow if ip match!
        Password: "test"  //    or if password!
    
        Reason: "Sorry, 'yourname' is a protected name!"
    }

    // for "^1 " names
    " " { Reason: "Please use a name!" }
}


IP {
    172.23.3.56 {        // ban this ip
        Name: "test*"    // but allow if the name begins with 'test'
    
        Reason: "Dude you are not test!"
    }

    207.46.* { Reason: "Microsoft isn't allowed!!" }
}





Rotation System

Set the xp_rotation "rotation.txt" variable to the file where your rotation is.
Server admins will find /rcon rotate useful. The syntax is also alot like the Configuration System.
The following example should be self explaining.

Example:
// this will be executed before each map
timelimit:  20
fraglimit:  25
g_gametype: 0


q3dm1 {
    fraglimit: 50
}
q3dm2

// as you see additional settings like { ... } are optional
q3dm3

// lets have a ctf game with 'xp.cfg'
q3ctf1 {
    g_gametype: 4
    timelimit: 15
    capturelimit: 10
    /load conf/xp
}

// this will be ffa! remember the "g_gametype: 0"
q3ctf4





Variables List

/set xp_unlagged 1
Enables the great Unlagged technology. It was additionally optimized! (Can be changed by a config)


/set xp_physics 1
Enables the excessive physics and movement control. (Can be changed by config)
Where:   1 is only forward move.
               2 is forward and side move.
               3 is only side move.


/set xp_solids 0
Allows players to walk thru player clips like camping on the towers in q3dm1. (Can be changed by config)


/set xp_vote "map_restart,nextmap,map,.."
This is the /callvote list.
Add or remove commands you want and separate them with a "," or a ";".


/set xp_chatProtection 3
Enables the chat protection after someone chatted for X or more seconds. Setting this to 1 means that it can be abused! One can start chatting to avoid being killed.


/set xp_muteSpectators 0
Allows you to mute all spectators. They still can talk with other spectators but the in-game players won't see it.


/set xp_inactivitySpectator 180
This one sets you automatically /away after X seconds of idle. If you join the game you will get your old score back!


/set xp_matchmode "0"
This enables the "match mode". It will enable the following client commands: /ready, /notready, /teamready.


/set xp_holyshit "0"
If enabled you will hear the "holyshit" sound when you kill an enemy with a direct BFG hit.


/set xp_validTLD "0"
This will allow only valid country locations.


/set xp_userdb "1"
This will enable/disable the user database (aliases).


/set xp_motd "motd.txt"
A definition of the filename where your message of the day is.


/set xp_voteconf "voteconf.txt"
A definition of the filename where your voteable configuration are.


/set xp_crontab "crontab.txt"
A definition of the filename where your crontab script is.


/set xp_bans "bans.txt"
A definition of the filename where your ban list is.


/set xp_rotation "rotation.txt"
A definition of the filename where your rotation is.




Command List

/rcon k        <expression> [<reason>]
/rcon kick2 <expression> [<reason>]
This is a advanced /kick and /clientkick in one command. You can use wildcard matches to kick a whole list of players and additionally give a reason for the kick.

Examples: /rcon k "A*" "guys with a starting 'A' are out!"
                 /rcon k 2


/rcon b     <expression> [<reason>]
/rcon ban <expression> [<reason>]
This command will add a ban to the "bans.txt". You can use wildcard matches to ban whole list of players and additionally give a reason for the ban.

Examples: /rcon b "A*" "guys with a starting 'A' are out!"
                 /rcon b 2


/rcon s
/rcon status2
This is a advanced "/rcon status" and will show you the ID, IP address and GUID of players.


/rcon w
/rcon whois <expression>
Both commands will show you the used aliases of players. "/rcon w" will show you the three most used aliases of all players and "/rcon w" will show you all aliases of a specific player.

Examples: /rcon w
                 /rcon whois 2


/rcon forceteam <expression> <team>
Same as above but instead of kicking you can force them to join a specific team (free, red, blue, spec).

Example: /rcon forceteam "*[myclan]" "red"


/rcon cp               <message>
/rcon centerprint <message>
This lets you display a "big" message to the screen of all players.


/rcon rotate [ num ]
If [num] is omitted it will rotate to the next map.
Server admins should be used to '/rcon vstr nextmap' to rotate maps. However this does not work for the new rotation system!
You have to use 'rotate' instead, this also works for old rotation. In general just use '/rcon rotate' instead of '/rcon vstr nextmap' in Excessive Plus.


/rcon ipdb [ ip address ]
This is just a raw access to the IP-to-Country database. Can be used to check the origin of IP addresses.


/rcon load [ configuration file ]
Loads a specific configuration. Read this section.

Example: /rcon load "conf/excessive3"