Rabid Viper Productions

## Setting up a Server

### The ActionCube Server

Dedicated servers run in the shell only (no graphics), with increased priority yet use very little cpu time and memory, so you can run one in the background, or at the same time with a client if you want to host a game. Server port is fixed at 28763, with 28764 being used for the server info requests (both UDP). See the Get Started Guide to find out how to join a server.

### Main Configuration

The ActionCube server is mainly configured using command line options set in the server script actioncube_server.bat on windows or actioncube_server.sh on linux.

bin_win32\ac_server.exe -c8 -n"My AC Server"

Possible command line options can be obtained from the configuration section of this readme. Run the script to start the server.

### Maprotation

In the maprotation file specified on the command line (default: config/maprot.cfg), you can specify the map, mode, time and voting for your server. Each line defines one round. Example:

    // server side maprotations
    // WARNING: You can NOT use CubeScript in there
    // use the following scheme:
    // map:mode:time:allowVote

    // tdm
    ac_complex:0:10:1
    ac_depot:0:10:1
    ac_desert:0:10:1
    ac_mines:0:10:1

    // ctf
    ac_mines:5:10:1
    ac_depot:5:10:1

The first line, ac_complex:0:10:1, means, the map ac_complex is played in mode 0 (Team Deathmatch) for 10 minutes. The connected players are allowed to vote.

## Administration

### Cheating

Cheating is a problem that can't be solved entirely. ActionCube is opensource, so everyone that knows how to compile it can easily modify the source to do whatever he wants, thats the problem of opensource games. The fact that the whole game logic is client-side, to save a lot bandwith, makes it even easier to cheat. There is no way to avoid this abuse.

### Master Mode

ActionCube adapts the useful feature called master mode known from the Cube 2 games. It's implemented in a slightly different way though. Servers operate in a so called master mode which allows people to easily and painlessly have games with people they know, without being disturbed by cheaters. The way it works is very simple: the first person to enter a server and use the setmaster command becomes the master of that server. The master of a server can force map changes, set a different master mode and perform other administrative actions normal players can't.

setmaster B P

where is B is 1 to claim master or 0 to give up master. P is an optional password that can be supplied to become master even if there is already a master on the server. The owner of a server can configure this password and use it as tool to remove the current master and become master himself.

The master can change the master mode of the server using the mastermode command:

mastermode N

sets the master mode to N. Possible master modes are:

- 0 (open) - Anyone can enter the server. This is the default mode. It is good for games with random people, if no cheaters appear to be around.
- 1 (private) - Noone can join the server anymore. Good for games with friends when cheaters are around, cheaters wont even connect, so wont have the chance to try and screw things up.

### Kick and Ban

Once you claimed master, you can kick and ban people from the server. Open the scoreboard (key: TAB) to look up the client number (cn) of the player you want to kick or ban.

kick N

kicks the player with the client number N from the server.

ban N

kicks the player with the client number N from the server and refuses any connection attempts from his IP for the next 20 minutes.

rembans

This removes all active bans.

### Auto Team

The current master can enable the auto-team option for the server. If enabled, newly connected clients will be forced to the smaller team and switching to the bigger or equal sized team won't be possible anymore. A team shuffle is performed every time the game mode changes from FFA to a team mode and when the auto-team option is initally enabled.

autoteam N

where N is 1 to enable and 0 to disable the auto-team option.

### Master Menu

Some administrative actions can be done using the GUI. Use this command to bring up the master menu:

mastermenu