1 @title Doom2DF 3 08.03.2023 3 3
4 Custom configuration manual for a Doom 2D Forever dedicated server.
17 @h1 1. Server settings
18 The dedicated server uses its own configuration file, which is set up only with a text editor. It is not enough to simply change something in the main game and then copy it from its .cfg file into the server file - In the menu "My Game" not all settings for the server are displayed, and some variables from there you can not change. In this paragraph, we consider the most necessary parameters that must be prescribed.
25 sv_passwd "<password>"
26 Lock server with password.
29 The port number to be used by the server, by default it is recommended 25667. Overwritten by the parameter -port.
32 Whether to show the server in the list or not, by default it is shown.
35 Maximum number of slots for players. Recommended 14-16.
38 After how many seconds the server will start the next round. For non-cooperative servers it is recommended to set -1 (this will set the timer for 15 seconds).
41 @h2 Administration option
43 Enable rcon access to manage the server.
46 Password for rcon, specify without spaces and quotes.
49 sv_autoban_threshold <number>
50 After how many attempts to harm the server player should be banned (0 = off), the default 5.
51 sv_autoban_permanent 1/0
52 Set the permanence of the ban (0 = ban for a while), the default is 1.
54 Warn the client about penalty triggers, default is 0.
55 sv_auth_timeout <number>
56 The number of milliseconds it takes for the client to complete authentication to the server (0 = infinite) is by default 30.
57 sv_packet_timeout <number>
58 The number of milliseconds the client has to idle before kicking (0 = infinite) is 60 by default.
62 Does the server have to pierce the ports itself through miniupnpc.
63 sv_reliable_interval <number>
64 Delay between objects position sending at reliable channel. Must be greater than sv_update_interval.
65 sv_update_interval <number>
66 Delay between objects position sending at unreliable channel.
67 sv_master_interval <number>
68 After how many seconds the server has to remind the master server.
72 net_master_list <host>
73 To which master server address the data will be sent. You can specify more than one, for example mpms.doom2d.org:25665,deadsoftware.ru:25665
74 rdl_ignore_enabled 1/0
75 Enable or disable hash checking.
76 rdl_ignore_names <resource wad names>
77 The names of the resource files (from the wads folder without an extension) that should not be checked by the server for consistency.
78 rdl_hashdb_save_enabled 1/0
79 Saving hashes in the database on disk.
81 @h1 2. Game parameters
82 Game parameters are not required to be specified in the maplist, and serve rather to override the configuration file settings, so as not to change the values in it unnecessarily. To turn on you must set 1, to turn off - 0.
84 g_gamemode dm/tdm/ctf/coop
85 What mode will be set on the server.
89 The maximum number of bots that can be spawned.
91 Should bots fight monsters.
93 Should bots fight players
98 How many points are needed to end the round (0 = infinite).
100 The time limit after which the round ends (0 = infinite).
102 Number of player lives, enables Survival, LMS, TLMS gamemodes.
106 g_item_respawn_time <number>
107 How much time (in seconds) should appear items, the default is 60.
108 g_warmup_time <number>
109 Warmup time for Survival mode and its derivatives, in seconds.
114 Enable or disable the invulnerability sphere spawn.
116 Whether to leave the weapon after a player picks it up.
121 Enable or disable flag dropping in CTF mode.
123 How to throw the flag, 1 - with acceleration, 0 - under the player.
125 Enable or disable the ability to exit. For the cooperative to work properly, you must set 1.
127 Allow or disallow monsters to spawn.
132 Whether to save the statistics of the round, the default is 0. It is saved as a csv-table.
133 g_screenshot_stats 1/0
134 Whether to save a screenshot of the table at the end of the round, the default is 0.
137 @h2 Friendly-Fire options
139 Turn friendly-fire on or off.
140 g_friendly_hit_trace 1/0
141 Enable or disable the passage of hitscan (bullet) through their teammates.
142 g_friendly_hit_projectile 1/0
143 Enable or disable the passage of projectiles (missiles, BFG or plasma balls) through your teammates.
144 g_friendly_absorb_damage 1/0
145 Enable or disable the absorption of some damage when bullets or projectiles pass through teammates.
146 Note: the values of the numbers change for the cooperative (1 - off, 0 - on).
149 To control certain events on the server, there is a command event, through which you can relatively flexibly configure the behavior of the server in certain situations. The need to use the event command is directly related to proper server startup and map lists.@br
150 The command supports the following types of events:
153 Execute the given commands at the start of the next map.
155 Execute the given commands at the end of the map.
157 Perform assigned commands at the end of the round (when the points table appears).
159 Execute the given commands at the end of the megawad/campaing (after passing the last level).
161 Note: parameters may not work as expected, so it is recommended to use the examples below to ensure that aliases work.
164 After defining all the parameters, it is necessary to configure the aliases. Through them set lists of maps, switching multiple parameters simultaneously, the implementation of multiple modes on the server with the correct settings for each, etc. If you plan to keep the server on a regular basis, then it is imperative that you set a list of maps on the server. This paragraph will specify working examples that you can use in your configuration file for the server.
166 Change gamemode to DM with its inherent settings, notify the players about it, as well as set the map directly:
169 alias dm "g_gamemode dm;g_warmup_time 16;g_maxlives 0;g_dm_keys 1;g_timelimit 900;g_scorelimit 0;sv_intertime -1;centerprint 100 GAMEMODE: DM;nextmap PrikolSoft.wad MAP01;event onmapend call cmap02;bot_removeall"
172 Change gamemode to coop (with the ability to pass bullets through players)::
175 alias coop "g_gamemode coop;g_maxlives 0;g_dm_keys 0;g_timelimit 0;g_scorelimit 0;sv_intertime 30;g_friendly_hit_trace 0;centerprint 100 GAMEMODE: Cooperative;call coop01;bot_removeall"
178 Change gamemode to coop (classic):
181 alias coop "g_gamemode coop;g_maxlives 0;g_dm_keys 0;g_timelimit 0;g_scorelimit 0;sv_intertime 30;g_friendly_hit_trace 1;centerprint 100 GAMEMODE: Cooperative;call coop01;bot_removeall"
184 Change gamemode to survival:
187 alias survival "g_gamemode coop;g_warmup_time 60;g_maxlives 1;g_dm_keys 1;g_timelimit 0;g_scorelimit 0;g_friendly_hit_trace 0;g_weaponstay 1;g_friendlyfire 0;sv_intertime 30;centerprint 100 GAMEMODE: Survival;call coop01;bot_removeall"
190 By the same example, you can set and batch switching of parameters during the game, just list in the alias needed to change the parameters.
192 Set a list of maps that will be used on the server (it must be looped!):
195 alias cmap01 "event onmapstart nextmap PrikolSoft.wad MAP01; event onmapend call cmap02"
196 alias cmap02 "event onmapstart nextmap SurMP.wad MAP01; event onmapend call cmap03"
197 alias cmap03 "event onmapstart nextmap PrikolSoft.wad MAP01; event onmapend call cmap01"
200 Set up some list of megawads (it must be looped!):
204 alias wad01 "nextmap megawads/doom2d.wad MAP01"
205 alias wad02 "nextmap megawads/doom2d2.wad MAP01"
206 alias wad03 "nextmap megawads/VETERAN.wad MAP01"
207 alias wad04 "nextmap megawads/Bloodworks.wad MAP01"
209 # Set aliases for right calling megawads
210 alias coop01 "call wad01; event onwadend call coop02"
211 alias coop02 "call wad02; event onwadend call coop03"
212 alias coop03 "call wad03; event onwadend call coop04"
213 alias coop04 "call wad04; event onwadend call coop01"
216 All aliases are invoked through commands:
218 callvote call <alias>
221 For administrator with rcon.
224 At the moment, the use of custom configuration for servers, although preferable, also requires some additional commands to start the server correctly.
227 Between the aliases and the server configuration, set the following:
231 event onmapend call cmap01
234 Otherwise the server will not use the map list. In place of cmap01 you can specify what you used to name the aliases with maps.
236 @h2 Standart server (with DM or team gamemodes)
237 At the very end of the configuration, write for example:
240 map PrikolSoft.wad MAP01
243 Then we start it with the command:
246 $ Doom2DF_H -map PrikolSoft.wad:\\MAP01 -gm DM -port 25667 -exec maplist_dm.txt --log-file dfserver_dm.log
249 So the server starts up and switches the map after a while after the start, applying all the necessary parameters and running the map call alias we set at the beginning.
252 For a cooperative server, you can't prescribe any map calls at the end, otherwise it will be broken and you'll have to manually switch the map on the server.
254 The following command must be used to start it:
257 $ Doom2DF_H -map doom2d.wad:\\MAP01 -gm COOP -port 25667 -exec coop_list.txt --log-file dfserver_coop.log
260 The map you can put what you want from the beginning of the server. This will ensure that the megawads are switched correctly. Also, do not use when testing the cooperative server command endmap - it will switch you to any map in the folder, but not the next megawad map!
268 Written by Dmitry Lyashuk <lyashuk.voxx\@gmail.com>, Doom 2D: Forever Developers.