RE:NODE

Guides14 min read

ARK: Survival Ascended dedicated server setup guide

What Ascended costs in memory, the GameUserSettings.ini and Game.ini keys that decide whether your island is playable, ports, RCON, mods and clusters.

Updated

0 readers

An ARK: Survival Ascended dedicated server wants 10 to 16 GB of memory, one fast CPU core it can keep for itself, two UDP ports and a save directory you copy somewhere else on a schedule. Ascended is not Evolved with better lighting - it is Unreal Engine 5, and the memory it asks for reflects that. The first sign that you underprovisioned is not a crash: it is a save that takes a minute to write while everybody stands still. Everything below is host-agnostic. The commands, the ini keys and the failure cases are the same whether you run it on your own box, on a VDS or on a panel.

What the Ascended server is, and how it differs from Evolved#

The dedicated server is a free, separate download: ARK: Survival Ascended Dedicated Server, Steam app id 2430930, fetched with an anonymous SteamCMD login. It is a headless build of the game, it loads one map, and it keeps that map simulated with nobody connected.

Four differences from Evolved matter before you plan anything:

  • Unreal Engine 5 and World Partition. Every official map name ends in _WP: TheIsland_WP, ScorchedEarth_WP, TheCenter_WP, Aberration_WP, Extinction_WP, Ragnarok_WP. World Partition streams the map in tiles, which is better for the client and roughly neutral for the server - the server still has to hold everything players have built.
  • Mods come from CurseForge, not the Steam Workshop. The server downloads them itself from a list of numeric project ids, and joining clients download them automatically. That is a genuine improvement over Evolved's workshop dance.
  • The server binary is a Windows build. Wildcard have not shipped a native Linux server for Ascended, so Linux hosts run the Windows binary under Proton or Wine. It works, and it is one of the reasons Ascended servers use more memory than the same map did on Evolved. If that has changed by the time you read this, the depot list on SteamDB will say so before any guide does.
  • Evolved saves do not convert. An .ark from Survival Evolved will not load in Ascended. Starting Ascended means starting a new map.

The player cap is MaxPlayers under [/Script/Engine.GameSession] in GameUserSettings.ini, and the default on a fresh server is 70. Evolved also accepted ?MaxPlayers= in the launch string; on Ascended that argument spent a long time doing nothing, and the community workaround -WinLiveMaxPlayers=70 is still the one that reliably takes. Set the ini value, and add the launch argument if the cap does not apply.

Requirements and resource usage#

Memory tracks structures and tamed creatures, not players. A server with six people who have built three bases and a breeding pen will use more than a server with twenty who are still punching trees. Plan for the base count.

SituationRAMCPUDisk
Fresh map, 2-6 players, one or two bases10-12 GB2 cores60 GB
Established map, 10-20 players, many bases14-16 GB2-3 cores80 GB
Heavy mods, especially structure packsadd 4 GB-add 10 GB
Each extra map in a clusterits own 10-16 GBits own coresits own install
  • CPU: the game thread is the bottleneck, so clock speed beats core count. A second and third core are still used - saving, networking and dino AI batching are not all on one thread - but a sixteen-core machine at a modest frequency will lose to four fast cores.
  • Disk: the install is roughly 25 GB and grows with each update. Saves start small and do not stay that way; a mature map with a large tribe count can pass 300 MB for the world file alone, before the per-player and per-tribe files.
  • Network: modest. ARK sends far less than people expect, in the region of 50-200 KB/s per player. What players experience as lag on ARK is nearly always the game thread missing its tick, not the link.

Before you buy more of anything, find out which resource is actually at its limit - CPU vs RAM for game servers walks through reading that off a graph rather than guessing. A server pegged at 100% of its CPU share behaves very differently from one that is quietly approaching its memory limit, and the fixes have nothing in common.

Installing and starting the server#

On your own machine, SteamCMD fetches it anonymously:

bash
$ steamcmd +force_install_dir /home/ark/asa +login anonymous \    +app_update 2430930 validate +quit

The start command is one long line with two different kinds of argument, and mixing them up is the most common reason a fresh server ignores half of what you told it:

