OSP for Soldier of Fortune 2 : Double Helix
Official documentation

    Setting up an OSP server

    Running a mod
    Running a modification under Soldier of Fortune 2 is pretty easy but requires some basic knowledge that I dont have time to give here, if you require more information you can always consult the http://www.gameadmins.com website. In simple terms you need to first install the modification on your server, usually meaning to unzip the package to the server's sof2 directory. Once that is done, there should be a directory named /osp in your /sof2 directory. Once you have that, starting the server is as easy as starting a default server, just add +set fs_game osp to your command line.

    Note : all files relating to your server will now be found under the osp directory in the directory specified by fs_homepath if you are running a linux server, or your sof2/osp directory if you're running a windows server.



    Setting up a public server
    To setup a public server, you can use the default configuration files found in the /sof2/osp/configs/ directory, they follow a naming scheme like so osp_[gametype]_pub.cfg, where [gametype] is the short name for the gametypes (dm,tdm,elim,ctf,inf,dem). These files are taylored for general public servers, and should satisfy most server admins out there. To use one of these files to start your server, just add +exec configs/[config file] to the command line you use to start the server.

    Note : you should open the files and read the settings, each of them are well documented in comments. Also, the files in the configs directorywill also be used when someone calls a vote for a config load vote. See the callvote section for more details about voteable configs.



    Setting up a competitive server
    Setting up a competitive server is done pretty much like a public server, the suggested settings for each gametype can be found under the sof2/osp/configs directory and will be named osp_[gametype]_comp.cfg. Use the same technique as described for public servers to load the settings from your command line.


    OSP server CVARs descriptions
    Name Values Effect
    g_spectatorInactivity time in seconds [0,x[
    disable: 0
    default: 0
    Time in seconds a spectator is allowed to idle on the server, after the specified time has elapsed, the spectator is booted from the server with an appropriate message.
    g_alternateSort sort type [0,1,2]
    default: 0
    Sort players on scoreboard using different schemes, 0 is default score sorting, 1 sorts players by their kill/death ratio ((kills/kills+deaths)*100), 2 sorts players by kills per minute.
    g_radarFix off|on [0,1]
    default: 0
    Always broadcast teammate entities to players in team gametypes, fixes the problem with the radar not always showing closeby teammates and not seeing teammate icons through walls.
    g_coloredTeamplayNames off|on [0,1]
    default: 0
    Enable colored characters in names for teamplay gametypes
    g_teamTokensOnly off|on [0,1]
    default: 0
    Only tokenize say_team messages (prevent global say abuse)
    g_voiceTalkingGhosts off|on [0,1]
    default: 0
    Dead players and spectators will be able to talk to live players. Good for servers that host serious players. Note: this is a Raven CVAR that I enabled, in the Raven configs it is enabled by default, so you will have to turn it off if you use the same config as the default game.
    sv_adminfile filename
    default: osp_admins.cfg
    Specifies the file used to store admin GUIDs
    sv_extracommands filename
    default: osp_extracommands.cfg
    File that specifies a carriage-return separated list of commands accessible with the /adm commands
    sv_refereePassword password
    disable: none
    default: none
    Password clients can use to become a referee (/ref [password])
    sv_nolagGlassBreaks off|on [0,1]
    default: 0
    Prevent glass break events from lagging clients by only sending the first one when breaking glass occurs in groups (i.e.: glass entrances on mp_raven)
    sv_messageFiltering off|on [0,1,2]
    default: 0
    Load a list of "bad" words from osp_messagefilter.cfg(max size 2k) in your OSP directory and prevents people from using them in messages on the server. Setting it to 1 will replace the "bad" words with asterisks '*', setting it to 2 will prevent the whole message from printing if it contains "bad" words.
    sv_enableAdmins off|on [0,1]
    default: 1
    Enables or disable admins, if you run a match server and you play a team wary of you cheating with admin powers, you can turn off admins completely. Needs a map_restart to take effect.
    sv_ospClient off|on [0,1]
    default: 1

    Enables or disables support for the client side of OSP (certain server behaviors can be turned off to allow the regular Sof2 client to function properly with the OSP server.

    Note: in order to run a serverside OSP server, you must delete all *.pk3 files from your server's /sof2/osp directory.

    match_swap off|on [0,1]
    default: 0
    Swap teams at end of match, during intermission
    match_shuffle off|on [0,1]
    default: 0
    Shuffle teams at end of match, during intermission
    Note: match_swap takes precedence over match_shuffle
    match_fastRestart off|on [0,1]
    default: 0
    Quickly restart the map without reloading once in intermission. This setting will prevent mapcycling if enabled.
    match_minplayers minimum [0,x[
    default: 4
    Minimum number of players needed to start a match in ready-up mode
    match_readypercent percentage [0-100]
    default: 100
    Percentage of ready players needed to start a game in ready-up mode
    match_timeoutcount amount [0,x[
    default: 3
    Maximum amount of timeouts for each team per map
    match_timeoutlength time in seconds [0,x[
    default: 180
    Duration of timeouts in seconds
    Note: setting this to 0 means timeouts will be unlimitted
    server_motd0
    server_motd1
    server_motd2
    server_motd3
    server_motd4
    server_motd5
    text Your server's 6 lines message of the day
    Note: each line can hold a maximum of 50 characters including color codes
    team_maxplayers amount [0,x[
    disable: 0
    default: 0
    Maximum number of players per team
    team_controls off/on [0,1]
    default: 0
    Enable the team commands, usually disabled on public servers
    team_redName
    team_blueName
    text
    default: "Red team"|"Blue team"
    The name of the team
    Note: only sticks through one map rotation, will reset back to defaults
    vote_limit limit [0,x[
    disable: 0
    default: 3
    Maximum number of votes someone can call in a map
    Note: successful votes are not counted, only failed or canceled votes
    vote_percent percentage [0-100]
    default: 50
    Percentage of 'yes' votes needed for a vote to pass
    g_alternateMap setting [0,10]
    default: 0
    Load the alternate map data from the /osp/data directory specified by the value of g_alternateMap.
    g_awards

    setting [0,1,2]
    default: 1 (all)
    disable bad awards: 2

    End of game award ceremonies.
    osp_friendlyFireMultiplier

    default: 1.0

    When friendly fire is enabled the damage dealt by teamates will be multiplied by this value. For example a setting of 0.5 would halve all damage dealt by friendly fire.
    osp_modversion

    setting [0,1,2]
    default: 0 (regular OSP)

    Set the mod version used, previously with separate server files now all in one.
    0 is the default and is regular OSP with regular Sof2.
    1 is the same as OSP++.
    2 is Sof2++, a mode based on OSP using new weapons and tweaked accessories.

    osp_femaleVIP

    setting [0,1]
    default: 0

    In the new gametype VIP, the VIP can be a female model. Set this to 1 to enable.
    osp_defaultJailTime

    default: 60

    The default time used when no time is specified when a admin puts a player in jail.
    osp_realisticMode setting [0,1]
    default: 0
    Truly real world damage, rules are: - grenades do double damage - bullets all do 95 damage when hitting arms,hands,feet,lower legs - bullets do 100 damage when hitting tighs,waist,chest,neck,head - bullets hitting the armor covered area of the body (chest,waist,tighs) take a random amount of armor away from 0 to 99 and the rest is taken from health (M60 and MSG rifle are unnaffected by armor)
    osp_realisticRespawnInt setting [0,*
    default: 8
    Respawn wait time cvar for realistic mode
    osp_enemyKillReport setting [0,1]
    default: 1, always disabled in g_doWarmup 2
    Tell players the remaining health/armor of the enemy who just killed them


    Standard Sof2 server CVARs with new options
    Name Values Effect
    g_doWarmup setting [0,1,2]
    disable: 0
    default: 0
    Added g_doWarmup 2, which is ready-up mode, where users need to do /ready in console in order to start the match.
    g_friendlyFire setting [0,1,2]
    disable: 0
    default: 0
    Added g_friendlyFire to 2, which enables friendly fire during all gameplay including warmup.