diff --git a/l4d2web/l4d2web/static/data/srccfg-vocab.json b/l4d2web/l4d2web/static/data/srccfg-vocab.json new file mode 100644 index 0000000..bb6a4ac --- /dev/null +++ b/l4d2web/l4d2web/static/data/srccfg-vocab.json @@ -0,0 +1,45 @@ +{ + "_comment": "Curated L4D2 cvars + commands for editor autocomplete. Regenerate by running `cvarlist` and `cmdlist` against a freshly-started L4D2 dedicated server with the project's common SourceMod plugins loaded, then hand-trimming engine internals nobody touches. Descriptions come from the trailing help text where present.", + "cvars": [ + {"name": "sv_cheats", "desc": "Allow cheat cvars (0/1) — disables VAC"}, + {"name": "sv_pure", "desc": "Pure-server enforcement (0=off, 1=loose, 2=strict)"}, + {"name": "sv_consistency", "desc": "Force consistency on every client file (0/1)"}, + {"name": "sv_alltalk", "desc": "Cross-team voice chat (0/1)"}, + {"name": "sv_lan", "desc": "LAN-only server (0=internet, 1=LAN)"}, + {"name": "sv_voiceenable", "desc": "Enable voice chat (0/1)"}, + {"name": "sv_password", "desc": "Server join password (empty for open)"}, + {"name": "sv_logflush", "desc": "Flush log file after every line (0/1)"}, + {"name": "sv_minrate", "desc": "Minimum client bandwidth (bytes/sec)"}, + {"name": "sv_maxrate", "desc": "Maximum client bandwidth (bytes/sec)"}, + {"name": "sv_mincmdrate", "desc": "Minimum client command rate"}, + {"name": "sv_maxcmdrate", "desc": "Maximum client command rate"}, + {"name": "sv_minupdaterate", "desc": "Minimum server update rate"}, + {"name": "sv_maxupdaterate", "desc": "Maximum server update rate"}, + {"name": "sv_region", "desc": "Server browser region code"}, + {"name": "sv_steamgroup", "desc": "Steam group ID for restricted servers"}, + {"name": "sv_tags", "desc": "Comma-separated tags for the server browser"}, + {"name": "hostname", "desc": "Server name shown in the browser"}, + {"name": "rcon_password", "desc": "Remote-console admin password"}, + {"name": "mp_gamemode", "desc": "Game mode (coop, versus, survival, scavenge, realism)"}, + {"name": "mp_roundtime", "desc": "Round time limit (minutes)"}, + {"name": "z_difficulty", "desc": "AI director difficulty (Easy/Normal/Hard/Impossible)"}, + {"name": "director_no_specials", "desc": "Disable special-infected spawning (0/1)"}, + {"name": "director_no_bosses", "desc": "Disable tank/witch spawning (0/1)"}, + {"name": "director_panic_forever", "desc": "Endless horde panic event (0/1)"}, + {"name": "nb_update_frequency", "desc": "Infected bot AI tick frequency"}, + {"name": "fps_max", "desc": "Frame rate cap (0=uncapped)"}, + {"name": "tickrate", "desc": "Server tickrate (engine-dependent ceiling)"}, + {"name": "net_splitpacket_maxrate", "desc": "Maximum split-packet bandwidth"}, + {"name": "decalfrequency", "desc": "Anti-spam delay between sprays (seconds)"} + ], + "commands": [ + {"name": "exec", "desc": "Execute a .cfg file"}, + {"name": "alias", "desc": "Define a console-command alias"}, + {"name": "bind", "desc": "Bind a key to a command"}, + {"name": "unbind", "desc": "Remove a key binding"}, + {"name": "toggle", "desc": "Flip a 0/1 cvar"}, + {"name": "sm_cvar", "desc": "SourceMod: set a cvar bypassing sv_cheats restrictions"}, + {"name": "echo", "desc": "Print to console"}, + {"name": "say", "desc": "Send a chat message as the server"} + ] +}