code
ArkAscendedServer.exe TheIsland_WP?listen?SessionName=Longship Crew?Port=7777?QueryPort=27015?ServerAdminPassword=change-me?ServerPassword=herring42 -NoBattlEye -WinLiveMaxPlayers=40 -log -mods=930042,893657
  1. The map name comes first, with no ? before it.
  2. Everything joined by ? is a query argument. No spaces around the ?, and no quotes.
  3. Everything starting with - comes after the query string, separated by spaces.

Launch arguments worth knowing:

ArgumentWhat it does
-logPrints the server log to the console instead of only a file
-NoBattlEyeDisables BattlEye. Clients must then also join with it off
-WinLiveMaxPlayers=40The player cap that actually applies
-mods=id,id,idCurseForge project ids, in load order
-clusterid=nameJoins this server to a cluster
-ClusterDirOverride=/pathWhere cluster transfer data is stored
-NoTransferFromFilteringAllows transfers from any map in the cluster
-ForceAllowCaveFlyersLets flyers into caves
-servergamelogWrites the in-game event log, which RCON can read

Start the server once and stop it cleanly before you configure anything. The first start writes the config files with their defaults, and editing files that do not exist yet is a waste of an evening. On a panel-based host the same arguments appear as fields on the Startup tab rather than as a command you type; the values are identical.

GameUserSettings.ini and Game.ini: the settings that matter#

Both files live in ShooterGame/Saved/Config/WindowsServer/. GameUserSettings.ini holds the server and world settings; Game.ini holds rates that the game classes read, and it often does not exist until you create it.

The [ServerSettings] section is where most of the decisions are:

KeyDefaultWhat it does
ServerAdminPassword-Admin rights in game and the RCON password
ServerPassword-Join password. Leave empty for an open server
DifficultyOffsetlowScales wild creature levels
OverrideOfficialDifficulty-Set to 5.0 for official maximum levels
XPMultiplier1.0Experience rate
TamingSpeedMultiplier1.0Higher is faster
HarvestAmountMultiplier1.0Resources per hit
DinoCountMultiplier1.0Wild creature density. A memory multiplier
AutoSavePeriodMinutes15Minutes between world saves
KickIdlePlayersPeriod3600Seconds before an idle player is dropped
DisableStructureDecayPvEFalseTurn on and nothing ever rots
TheMaxStructuresInRange10500Structure cap in an area. Raising it costs memory
ItemStackSizeMultiplier1.0Stack sizes without a mod
RCONEnabledFalseEnables remote administration
RCONPort27020RCON listener, TCP
AllowThirdPersonPlayerTrueThird person camera
ServerCrosshairTrueCrosshair on or off
AlwaysNotifyPlayerJoinedFalseJoin messages in chat

The single most asked question about a new ARK server is why every wild creature is level four. The answer is difficulty. DifficultyOffset on a fresh server is set low, and the pair that gives you official levels - wild creatures up to 150 - is DifficultyOffset=1.0 with OverrideOfficialDifficulty=5.0. Changing it does not relevel what is already on the map; run cheat DestroyWildDinos once afterwards and the map respawns at the new levels.

Game.ini uses a single section, [/script/shootergame.shootergamemode], and the keys people actually change are breeding and stat related:

Game.ini
[/script/shootergame.shootergamemode]MatingIntervalMultiplier=0.5EggHatchSpeedMultiplier=10.0BabyMatureSpeedMultiplier=10.0BabyCuddleIntervalMultiplier=0.2MaxNumberOfPlayersInTribe=12bAllowUnlimitedRespecs=trueGlobalSpoilingTimeMultiplier=2.0CropGrowthSpeedMultiplier=3.0PerLevelStatsMultiplier_Player[7]=2.0PerLevelStatsMultiplier_Player[8]=1.5

Two rules save a lot of confusion. Multipliers named "interval" or "time" get lower to speed things up, and multipliers named "speed" or "amount" get higher; BabyCuddleIntervalMultiplier=0.2 and BabyMatureSpeedMultiplier=10.0 both mean "faster". And the indexed player stats run [0] health, [1] stamina, [3] oxygen, [4] food, [5] water, [7] weight, [8] melee damage - weight and melee are the two worth touching, and doubling melee changes the balance of the whole server more than any rate does.

A misspelled key is silently ignored. There is no error, no warning, and no hint in the log - the setting simply does not exist and the default applies. If a change does not take effect, check the spelling and the section header before you change anything else.

