User Tools

Site Tools


TNS Server Settings

This is the list of settings for the TNS server. It was put together in a hurry, it would probably be better with a bit more additional information.


set rcon_password <pwd>

NOTE: The amount of commands for limited rcon is too big to input at the console. AFAIK you need to manually include each command in limited rcon while setting up the server in the server wizard. ~KD

Output of rcon rcon_cmds_1 should be:

addtempban defaultdestchance echo givemega item_respawn_time ka_off ka_on kick lowerdestchance map max1dest max2dests max3dests maxplayers pain_off pain_on puke rd_off rd_on rds_randmode say sr_off sr_on sv_fastmonsters sv_joinlimit sv_powerful_monsters takemega tr_off tr_on tr_reset

set rcon_pwd_1 <pwd>

Passwords are available in the Super Secret TNS Admin Information Vault.

set sv_acs_world_exit 1
set rds_armadnotif 1
set santa_enabled 1
set santa_macho 1
set sv_teamautoaim 1
set tns_bot 1

It is also preferred to disable voting for the duration of the session, and to have voice chat on (though the extent of its usage is debatable).

Heapsize was set to 32 MB on both the L@P and the Ducks servers to avoid any unpleasant surprises.

Per Session

For the first map of the maplist.

add_cvaroverride <e#m#/map##> sv_resetinventory 1

For each map which requires it.

add_cvaroverride <map##> sv_nofreelook 1

Traditionally, the hostname should follow this pattern (example hostname from TNS #192):
[L@P] » ZD Thursday Night Survival #192 - Slaughterfest 2012 (Part 1) «

Traditional MOTD follows pattern similar to this (example for TNS #261):
You're playing: [L@P] » ZD Thursday Night Survival #261 - Urania (Part 1) «<br><br>Be patient and careful.<br>Share ammo and health with others.

For WADs targetting Boom or PrBoom+ compatlevel 9, the following should be done to avoid issues (though disabling sv_olddropoff on a per-map basis using CVAR overrides is preferred if a complete list of maps which need it is already known):

set compat_shorttex 0
set sv_olddropoff 0

Information for compat_shorttex can be found in the ZDoom Wiki. sv_olddropoff should be kept enabled for vanilla-compatible WADs, so should compat_shorttex.

The rest as per each TNS session forums post.

Many settings vary depending on what WADs are used. See TNS WAD Preparation. If the standard procedure is followed, the resulting settings for the session should be extracted in a readme file which can be found in the TNS WAD Repository in the respective tns# directory.

Optional wads

To add an optional wad you need to both add it to the main wadlist under “WADs” and specify it as optional under “Opt. WADs”.


Various aliases which simplify setting up rotations, and changing certain settings; and allow themselves to be to be assigned as new “commands” to limited RCONs without exposing the general commands like set.

alias pain_on "sv_fastmonsters 1; sv_powerful_monsters 1"
alias pain_off "sv_fastmonsters 0; sv_powerful_monsters 0"

alias tr_set1 "set salty_giveAllWeaponsButBfg 1; set salty_giveAllAmmo 100; set salty_giveitem1type 132; set salty_giveitem2type 144; set regen_maxhp 300; set regen_pause 700; set regen_freq 1; set amrgn_doomEnabled 1"
alias tr_set2 "set amrgn_bulletsdelay 1; set amrgn_shellsdelay 5; set amrgn_rocketsdelay 10; set amrgn_cellsdelay 2"
alias tr_reset "tr_set1; tr_set2"
alias tr_on "tr_set1; tr_set2; set rds_randmode 1; set salty_enabled 1; set regen_enabled 1; set amrgn_enabled 1"
alias tr_off "set rds_randmode 0; set salty_enabled 0; set regen_enabled 0; set amrgn_enabled 0"

alias rd_on "set chdmg_mode 3; set chdmg_randomHeal -1; set chdmg_maxDmgFactor 200; set chdmg_enabled 1"
alias rd_off "set chdmg_enabled 0"

alias sr_on "set rds_randmode 2"
alias sr_off "set rds_randmode 0"

// With kill 'em all, badass cyberdemons need to be prevented from spawning, because they can mess up the engine's monster count when they spawn pain souls (as of ZDaemon 1.10b07, and tns-dehacked-20130918).
alias ka_on "set rds_killemall 1; set sv_noexit 1; set sv_acs_world_exit 1; set rds_randexclude32 1"
alias ka_off "set rds_killemall 0; set sv_noexit 0; set rds_randexclude32 0"

alias givemega "set salty_enabled 1; set salty_giveItem8Type 132"
alias takemega "unset salty_giveItem8Type"

alias lowerdestchance "set randm_chance30 1"
alias max3dests "set randm_cap30 3"
alias max2dests "set randm_cap30 2"
alias max1dest "set randm_cap30 1"
alias defaultdestchance "set randm_chance30 0; set randm_cap30 0"

set rcon_pwd_9 "q"
set rcon_cmds_9 "showjoinlimit"
alias showjoinlimit "echo $sv_joinlimit"


These mnemonics can be easier to remember than actor property numbers; they can be used with rhinolib's HUEHE_S_SET_PROPERTY (670) and HUEHE_S_GET_PROPERTY (671) scripts like this:

puke 670 20001 $APROP_Friendly 1 which is equivalent to puke 670 20001 16 1

These will also work as soundlib's SOUND_S_CHANGE_FOR_THING (424) and SOUND_S_CHANGE_FOR_CLASS (425) soundType arguements.

This is what should appear in the config file:

set APROP_Health 0
set APROP_Speed 1
set APROP_Damage 2
set APROP_Alpha 3
set APROP_RenderStyle 4
set APROP_SeeSound 5
set APROP_AttackSound 6
set APROP_PainSound 7
set APROP_DeathSound 8
set APROP_ActiveSound 9
set APROP_Ambush 10
set APROP_Invulnerable 11
set APROP_JumpZ 12
set APROP_ChaseGoal 13
set APROP_Frightened 14
set APROP_Gravity 15
set APROP_Friendly 16
set APROP_SpawnHealth 17
set APROP_Dropped 18
set APROP_Notarget 19
set APROP_Species 20
set APROP_Nametag 21
set APROP_Score 22
set APROP_Notrigger 23
set APROP_DamageFactor 24
set APROP_MasterTID 25
set APROP_TargetTID 26
set APROP_TracerTID 27
set APROP_Waterlevel 28
set APROP_ScaleX 29
set APROP_ScaleY 30
set APROP_Dormant 31
set APROP_Mass 32
set APROP_Accuracy 33
set APROP_Stamina 34
set APROP_Height 35
set APROP_Radius 36
set APROP_Reactiontime 37
set APROP_MeleeRange 38
set APROP_ViewHeight 39
set APROP_AttackZOffset 40
set APROP_StencilColor 41
set APROP_Friction 42
set APROP_DamageMultiplier 43
tns/serversettings.txt · Last modified: 2019-01-09 17:14:17 (6 weeks ago) by keyboard_doomer