V Rising is the vampire survival-RPG of castle-building, blood-hunting and clan PvP. A dedicated server lets up to forty players share your world with full rule and clan-size control. This step-by-step guide shows you how to set up a V Rising server in minutes — no manual install, no command line.
Pick a plan sized for your V Rising community. We recommend about 6–10 GB of RAM; start smaller and upgrade in one click as you add players or mods. V Rising plans start at $10.99/mo.
Check out and your V Rising server provisions automatically in under 60 seconds, with console access right away — no manual install, no command line.
Once your V Rising server is online, share its address (IP and port) with your friends so they can join. Start, stop and restart it anytime from the control panel.
Your V Rising server supports ServerHostSettings, Clans, Mods (BepInEx), FTP/SFTP. Install ServerHostSettings and BepInEx mods straight from the one-click installer, or upload your own from the control panel — then tweak settings in the visual config editor.
Enable scheduled automatic backups, set restart timers, and monitor CPU, RAM and player counts from the dashboard. Always-on DDoS protection and 24/7 support keep your V Rising server stable.
Ready to start? Deploy your V Rising server in under 60 seconds — 7-day money-back guarantee.
The dedicated server is fetched anonymously with SteamCMD. Stunlock's own example script amounts to this:
steamcmd.exe +force_install_dir C:\vrising-server +login anonymous +app_update 1829350 validate +quit
That pulls the default branch, which carries the current PC build. The current PlayStation 5 build sits on its own branch, so the update line becomes:
+app_update 1829350 -beta ce-1 validate
At runtime the server uses the same AppID as the game client, 1604030, defined in the steam_appid.txt file supplied with the download. Both official example batch files also set SteamAppId=1604030 in the environment before launching, which is worth copying into a wrapper of your own.
Patching is the same command again with the server offline: validate verifies and updates to the latest version in place. Stunlock recommends restarting daily rather than leaving the process up indefinitely, and notes that some hosting services only update the server when you restart.
There is no official Linux build. Community projects run VRisingServer.exe under Wine inside an Ubuntu container; that route is community-documented, not stated in the official docs.
Three endpoints matter, and they do not all use the same protocol:
| Purpose | Setting | Protocol | Example value in the official docs |
|---|---|---|---|
| Game traffic | Port | UDP | 27015 |
| Steam server-list query | QueryPort | UDP | 27016 |
| Remote console | Rcon.Port | TCP | 25575 |
Stunlock spells out the visibility rule: for the server to appear on the server list, both the specified queryPort and gamePort must be open in the firewall and forwarded on the router; otherwise, opening or forwarding the gamePort alone is enough. RCON needs a rule of its own, on TCP.
Read the numbers from your own file rather than assuming them. Community and host references consistently give the values that ship inside the settings file as 9876 for the game port and 9877 for the query port, both UDP — not the 27015/27016 pair in the official examples. Those shipped defaults are community-documented, not stated in the official docs.
Stunlock's multi-server example script derives four ports from one base number: -gamePort at base+15, -queryPort at +16, -apiPort at +17 and -rconPort at +18. -apiPort, -apiEnabled and -rconExperimentalEnabled appear in that script but are not described in the settings reference of the same document.
There are two files. ServerHostSettings.json covers hosting and networking; ServerGameSettings.json covers gameplay.
The shipped defaults live in VRisingServer_Data/StreamingAssets/Settings/. Stunlock advises against editing those, because an update may overwrite them.
After loading the default files, the server looks for local overrides. On Windows the default location is:
%USERPROFILE%\AppData\LocalLow\Stunlock Studios\VRisingServer\Settings
An override can be a full settings file, or only the settings and values that differ from the default. -persistentDataPath <path> relocates that whole tree; Stunlock recommends it in general and calls it a must for running multiple servers on one host. Settings are then read from the Settings subfolder of that path, and saves are written to Saves.
Above the files, Stunlock lists the override order as environment variable (system, user, process), then command-line parameter. Most host settings have all three forms, so MaxConnectedUsers is also VR_MAX_USERS and -maxUsers.
adminlist.txt and banlist.txt both sit in <PersistentDataPath>/Settings/, one steamId per line.
Stunlock ships example batch scripts next to the executable. The minimal one is close to this:
VRisingServer.exe -persistentDataPath .\save-data -serverName "My V Rising Server" -saveName "world1" -logFile ".\logs\VRisingServer.log"
The larger official example adds, among others, -bindAddress, -maxUsers 60, -maxAdmins 2, -fps 30, -secure true, -preset StandardPvE, -difficultyPreset Difficulty_Brutal, -listOnEOS true, -listOnSteam false, -saveCount 30, -saveInterval 60, -resetDaysInterval 30, -dayOfReset Saturday, plus -rconEnabled and -rconPassword.
Watch the units and the renames. -saveInterval is an interval in seconds. -saveSmartKeep takes a comma-separated list of A:B:C sets, where A is a time in minutes before now, B is how many of the newest saves within that time frame to keep and C how many of the oldest; -saveCount is applied afterwards, trimming the oldest until only that many remain. The official reference marks four older names as deprecated: use -gamePort over -serverPort, -maxUsers over -maxConnectedUsers, -maxAdmins over -maxConnectedAdmins, and -saveName over -serverSaveName.
Work from a copy of the supplied example script rather than the file itself, since an update can overwrite it.
Stunlock's instructions document the host settings in detail; the gameplay keys below were read from a published copy of ServerGameSettings.json, which has several dozen top-level keys. They group roughly like this:
GameModeType, GameDifficulty, PlayerDamageMode, CastleDamageMode, CastleHeartDamageMode, PvPProtectionMode, SiegeWeaponHealth.DeathContainerPermission, CanLootEnemyContainers, BloodBoundEquipment, Death_DurabilityFactorLoss.MaterialYieldModifier_Global, InventoryStacksModifier, CraftRateModifier, RefinementRateModifier, ResearchCostModifier, BloodDrainModifier, CastleDecayRateModifier.CastleSiegeTimer, CastleUnderAttackTimer, CastleRaidTimer, CastleRaidProtectionTime.ClanSize, InactivityKillEnabled with InactivityKillTimeMin and InactivityKillTimeMax.Nested objects hold the rest: GameTimeModifiers (including DayDurationInSeconds and BloodMoonFrequency_Min/_Max), VampireStatModifiers, UnitStatModifiers_Global and UnitStatModifiers_VBlood, EquipmentStatModifiers_Global, TraderModifiers, WarEventGameSettings, and CastleStatModifiers_Global with build limits such as CastleLimit, HeartLimits and TombLimit.
Raid windows live in PlayerInteractionSettings, which pairs a TimeZone with VSPlayerWeekdayTime, VSPlayerWeekendTime, VSCastleWeekdayTime and VSCastleWeekendTime.
Presets sit above all of this. GameSettingsPreset loads one of the .json files from VRisingServer_Data/StreamingAssets/GameSettingPresets; StandardPvP and StandardPvE appear in Stunlock's own examples. GameDifficultyPreset takes Difficulty_Easy, Difficulty_Normal or Difficulty_Brutal.
Add your steamId to adminlist.txt in <PersistentDataPath>/Settings/, one per line; Stunlock notes this can be done without restarting the server. In game, enable the console in the options menu, open it with ~ and authenticate with the adminauth console command. The documented administrative commands include banuser, bancharacter, banned, unban and kick. Bans issued through the in-game console are written to banlist.txt in the same folder, which can also be edited by hand.
RCON is enabled by adding this block to ServerHostSettings.json:
"Rcon": {
"Enabled": true,
"Password": "somepassword",
"Port": 25575
}
Stunlock notes that a password must be configured and cannot be left empty, and that the port can be changed to any valid TCP port. An optional BindAddress in the same block overrides the global Address setting, which is how you bind RCON to a separate internal interface.
RCON speaks the Source RCON protocol, and Stunlock names mcrcon as one client known to work while describing the feature as currently having limited functionality. The available commands are help, announce, announcerestart, shutdown, cancelshutdown, name, description, password, version and time. announcerestart takes a number of minutes and is less flexible than announce, but is localized to each user's language.
Mods load through BepInEx, distributed via Thunderstore's V Rising community. BepInEx has to be installed first.
The community mod wiki's sequence: open the BepInEx pack archive, find the BepInExPack_VRising folder inside it, and move that folder's contents rather than the folder itself. Those contents are BepInEx/, dotnet/, .doorstop_version, doorstop_config.ini and winhttp.dll. On a dedicated server they go into the destination server folder, which the wiki names VRisingDedicatedServer — the folder holding VRisingServer.exe.
Start the server once. The wiki notes this takes a few minutes while BepInEx prepares to load mods, and that it happens on clean installs and after game updates; the generated BepInEx/LogOutput.log confirms the files are in the right place.
Mod .dll files then go into the Plugins folder inside BepInEx. Two per-mod checks from the same wiki: many mods need other mods in order to run, listed as dependencies on each mod's Thunderstore page; and although you usually need only the mod's .dll, its readme may add installation steps specific to that mod.
On a Wine-based Linux setup BepInEx injects through winhttp.dll, and community instructions set WINEDLLOVERRIDES="winhttp=n,b" so Wine loads the native DLL rather than its built-in one.
ListOnEOS: the official notes say the client looks for servers on the EOS list by default, and ListOnSteam is a separate setting.Settings folder, and a VR_* environment variable or command-line parameter overrides both. A value changed in only one of those three layers may not be the one in play.GameSettingsPreset names a preset, that preset loads instead of the settings you copied in; Stunlock's save-transfer instructions say to set it empty for exactly this reason.BepInEx/LogOutput.log exists, and read it to see what failed. If the file is missing entirely, BepInEx did not inject — commonly winhttp.dll is not in the server root, or the DLL override is unset under Wine.