VEIN Server Config Generator

Build a working Game.ini (session, network, admins) and the Engine.ini [ConsoleVariables] block (every vein.* gameplay knob — zombies, hordes, loot scarcity, PvP, time), plus a start_server.bat to boot it. Sliders for the multipliers, toggles for the on/off switches, dropdowns where VEIN uses an enum. Paste your existing config back in to keep editing. Vanilla scope — no mod guesswork.

Built for VEIN Early Access · Update 0.024 (May 2026) · we track patches and re-verify

Server Identity & Network

0 / 0 changed

Browser name, visibility, password, player cap, ports. These live in Game.ini. The game port stays in Game.ini's [URL] section on purpose — put it in Engine.ini and Unreal overwrites it on boot, so the server never starts.

🆕 Early Access: VEIN is in active development — this tool tracks Update 0.024 (May 2026). Keys and defaults are checked against the VEIN wiki and the developer CVar dump. One moving part to watch: the server executable currently ships as VeinServer-Win64-Test.exe (the -Test suffix may flip to -Shipping in a later build — the launch script calls this out so you can rename it in one place).

The name players see in the server browser. Keep it short and searchable.

On = your server shows in the public browser. Off = it's unlisted and players join by direct IP. Most community servers leave this on.

Required to connect. Leave blank for an open server. This is the player join password — admin access is granted by SteamID below, not by a password.

8

Player cap. Lives in [/Script/Engine.GameSession]. VEIN co-op runs small by default (8); the engine accepts higher if your box can feed it. The launch script mirrors this as -MaxPlayers= so it binds at boot.

7777

UDP port players connect on. Default 7777. Stays in Game.ini under [URL] (never Engine.ini). Forward this on your router.

7778

UDP port Steam queries for server info (name, player count). Default 7778. Must differ from the game port, and also needs forwarding or your server shows empty in the browser.

Valve Anti-Cheat. On by default and should stay on for public servers. Only flip off on a private box where you're testing.

5

Seconds between the server's keep-alive pings to the master browser. Default 5. Leave it unless you have a reason — raising it can make your server slow to appear or drop off the list.

Which network interface to bind to. Leave blank on a normal box — only set it on a multi-homed machine where you need to pin the server to one NIC/IP.

Admins

0 / 0 changed

