server.cfg (10267B)
1 /// This file aims at making it easier to setup a server without gameplay 2 /// changes. 3 /// It tries describes the network and authentification sides of server setup, 4 /// but intentionnally avoids embedding informations that one should not share. 5 /// Instead, those are defined in the file "sensible.cfg", which is executed 6 /// (aka included) here 1st. 7 /// To further help avoiding leaks, here is a list of the dangerous (to share) 8 /// variables: 9 /// serverpass 10 /// adminpass 11 /// serveraccountpass 12 /// serverauthkey 13 /// ircpass 14 /// Hopefully this should help one to automate safety checks. 15 16 exec sensible.cfg 17 18 //////////////////////////////////////////////////////////////////////////////// 19 /// general settings 20 /// Those are the traditional IP/port, number of clients allowed, network 21 /// traffic, informations publication settings, etc. 22 //////////////////////////////////////////////////////////////////////////////// 23 /// this server can bind to a specific IP and needs 2 consecutive ports. 24 /// Only 1st lower port can be set, the 2nd upper port is determined by lower+1 25 // serverip "127.0.0.1" // cmdline: -siN 26 // serverport 28801 27 /// type of server: 28 /// 1 = private (does not register with masterserver) 29 /// 2 = public 30 /// 3 = dedicated 31 // servertype 3 32 /// server description, appears on serverbrowser and scoreboard 33 // sv_serverdesc "My server" 34 /// server message of the day, will be printed on client's HUD when they connect 35 // sv_servermotd "Welcome to this blue-nebula server instance. Feel free to visit us on: * https://blue-nebula.org * https://forum.freegamedev.net/viewforum.php?f=101 * https://webchat.freenode.net/ channel: #blue-nebula" 36 /// maximum number of allowed clients 37 // sv_serverclients 16 38 /// maximum upload speed (cmdline: -suN). Upload of what, I don't know, though. 39 // serveruprate 0 40 41 42 //////////////////////////////////////////////////////////////////////////////// 43 /// public/dedicated (what's the difference?) server settings 44 /// for public servers, a connection to a master can be used. The master will 45 /// publish the server's settings to clients, and handle global players 46 /// authentifications. 47 /// It is apparently possible to have the "local" server authentied to the 48 /// master server, but the benefits of doing so are unknown of me at the time of 49 /// this writing. 50 //////////////////////////////////////////////////////////////////////////////// 51 /// host server tries to use as master by default; cmdline: -smS 52 // servermaster "play.redeclipse.net" 53 /// master server port which server *connects* to; cmdline: -saN 54 // servermasterport 28800 55 /// Server Auth Handling 56 ///determines if the server should attempt to auth 57 // serverauthconnect 1 58 ///server's auth handle 59 // serveraccountname handle 60 61 62 //////////////////////////////////////////////////////////////////////////////// 63 /// User management. 64 /// allows to register IP to various lists, to give rights to some (or all) 65 /// users, etc. 66 /// There are two ways of setting local privileged access: 67 /// [1] set a server password, access granted with in game command "/setmaster" 68 /// [2] specific players identified by master and give them some local rights. 69 /////////////////////////////////////////////////////////////////////////////// 70 /// includes (exec) a file that defines a list of users authentified by master 71 /// and gives them some roles. 72 /// Multiple lists can of course be provided, for example if you host servers 73 /// several groups of people. 74 exec localop.cfg 75 /// those files include lists of IPs that are automatically added to some lists 76 /// by the server. 77 /// Read them for more informations. 78 /// As for localop.cfg, they can be split. 79 /// There were no real example usage in original servinit.cfg, and I have no 80 /// idea if other than single IPv4 list are supported (ranges, IPv6...) 81 exec ban.cfg 82 exec allow.cfg 83 exec mute.cfg 84 exec limit.cfg 85 86 /// determines server openness for public use 87 /// This allows players to acquire new privileges on server 88 /// 0 = allow "setpriv 1" and locked/private 89 /// 1 = allow "setpriv 1" but no privileged mode, no locked/private 90 /// 2 = allow "setpriv 1" but disallows private privileged mode 91 /// (for public coop-editing), 92 /// 3 = privilege only by moderator or above 93 // sv_serveropen 3 94 95 /// determines if authorities claim status by default 96 // sv_autoadmin 0 97 98 /// determines privileges (who may...) 99 /// Value description: 100 /// 0 = off (everyone?) 101 /// 1 = player 102 /// 2 = supporter 103 /// 3 = moderator 104 /// 4 = operator 105 /// 5 = administrator 106 /// 6 = developer 107 /// 7 = founder 108 /// 8 = nobody 109 /// 110 /// list of privileges: 111 /// sv_demolock allows demo recording 112 /// sv_editlock allows spawn+edit when editing if mastermode = 2 (lock) 113 /// sv_spawneditlock allows spawn when editing if mastermode = 2 (lock) 114 /// sv_speclock allows force spectate other players 115 /// sv_kicklock allows kicking other players 116 /// sv_allowlock allows allowing other players 117 /// sv_banlock allows banning other players 118 /// sv_mutelock allows muting other players 119 /// sv_limitlock allows limiting other players 120 /// sv_vetolock allows forcing votes 121 /// sv_floodlock allows flooding 122 /// sv_crclock allows to join despite incorrect CRC integrity check 123 /// sv_modelock allows to bypass locked modes (modelocktype) 124 /// sv_mapslock allows to bypass locked maps (mapslocktype) 125 /// sv_varslock allows to change variables 126 /// sv_votelock allows to vote? (votelocktype) 127 /// sv_gamespeedlock allows to change game speed (also limited by varslock) 128 // sv_demolock 4 129 // sv_editlock 4 130 // sv_spawneditlock 3 131 // sv_speclock 3 132 // sv_kicklock 3 133 // sv_allowlock 4 134 // sv_banlock 4 135 // sv_mutelock 3 136 // sv_limitlock 3 137 // sv_vetolock 4 138 // sv_floodlock 4 139 // sv_crclock 8 140 // sv_modelock 4 141 // sv_mapslock 4 142 // sv_varslock 4 143 // sv_votelock 4 144 // sv_gamespeedlock 5 145 146 //////////////////////////////////////////////////////////////////////////////// 147 /// misc 148 //////////////////////////////////////////////////////////////////////////////// 149 /// 0 pauses the game, 1 unpauses it. Server automatically unpauses the game at 150 /// start, they say, and I have no idea who can set this variable. 151 /// Keeping it here allows to remember/learn about it though. 152 // sv_gamepaused 0 153 154 /// when should some lists or other things be reset: 155 /// 0 = off, 156 /// 1 = just when empty, 157 /// 2 = when matches end 158 /// sv_resetmmonend: privilege mode changes 159 /// sv_resetallowsonend: allow list 160 /// sv_resetbansonend: ban list 161 /// sv_resetmutesonend: mute list 162 /// sv_resetlimitsonend: limite list 163 /// sv_resetvarsonend: game variables 164 // sv_resetmmonend 2 165 // sv_resetallowsonend 1 166 // sv_resetbansonend 1 167 // sv_resetmutesonend 1 168 // sv_resetlimitsonend 1 169 // sv_resetvarsonend 1 170 171 172 //////////////////////////////////////////////////////////////////////////////// 173 /// auto-mute settings 174 //////////////////////////////////////////////////////////////////////////////// 175 /// maximum warning before mute 176 // sv_floodmute 3 177 /// time span to check for floody messages 178 // sv_floodtime 10000 179 /// number of lines in floodtime span before too many 180 // sv_floodlines 5 181 182 183 //////////////////////////////////////////////////////////////////////////////// 184 /// vote settings 185 /// Actually, game threshold is 50%, I have no clue if it can be changed. 186 /// The vote system implemented is the traditional "this or nothing" one. Pretty 187 /// inefficient for a game with that much mutators/modes, but condorcet would 188 /// probably confuse people anyway, and hard to implement. 189 //////////////////////////////////////////////////////////////////////////////// 190 /// time in milliseconds before a player may cast another vote (to avoid flooding) 191 // sv_votewait 2500 192 /// time in milliseconds intermission voting lasts 193 // sv_votelimit 45000 194 /// how to decide if players agree on suggestions: 195 /// 0 = votes don't pass mid-match or need to wait entire time in inter-match 196 /// 1 = passes if votethreshold is met 197 /// 2 = passes if unanimous 198 /// 3 = undocumented (only for sv_voteinterm) 199 // sv_votestyle 2 200 // sv_voteinterm 2 201 /// filters out spectators that have not voted from threshold 202 // sv_votefilter 1 203 /// vote threshold when style = 1 204 // sv_votethreshold 0.5 205 206 207 //////////////////////////////////////////////////////////////////////////////// 208 /// demo recording 209 /// games can be recorded for further examination. They can be kept in memory 210 /// or saved on disk, manually or automatically. 211 /// The server implements a rotation system, but I think one should better rely 212 /// on dedicated tools instead (e.g. logrotate) on real servers. 213 //////////////////////////////////////////////////////////////////////////////// 214 /// demo recording politics (should record, should save, max size, etc) 215 /// should demos be automatically recorded each match? 0 is no, 1 is yes. 216 // sv_demoautorec 1 217 /// determines if the server automatically saves demos to disk 218 // sv_demoautoserversave 0 219 /// maximum size of individual demo files 220 // sv_demomaxsize 16 221 222 /// rotation of on-disk demos settings. Allows to delete demos that are too old 223 /// (demoserverkeeptime) and/or when there are too many of those (democount). 224 /// and/or when there are too many of those. 225 /// maximum number of demo files 226 // sv_democount 5 227 /// if greater than 0, remove auto-recorded demos older than this many seconds 228 // sv_demoserverkeeptime 86400 229 230 231 //////////////////////////////////////////////////////////////////////////////// 232 /// IRC settings (optional) 233 //////////////////////////////////////////////////////////////////////////////// 234 /// defines the way the colour-to-irc filter works 235 /// 0 = off 236 /// 1 = convert 237 /// 2 = strip 238 // ircfilter 1 239 240 /// server connection and authentification 241 // ircaddrelay name server.irc.net 6667 nickname 242 /// set the ident field, defaults to $systemuser 243 // ircident name ident 244 /// use this only if you need to bind to a specific address, eg. multihomed 245 /// machines (I guess it's when you host multiple servers). 246 // ircbind name 127.0.0.1 247 248 /// channels and relay settings (blocks? can be specified multiple times) 249 // ircaddchan name "#channel" 250 /// should relay? -1 => no, 3 => yes? 251 // ircrelaychan name "#channel" -1 252 /// set a friendly name for the relay on this channel 253 // ircfriendlychan name "#channel" CHAN 254 255 /// and tell it to connect! 256 // ircconnect name