Ports and connecting#

PortProtocolPurpose
7777UDPGame traffic
27015UDPSteam query, which the server browser talks to
27020TCPRCON, only if RCONEnabled=True

Evolved also needed 7778/udp as a raw socket; Ascended does not, though opening it costs nothing if your host allocates ports in pairs anyway. If the query port is blocked the server runs perfectly and appears nowhere, which is the classic "my server is broken" report - see game server ports explained for why the pair exists.

There are two ways in. The in-game browser, with the filter set to Unofficial and password-protected servers shown, takes five to ten minutes to list a server that has just started. Searching for an unusual word in your session name is far faster than scrolling. The reliable route is the client console: press the console key at the main menu and type open 203.0.113.10:7777. That connects directly and bypasses the list entirely, which also tells you instantly whether a listing problem is a listing problem or a networking one.

Admins, RCON and the commands worth knowing#

In game, open the console and authenticate with the password you set:

code
enablecheats change-mecheat ListPlayers

Once authenticated, admin commands take a cheat prefix. Over RCON they do not - you send the bare command. RCON is unencrypted and the password is the same one that grants full admin rights in game, so treat the port the way you would treat SSH: restricted, or off unless you are using it. RCON safely covers what that means in practice.

CommandWhat it does
ListPlayersConnected players with their platform ids
SaveWorldWrites the world immediately
DoExitSaves and shuts the server down cleanly
Broadcast <text>Large message on every screen
ServerChat <text>Message in chat
KickPlayer <id>Disconnects a player
BanPlayer <id>Bans and disconnects
UnbanPlayer <id>Lifts a ban
DestroyWildDinosWipes and respawns all wild creatures
SetTimeOfDay 08:00Sets the clock

Player identity on Ascended is an EOS id rather than a plain SteamID64, and ListPlayers prints the form the other commands expect. Copy it from there rather than from a Steam profile. DestroyWildDinos is the one to remember: it is the fix after a difficulty change, the fix when a region has stopped spawning, and a decent way to reclaim memory on a map that has been up for a fortnight.

Mods, and the boring way to add them#

Ascended mods are CurseForge projects, listed by numeric id in -mods=. The order is the load order, and later entries win where two mods change the same thing. The server downloads them at startup, so the first start after you add one is slow and the log will sit apparently idle while it fetches.

Add one mod. Restart. Play an evening. Add the next. It is slower than pasting somebody's mod list, and it is the only method that tells you which mod broke the server, because the answer is always the last one you added. Three specific habits are worth more than any mod list:

  • Structure and stacking mods are the memory ones. A pack that adds a thousand placeable pieces raises the ceiling on what your players can build, and they will. Budget the memory before you install it, not after the save starts taking a minute.
  • Do not auto-update on patch day. Every ARK update breaks mods until their authors rebuild them. A modded server should update after its mods have, not before - what to do when a mod update breaks is the procedure for the morning it happens anyway.
  • Removing a mod from a live save is destructive. Everything it placed becomes an empty reference. Sometimes the save loads with holes in it, sometimes it does not load. Take a backup you have actually tested first, and expect to lose whatever the mod owned.

Mod files and their configs sit inside the server install, which means a file manager or SFTP is enough to inspect them - see SFTP and the file manager if you have not connected to a server that way before.

Clusters and transfers#

A cluster is two or more servers that share a directory of transfer data, so survivors can carry characters, tames and items between maps. The requirements are exact:

  • The same -clusterid= on every server in the cluster.
  • The same -ClusterDirOverride= path, on a filesystem all of them can write to.
  • NoTributeDownloads=False in [ServerSettings], plus PreventDownloadSurvivors, PreventDownloadItems and PreventDownloadDinos set to False for whichever of the three you want to allow.
  • -NoTransferFromFiltering if you want transfers from any map rather than only the ones the game considers linked.
upload survivordownload survivorautosaveautosaveThe Islandport 7777Cluster directoryshared filesystemIsland save.ark and profilesScorched Earthport 7779Scorched save.ark and profiles
How a survivor moves between maps in a cluster

The honest limit: the shared directory has to be genuinely shared. Two servers in the same panel account are not necessarily on the same physical machine, and if they are not, a cluster directory cannot exist between them. Ask before you buy the second server, and expect the answer to be "same node or nothing". If you are moving an existing single server into a cluster, moving a server without losing players covers the announcement and DNS side of the job.

