If you have a few match servers that you want to let others use, you can install this application on your web server so that they can use them without needing to know your password. This is like what various clans on PB have (such as GT, OTB, QeHS).
Features:
- Auto-select available server option
- Grace period
- Completely skinnable/themable
- Allow users to change some cvars (restricted)
- Allow users to change some cvars after they've leased the server
- If they try to change cvars after they've leased the server, warnings will be issued to the game (so cheating with it is out of the question)
- Displays server status
- Spam-bot check
http://code.google.com/p/dpmatchreserve/PHP 5 required. register_globals and magic_quotes_gpc need to be off; they can be turned off via .htaccess. Localization is not supported currently.
==
Example configuration file:
<-?php
# Configuration file for DPMatchReserve
$CONFIG = array();
##################################
# Settings
##################################
# The base URL to the directory that contains this
# application. Leave it blank for autodetection
$CONFIG['base_url'] = '';
# The default map that the server will be changed to when
# a server is requested
$CONFIG['default_map'] = 'pbcup';
# Name of theme to use
$CONFIG['theme'] = 'simple';
# Set to 1 if to enable the debugging console for Smarty that
# displays the variables available for the template
$CONFIG['theme_debug_console'] = '0';
# Set to 1 if developing a theme, and to 0 to turn it off.
# Turning on debug mode will force templates to be recompiled
# as necessary, otherwise your templates will be cached and your
# changes will not change anything!
$CONFIG['theme_debug'] = '0';
# Number of seconds to allow a grace period so that they can join
# the server before anyone else can try again. Specified in
# seconds
$CONFIG['grace_period'] = '30';
# Shows an option for the user to select the application to
# automatically select a open server for them
$CONFIG['enable_autoselect'] = '1';
# Requires that the server have at least one player on it
# before someone is allowed to change the game variables *after*
# the server has been leased to them
$CONFIG['custom_var_require_nonempty'] = '1';
# Requires that the person trying to change the game variables
# *after* the server has been leased to them to be on the
# server (checks by IP)
$CONFIG['custom_var_require_ip_on'] = '0';
# This prevents automated spam bots that scour the Internet
# from submitting this form
$CONFIG['bot_check_string'] = 'paintball';
##################################
# Server configurations
##################################
# Configure all the match servers below that you want others
# to be able to lease. Just copy the section and paste it over,
# remembering to modify the information for each one
$CONFIG['servers'][] = array(
'name' => 'Match Server #1',
'host' => '127.0.0.1',
'port' => '27910',
'rcon_password' => 'hackme',
'op_pass_num' => '1',
);
$CONFIG['servers'][] = array(
'name' => 'Match Server #2',
'host' => '127.0.0.1',
'port' => '27911',
'rcon_password' => 'hackme',
'op_pass_num' => '1',
);
##################################
# Default settings
##################################
# These settings will be applied when someone uses the match
# tool to lease a server. This is useful if you allow people
# to change the game settings because it will reset the
# settings for the next group.
$CONFIG['default_settings']['elim'] = '60';
$CONFIG['default_settings']['ffire'] = '1';
$CONFIG['default_settings']['flagcapendsround'] = '1';
$CONFIG['default_settings']['flagmustbeatbase'] = '0';
$CONFIG['default_settings']['gren_explodeonimpact'] = '0';
$CONFIG['default_settings']['guntemp_dec'] = '4';
$CONFIG['default_settings']['guntemp_inc'] = '11';
$CONFIG['default_settings']['PaintGrens'] = '2';
$CONFIG['default_settings']['pong_nokill'] = '1';
$CONFIG['default_settings']['SmokeGrens'] = '1';
##################################
# User-modifiable settings
##################################
# Users will be able to modify these settings when trying to
# lease the match server and after the match server has been
# leased to them. Just copy each block and modify it as needed.
#
# type = {bool|int|float}
# min = <number>
# max = <number>
# only_after_lease = {1|0}
#
# Notes:
# - only_after_lease: Prevents users from changing this setting
# until after they have leased the server
$CONFIG['user_settings']['elim'] = array(
'type' => 'int',
'min' => '0',
'max' => '120',
);
$CONFIG['user_settings']['ffire'] = array(
'type' => 'bool',
);
$CONFIG['user_settings']['flagcapendsround'] = array(
'type' => 'bool',
);
$CONFIG['user_settings']['flagmustbeatbase'] = array(
'type' => 'bool',
);
$CONFIG['user_settings']['gren_explodeonimpact'] = array(
'type' => 'bool',
);
$CONFIG['user_settings']['guntemp_dec'] = array(
'type' => 'int',
'min' => '1',
'max' => '5',
);
$CONFIG['user_settings']['guntemp_inc'] = array(
'type' => 'int',
'min' => '0',
'max' => '11',
);
$CONFIG['user_settings']['PaintGrens'] = array(
'type' => 'int',
'min' => '0',
'max' => '5',
);
$CONFIG['user_settings']['pong_nokill'] = array(
'type' => 'bool',
);
$CONFIG['user_settings']['SmokeGrens'] = array(
'type' => 'int',
'min' => '0',
'max' => '5',
);
$CONFIG['user_settings']['sv_gravity'] = array(
'type' => 'int',
'min' => '0',
'max' => '800',
'only_after_lease' => '1',
);
?>