
If your DayZ server will not start or your mods stopped working after Update 1.30, the cause is usually a mod that has not been updated for the new build. Find it in the newest script log in your server's profile folder, then update it or take it out, and if the log does not point at one mod, start the server with a shorter -mod= line until it boots.
Update 1.30 went live on Steam stable on 15 October 2026 together with DayZ Badlands, as build 1.30.164078 (stable notes, Bohemia's script repository). It renames script functions, gives every mod its own file system, moves animation graphs to a new format and changes the navmesh format, so a lot of mods needed a new version on day one.
In its release announcement Bohemia said the first 1.30 patch would go to Steam experimental the next day and "focus on addressing issues that affect modders on Steam". That patch came out on 16 October. The stable patch will "follow at a later date", and Bohemia has not given a date.
What 1.30 changed that breaks mods
Script functions that were renamed or removed
Bohemia publishes the scripts of every build in its DayZ-Script-Diff repository, so you can compare 1.29 and 1.30 line by line. Two changes matter most for server owners.
UnlockServer is now UnlockOnServer. In 1.29 the combination lock opened on the server through void UnlockServer( EntityAI player, EntityAI parent ). In 1.30 that function is gone and the lock has void UnlockOnServer(EntityAI player, EntityAI parent, bool isInsideLock = false) instead. The new vanilla code lock uses the same name, and the combination lock keeps an empty Unlock() stub marked obsolete with the message "1.30: Use UnlockOnServer instead". A mod that still calls or overrides UnlockServer no longer compiles, which matters for any mod that opens, raids or removes locks.
The central economy hook moved. In 1.30, OnCEUpdate() is marked obsolete with the note "Use OnCEIterate(float currentTime, float elapsedTime) instead", and the m_ElapsedSinceLastUpdate variable that the 1.29 scripts told modders to use inside it is gone (entityai.c in 1.30). Vanilla explosives, the territory flag and contaminated areas now do that work in OnCEIterate. A mod that still reads m_ElapsedSinceLastUpdate will not compile, and a mod that only overrides OnCEUpdate has to move its code to the new hook.
A stricter compiler and known modding bugs
Code that compiled on 1.29 can fail on 1.30 without touching any renamed function. The TraderPlus changelog for 15 October fixes "script compile errors with the stricter 1.30 compiler (syntax errors, missing override, implicit casts)", and VPPAdminTools fixed a compile error the same day.
Bohemia's stable notes also list known modding issues. These are the ones that can stop a mod or a whole server:
#includedoes not work, so scripts that pull in other files this way fail.- FindFiles does not work. The CF 1.5.9 changelog explains what that means in practice:
FindFiledoes not resolve file system prefixes such as$profileand$missionunless you pass -1 as the flags, and it does not accept backslashes in the pattern. A mod that searches your profile or mission folder for its files can come up empty, and what happens next depends on the mod. - A "Circle inheritance" script error when a mod changes a class with a static variable that refers to another static variable.
The same list also names three problems in the modding tools and assets: FBX import, resource variants and script plugins.
File system, animations and terrains
- Every mod gets its own file system. The notes say "Mods now have their own named filesystem". The experimental patch below adds a PBO property for mods that need to share a prefix with another PBO.
- Animation graphs use a new format. Animation graph files now use the Enfusion config format, and the Buffer Save and Buffer Use graph nodes are removed. When 1.30 went to experimental on 16 September, Bohemia already warned that "you might encounter problems with animation-related mods" (announcement).
- Community terrains need a new navmesh. The navmesh file is on a newer version "with no backwards compatibility", and Bohemia tells terrain makers to regenerate it. Namalsk did this on 15 October: its changelog says "Exported Namalsk under latest WRP and navmesh format".
- Packing is stricter. The binarizer now stops when a member is defined more than once in a config file, so a mod that packed fine before can fail when its author rebuilds it for 1.30.
Find the mod that breaks your server
- Make a backup before you change anything: a backup in your panel, plus a download of the mission folder (persistence lives in its storage folder,
storage_1by default),serverDZ.cfgand the profile folder. - Open the profile folder. It is the folder your
-profiles=launch parameter points to, and the BI wiki says the server writes its logs there. You want the newest script log, a file that starts withscript_followed by the date and time, and the newest.RPTfile. - Search the script log for the first error, not the last one. A compile failure usually shows up as
Can't compile "World" script module!(the module can also be Game or Mission), followed by a file path and line number. The path starts with the mod's folder or prefix, which tells you whose code failed. An error that mentionsUnlockServer,OnCEUpdateorm_ElapsedSinceLastUpdatepoints straight at the changes above. - Open that mod's Workshop changelog. If it has a 1.30 update, make sure your server really runs it: restart so the server pulls the new version, and if the author changed the signing key, copy the new
.bikeyfrom the mod'skeysfolder into the server'skeysfolder. If there is no update yet, leave the mod out for now. - If the log does not name a single mod, shorten the
-mod=line. Keep your frameworks (CF, Dabs Framework) and your map, remove half of the other mods, and start the server. If it boots, the problem is in the half you removed, so add back half of those and try again. Always remove a mod together with the mods that need it, and treat-serverMod=the same way. - Do these test starts on a copy of your world. A start without some of your mods can cost you the items those mods added to persistence. The simplest way is a separate storage folder: set
instanceId = 2;inserverDZ.cfgfor the tests (the BI wiki describesinstanceIdas the number that picks the storage folder with the persistence files), then set it back to 1.
A shortened mod line for a test looks like this, with your own folder names:
Full list: -mod=@CF;@DabsFramework;@ModA;@ModB;@ModC;@ModD;@YourMap
First test: -mod=@CF;@DabsFramework;@ModA;@ModB;@YourMap
If the server starts but players cannot find or join it, the problem is usually the mod list, keys or the server browser rather than the scripts. Our DZSA Launcher troubleshooting post covers those checks. Updates like this one are also the moment to look at the length of your list: our server mods guide explains why a short list is easier to keep running.
Which mods have a 1.30 update
This is the state on 16 October, taken from each mod's own Steam Workshop changelog. Workshop pages change quickly, so check the changelog again before you update.
| Mod | Updated | What the author wrote |
|---|---|---|
| CF | 13 Oct | Release 1.5.9: DayZ 1.30 compatibility, plus CF::FindFileEx as a work-around for the FindFile bug |
| Community-Online-Tools | 14 and 15 Oct | DayZ 1.30 compatibility, followed by fixes |
| DayZ-Expansion | 15 Oct | Update 1.9.79: "DayZ 1.30 Experimental compatibility", motorbike vehicle covers |
| VPPAdminTools | 15 Oct | "Fixed Compile error with CParser string" |
| Code Lock | 15 Oct | "Updated for DayZ 1.30" |
| TraderPlus | 15 Oct | Compile fixes for the stricter compiler, menu input fix, same signing key |
| Dabs Framework | 15 Oct | Updated, no notes |
| Namalsk Island and Namalsk Survival | 15 and 16 Oct | New WRP and navmesh export, Athena facility changes |
Several popular mods had no 1.30 entry on 16 October: BaseBuildingPlus (last update March 2025), MuchCarKey (February 2025), the DeerIsle map (June 2025), SNAFU Weapons and Mass'sManyItemOverhaul (both April 2026, for 1.29). A missing entry does not prove a mod is broken, but test these before you put them back on a live server.
What you can fix now and what waits for the stable patch
| Problem | What you can do now | Fixed on experimental (16 Oct)? |
|---|---|---|
A mod calls UnlockServer | The author renames it to UnlockOnServer. You update the mod or leave it out | No, the old name is gone for good |
A mod uses OnCEUpdate or m_ElapsedSinceLastUpdate | The author moves the code to OnCEIterate | No, this is a deliberate API change |
| Compile errors from stricter checks | The author fixes the code | Not listed |
FindFile misses $profile and $mission paths | Run CF 1.5.9 or newer and the latest mod versions | Yes (DZEXP-134) |
#include in scripts | Mod update, or wait | Yes (DZEXP-85) |
| "Circle inheritance" error | Mod update, or wait | Yes, for all cases |
| Animation graphs in the old format | The author converts the graph | No |
| Old navmesh on a community map | The map author re-exports it | No |
| A specific server crash | Wait | Yes |
As a server owner, "now" mostly means: run the latest Workshop versions, leave out mods without a 1.30 build, and make sure CF is on 1.5.9 or newer, because CF ships its own FindFile work-around. Mod authors can rename the UnlockServer calls, move OnCEUpdate code to OnCEIterate, fix the compile errors and use CF::FindFileEx (or pass -1 as the flags, as CF describes) until the FindFile fix reaches stable.
The experimental patch of 16 October
Bohemia released Experimental 1.30 Update 2, version 1.30.164200, on 16 October (change log). For server owners it fixes:
- a specific server crash
- servers that appeared as not having a compatible version in the Launcher
- motorbikes that could be launched into the air when colliding with small objects or on bridges
For mod authors it changes:
FindFilenow searches the requested file system and normalises paths to the engine's/delimiter (DZEXP-134)#includeworks again in scripts (DZEXP-85)- the "Circle inheritance" error in the script compiler is fixed for all cases
- a new PBO property,
fsShadowing=1, lets a PBO load even when its prefix matches another one, so mods can override Enfusion config files such as.layoutthrough variants - the
resolveFilePatchingUsingEnfusionlaunch option from the stable notes is renamed toloadRVFilesViaEnfusionFS - Workbench can import FBX files as models. The one modding known issue left in these notes is that Workbench needs the
-filePatchingcommand line argument
The patch only exists on the DayZ Experimental Server, Steam app 1042420. The stable server, app 223350, stays on 1.30.164078 until the stable patch ships. Players can only join an experimental server with the experimental version of the game, so moving a live community there for these fixes is rarely worth it. Leave out the mods that are still broken and wait for stable. If you write mods, the experimental server is where to test your fixes. The archived BI wiki page on Linux hosting shows both app IDs in SteamCMD and tells you to log in with your own Steam account.
Mission files: a 1.30 problem that looks like a mod problem
Not every 1.30 problem comes from a mod. On 16 October Bohemia updated the vanilla Chernarus, Livonia and Sakhal mission files in its Central Economy repository. The motorbikes show what goes missing when you keep old copies, because they need entries in five files:
cfgeconomycore.xmlhas a new root class,<rootclass name="MotorbikeScript" act="car" reportMemoryLOD="no" />, registered the same way asCarScriptandBoatScriptdb/events.xmlhas a newVehicleMotorbikeeventcfgeventspawns.xmlhas spawn positions for that eventdb/types.xml, which was largely rewritten on all three maps, now has entries such asMotorbike_01_Bluecfgspawnabletypes.xmlsets the attachments a motorbike spawns with
A server that still runs an older custom copy of these files does not get the 1.30 entries, so merge Bohemia's new files into yours instead of keeping the old ones. Our types.xml guide explains the values you are merging, and the Badlands and 1.30 checklist covers the rest of the update, including the new Nasdara mission.
Hosting it with us
Our DayZ server hosting runs in the Netherlands, Germany, Poland and Australia (Sydney), with plans from €8.30 a month. Every plan has full FTP access and full types.xml access, so you can read the script logs and merge mission files yourself, and Survivor and Bandit come with two backup slots, Hero with three, for a restore point before you start testing. The server files update automatically when Bohemia ships a DayZ patch, so the coming stable patch reaches your server by itself, but your Workshop mods still need their own 1.30 versions. Our support team is online from 08:00 to 20:00 UTC, seven days a week.
FAQ
Why won't my DayZ server start after the 1.30 update? Usually because a mod has not been updated for 1.30 and its scripts no longer compile. Open the newest script log in the profile folder, find the first error and update or remove the mod named in its file path.
What does UnlockOnServer mean in my DayZ log?
It is the 1.30 name of the function that opens a combination lock on the server. In 1.29 it was called UnlockServer, and the 1.30 lock also has an obsolete Unlock() stub that points to UnlockOnServer. If one of these names shows up in an error or warning, the mod behind it was written for an older version. Only its author can fix that, so update the mod or leave it out.
Should I move my server to the experimental branch?
Not for a live community. The 16 October experimental patch fixes FindFile, #include and a server crash, but your players would need the experimental version of the game too, and Bohemia has not dated the stable patch that brings the same fixes.
Do I have to wipe my server for 1.30? Bohemia wiped its official servers ("a full wipe across all platforms"), but we have not found a 1.30 instruction for community servers. For Frostline in 2024 it recommended that community server owners wipe too. Decide with your players, and keep the pre-update backup either way.
Related guides: DayZ Badlands and 1.30 checklist | DayZ server mods worth running | DayZ SA Launcher server not showing | DayZ types.xml guide