What changed in v0.9.6
v0.9.6 is a fixes-only release. No new features; those go to the next version.
The theme is simple: when something goes wrong, AASM tells you, instead of carrying on as if it worked. A backup that only half-worked is reported as a failure. A restore that can’t be sure which save folder is yours stops before it touches anything. A maintenance restart that didn’t bring your server back says so, and a Discord post that never landed doesn’t get shown as a success.
Most of this release started as a bug report in our Discord. Thanks for the logs.
Before you update, read the Upgrade notes and Known issues below. A few things behave differently now, mostly around backups, and a few leftover locks need a manual step.
Backups & Restore
- Scheduled backups to SFTP or SMB keep a local copy as well. If the remote upload fails, you still have the local archive, and the backup is reported as failed even though the local part worked. If both sides fail you see both reasons. The error clears after the next good backup.
- Backups AASM can’t prove it made are left alone. Cleanup only deletes archives it can match to the server that made them. Anything else (older backups, ones with an unclear owner) stays where it is, and Cleanup Old tells you what it kept.
- Restore won’t guess. If two save folders could both be the right one for a map (for example
TheIslandandTheIsland_WPboth holding saves), or the save folder changes while you’re restoring, the restore stops before anything is written and tells you why. - The pre-restore safety copy always goes in your backup folder, including when you restore from SFTP or SMB. It’s the
...-ORIGINAL.zipfile, it shows up in your backup list (unless your folder template uses the date or time; see Worth knowing), and you can restore it if you picked the wrong backup. If AASM can’t write the safety copy, the restore doesn’t start. - Safety copies work on more setups. Backup folders on exFAT/FAT drives and NAS shares work with restore, and folder templates using
{date}or{timestamp}no longer make the safety copy fail. If AASM quits in the middle of a restore, the next restore into that folder clears the hidden staging folder it left behind when it can prove it’s stale and safe to remove; one that still holds a half-written safety copy stays (see Worth knowing). - Backups that only exist on your SFTP/SMB destination now show in the list and can be restored from there. They’re marked restore-only.
- Rename and delete tell the truth. If the rename or delete didn’t actually happen, you get a failure instead of a success message, in the desktop app and in both Web UIs (the default one and the optional standalone one).
- Renaming can’t break a backup any more. Backups AASM manages itself (automatic, daily, weekly, pre-update, post-stop, pre-rollback and cluster backups, the ones with a server ID in the name) can’t be renamed, because the name is how AASM knows which server owns them. Other backups can still be renamed, but not to a name that looks like one of AASM’s own. That keeps every backup restorable and stops later backups reporting “Backup failed”.
- A leftover backup-folder lock clears itself. AASM locks a backup folder while it’s working in it, so two jobs can’t collide. If AASM quits, crashes or restarts for an update in the middle of a backup, the lock is cleared automatically once AASM can prove the old process is gone, and backups and restores carry on. That only works for a backup folder on a local drive of this PC: AASM checks that the lock was left on this same PC (for a lock written by v0.9.6, by its machine ID, not just its name; a v0.9.5 lock on Windows only carries the PC’s name), and it never clears a lock in a network backup folder (SMB/NFS), so two AASM hosts sharing one can’t clear each other’s locks. (A few leftover locks, including any in a network backup folder, still need a manual step; see Known issues.)
- An unplugged drive only affects what’s on it. With a daily/weekly backup drive or a server’s install drive disconnected, you can still restore, rename and delete backups stored elsewhere, and other servers’ cluster backups keep running.
- Turning the regular backup schedule Off no longer wipes your daily, weekly and player-backup jobs or their failure history. A failed save leaves the schedule as it was, and schedule changes saved from the Web UI take effect straight away.
- Backup settings show a real error if a save fails, instead of “saved”. The Statistics panel refreshes after a save without resetting what you’re editing.
- Player Characters, player-backup and snapshot lists show an error when the save folder can’t be read, instead of an empty list that looks like nobody ever played.
- Cleanup Old explains what it kept. When it keeps files it didn’t make (manual backups, safety copies, older-format archives), that’s shown as information, not as an error.
- Restores stay responsive while AASM writes the safety copy and checks large archives. No more multi-second freezes on big worlds.
- Safety-copy progress shows in the restore progress bar, so a big restore no longer looks stuck while the safety copy is written.
- Scheduled automatic backups wait until the server has finished loading before they run. A backup that comes due while the server is still loading is checked again every minute and runs at the first check after loading finishes. If the server is still loading after 20 minutes, that backup is skipped and shows as a failed backup. A server that’s offline is still skipped quietly, as before.
- “Test remote connection” for backups now really tests the connection. It used to report success every time. Now it makes a real attempt, and when it can’t connect it shows a generic failure message.
- A backup destination that can’t be created is reported instead of AASM retrying it forever.
- SFTP Test Connection uses its own uniquely named test file, so it can’t touch anything already in your remote folder, and its error messages now say which step failed.
- Your SFTP password is no longer written to the debug log when you save backup settings.
Server control & maintenance
- Maintenance restarts report what actually happened. If a server doesn’t come back after a maintenance restart, you get an advisory and an alert instead of a “completed” message.
- A server that crashes right after a maintenance restart is brought back by Auto-Restart-on-Crash, if you have it enabled for that server.
- Skip Countdown When Empty is explained properly. With it on, if the server is empty when the warning window starts, the restart runs right then, which can be up to the length of the warning window before the scheduled time. The desktop app and the Web UI now both say this. The “maintenance fires about an hour early” report in the v0.9.5 notes turned out to be this setting doing what it does.
- You can edit a daily restart time in place instead of deleting it and adding a new one.
- Maintenance schedule edits save reliably. No more stale “saved” notices, edits landing on a different server after you switch, or Copy to Servers copying a schedule that didn’t load.
- Managing a remote server’s Maintenance tab with a maintenance-only connection no longer crashes the window or shows a misleading layout-file error. Scheduled Dino-wipe settings for a remote server are read-only; change them on that machine.
- The build summary says UNKNOWN when the current or latest build number isn’t available, instead of guessing.
- RCON reconnects more reliably. A server that drops the connection right after login no longer looks connected, and a failed manual Connect no longer switches off automatic reconnect.
- RCON connects to servers started with
-MultiHome=<address>. Such a server only listens for RCON on that address, so AASM showed RCON as disconnected (and cross-chat, player counts and restart countdowns failed) while the RCON Manager connected fine. AASM now connects to the MultiHome address, and Export servers for RCON Manager uses it too. - Server status during startup is more reliable. An earlier start can no longer mark a newer one “Ready” too early.
- Mod changes confirm they actually saved. Adding or removing mods checks the result, the open dialog refreshes straight away, bulk add/remove retries don’t drop or reorder anything, and a refused save now shows its error message.
- Changes queued for a running server are kept safely until they’re applied on the next restart, and AASM tells you if writing or verifying them fails.
- The MOTD editor saves your edit when you click away, and MOTD lines with quotes are checked the same way they’re written.
- Sync Groups and Config Sets keep each follower’s session name, including when it’s stored in the older
[ServerSettings]section. - Reset-to-default buttons in advanced settings register the click even while a field still has focus.
- The Engram Overrides table shows the right values for Hidden, Level, Points and the engram name.
- Shared-install instances keep the exact map you picked (for example
TheIsland_WP). - Server Platform Options shows the right ticks. In the desktop app and the default Web UI, it now reads ARK’s
+form (for examplePC+XSX, which is how a .bat import brings it in) and the older comma form, in any letter case. Ticking platforms now saves them joined with+, the form ARK documents (for examplePC+PS5). Servers saved the old way with commas now start with the+form (see Upgrade notes). - Console Arguments launch the same way they did in v0.9.5, including
?Option=valueentries. The one exception is-ServerAdminPassword=AASM, which AASM now drops (see Upgrade notes). - The updater no longer closes other programs that have “updater” in their name. This applies from the next update after v0.9.6 (see Upgrade notes).
- Lower memory use from the log viewer and from build-version checks.
Discord
- Cross-chat works on servers that aren’t in a cluster. Game-to-Discord relay used to need the server’s Cluster toggle switched on, even though the settings said it didn’t. Now cross-chat runs for any server with cross-chat ticked and a chat group set.
/setup control-panelwaits (up to 30 seconds) for a refresh that’s already running instead of failing straight away, and a refresh that got stuck no longer blocks setup.- Status cards and the setup wizard tell you when a post didn’t go through, instead of reporting success, and they keep the parts that did work.
- The bot no longer crashes AASM when it’s stopped or reconnects while Discord’s connection is still being set up (the “Opening handshake has timed out” crash).
- Fixed a memory leak in Discord image uploads (status cards and the admin control panel) that could make AASM’s memory climb steadily for as long as the bot ran.
- Removing a server from the bot keeps retrying the slash-command update if Discord rejects it, instead of dropping it.
/backup listwarns you when a backup location couldn’t be read, instead of showing a partial list as if it were complete.
Web UI
- The Timed Update countdown shows in every dashboard layout: List, Compact, Dense and the phone/tablet layout (any window narrower than about 1200 px).
- Skip Countdown When Empty timing is explained in the Web UI as well as the desktop app.
- Backup schedule changes saved from the Web UI take effect straight away.
- Password values are hidden from viewer-role users in a server’s pending changes, including changes queued before the update.
Server import
- .bat import brings over much more than the name and path. Ports, max players, mods, the server platform and the common launch flags are applied to the new server. Anything AASM doesn’t have a setting for goes into Console Arguments.
- Quoted values work, for example
SessionName="My Server",-mods="123,456"and-ServerPlatform="PC+XSX", which Server Platform Options shows with PC and XSX ticked. - The preview always shows. A token AASM can’t use safely (a shell variable like
%VAR%, or one of the characters& | < > ^ ( ) % !) no longer blocks the preview. The preview counts it as ignored, and the import then adds the server with its name and path only and tells you why. Fix the script and select it again to bring its settings over. - Import errors are shown in the import dialog, not just written to the log.
- Passwords from the launch script are saved to the server’s INI if the INI doesn’t already have them, so an imported private server stays private.
- You’re told when ports were moved to avoid a clash with another server.
- If an import can’t finish, your INI is put back exactly as it was, and edits made to it in the meantime are kept, not overwritten.
- Admin and join passwords are no longer written to the debug log when you install or import a server.
Licensing
- Offline grace shows the real time left, for example “12m” or “less than 1m”, in the Licence tab and in alerts, instead of rounding up to “1h”.
- When the licence server rejects a licence, you see the actual reason (for example “activated on another machine”) and the HWID reset option, instead of a generic “decryption failed”.
- The packaged app refuses debugger and developer-tools switches and always loads its own bundled interface.
- Third-party licence notices now ship with the app:
THIRD_PARTY_NOTICES.txtandTHIRD_PARTY_LICENSES.csv, plus the JSZip, Electron and Chromium licence texts and the notices for the bundled SMB helper. On Linux the notices also list the bundled Valve steamclient files.
Linux
- Ubuntu 22.04 (glibc 2.35) hosts are now supported. The Setup Assistant’s glibc check was lowered from 2.36 to 2.35, so it no longer flags Ubuntu 22.04 as too old.
- The Linux .deb now installs on Ubuntu 22.04. Its audio dependency accepts either
libasound2orlibasound2t64. - If a Stop can’t confirm the server shut down, AASM keeps tracking it, so pressing Stop again still works on the same server.
- The Setup Assistant’s disk-space message is accurate. It shows the requirement including its 5% headroom, and no longer says you’re below the limit when you aren’t.
- Cross-chat starts as soon as a server reaches Running.
- The updater keeps a log of the relaunched app’s startup output after an in-app update, so if AASM doesn’t come back after updating, there’s something to send us. It’s the newest
relaunch-<timestamp>.login~/.local/share/aasm/logs(the first 4 MiB of output; the newest 5 are kept). This applies from the next update after v0.9.6: the update to v0.9.6 is still applied by your current (v0.9.5) updater, which doesn’t keep this log. If AASM doesn’t come back after that update, send usupdate-linux.logfrom the same folder plus your AASM logs.
Companion RCON Manager
- The bundled ASA RCON Manager updates to v0.9.6 (version-synced with AASM), its first update since the v0.9.3 build.
- A licence-server hiccup is no longer treated as an invalid licence. Outages, rate limits and firewall blocks now use the offline grace period.
- If the saved licence data is damaged, it asks for one normal online check instead of starting offline.
- Player History updates live as players join and leave. You shouldn’t need to restart or hit Connect All to see new entries.
- Background polling no longer overlaps or shows results from an old connection after a reconnect.
Worth knowing
- The safety copy holds the world file only. It doesn’t include player profiles or tribe files as they were before the restore. That’s how it worked before too; keep your regular backups.
- With
{date}or{timestamp}in your backup folder template, the safety copy goes into the folder for the moment the restore started. The backup list only shows it while the template still points to that folder: until the date changes with{date}, and not at all with{timestamp}. It’s still in your backup folder; find it there by hand. - If AASM quits or crashes while it’s still writing a restore’s safety copy, a hidden
.restore-original-…folder can stay in your backup folder, and AASM leaves it alone. Your save hadn’t been touched yet at that point. Once AASM is closed you can delete that folder if all it holds iscreator.jsonandoriginal.zip.partial. - Skip Countdown When Empty still restarts early on purpose. It’s documented now, not changed. Turn it off if you want restarts on the scheduled minute.
- AASM looks for a map’s save folder by its map name, with or without
_WP. If yours is named differently (some modded maps), the player lists show an error instead of guessing. Tell us the folder name. - If the Discord bot shows as stopped and doesn’t come back by itself, open the Discord dialog and hit Retry connection.
- A status card stuck on Running or Stopping under heavy fleet load is still being worked on. If you hit it, send logs.
- If AASM’s memory still climbs over several days on v0.9.6, send us your logs. We fixed the leak we found, but we can’t promise it was the only one.
- SMB “Test connection” needs the share’s username and password filled in and a share path like
\\server\share. Without them the test says “SMB connection check failed.” even if scheduled backups to that share work with your Windows sign-in. - .bat import keeps settings already in your INI over values from the .bat. If the INI is saved as UTF-16, convert it to UTF-8 first. Launch flags like
-clusteridor-passivemodsland in Console Arguments, so check they don’t duplicate AASM’s own cluster or mod settings. A session name with brackets, likeSessionName="My Server (PvE)", counts as an unsafe token, so only the name and path would be imported; take the brackets out of the .bat before importing and set the full name in AASM afterwards.
Known issues
These are open in v0.9.6. Each one has a manual step. For the leftover locks below, AASM stops with an error and leaves the lock where it is. v0.9.6 has no automatic or one-click recovery for them: the fix is to close AASM and delete the leftover lock by hand.
- Linux: a backup lock left behind by AASM v0.9.5 isn’t cleared automatically. If a v0.9.5 crash or quit left a lock in a backup folder, backups and restores for that folder stop with “Legacy backup lock present” and the name of the lock file. Close AASM, then in that backup folder delete that hidden
.aasm-backup-*.lockfile (and the hidden.aasm-backup-directory.lockfolder, if there is one). Windows usually clears a v0.9.5 lock by itself when the backup folder is on a local disk; when it can’t, see the next item. - A lock whose old process number is now in use isn’t cleared automatically. AASM only clears a leftover lock once it can prove the process that left it is gone, and Windows in particular can hand that process number to another program. Backups and restores for that folder then stop with “Legacy backup lock present” (with the name of the lock file) or “Backup directory busy or inaccessible (live-or-pid-reused)”. If the message is still there after you restart AASM, close AASM, then delete the hidden
.aasm-backup-*.lockfiles and the hidden.aasm-backup-directory.lockfolder (if there is one) in that backup folder. For a folder on a network share, see the last item. - SFTP: a stale lock on the backup destination isn’t cleared automatically. If AASM was closed or updated during an SFTP upload, the remote folder can keep a
.aasm-backup-directory.lockfolder, and later backups to it fail with a “remote directory lease” error that names the remote backup folder and ends with the SFTP server’s own message (for example “Failure”). Restoring a backup that’s only on that SFTP destination fails too until the lock folder is removed, and that error starts with “Restore failed:” rather than “remote directory lease” (it also ends with the SFTP server’s message). AASM can’t prove the remote owner is gone, so it doesn’t guess. Close AASM (on every PC that backs up to that destination), then delete that folder on the SFTP server. - Network backup folder (SMB/NFS): a leftover lock isn’t cleared automatically. If AASM crashes, quits or updates in the middle of a backup into a backup folder on a network share, later backups and restores for that folder report it as busy (“Backup directory busy or inaccessible”) or say a legacy backup lock is present. That happens on every PC that uses the folder, including the one that left the lock: AASM can’t prove from a share that the old process is gone, so it doesn’t guess. Close AASM on every PC that uses that folder, then delete the hidden
.aasm-backup-directory.lockfolder and any hidden.aasm-backup-*.lockfiles in it. On Linux the same applies to a backup folder on a drive that isn’t ext2/ext3/ext4, Btrfs, XFS or F2FS (for example exFAT, NTFS or ZFS).
Upgrade notes
- Backup file names have changed. New backups carry a server ID in their name, for example
automatic_backup_[long server id]_TheIsland_WP_[date-time]_[id].zip. That’s how AASM knows which server owns which file, so cleanup never deletes another server’s backups. Backups with a server ID in the name can’t be renamed in AASM (that keeps them restorable); if you want a copy under another name, copy the file outside AASM. Other backups can still be renamed, but not to a name that looks like one of AASM’s own. - Your old backups are kept and not cleaned up automatically. Backups from before v0.9.6 use the old names, AASM can’t prove it made them, so it leaves them alone (Cleanup Old reports what it kept). For a while you may hold about twice your usual number of backups. If disk space matters, delete the old ones by hand once you have enough new ones.
- Post-stop and pre-rollback backups are now capped. Backups made by “Backup on Manual Stop/Restart” and the backup taken before a build rollback now carry a server ID too, so they can’t be renamed in AASM. AASM keeps the newest 10 of each for every server (with the cluster backups that go with them) and deletes older ones it made. Copies from before v0.9.6 are kept. If you want to keep one longer, copy it out of the backup folder.
- Restore safety copies (
...-ORIGINAL.zip) now always go in your backup folder, including restores from SFTP/SMB. They’re not cleaned up automatically, so delete them yourself once you’re happy with a restore. - Scheduled backups need a backup folder saved in the server’s backup settings. v0.9.5 quietly fell back to a default folder; v0.9.6 doesn’t. If scheduled backups stop after updating with “Explicit durable local backup directory is required”, open Backup settings, pick a folder and save. Backing up straight to an SMB share needs one too: without a local folder, each scheduled backup is still written to the share but is reported as failed (“Explicit durable local backup directory missing”) and flagged as needing your attention; it isn’t retried.
- Mod edits need a stopped server. Removing mods, enabling or disabling them, changing load order and copying mods to another server are refused while the server is running. A mod added by ID to a running server is queued for the next restart. Stop the server, make the change, start it.
- Managing other machines needs every machine on v0.9.6. A v0.9.6 window managing a v0.9.5 machine (or the other way round) can’t edit mods or confirm pending changes. Update all your AASM machines together.
- Cross-chat now works without the Cluster toggle. Servers that already had cross-chat ticked and a chat group set will start relaying chat after the update, even if their Cluster toggle is off. Untick cross-chat on any server you don’t want relaying.
- Vanished-character auto-restore is switched off once after the update. AASM tells you when it happens. Check your save folders, then re-arm it for each cluster. Your older snapshots are still there for manual restore.
- Servers with no admin password get a random one. v0.9.5 started a server whose
ServerAdminPasswordwas empty with the public defaultAASM. v0.9.6 generates a random admin password the next time such a server starts and saves it in that server’sGameUserSettings.ini(you can see and change it in the server’s settings). An admin password of exactlyAASMin that file is replaced the same way, and-ServerAdminPassword=AASMin Console Arguments is ignored. If you, your admins or an outside RCON tool usedAASM(for RCON orenablecheats), look up the new password there or set your own. Any other password you set yourself is never changed. - A server whose platforms were saved with commas now starts with them joined by
+. Earlier versions saved several ticked platforms with commas (for exampleServerPlatform=PC,PS5inGameUserSettings.ini). v0.9.6 starts that server with-ServerPlatform=PC+PS5, so exactly the platforms you ticked take effect. If ALL is ticked together with other platforms, the server starts withALL. Depending on how ARK read the old comma form, this can change which platforms can see and join the server. If consoles can now join, PC-only mods may be rejected: untick the console platforms or remove those mods. On Linux, a server that the system starts at boot (autostart) or restarts by itself after a crash keeps its previous launch arguments until you next start it from AASM. If you go back to v0.9.5, platforms saved with+show nothing ticked there, but the server still starts with them. - The update to v0.9.6 is applied by your current (v0.9.5) updater, which closes other programs with “updater” in their process name while it runs (some hardware vendors’ updaters, for example). Nothing is harmed and you can reopen them. From v0.9.6 on, the updater doesn’t do this.
Platform and file details
| Platform | Package | Size | Requirements |
|---|---|---|---|
| Windows | .zip (includes the companion ASA RCON Manager v0.9.6) | 353.9 MB | Windows 10/11 or Windows Server 2019+ |
| Linux | .tgz (both apps; updates itself in-app) | 315.4 MB | 64-bit graphical session; Debian 12+ or Ubuntu 22.04+ |
| Linux | AppImage (the Server Manager on its own) | 211.1 MB | 64-bit graphical session; Debian 12+ or Ubuntu 22.04+ |
| Linux | .deb (the Server Manager on its own) | 164.4 MB | Debian 12+ or Ubuntu 22.04+ (accepts libasound2 or libasound2t64) |
For either platform, use at least 16 GB RAM. AASM recommends 32 GB when running multiple ASA servers, plus SSD storage and sufficient free space for server files, staging data and backups.
How to update
- Stop active server maintenance and wait for backups or updates already in progress to finish.
- Create a current backup of every world and any shared cluster data.
- Read the Upgrade notes and Known issues above: backups, mod edits and admin passwords behave differently now.
- Update in-app through Settings → Check for Updates, or download the correct file from this domain and verify its SHA-256 fingerprint. A
.debor AppImage install is updated by downloading the new file. - Confirm v0.9.6 in AASM before restarting the fleet, and update every AASM machine you manage together: a v0.9.6 window can’t edit mods or confirm pending changes on a v0.9.5 machine.