Admin access is by SteamID64 (the 17-digit number that starts with 7656), not a password. One ID per line — the generator writes each as its own +...SteamIDs= line, which is the Unreal array syntax VEIN expects (commas don't work). Look up an ID from a profile URL at steamid.io.

0 entries

Full server control — every admin command, no limits. Add your own SteamID64 first. Without at least one super admin you can't run admin commands in-game.

0 entries

Standard admin powers (moderation), a step below super admin. Use for trusted helpers who don't need full control. One SteamID64 per line.

PvP & Raiding

0 / 0 changed

Player-vs-player combat, base raiding, and structure rules. These are vein.* CVars and land in Engine.ini.

Master PvP switch. On = players can damage each other. Off = PvE (co-op survival, no player damage). Default on.

1.0×

Scales damage players deal. 1.0 = vanilla. Raise for faster, deadlier PvP; lower for tankier fights. 0 makes players unable to hurt each other even with PvP on.

Whether player-built structures can be damaged/raided by other players. On = bases are raidable. Off = build objects are immune to player damage.

Whether unmaintained player structures decay over time. On = abandoned bases eventually crumble (keeps the map clean). Off = builds persist indefinitely.

Off by default. On = bases can't be raided while their owners are offline — the classic "no offline raiding" community rule that keeps players from logging in to a flattened base.

Whether utility cabinets (the device that powers/protects a base) can be raided. On = attackers can take down a base's cabinet. Off = cabinets are protected.

Whether players can pickpocket each other. On by default. Turn off on servers that want zero non-consensual player interaction.

Players & Death

0 / 0 changed

How death works and how fast players progress. Engine.ini CVars.

Off by default. On = a player's death wipes that character permanently. The single harshest setting in the file — only flip it on if your whole community is in on it.

On = every player who dies reanimates as a zombie (regardless of infection). A flavor/horror setting; off by default.

On = the world never saves and resets every restart. Useful for a test box or a one-session event server. Wrong for any persistent community — leave off.

1.0×

Scales how fast players gain experience/skill. 1.0 = vanilla. Bump to 1.5–2× on community servers to soften the grind; drop below 1 for a slower, harder climb.

Zombies

0 / 0 changed

The undead themselves — health, damage, senses, and infection. Engine.ini CVars.

40

Base hit points per zombie. Default 40. Raise it to make zombies bullet-spongey and ammo precious; lower for a faster, pulpier feel.

1.0×

Scales damage zombies deal to players. 1.0 = vanilla. The cleanest single dial for overall difficulty.

1.0×

Scales zombie movement speed. 1.0 = vanilla. Push it up for sprint-horde terror; drop it for slow, classic shamblers.

1.0×

How far zombies hear noise (gunshots, sprinting). Higher = sound draws them from further away, so suppressors and sneaking matter more.

1.0×

How far zombies see players. Higher = harder to break line of sight and lose them. Pair with high hearing for a stealth-punishing server.

Whether zombies can climb obstacles to reach players. On by default — turning it off makes simple walls far more effective and changes base design entirely.

On = only headshots kill zombies (body shots barely matter). A hardcore marksmanship rule that makes ammo discipline brutal. Off by default.

0.01

Probability (0–1) that a zombie hit infects the player. Default 0.01 (1%). Raise it for a tense infection-management server; 0 disables infection entirely.

Spawning & Hordes

0 / 0 changed

How many zombies exist, how they're distributed, and how hordes trigger. Engine.ini CVars. The walker/crawler/layer percentages should add up to roughly 1.0.

Master switch for zombie spawning. On by default. Off = no zombies spawn at all (a quiet building/exploration server).

Off by default. On = a more aggressive, horde-focused spawn ruleset. Different from the periodic hordes below — this changes the baseline pressure.

Whether roaming hordes spawn periodically. On by default. The chance, duration, and reach are tuned by the next four settings.

0.05

Probability (0–1) per minute that a horde kicks off. Default 0.05 (~5% a minute, so roughly one every 20 minutes on average). Raise for relentless pressure, lower for breathing room.

120

How long a horde event lasts, in seconds. Default 120 (two minutes). Longer hordes mean you can't just wait them out behind a door.

25000

How far (in Unreal units) a horde can spawn from / track toward players. Default 25000. Bigger = hordes find you from further out.

0.1

How strongly player noise feeds horde behavior. Default 0.1. Higher = gunfire and sprinting are much more likely to pull a horde onto you.

0.5

How strongly player scent feeds horde behavior. Default 0.5. Higher = harder to shake a horde once it has your trail.

1.0×

Scales the overall ceiling on simultaneous zombies. 1.0 = vanilla. Raising it makes the world denser — watch server CPU, this is the setting most likely to cost performance.

0.7

Fraction of the zombie population that are standard walkers (0–1). Default 0.7. Walker + crawler + layer should sum to about 1.0.

0.1

Fraction that are low crawlers (0–1). Default 0.1. Crawlers are easy to miss and nasty in tight spaces.

0.1

Fraction that are "layer" type zombies (0–1). Default 0.1. Adjust alongside walker/crawler so the three roughly add to 1.0.

300

Cap on tracked zombies in the spawn-management buckets. Default 300. This and the spawn cap multiplier together govern how heavy the world can get.

300

Seconds before cleared zombies repopulate an area. Default 300 (five minutes). Longer = looted areas stay quiet longer.

Time & World

0 / 0 changed

Day/night pacing and the world clock that drives utility shutoffs. Engine.ini CVars.

16

How fast the in-game clock runs (1–16). Default 16 (fastest). Lower it for longer, more realistic days — 1 is real-time-ish and very slow.

3

Separate clock speed for night (1–16). Default 3 — by default nights pass slower than days, stretching the dangerous hours. Lower = longer, scarier nights.

20

Hour (0–23) the "night" clock speed kicks in. Default 20 (8 PM).

6

Hour (0–23) night ends and the day clock resumes. Default 6 (6 AM).

Off by default = the world clock pauses when nobody's online (loot timers and decay freeze until a player returns). On = time keeps marching with an empty server.

0

How many days into the apocalypse a fresh world begins. Default 0. Raise it to start deeper into the decay timeline (utilities closer to shutoff, more rot).

30

In-world day the mains water stops running. Default 30. After this, taps run dry and water becomes a real survival problem. Lower = harsher, faster scarcity.

46

In-world day the grid power dies. Default 46. After this you're on generators and batteries. Lower it to force the dark-and-cold phase sooner.

Loot & Respawns

0 / 0 changed

How much loot the world holds and whether containers refill. Engine.ini CVars. Note the scarcity enum reads a little backwards — lower number means more loot.

Overall loot abundance. The numbering is inverted from what you'd expect: 1 = More loot, 2 = Standard (default), 3 = Less, 4 = Impossible (almost nothing). 0 = None turns world loot off entirely.

Whether looted containers refill over time. On by default = loot regenerates so a long-running server doesn't strip bare. Off = once it's looted, it's gone (true scavenging).

10800

Seconds between container refills (when respawn is on). Default 10800 (three hours). Longer = loot stays scarce between sweeps; shorter = a more forgiving, resupplied world.

Launch Script Options

0 / 0 changed

These don't go in the INI files — they shape the generated start_server.bat on the third output tab.

Wraps the launch line in a loop so the server relaunches if it crashes or you stop it. On for unattended boxes. Off to run it once and stop.

Adds a SteamCMD line that updates the VEIN Dedicated Server (Steam app 2131400) before each boot. Needs steamcmd on PATH or in the folder.

Redirects server output to server.log instead of the console window. Useful for unattended boxes and after-the-fact crash diagnosis.

About the VEIN Server Config Generator

VEIN splits its dedicated-server configuration across two Unreal Engine ini files, and the split trips people up. Game.ini holds the session and network stuff — server name, player cap, ports, and the admin SteamID lists. Engine.ini holds every gameplay knob as a vein.* console variable under a single [ConsoleVariables] block: zombie health and speed, horde pacing, loot scarcity, the day/night clock, PvP and raiding rules. This generator writes both files plus a Windows start_server.bat in one pass — sliders for the multipliers, toggles for the on/off switches, a dropdown where VEIN uses an enum. Keys and defaults are checked against the VEIN wiki and the developer console-variable dump, current as of Update 0.024 (May 2026).

Why two files — and the one rule that breaks servers

It's tempting to dump everything in one place. Don't. VEIN reads gameplay CVars out of Engine.ini's [ConsoleVariables] section, but a few network keys have to stay in Game.ini. The big one: the [URL] Port line must live in Game.ini. Put it in Engine.ini and Unreal silently overwrites it during boot, the bind fails, and the server never comes up — with no obvious error. This generator keeps Port in the Game.ini tab on purpose for exactly that reason. The query port (GameServerQueryPort) lives under [OnlineSubsystemSteam], also in Game.ini.

Admin access is by SteamID, and the syntax matters

VEIN doesn't use an admin password — you grant admin powers by listing SteamID64s in Game.ini. There are two tiers: SuperAdminSteamIDs (full control) and AdminSteamIDs (standard moderation). The catch is the format. These are Unreal array properties, so every entry needs its own line prefixed with a plus sign:

[/Script/Vein.VeinGameSession]
+SuperAdminSteamIDs=76561198000000001
+SuperAdminSteamIDs=76561198000000002

A comma-separated list on one line does not work — only the plus-prefixed array form registers. The generator writes one correctly-prefixed line per ID automatically, so you just paste your SteamID64s one per line. (Need to find an ID? Paste a Steam profile URL into steamid.io and grab the steamID64.)

The in-game Config menu doesn't reliably save — edit the files

VEIN has an in-game admin config menu, and it's handy for testing values live. But changes you make there write to Engine.ini and don't reliably persist across restarts. For settings you actually want to keep, edit the files (or generate them here) and drop them in. Treat the in-game menu as a tuning scratchpad, not the source of truth.

Where the files live, and how to install the server

About that -Test in the executable name

As of Update 0.024 the server binary is named VeinServer-Win64-Test.exe — with a -Test suffix, which is a little unusual for a shipping server. It works fine; just be aware that a future Early Access build could rename it to VeinServer-Win64-Shipping.exe. The generated start_server.bat flags this in a comment so if your launch fails with "file not found" after an update, you know to check the exe name and update that one line.

Ports and firewall

VEIN needs two UDP ports forwarded to the server's LAN IP: 7777/UDP for game traffic and 7778/UDP for Steam queries (these are the defaults; change them in the tool if you're running multiple servers on one box). The two must be different — a query port that collides with the game port keeps your server off the browser. On Windows, also add an inbound firewall rule for the server executable.

Reading the loot scarcity enum (it's backwards)

One setting that catches people: vein.Scarcity.Difficulty doesn't count up the way you'd guess. Lower numbers mean more loot. 1 is "More loot," 2 is "Standard" (the default), 3 is "Less," and 4 is "Impossible" (the world is nearly bare). 0 switches world loot off entirely. The dropdown spells each one out so you don't have to remember the direction.

What's not in here (and why)

More survival-server tools on GamesOMG

VEIN is in active Early Access — settings and defaults can shift between updates. We re-verify against the wiki and the in-game CVar dump after major patches; if you spot a key or default that's drifted, use the Report an issue button above and we'll check it.