Saves, backups and restarts#

Saves live under ShooterGame/Saved/SavedArks/: one world file for the map, one .arkprofile per survivor who has ever logged in, one .arktribe per tribe. Losing the world file and keeping the profiles gives you a fresh map full of survivors with no bases.

  • `AutoSavePeriodMinutes=15` is the default and is usually right. On a mature map the save is the hitch everybody reports as lag. If your server freezes for ten seconds on a schedule, that is the save, and lengthening the interval to 20 or 30 minutes trades a longer worst-case rollback for fewer interruptions. Shortening it on a big map makes things worse, not better.
  • Never copy a save while the server is running. You will get a file mid-write. Stop the server, or take the backup from a snapshot the host makes for you.
  • The autosave is not a backup. It is on the same disk, and it is overwritten. A real backup is a copy somewhere else, on a schedule, that you have restored at least once - backups that actually restore is short and is the difference between a bad evening and a dead server.
  • Restart daily. ARK's memory use climbs over days. A scheduled restart at an hour nobody plays keeps it flat and costs thirty seconds - restart schedules that help has the timing.

An out-of-memory stop is the unsaved-stop case: whatever happened since the last autosave is gone. On RE:NODE a container that reaches its memory limit is stopped and restarted clean rather than left to swap, which is faster to recover from and exactly the case above, so a server sized close to its ceiling should take the shorter autosave interval. The Schedules tab can run the daily restart and the nightly backup as ordered tasks, and backup slots are on every plan.

Troubleshooting#

The server is not in the browser. Check the query port is open and UDP, check the filter is on Unofficial, and wait ten minutes. Then test with open <ip>:7777 from the client console. If that connects, the server is fine and the list is slow.

Every wild creature is level four. DifficultyOffset and OverrideOfficialDifficulty. Set them, restart, then cheat DestroyWildDinos.

Config changes keep reverting. You edited GameUserSettings.ini while the server was running and its clean shutdown wrote the old values back over yours.

A setting has no effect at all. It is spelled wrong, or it is in the wrong file or the wrong section. Rates that belong in Game.ini do nothing in GameUserSettings.ini and the reverse is also true.

Startup stalls with no log output. Usually mod downloads. Give it ten minutes on the first start after a mod change; if it never moves, remove the newest mod id and start again.

The server stops without warning every few days. Memory. Watch the graph across a week rather than a minute - reading a server load graph explains the shape to look for. A climbing sawtooth that gets clipped is an out-of-memory stop, not a crash.

Players arrive on another cluster map with nothing. One of the PreventDownload* settings is True, or the two servers do not really share a cluster directory.

FAQ#

How much RAM does an ARK: Survival Ascended server need?

Ten to twelve gigabytes for a fresh map with a small group, fourteen to sixteen for an established map with a full player list and several large bases. Mods that add structures are the thing most likely to push you over; add four gigabytes before adding a structure pack.

Can I move my ARK: Survival Evolved save to Ascended?

No. The save formats are different and there is no converter. Ascended means a new map, new tames and new bases, which is worth saying out loud to your players before you announce the move rather than after.

Do players need to install mods before joining?

No. Ascended downloads the server's mod list to the client automatically through CurseForge when they connect. The first join after a mod change takes longer for everyone, which is a reason to change mods before an evening rather than during one.

Why does the server freeze for a few seconds at regular intervals?

That is the autosave writing the world file, and the interval is AutoSavePeriodMinutes. It gets longer as the map fills with structures. Faster storage shortens it, lengthening the interval makes it less frequent, and nothing removes it entirely.

Is a cluster worth running for a small group?

Rarely. A cluster doubles or triples the memory you are paying for and adds transfer rules to moderate, in exchange for map variety. Most groups of under ten are better served by one well-provisioned map and a full wipe when they are bored of it.

Does the server need BattlEye?

No, but the setting has to match. If you start the server with -NoBattlEye, every player must also launch the game with BattlEye disabled or they will fail to connect, and the error they see does not say so clearly.


Comments

Completely anonymous: no account, no email, no cookie. We store the name you type, the text and the time - nothing else. Links are limited and markup is not rendered.

0/2000