Object and vehicle overrides fallback to client prefab if server prefab does not exist.
Clouds not visible with OpenGL.
Multiplayer Workshop File Order:
In multiplayer the client now rebuilds the list of known assets according to the workshop file order specified by the server. This fixes a variety of issues like crafting recipes from mods not available on the server showing as crafting options, and ensures that mods which override each other are applied in the same order for all players.
Walls and pillars can be snapped above and below existing walls.
"The Bridge Where It Rains" music by staswalle on Washington loading screen.
Screenshot resolution multiplier and supersampling option. For example supersampling with a 4x multiplier at 1920x1080 will produce a 15360x8640 screenshot downsampled to 7680x4320.*
New editor for "devkit" volumes in the regular level editor.
Game now handles Steam overlay screenshot requests.
Screenshots no longer overwrite each other and can appear on the startup loading screen.
Fixed:
Vanilla pre-placed blood decals are not loaded if blood splatters are disabled.
Human animation template leg roll.
Potential problem with per-level version kick, log when unable to parse version.
Housing ramp blocking pillar and wall placement two floors below.
Holiday items visible in stylized chart capture.
Effect spawn position when forageable bushes are destroyed.
Roads that should have been curved on Germany.
Spot where the road was partially covered by the terrain on Germany.
All of the road guardrails on the Germany map to face inwards rather than outwards.
Removed some boulders that were located under the map terrain on Russia.
Incorrect materials being used out-of-bounds on Russia.
Typo for the ragdroll removal tool where the item name was misspelled.
Icon dimensions of many cosmetics to improve the quality of their high-res icons.
Downward Building:
Houses can finally be extended downward! This is especially useful for bridging gaps like roads and rivers, or repairing foundations after a raid.
Volumes Editor:
All of the "devkit" volumes have been moved into the regular editor, and are easier to shape with the new box move and box resize tools. Subsequent updates will convert older volume types like safezones to this tool, and add other shapes like spheres.
The Bridge Where It Rains:
Washington is the second map to receive theme music by staswalle! You can hear it on the loading screen, boombox item, or his YouTube channel here:
Special thanks to Tyler "MoltonMontro" for the map and icon tweaks and fixes!
Playtime item drops have been disabled, but may return for special events like map releases. It was not very exciting to receive the older items, and I want to eliminate any item drop farming if it exists.
This will be the final version with 32-bit Windows support. According to the Steam hardware survey 32-bit Windows is approximately 0.22% of players.
*Current supersampling implementation is a mediocre placeholder until I add supersampling as an in-game anti-aliasing option. It will be faster once that is taken care of.
Patch #1:
Fixed:
All weapons being treated as having bladeID 0.
Preserve old scale pivot snapping behavior.
Kill volumes not killing.
Patch #2:
Added:
Option to disable custom screenshots on loading screen.
Fixed:
Kuwait achievement names in item descriptions.
Fists able to damage objects with blade restriction.
Volumes editor using incorrect snapping values.
Decimal number fields getting reset when manually typing decimal point.
Animated objects without Clip.prefab not animating on server. (Always Animate culling type)
I am happy to celebrate another great year in the Unturned community! We first launched into Early Access on Steam in 2014: eight years ago today. Thank you to everyone for your longtime support and encouragement as the game continues to grow and (hopefully) improve! I consider myself incredibly fortunate and lucky to be able to focus on this project full-time for so long.
Changelog:
Added:
Housing Planner tool for quickly placing structures. [ID 1764]
Notification on main menu when an update is available.
Server option to shutdown for auto-detected game updates. (Finally, eh?)
Server option to shutdown for scheduled maintenance at a fixed time.
Grow_SpawnTable (guid) option for crops.
Copy to Clipboard button for error message.
Option to make terrain holes visible for finding gaps.
Terrain material icon in asset list.
Changed:
Housing item placement is easier now that connections betweem then are tracked.
Roof placement requires two pillars rather than a pillar at each corner.
Shooting/attacking stops clientside if no inbound traffic has been received for 2 seconds.
Updated barricade placement on vehicle to use netids rather than index.
Temporarily buffed brick-material housing items from 800 to 1650 HP.
Fixed:
Many exploits for stacking housing items in the same slot.
Explosion damage respects zombie armor.
Terrain editor per-"pixel" smoothing mode near edges.
Whitespace-only player names with name filter disabled.
Reverted post processing version to work around TAA transparent field of view bug.
Some terrain hole gaps on Germany.
Wrong material on circular table barricade LOD1.
Housing Planner:
The Housing Planner lets you quickly place housing items without waiting for animations, and pick them back up much faster. It can crafted from a GPS and Rangefinder, or found as an uncommon drop at construction sites.
There are a variety of housing-related rewrites in this update which are part of a first step towards better base building. Future work in this area will include building downward, claim flags automatically covering the entire connected house, replacing the crafting system, and more!
Server Auto Restart:
Two features have been added to the server Config.json file in this update to make server maintenance without plugins easier:
Scheduled Maintenance:
Restarting approximately once per 24 hours is recommended for the meantime because most of the older code still uses 32-bit floating point time. While this is gradually being improved an option to schedule shutdown has been added.
Enable_Scheduled_Shutdown: if true the server will shutdown at the specified time.
Scheduled_Shutdown_Time: local time the server will shutdown.
Scheduled_Shutdown_Warnings: list of times before the shutdown to notify players. For example 30:00 will broadcast in chat 30 minutes before the shutdown.
Checking for Updates:
Finally! The server can monitor for updates and restart when one is detected.
Enable_Update_Shutdown: if true the server will monitor for updates.
Update_Steam_Beta_Name: defaults to "public", but can be set to "preview" for servers running on the preview branch.
Update_Shutdown_Warnings: after an update is detected the server will wait for the longest of these durations to notify players before shutdown. For example if the longest time is 2:30 the server will broadcast in chat 2 minutes and 30 seconds before the shutdown.
Practical Application:
These options are most useful in conjunction with a script that updates and restarts the server in a loop. For example this Windows .bat script can be placed in the steamcmd folder to infinitely update and restart the server:
@echo off
rem @ suppresses echo command from being echoed, and then disables echoing in this script.
rem This is a label for use with "goto". The script will return to this label to update and restart the server.
:loop
rem %~dp0 expands to the path to this script's directory, allowing it to be called from a different working directory.
rem The "/wait" option pauses our script until steamcmd is finished.
rem Start steamcmd, download latest version of Unturned Dedicated Server, then close cleanly.
echo Updating...
start "" /wait "%~dp0steamcmd.exe" +login anonymous +app_update 1110390 +quit
echo Finished update! Launching server...
start "" /wait "%~dp0steamapps\common\U3DS\Unturned.exe" -batchmode -nographics +InternetServer/MyServer
echo Server has exited. Restarting after timeout...
echo:
echo Press CTRL+C and then Y during this timeout to cancel restart.
timeout 10
rem Return to the "loop" label to update and restart the server.
goto loop
Windows 32-bit Deprecation:
This will be one of the last updates with 32-bit Windows support. According to the Steam hardware survey 32-bit Windows is approximately 0.22% of players. The final update with 32-bit Windows support will be sometime in early August, and will also remain permanently available on a Steam beta branch for anyone returning to the game on a 32-bit PC.
Kuwait's final update is here! The monuments on Boubyan Island have finally charged up to power the main obelisk. Play today to discover (and promptly escape) the outlands.
To host a server running the map add its workshop file ID (2483365750) to the File_IDs list in WorkshopDownloadConfig.json, and set the map to Kuwait in Commands.dat.
Two challenging new achievements with free rare items have been added in a final questline:
For the next two weeks a variety of exclusive new free items will be dropping:
This project was created by Animatic and NSTM. If you enjoy the map and would like to support them, consider checking out their Kuwait-themed bundles on the Stockpile:
We have collaborated with Makeship to bring the Biohazard Zombie to life in the form of a limited-edition collectible plush toy!
Edit: the campaign has concluded after being successfully funded! Thank you to everyone for your interest and support, we are looking forward to sending them out in September!
Base Game Changelog:
Added:
"Projection Ratio Coefficient" option for "Focal Length" sensitivity scaling.
Terrain editor hotkeys to switch active tab.
Changed:
Updated Unity from 2019.4.38f1 to 2020.3.34f1.
Always load english text as fallback.
Vanilla ban command also bans player HWID.
Fixed:
Replaced placeholder equipment rate limit fix by converting item hash to the newer asset integrity system.
Boombox volume slider triggering rate limit kick.
Explain kick when server per-platform assetbundle hash is out of date.
Vertical alignment of font color setting.
Text field character limit in IMGUI mode.
Patch #1:
We have gotten reports that many players are experiencing BattlEye issues on Mac. Unfortunately the cause is still a mystery because I have not been able to reproduce it on my test Mac, and there still seem to be lots of Mac players online BattlEye protected servers. We are working with BattlEye to narrow down and patch as soon as possible.
This patch only fixes a few mistakes in the vanilla HWID ban support.
Patch #2:
New version of BattlEye macOS and Linux clients, and speculative fix for the failed to load BattlEye kick on macOS.
Alt hotkey to remove baked foliage with paint brush.
"Disable" option for sensitivity scaling mode.
Terrain material editor filter for only in-use materials.
Terrain material and foliage editor name filters.
Kick threshold for significantly exceeding per-RPC rate limits.
Changed:
Separated terrain editor brush strength value for each tool.
Assetbundle hash is included in asset integrity check.
Fixed:
Warn if vendor vehicle spawnpoint is unset.
Missing vendor and reward spawnpoint for vehicle uses player position as fallback.
Picking up items while climbing.
Invalid item conditions on tracked quest breaking UI.
Fists use melee damage multiplier.
Terrain undo/redo interfering with other undo/redos.
Patch #1:
Sorry to say that there were two embarrasing mistakes made in the initial release of this update:
Firstly, the 2020 LTS beta was accidentally set live rather than the actual update. The reason this happened is that my automatic release process was using the newest upload rather than the upload from the preview branch. In order to ensure this never happens again the automatic release will now specifically use the preview branch version rather than the newest version, and a confirmation dialog to double-check.
Secondly, players were getting kicked for exceeding rate limits when equipping a kit. This highlighted a flaw in the equipment system from back when integrity checks were first added to equipped items. For the meantime I have increased the equipment rate limits significantly as a temporary workaround, but for the next major update I will properly resolve this flaw. If you experience other incorrect rate limit kicks please let me know and I will get them fixed, and as a temporary measure it is also possible to raise the Rate_Limit_Kick_Threshold in Config.json.
Details:
Client-invokable RPCs already have rate limits intended to prevent wasting server processing time. There was no penalty for repeatedly hitting these rate limits however, so time could still be wasted ignoring requests. There is now a Rate_Limit_Kick_Threshold option: if the same rate limit is hit this many times within the cooldown window the client will be kicked. For example a value of 5 means the client will be kicked the 5th time it is called within the same cooldown window. The default is 10.
The server checks both individual asset integrity and Unity assetbundle integrity to prevent cheaters from modifying their files to gain an advantage. Previously it was possible to bypass this by loading a different assetbundle on a per-asset basis, for example by adding a legacy ".unity3d" assetbundle to a vanilla vehicle. Individual asset integrity checks now include the assetbundle hash as well which prevents this exploit as long as the multi-platform ".hash" file is available for the server.
Unity 2020 Preview:
Unturned is currently using Unity 2019 LTS. Upgrading to 2020 LTS seems to be stable now and fully backwards compatible with existing content. If you would like to give it a try it is on the "unity-2020" beta branch, though there are still some known issues to fix next week. Assuming there are no unexpected surprises *fingers crossed* it should be in the next update.
Back in 2016 the Unity engine did not have built-in support for cutting the terrain. "Hole volumes" were hacked together as a solution for Unturned, and basically acted as a portal which disabled collision against the terrain. There were a lot of drawbacks to this approach however: for example bullets had to check whether they would pass through a hole before doing collision tests, and each pixel of the terrain shader tested whether its 3D position was inside a hole for transparency (which is why there was a limit on the max number of holes). Nowadays Unity DOES have built-in support for an unlimited number of holes fully integrated with physics, so the custom workarounds can be removed!
Unturned will automatically convert hole volumes on existing maps to the painted hole mask, but there might be some gaps until the level creator manually reviews the changes. Alongside this upgrade any maps using the old terrain tools are automatically converted to the new terrain tools, which have also finally been merged into the regular editor. In order to "dogfood" these changes I manually upgraded Germany, Hawaii, and Greece (which was using the old terrain system), so hopefully that shows I really believe this is an important improvement for the game even if there are some wonky effects on older maps that need manual revision. (Sorry!) If you are working on a map and run into any problems with this conversion please feel free to email me nelson@smartlydressedgames.com.
Miscellaneous:
Following feedback on the scope zoom and sensitivity fixes in the previous update: we should now have the best of both worlds! A new "Sensitivity Scaling Mode" option has been added to the Controls menu. The default "Focal Length" option is new, and should perfectly adjust the sensitivity according to the perceived size of enemies on screen. I would recommend at least giving it a try, but if you want both the zoom levels and sensitivity to be reverted to how they were before the previous update you can choose the "Legacy" option. Alternatively the "Zoom Level" choice is available which preserves the behaviour of the previous update.
Grass loading (especially with "scope focus foliage" enabled) often felt unresponsive because it started in a grid pattern North-West of the camera. Loading now instead follows a spiral pattern outward from the camera, so the closest foliage is loaded first.
In sadder news I am sorry to say that Unturned II (4.0) development has been paused. This post summarizes some relevant factors from my personal life, and how Unturned (3.0) will be affected going forward:
Climb interaction on ladder to snap without jumping.
Graphics option for maximum draw distance.
Options menus are available in the level editor.
Quit to desktop buttons.
NPC reward to override player spawnpoint.
Changed:
Zoom factors use preferred field of view.
Invert water mask while camera is underwater.
Updated Unity from 2019.4.37f1 to 2019.4.38f1.
Fixed:
Disabled specular on vanilla static materials.
Not applying conditions/rewards on quest and vendor dialogue responses.
Disable sky fog on water backface.
Missing character limit in uGUI text chat input field.
Edit: Patch #1:
Reduced ladder interact range from 6m to 4m.
Prevent interacting with horizontal/angled ladders.
Fixed in-game quit button was blocked by combatlogging/Alt-F4 prevention on PvP servers.
Fixed unable to decline quests.
Ladders:
After the character movement update it became more difficult to climb down ladders, so at long last you can optionally press the Interact key to mount at the point you are looking! Hopefully this reduces the number of hospital visits caused by jumping to climb down. Walking into a ladder to climb is also still supported.
Max Draw Distance Option:
You are probably sick and tired of hearing about fog adjustments with these past few updates.
100% is a balance between performance and quality. It was the intended maximum in the first of these updates, reducing the draw distance from its previous insanely high value. 50% is available for some lower-end hardware, but players at the maximum network distance will be slightly within the fog. 200% is available for higher-end systems.
Keep in mind that 2x the draw distance (radius) is 4x the area, so 100% has 4x the area considered for rendering compared to 50%, and 200% has 16x the area compared to 50%. The level editor max draw distance is separate from the in-game max draw distance, and its values are 2x as large. Landmark draw distance is automatically adjusted for the max draw distance, so for example landmarks 100% with a max of 150% is not rendering any landmarks in the fog.
Miscellaneous:
Controls, options, graphics, and display settings can be adjusted in the level editor without returning to the main menu. You can also quit to desktop from the level editor or in-game pause menus, however the disconnect timer applies while playing in multiplayer.
NPCs can set a spawn location override so that the player will respawn at a marked location or vehicle spawnpoint. This override is saved between sessions. For example it could be useful for story sections or safezones.
Previously scopes and optics multiplied a base field of view of 90 degrees, whereas now your configured field of view is used.
Mask when camera near clip plane intersects water.
PvP damage penalty when client is potentially faking lag. (e.g. "lag switch")
Changed:
Various minor gameplay balance adjustments. (detailed below)
Render sky fog before transparent objects. Water transparency renders sky fog in forward pass.
Updated Unity from 2019.4.35f1 to 2019.4.37f1.
Converted hardcoded Anastasia door to text chat component + IOBS component.
Fixed:
Warning when item blueprints have identical conditions.
Leftover holiday chicken on Liberator. [Thanks danaby2]
Capturing satellite image when assets are missing from level.
Singleplayer pause menu also pauses audio globally. [Thanks Toothy Deerryte]
Balance Improvements:
It is widely agreed that some balance adjustments are long overdue, so this update combines a variety of work-in-progress upgrades from the past few months of tuning and feedback:
Edit: these "Balance Improvements" were for April Fools. The underlying real issues here should gradually be improved upon however, for example the skill system needs a revamp, vanilla helicopter audio should be upgraded, global pathfinding would greatly help AI, etc. Hope you had a good one!
Recoil on the Maplestrike has been decreased by 5%, and the recoil control buff from Sharpshooter has been changed from 50% to 95%.
Draw distance has been further reduced down to 256m. Inflation of map sizes in open-world AAA games make it harder for us to compete, so the extremely exaggerated fog in Unturned at least makes the map FEEL bigger.
Green skin color hues have been removed from the Permanent Gold Upgrade. They made it too easy to blend into grassy maps like Kuwait and Arid. Instead, they are now a complimentary benefit of the new subscription-based Platinum Upgrade DLC. Locking them behind a more expensive paywall makes them rarer, and thus more balanced.
Helicopter audio volume has been increased by 220% to better convey how intimidating it should feel to see a helicopter flying toward your base. The deafening volume for passengers helps balance out how useful they are.
It was unfair for zombies to use navmesh pathfinding when animals cannot, so zombie AI has been replaced by animal AI. Use of flares and other zombie-attracting items is encouraged to help them get unstuck from corners.
Devkit was overpowered because it had features missing from the regular editor, so two new level editors "modKit" and "BoxEd" have been added which combine some features and remove others, evening the playing field for beginners to the modding scene. Editing mods without re-uploading to the workshop first is no longer supported.
Edit: again to clarify, these "Balance Improvements" were for April Fools. The underlying real issues here should gradually be improved upon however, for example the skill system needs a revamp, vanilla helicopter audio should be upgraded, global pathfinding would greatly help AI, etc. Hope you had a good one!
Underwater Mask:
The lower-left of this screenshot would previously have been a clear view of underwater zones, but now gets filled with the water color. This should help protect secret underwater locations and bases.
Fake Lag Threshold:
In recent weeks the exploit of artificially delaying game packets AKA "lag switching" has become more of a nuisance. To combat this, a new setting in the server Config.json file "Fake_Lag_Threshold_Seconds" has been added with a default value of 3 seconds. If there is a delay between input packets from the client greater than this threshold they will be penalized for a corresponding duration minus one second. For example if the threshold is 3 seconds and the server does not receive any inputs from a client for 3.2 seconds, they will be under penalty for 2.2 seconds.
During a fake lag penalty the client's damage against other players is multiplied by the "Fake_Lag_Damage_Penalty_Multiplier" setting which defaults to 0.1 or 10%. For example if the multiplier is 0.2 then the client will only deal 20% gun and melee damage against other players while under penalty.
Unfortunately false positives are relatively likely if the client framerate hitches, for example while loading a dense region. With the netcode rewrites of the past year these hitches should gradually be ironed out, but for the meantime the "Fake_Lag_Log_Warnings" setting can be enabled to help tune the threshold.
"Disable" option for weather command which cancels active weather and future scheduled weather. Useful for maps like Yukon which otherwise immediately start different weather when cancelled.
Editor setting to disable clouds on a map. [Has_Clouds in level asset]
Button to open file explorer in workshop item's install folder.
Button to open Logs folder from errors window.
Changed:
Save preferred in-game player list sort mode.
Increased level editor far clip plane distance back to 4,096m.
Sky transition fog only starts blending in past 75% of the far clip plane. This feels less foggy than the previous update, and helps hide issues with transparency.
Using weather command with currently active weather guid will reschedule rather than toggling.
Gentle snowfall no longer overrides sky fog.
Fixed:
Planar reflection skybox projection matrix.
Hide holiday-restricted props from satellite capture.
With streamer mode enabled show in-game player list using redacted names.