aboutsummaryrefslogtreecommitdiff
path: root/docs/hosting-a-server-with-northstar/server-settings
diff options
context:
space:
mode:
Diffstat (limited to 'docs/hosting-a-server-with-northstar/server-settings')
-rw-r--r--docs/hosting-a-server-with-northstar/server-settings/README.md10
-rw-r--r--docs/hosting-a-server-with-northstar/server-settings/convars.md34
-rw-r--r--docs/hosting-a-server-with-northstar/server-settings/file-names.md153
-rw-r--r--docs/hosting-a-server-with-northstar/server-settings/playlistvar.md60
-rw-r--r--docs/hosting-a-server-with-northstar/server-settings/startup-args.md18
5 files changed, 275 insertions, 0 deletions
diff --git a/docs/hosting-a-server-with-northstar/server-settings/README.md b/docs/hosting-a-server-with-northstar/server-settings/README.md
new file mode 100644
index 0000000..30e2b2c
--- /dev/null
+++ b/docs/hosting-a-server-with-northstar/server-settings/README.md
@@ -0,0 +1,10 @@
+#### Useful configuration files
+
+You can edit these files to change settings for your dedicated and listening server:
+
+* `ns_startup_args_dedi.txt`\
+ contains the [startup arguments](./startup-args.md), [ConVars](./convars.md) and [playlist vars](./playlistvar.md)
+* `R2Northstar\mods\Northstar.CustomServers\mod.json`\
+ contains [ConVars](./convars.md) default values
+* `R2Northstar\mods\Northstar.CustomServers\mod\cfg\autoexec_ns_server.cfg`\
+ contains [ConVars](./convars.md) and overrides
diff --git a/docs/hosting-a-server-with-northstar/server-settings/convars.md b/docs/hosting-a-server-with-northstar/server-settings/convars.md
new file mode 100644
index 0000000..1b688dd
--- /dev/null
+++ b/docs/hosting-a-server-with-northstar/server-settings/convars.md
@@ -0,0 +1,34 @@
+## Convars
+
+Convars are located inside the `R2Northstar\mods\Northstar.CustomServers\mod\cfg\autoexec_ns_server.cfg` file.
+
+They allow the server admin to set server's properties like the name, port, and description.
+
+| Name | Description | Default Value | Accepted Values |
+| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | -------------------------------------------------- |
+| `ns_server_name` | Your server's name on the server browser | `"Unnamed Northstar Server"` | `string` |
+| `ns_server_desc` | Your server's description on the server browser | `"Default server description"` | `string` |
+| `ns_server_password` | The password required to join your server, can be bypassed if clients directly connect and you are using insecure auth | `""` | `string` |
+| `ns_report_server_to_masterserver` | Whether your server should report itself to the masterserver, for use in auth and the serverbrowser | `1` | `0-1` |
+| `ns_report_sp_server_to_masterserver` | Whether your server should report itself to the masterserver if started on a singleplayer map, for use in auth and the serverbrowser | `0` | `0-1` |
+| `ns_auth_allow_insecure` | Allows clients to join your server without authenticating with the masterserver, currently required to allow clients to connect directly to your IP, rather than through the server browser | `0` | `0-1` |
+| `ns_erase_auth_info` | Whether your server should erase authentication information after it is used, this is useful for development but should normally be kept at 1 | `1` | `0-1` |
+| `ns_player_auth_port` | Northstar v1.12 and older only. The port used for the server's local authentication server, this is the TCP port we forwarded earlier | `8081` | `1-65535` |
+| `everything_unlocked` | Whether all items, weapons, etc should be unlocked on the server | `1` | `0-1` |
+| `ns_should_return_to_lobby` | Whether the server should return to private match lobby after completing a game, if 0, this will go to the next map/mode in the playlist | `1` | `0-1` |
+| `ns_private_match_only_host_can_change_settings` | If 0 Players can change all match settings. If 1 Players can only change map and gamemode. If 2 Players can change nothing | `0` | `0-2` |
+| `ns_private_match_countdown_length` | Length is seconds before the match is started after the start button in the lobby | `15` | `int` |
+| `ns_private_match_only_host_can_start` | If 1 only the host can press the *start match* button, if 0 anyone can press the *start match* button | `0` | `0-1` |
+| `ns_private_match_last_mode` | Forces the lobby to a specific Gamemode | `tdm` | Any [Gamemode](./#gamemodes) |
+| `ns_private_match_last_map` | Forces the lobby to a specific map | `mp_forwardbase_kodai` | Any [Map](./#maps) |
+| `ns_disallowed_weapons` | Blacklists weapons | | List of [Weapons](./#weapons) separated by a comma |
+| `ns_allow_kill_commands` | Enables the use of `kill` in the console | `0` | `0-1` |
+| `ns_disallowed_weapon_primary_replacement` | Replaces blacklisted weapons by one weapon | | a [Weapon](./#weapons) |
+| `ns_should_log_unknown_clientcommands` | Whether unknown clientcommands should be printed in the console, worth disabling if they get on your nerves | `1` | `0-1` |
+| `net_chan_limit_mode` | If 0, don't limit the netchannel processing time individual clients are allowed. If 1, kick clients that go over the limit. If 2, log clients that go over the limit in console | `2` | `0-2` |
+| `net_chan_limit_msec_per_sec` | The number of milliseconds of server netchan processing time clients can use per second before triggering the response set in net\_chan\_limit\_mode | `30` | `int` |
+| `base_tickinterval_mp` | The delay between each tick ran on the server, your tickrate will be 1 divided by this value | `0.016666667` | `float` |
+| `sv_updaterate_mp` | The maximum number of times per second your server will send information to connected players, if a player's cl\_updaterate\_mp value is lower than this, their rate will be limited to it | `20` | `int` |
+| `sv_max_snapshots_multiplayer` | The number of snapshots stored locally for use in replays, this should be set to sv\_updaterate\_mp \* 15 | `300` | `int` |
+| `host_skip_client_dll_crc` | Whether the server should allow clients with modified client.dll files to connect, these are used for visor colour edit mods | `1` | `0-1` |
+| `dedi_sendPrintsToClient` | Whether the dedicated server should forward all logs to connected clients, which is useful for testing/debugging on a dedicated server. If `-1`, send no prints to clients. If `0`, send prints to the first client connected only. If `1`, send prints to all clients | `-1` | `-1-1` |
diff --git a/docs/hosting-a-server-with-northstar/server-settings/file-names.md b/docs/hosting-a-server-with-northstar/server-settings/file-names.md
new file mode 100644
index 0000000..92807c3
--- /dev/null
+++ b/docs/hosting-a-server-with-northstar/server-settings/file-names.md
@@ -0,0 +1,153 @@
+### Vanilla
+
+| Playlist | Title |
+| --- | --- |
+| private_match | Private Match |
+| aitdm | Attrition |
+| at | Bounty Hunt |
+| coliseum | Coliseum |
+| cp | Amped Hardpoint |
+| ctf | Capture the Flag |
+| ~~fd_easy~~ | Frontier Defense (Easy) |
+| ~~fd_hard~~ | Frontier Defense (Hard) |
+| ~~fd_insane~~ | Frontier Defense (Insane) |
+| ~~fd_master~~ | Frontier Defense (Master) |
+| ~~fd_normal~~ | Frontier Defense (Regular) |
+| fw | Frontier War |
+| lts | Last Titan Standing |
+| mfd | Marked For Death |
+| ps | Pilots vs. Pilots |
+| solo | Campaign |
+| tdm | Skirmish |
+| ttdm | Titan Brawl |
+
+Note an exception to the rule of playlist and gamemode names being the same. With Live Fire, startup arguments need to be different for `+setplaylist` and `+mp_gamemode` for a server to run Live Fire.
+| Playlist | Gamemode | Title |
+| --- | --- | --- |
+| lf | speedball | Live Fire |
+
+### Vanilla (Featured)
+
+| Playlist | Title |
+| --- | --- |
+| alts | Aegis Last Titan Standing |
+| attdm | Aegis Titan Brawl |
+| ffa | Free For All |
+| fra | Free Agents |
+| holopilot_lf | The Great Bamboozle |
+| rocket_lf | Rocket Arena |
+| turbo_lts | Turbo Last Titan Standing |
+| turbo_ttdm | Turbo Titan Brawl |
+
+### Northstar.Custom
+
+| Playlist | Title |
+| --- | --- |
+| chamber | One in the Chamber |
+| ctf_comp | Competitive CTF |
+| fastball | Fastball |
+| gg | Gun Game |
+| hidden | The Hidden |
+| hs | Hide and Seek |
+| inf | Infection |
+| kr | Amped Killrace |
+| sns | Sticks and Stones |
+| tffa | Titan FFA |
+| tt | Titan Tag |
+
+### Northstar.Coop
+
+| Playlist | Title |
+| --- | --- |
+| sp_coop | Singleplayer Coop |
+
+## Weapons
+
+Weapon Code|Weapon name
+-|-
+mp_weapon_car|CAR
+mp_weapon_alternator_smg|Alternator
+mp_weapon_hemlok_smg|Volt
+mp_weapon_r97|R-97
+mp_weapon_hemlok|Hemlock rifle
+mp_weapon_vinson|Flatline
+mp_weapon_g2|G2
+mp_weapon_rspn101|R-201
+mp_weapon_rspn101_og|R-101
+mp_weapon_esaw|Devotion
+mp_weapon_lstar|L-STAR
+mp_weapon_lmg|Spitfire
+mp_weapon_shotgun|EVA-8 Auto
+mp_weapon_mastiff|Mastiff
+mp_weapon_dmr|DMR
+mp_weapon_sniper|Kraber
+mp_weapon_doubletake|Double Take
+mp_weapon_pulse_lmg|Cold War
+mp_weapon_smr|Sidewinder SMR
+mp_weapon_softball|Softball
+mp_weapon_epg|EPG-1
+mp_weapon_shotgun_pistol|Mozambique
+mp_weapon_wingman_n|Wingman Elite
+mp_weapon_autopistol|RE-45 Auto
+mp_weapon_semipistol|P2016
+mp_weapon_wingman|Wingman
+mp_weapon_mgl|MGL
+mp_weapon_arc_launcher|Thunderbolt
+mp_weapon_rocket_launcher|Archer
+mp_weapon_defender|Charge Rifle
+
+## Maps
+
+Maps can be set on autorotation using [`ns_should_return_to_lobby 0`](./#Convars-returntolobby)
+
+First map of autorotation can be set using [`ns_private_match_last_map`](./#Convars-lastmap)
+
+A way to blacklist maps with autorotation does not exist.
+
+### Vanilla (mp)
+
+| Map | Title |
+| --- | --- |
+| mp_angel_city | Angel City |
+| mp_black_water_canal | Black Water Canal |
+| mp_box | Box |
+| mp_coliseum | Coliseum |
+| mp_coliseum_column | Pillars |
+| mp_colony02 | Colony |
+| mp_complex3 | Complex |
+| mp_crashsite3 | Crash Site |
+| mp_drydock | Drydock |
+| mp_eden | Eden |
+| mp_forwardbase_kodai | Forwardbase Kodai |
+| mp_glitch | Glitch |
+| mp_grave | Boomtown |
+| mp_homestead | Homestead |
+| mp_lf_deck | Deck |
+| mp_lf_meadow | Meadow |
+| mp_lf_stacks | Stacks |
+| mp_lf_township | Township |
+| mp_lf_traffic | Traffic |
+| mp_lf_uma | UMA |
+| mp_lobby | Lobby |
+| mp_relic02 | Relic |
+| mp_rise | Rise |
+| mp_thaw | Exoplanet |
+| mp_wargames | War Games |
+
+### Vanilla (sp)
+
+| Map | Title |
+| --- | --- |
+| sp_training | The Pilot's Gauntlet |
+| sp_crashsite | BT-7274 |
+| sp_sewers1 | Blood and Rust |
+| sp_boomtown_start | Into the Abyss - Part 1 |
+| sp_boomtown | Into the Abyss - Part 2 |
+| sp_boomtown_end | Into the Abyss - Part 2 |
+| sp_hub_timeshift | Effect and Cause - Part 1 or 3 |
+| sp_timeshift_spoke02 | Effect and Cause - Part 2 |
+| sp_beacon | The Beacon - Part 1 or 3 |
+| sp_beacon_spoke0 | The Beacon - Part 2 |
+| sp_tday | Trial by Fire |
+| sp_s2s | The Ark |
+| sp_skyway_v1 | The Fold Weapon |
diff --git a/docs/hosting-a-server-with-northstar/server-settings/playlistvar.md b/docs/hosting-a-server-with-northstar/server-settings/playlistvar.md
new file mode 100644
index 0000000..8d19ad9
--- /dev/null
+++ b/docs/hosting-a-server-with-northstar/server-settings/playlistvar.md
@@ -0,0 +1,60 @@
+### Playlist overrides
+
+Playlist overrides determines the behaviour of the server. PlaylistOverrides can be added using the `+setplaylistvaroverrides` argument in the `ns_startup_args_dedi.txt` file.
+
+The list of playlist overrides needs to be quoted and separated by spaces.\
+Example: `+setplaylistvaroverrides "run_epilogue 0 featured_mode_amped_tacticals 1"`
+
+| PlaylistOverrides | Accepted Values | Default Value | Description |
+| -------------------------------------------- | --------------- | ------------- | ---------------------------------------------------------------------------------------------- |
+| `max_players` | `int` | | Needs to be in combination with the [`-maxplayersplaylist`](./#Startup\_flags-maxplrplst) flag |
+| `custom_air_accel_pilot` | | | |
+| `pilot_health_multiplier` | | | |
+| `run_epilogue` | `0-1` | `1` | Enables escape dropship |
+| `respawn_delay` | | | Delay before respawn |
+| `boosts_enabled` | `0-1` | `0` | Disable boosts. Doesn't disable Titanmeter. Note that unlike the name suggests `1` disables boosts |
+| `earn_meter_pilot_overdrive` | `0-1` | | |
+| `earn_meter_pilot_multiplier` | | | |
+| `earn_meter_titan_multiplier` | | | |
+| `aegis_upgrades` | `0-1` | `0` | Enable titan aegis upgrades |
+| `infinite_doomed_state` | `0-1` | | |
+| `titan_shield_regen` | `0-1` | `0` | Enable regenerating titan shields |
+| `scorelimit` | | | |
+| `roundscorelimit` | | | |
+| `timelimit` | | | |
+| `oob_timer_enabled` | `0-1` | | Out of bounds timer enable |
+| `roundtimelimit` | | | |
+| `classic_rodeo` | `0-1` | | |
+| `classic_mp` | `0-1` | `1` | Enables intro dropship |
+| `fp_embark_enabled` | | | First person embark and terminations |
+| `promode_enable` | `0-1` | `0` | |
+| `riff_floorislava` | `0-1` | `0` | Covers the whole map with deadly electric smoke |
+| `featured_mode_all_holopilot` | `0-1` | `0` | |
+| `featured_mode_all_grapple` | `0-1` | `0` | |
+| `featured_mode_all_phase` | `0-1` | `0` | |
+| `featured_mode_all_ticks` | `0-1` | `0` | |
+| `featured_mode_tactikill` | `0-1` | `0` | |
+| `featured_mode_amped_tacticals` | `0-1` | `0` | |
+| `featured_mode_rocket_arena` | `0-1` | `0` | |
+| `featured_mode_shotguns_snipers` | `0-1` | `0` | |
+| `iron_rules` | `0-1` | `0` | Disables ejection and disembark |
+| `riff_player_bleedout` | | | |
+| `player_bleedout_forceHolster` | | | |
+| `player_bleedout_forceDeathOnTeamBleedout` | | | |
+| `player_bleedout_bleedoutTime` | | | |
+| `player_bleedout_firstAidTime` | | | |
+| `player_bleedout_firstAidTimeSelf` | | | |
+| `player_bleedout_firstAidHealPercent` | | | |
+| `player_bleedout_aiBleedingPlayerMissChance` | | | |
+
+### Sticks and Stones playlist overrides
+
+| PlaylistOverrides for SNS | Accepted Values | Default Value | Description |
+| -------------------------------------------- | --------------- | ------------- | ---------------------------------------------------------------------------------------------- |
+| sns_softball_enabled | 0-1 | 0 | Enables Softball usage |
+| sns_softball_kill_value | int | 10 | |
+| sns_wme_kill_value | int | 10 | |
+| sns_offhand_kill_value | int | 10 | |
+| sns_reset_kill_value | int | 5 | |
+| sns_melee_kill_value | int | 5 | |
+| sns_reset_pulse_blade_cooldown_on_pulse_blade_kill | 0-1 | 1 | Enables getting Pulse Blade back after a Pulse Blade kill |
diff --git a/docs/hosting-a-server-with-northstar/server-settings/startup-args.md b/docs/hosting-a-server-with-northstar/server-settings/startup-args.md
new file mode 100644
index 0000000..19b2951
--- /dev/null
+++ b/docs/hosting-a-server-with-northstar/server-settings/startup-args.md
@@ -0,0 +1,18 @@
+## Startup Arguments
+
+Startup arguments can be added in the `ns_startup_args_dedi.txt` file.\
+Example: `+setplaylist private_match +mp_gamemode ps`
+
+| Arguments | Accepted Values | Description |
+| -------------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------------- |
+| `+setplaylist` | see [Gamemodes](./#gamemodes) (Should be the same as `mp_gamemode` unless you want a private match) | Set the server type (If it is not `private_match`, make sure you have also included `+map` and NOT `mp_lobby` or else you can't search your server in the game) |
+| `+setplaylistvaroverrides` | see [PlaylistOverrides](./#playlist-overrides) | Edits the behaviour of the server |
+| `-port` | int beteween `1-65535` | Determines which UDP port the server will listen to |
+| `+mp_gamemode` | see [Gamemodes](./#gamemodes) | Forces the gamemode of the server |
+| `+map` | see [Maps](./#maps) (`mp_lobby` is the default if not included) | Forces the map of the server at the first start |
+
+| Flags | Description |
+| --------------------- | ------------------------------------------------------------------------------ |
+| `-maxplayersplaylist` | Allows [PlaylistOverrides](./#playlist-overrides) to override max player count |
+| `-enablechathooks` | Allows send the commands using in-game chat |
+| `-allowdupeaccounts` | Allows the same account joining multiple times |