diff --git a/reaction/misc/Reaction_server.cfg b/reaction/misc/Reaction_server.cfg
new file mode 100644
index 00000000..78ead647
--- /dev/null
+++ b/reaction/misc/Reaction_server.cfg
@@ -0,0 +1,105 @@
+// generated by quake, do not modify
+seta g_RQ3_RefPassword ""
+seta g_RQ3_ctb_respawndelay "0"
+seta g_RQ3_ejectBlood "1"
+seta g_RQ3_giveMeWhatsMine "1"
+seta g_banIPs ""
+seta g_warmup "20"
+seta g_teamForceBalance "0"
+seta g_teamAutoJoin "0"
+seta capturelimit "8"
+seta g_maxGameClients "0"
+seta cm_playerCurveClip "1"
+seta g_RQ3_forceteamtalk "0"
+seta g_RQ3_showOwnKills "1"
+seta g_RQ3_cvarfile "cvar.cfg"
+seta g_RQ3_roundtimelimit "2"
+seta g_RQ3_roundlimit "0"
+seta g_RQ3_limchasecam "0"
+seta g_RQ3_tgren "2"
+seta sv_RQ3_statlog "1"
+seta g_RQ3_IniFile "example-reaction.ini"
+seta g_RQ3_gib "3"
+seta g_RQ3_tpcountdown "1"
+seta g_RQ3_sniperup "0"
+seta g_RQ3_idleaction "0"
+seta g_RQ3_ppl_idletime "0"
+seta g_RQ3_respawnProtectTime "2"
+seta g_RQ3_haveHelmet "1"
+seta g_RQ3_itemban "63"
+seta g_RQ3_weaponban "511"
+seta g_RQ3_allItems "0"
+seta g_RQ3_allWeapons "0"
+seta g_RQ3_maxItems "1"
+seta g_RQ3_maxWeapons "1"
+seta g_RQ3_bloodEject "0"
+seta g_RQ3_mmflags "31"
+seta g_RQ3_maxplayers "0"
+seta g_RQ3_maxRefs "1"
+seta g_RQ3_AllowRef "1"
+seta g_RQ3_matchmode "0"
+seta g_RQ3_tkbanrounds "1"
+seta g_RQ3_twbanrounds "1"
+seta g_RQ3_maxteamkills "5"
+seta sv_RQ3_messageBanTime "60"
+seta sv_RQ3_messageWarnTime "15"
+seta sv_RQ3_messageMaxWarnings "1"
+seta sv_RQ3_messageMaxCount "4"
+seta sv_RQ3_messageInterval "1"
+seta sv_RQ3_messageProtect "1"
+seta sv_allowdownloads "0"
+seta g_log "Reaction_server.log"
+seta g_filterban "1"
+seta g_logsync "0"
+seta g_friendlyfire "0"
+seta g_RQ3_vote_waittime "30"
+seta g_RQ3_maxClientVotes "2"
+seta g_allowvote "1"
+seta g_RQ3_tdmMode "0"
+seta g_truePing "1"
+seta g_delagHitscan "1"
+seta g_motd "Reaction Betatestserver"
+seta net_socksPassword ""
+seta net_socksUsername ""
+seta net_socksPort "1080"
+seta net_socksServer ""
+seta net_socksEnabled "0"
+seta net_mcast6iface "0"
+seta net_mcast6addr "ff04::696f:7175:616b:6533"
+seta net_enabled "1"
+seta sv_banFile "serverbans.dat"
+seta sv_strictAuth "1"
+seta sv_lanForceRate "1"
+seta sv_master4 ""
+seta sv_master3 ""
+seta sv_master2 "master.ioquake3.org"
+seta sv_master1 "master.rq3.com"
+seta sv_dlURL ""
+seta sv_fps "20"
+seta sv_privatePassword ""
+seta rconPassword ""
+seta sv_pure "1"
+seta sv_floodProtect "0"
+seta sv_maxPing "0"
+seta sv_minPing "0"
+seta sv_maxRate "10000"
+seta sv_minRate "0"
+seta sv_maxclients "16"
+seta sv_hostname "Reaction Betatestserver"
+seta sv_privateClients "0"
+seta g_gametype "4"
+seta timelimit "20"
+seta fraglimit "0"
+seta dmflags "512"
+seta vm_ui "2"
+seta vm_cgame "2"
+seta com_introplayed "0"
+seta com_maxfpsMinimized "0"
+seta com_maxfpsUnfocused "0"
+seta com_ansiColor "0"
+seta com_blood "1"
+seta com_maxfps "85"
+seta com_altivec "0"
+seta com_hunkMegs "256"
+seta vm_game "2"
+seta com_zoneMegs "64"
diff --git a/reaction/misc/cvar.cfg b/reaction/misc/cvar.cfg
new file mode 100644
index 00000000..6a97a067
--- /dev/null
+++ b/reaction/misc/cvar.cfg
@@ -0,0 +1,19 @@
+r_gamma 0 1.7
+r_intensity 1 1
+r_mapoverbrightbits 2 2
+r_fullbright 0 0
+r_picmip 0 3
+r_singleshader 0 0
+r_drawWorld 1 1
+r_lockpvs 0 0
+r_nocurves 0 0
+r_shownormals 0 0
+r_showtris 0 0
+r_znear 0 4
+r_lightmap 0 0
+r_vertexLight 0 0
+cg_bobup 0 0.01
+cl_maxpackets 30 120
+com_maxfps 30 99999
+cl_timenudge 0 100
+rate 2500 25000
\ No newline at end of file
diff --git a/reaction/misc/example-reaction.cfg b/reaction/misc/example-reaction.cfg
new file mode 100644
index 00000000..66324367
--- /dev/null
+++ b/reaction/misc/example-reaction.cfg
@@ -0,0 +1,251 @@
+// Default Reaction Server Configuration File
+// Double slashes are used for comments and to keep commands from running.
+// Remove the slashes before a specific to run that command.
+
+// Non-standard cvars for server ping tools
+//sets Website "http://www.rq3.com/"
+//sets Location "YourTown, USA"
+//sets Admin "cf@rq3.com"
+//sets Connection "T-1"
+
+// set host name that shows up in server list.
+seta sv_hostname "Reaction Betatestserver"
+
+// set message of the day that players see while connecting to the server. Must be set before
+// level loads.
+seta g_motd "Reaction Betatestserver"
+
+// Toggle Unlagged on/off server side (0 - off/1 - on)
+seta g_delagHitscan 1
+
+// Toggles Unlagged Server-side trueping - More accurate than hardware ping
+seta g_truePing 1
+
+// 0 = FFA, 4 = TP, 5 = CTB
+seta g_gametype 4
+
+// Toggles TP/DM Style weapon/item selection in TeamDM (0 - TP style/1 - DM style)
+seta g_RQ3_tdmMode 0
+
+// set voting. 1=on, 0=off (Default: 1)
+seta g_allowvote 1
+
+// set how many times a client can vote each map rotation (default: 3)
+seta g_RQ3_maxClientVotes 2
+
+// set time to wait after maxClientvotes is hit to issue another vote
+seta g_RQ3_vote_waittime 30
+
+// set friendly fire mode. 1=on, 0=off (Default: 0)
+seta g_friendlyfire 0
+
+seta g_logsync "0"
+
+// turn on banning by ip
+seta g_filterban 1
+
+// name your logging file
+seta g_log "Reaction_server.log"
+
+// turn on/off pak cheat check. 1=on, 0=off (Default: 1)
+seta sv_pure 1
+
+// set fraglimit. Set to 0 for no limit.
+seta fraglimit 0
+
+// set timelimit. Set to 0 for no limit.
+seta timelimit 20
+
+// set the spawn farthest dmflag
+seta dmflags 512
+
+// set Maximum number of clients
+seta sv_maxclients 16
+
+// change this to 1 to allow clients to download paks from your server
+seta sv_allowdownloads 0
+
+// here you can set the server rcon password (DO THIS!)
+seta rconpassword "rq3"
+
+// this is for private games. only clients with this password can connect (blank means no password)
+//seta g_password "changeme"
+
+// set max allowable rate for a client. 8000 to 10000 recommended. Max: 25000 (Default: 0)
+seta sv_maxRate 10000
+
+// set requirement for client password. 1=require password, 0=no password required (Default: 0)
+seta sv_privateClients 0
+
+// set password for private server "" for no password
+seta sv_privatePassword ""
+
+// Enables message flood checking. (0 - disabled, 1 - enabled (default))
+seta sv_RQ3_messageProtect 1
+
+// Time interval in seconds for message flood check after a
+// client's first message is sent. If sv_RQ3_messageMaxCount
+// is exceeded in this interval, the player is given a warning
+// or banned from messaging for a period of time.
+seta sv_RQ3_messageInterval 1
+
+// Max number of messages allowed in sv_RQ3_messageInterval
+// seconds. If this is exceeded, the player is given a warning
+// or banned from messaging for a period of time.
+seta sv_RQ3_messageMaxCount 4
+
+// Maximum number of warnings before a ban is initiated.
+seta sv_RQ3_messageMaxWarnings 1
+
+// Timeout period for warning in seconds.
+seta sv_RQ3_messageWarnTime 15
+
+// Timeout period for bans in seconds. Typically, this should
+// be longer than the warning time. If set to zero,
+// clients are disconnected from the server. Warnings
+// are reset after a ban is committed.
+seta sv_RQ3_messageBanTime 60
+
+// RQ3 teamkill settings
+seta g_RQ3_maxteamkills 3
+seta g_RQ3_twbanrounds 1
+seta g_RQ3_tkbanrounds 1
+
+// set this to 1 to activate MatchMode. g_gametype must be 4 for MatchMode
+seta g_RQ3_matchmode 0
+
+// allow a referee in matchmode
+seta g_RQ3_AllowRef 1
+
+// the number of allowed referees
+seta g_RQ3_maxRefs 1
+
+// the referee's password
+//seta g_RQ3_RefPassword "changeme"
+
+// Max players per team. Additional people will be forced to be subs or spectators. 0 = disabled
+seta g_RQ3_maxplayers 0
+
+// Matchmode setting, gives or takes away abilities from Captains. Use it like DMFLAGS.
+// MMF_TEAMNAME 1
+// MMF_TEAMMODEL 2
+// MMF_UNREADY 4
+// MMF_SETTINGS 8
+// MMF_VOTEREF 16
+seta g_RQ3_mmflags 31
+
+// Toggles blood splats being dropped from bleeding players. (0 - disabled (default), 1 - enabled)
+seta g_RQ3_bloodEject 0
+
+// Maximum number of unique weapons a player can hold.
+seta g_RQ3_maxWeapons 2
+
+// Maximum number of unique items a player can hold
+seta g_RQ3_maxItems 1
+
+// Toggle for "All Weapons" mode (0 - off/1 - on)
+seta g_RQ3_allWeapons 0
+
+// Toggle for "All Items" mode (0 - off/1 - on)
+seta g_RQ3_allItems 0
+
+// Toggle for individual Weapon Banning - works like dmflags
+// g_RQ3_weaponban values:
+// MK23 1
+// MP5 2
+// M4 4
+// M3 8
+// HC 16
+// SNIPER 32
+// AKIMBO 64
+// KNIFE 128
+// GRENADE 256
+//
+// 256+128+64+32+16+8+4+2+1 = 511 means all weapons allowed
+// Say I want to ban the sniper:
+// Sniper = 32, so I just leave "32" out and get:
+//
+// 256+128+64+16+8+4+2+1 = 479
+
+seta g_RQ3_weaponban 511
+
+// Toggle for individual Item Banning - works like dmflags
+// g_RQ3_itemban values:
+// SILENCER 1
+// SLIPPERS 2
+// BANDOLIER 4
+// KEVLAR 8
+// LASER 16
+// HELMET 32
+
+seta g_RQ3_itemban 63
+
+// Toggle for using Kevlar Helmet on the server or not
+seta g_RQ3_haveHelmet 1
+
+// Time in seconds for a player to be invulnerable after respawning.
+seta g_RQ3_respawnProtectTime 2
+
+// Determines how long a player can remain idle before action is taken. 0 = disabled
+seta g_RQ3_ppl_idletime 0
+
+// Determines what action will be taken against an idle player.
+// 0 = Play insane sound from Idle players location.
+// 1 = Team none the idle player.
+// 2 = Kick the idle player.
+seta g_RQ3_idleaction 0
+
+// sniper control. set this to 1 to make players with sniper spawn with it
+// in stead of the pistol
+seta g_RQ3_sniperup 0
+
+// team game countdown. set this to 1 to enable
+seta g_RQ3_tpcountdown 1
+
+// gib settings. 0 = no gibs, 1 = sniper headshot gibs only. removes heads.
+// 2 = 1 + really hard HC hits gib players. 3 = players explode.
+seta g_RQ3_gib 3
+
+// here you need to put the name of the .ini file you want to use if you are
+// running a dedicated server.
+seta g_RQ3_IniFile "example-reaction.ini"
+
+
+// Enable dedicated server-side logging of player statistics at the
+// end of each game session. Tracks a variety of statistics that can
+// be parsed for whatever needs.
+// 0 - disabled, 1 - enabled (default)
+// sv_RQ3_statLog [0/1] : (default: 1)
+set sv_RQ3_statlog 1
+
+// enable grenades by setting this to 1
+seta g_RQ3_tgren 2
+
+// limit chasecam for the dead. (0 = off, 1 = team only, 2 = team eyes only)
+seta g_RQ3_limchasecam 0
+
+// rotate the map when one of the teams wins this many rounds
+seta g_RQ3_roundlimit 0
+
+// end the round after this many minutes
+seta g_RQ3_roundtimelimit 2
+
+// use this
+seta g_RQ3_cvarfile "cvar.cfg"
+
+// show your own kill messages, 0 is like AQ2 1.5x and 1.0c, 1 is like TNG/Edition
+seta g_RQ3_showOwnKills 1
+
+// force your team to talk in messagemode2 only
+seta g_RQ3_forceteamtalk 0
+
+// add up to 4 additional master servers to report to
+seta sv_master4 ""
+seta sv_master3 ""
+seta sv_master2 "master.ioquake3.org"
+seta sv_master1 "master.rq3.com"
+
+// And finally a map command to jumpstart the server. This map will be
+// loaded and after it ends, the rotation begins.
+map urban
+
diff --git a/reaction/misc/example-reaction.ini b/reaction/misc/example-reaction.ini
new file mode 100644
index 00000000..15840ba2
--- /dev/null
+++ b/reaction/misc/example-reaction.ini
@@ -0,0 +1,66 @@
+# This is an example TeamPlay ini for Reaction servers. Lines begining
+# with '#' are comments. Everything after '//' on a line is also a comment.
+# This file is based on CannonFodder's rq3.ini
+
+# The ini should begin with a main section. The cvars here are global defaults.
+
+ timelimit 20 // The amount of time spent playing each map
+ fraglimit 0 // Turn off fraglimit for a TP rotation!
+ g_gametype 4 // 0 = FFA, 4 = TP, 5 = CTB
+ g_friendlyfire 1 // 0 = FF off, 1 = FF on and 2 = FF off, knockback on
+ g_RQ3_maxteamkills 5 // Number of teamkills before the player is kicked
+ g_RQ3_twbanrounds 1
+ g_RQ3_tkbanrounds 1
+ g_RQ3_maxweapons 1
+ g_RQ3_roundlimit 0 // Max no. of rounds to play on each map (0 = no limit)
+ g_RQ3_roundtimelimit 2 // Length of each round
+ g_RQ3_tgren 2 // Number of grenades with the bandolier
+ g_RQ3_limchasecam 0
+
+
+# Here we define the teams. First comes the name of the team, then the teams
+# model and skin. Format for model is: modelname/skin
+
+ "Robbers"
+ reactionmale/robbers
+
+
+ "Cops"
+ reactionmale/cops
+
+
+# And now the actual maprotation. Map specific cvars can be included within each
+# maps definition. After each map has finished, cvars are reset to values in the
+# section. So if you change a cvar in a