diff --git a/redist/redist-client-preview/Assembly-CSharp.dll b/redist/redist-client-preview/Assembly-CSharp.dll
index 9f1da1dc..a9e26781 100755
Binary files a/redist/redist-client-preview/Assembly-CSharp.dll and b/redist/redist-client-preview/Assembly-CSharp.dll differ
diff --git a/redist/redist-client-preview/Assembly-CSharp.xml b/redist/redist-client-preview/Assembly-CSharp.xml
index 01db81b6..8ba4ea17 100755
--- a/redist/redist-client-preview/Assembly-CSharp.xml
+++ b/redist/redist-client-preview/Assembly-CSharp.xml
@@ -2313,8 +2313,7 @@
Utility for getting local hardware ID.
- One option for future improvement would be using Windows Management Infrastructure (WMI) API:
- https://github.com/SmartlyDressedGames/Unturned-3.x/issues/1593
+ One option for future improvement would be using Windows Management Infrastructure (WMI) API.
@@ -2327,6 +2326,11 @@
Get the local hardware ID(s).
+
+
+ Can be added to descendants of Vehicle GameObject to receive events.
+
+
Manually placed from the asset browser or old editor.
@@ -3020,6 +3024,15 @@
is collected after populating the asset.)
+
+
+ Translation data associated with this asset. Only kept if per-asset property
+ "Keep_Localization_Loaded" is true.
+ (Otherwise, memory is collected after populating the asset.)
+ Nelson 2025-11-07: hacking this in so that NPC hints replicated from the server don't
+ use the server's language.
+
+
Master bundle this asset loaded from.
@@ -3308,6 +3321,11 @@
Essentially deprecated for now.
+
+
+ Can be added to descendants of Vehicle GameObject to receive events.
+
+
New code should not use this. Only intended for backwards compatibility.
@@ -3486,6 +3504,14 @@
Can be placed in primary, secondary, or equipped while in bag.
+
+
+ Before they became an official engine feature, I was obsessed with getting projected decals into Unturned.
+ I remember noticing them in so many games at the time like, for example, Overwatch. Aras P at Unity wrote
+ a blog post explaining how command buffers could be used to achieve them which set us on the right course:
+ https://unity.com/blog/engine-platform/extending-unity-5-rendering-pipeline-command-buffers
+
+
True while fading in or fully transitioned in.
@@ -3552,56 +3578,56 @@
Is the Ctrl-C or Ctrl-Break signal being handled?
-
+
- Marker for counting number of tips.
+ Payload for the DamageTool.damagePlayer function.
-
+
- Camera used while transitioning between scenes to prevent the "no cameras rendering" warning.
+ Should armor worn on matching limb be factored in?
-
+
- Shown when game connection ping is significantly higher than server browser ping. At the time of writing
- (2025-01-17) this is likely because the server is using an "anycast proxy" in front of Steam A2S cache.
+ Should game mode config damage multiplier be factored in?
-
+
- Set to Time.frameCount + 1 while loading.
- In the past used realtime, but that was unreliable if an individual frame took too long.
+ If player dies should it count towards quests?
-
+
- Select a loading image while on the startup screen or a level without any images.
+ Effect to apply to ragdoll if dead.
-
+
- Payload for the DamageTool.damagePlayer function.
+ Marker for counting number of tips.
-
+
- Should armor worn on matching limb be factored in?
+ Camera used while transitioning between scenes to prevent the "no cameras rendering" warning.
-
+
- Should game mode config damage multiplier be factored in?
+ Shown when game connection ping is significantly higher than server browser ping. At the time of writing
+ (2025-01-17) this is likely because the server is using an "anycast proxy" in front of Steam A2S cache.
-
+
- If player dies should it count towards quests?
+ Set to Time.frameCount + 1 while loading.
+ In the past used realtime, but that was unreliable if an individual frame took too long.
-
+
- Effect to apply to ragdoll if dead.
+ Select a loading image while on the startup screen or a level without any images.
@@ -5901,8 +5927,8 @@
- Ideally component Awake/Start order should not matter, but Unturned's menu is a mess.
- For most players the default order was fine, but it seems it was not deterministic so it would break for some players.
+ Ideally component Awake/Start order should not matter, but Unturned's menu does rely on it.
+ For most players the default order was fine, but it seems it was not deterministic so it would break for some players?
@@ -7281,10 +7307,7 @@
- Extension method for Thread class.
- Plugins use this.
- I might have accidentally removed it due to zero refs and Pustalorc was mad:
- https://github.com/SmartlyDressedGames/Unturned-3.x-Community/discussions/4131
+ Extension method for Thread class. Plugins use this.
@@ -7397,6 +7420,11 @@
Unlike format, this returns null if key doesn't exist.
+
+
+ Unlike format, this returns string.Empty if key doesn't exist.
+
+
List of all loaded blueprints potentially craftable by player. Updated when assets are refreshed. This
@@ -9441,7 +9469,7 @@
Event for plugins to be notified when a server update is detected.
- Pandahut requested this because they run the game as a Windows service and need to shutdown
+ Some hosts requested this because they run the game as a Windows service and need to shutdown
through their central management system rather than per-process.
@@ -9649,7 +9677,7 @@
- Annoying frustrating workaround for IMGUI. Disable inventory headers, grids and slots while selection is open
+ Workaround for IMGUI. Disable inventory headers, grids and slots while selection is open
to prevent them from interfering with selection menu.
@@ -11109,7 +11137,7 @@
- Ugly hack for the awful skills enums. Eventually skills should be replaced.
+ Hack to parse both the speciality enum and per-speciality skill enum given the name.
@@ -11382,7 +11410,7 @@
Register a new vehicle as a valid parent for barricades.
Each train car is registered after the root of the train.
- Note: Nobody knows why these are called plants.
+ Note: why they are called "plants", refer to "only god and i" meme.
@@ -11546,7 +11574,7 @@
Unturned will adjust per-LOD sizes to counteract LOD bias.
- Elver has carefully tuned LOD sizes for the interior of the mall, so LOD bias affecting them is undesirable.
+ Some maps have very carefully tuned LOD sizes, so LOD bias affecting them is undesirable.
Note that due to a Unity bug only LOD0 can be greater than 100%.
@@ -12616,25 +12644,25 @@
If true, the real item is shown rather than the cosmetic item. If false, the cosmetic item can be seen.
-
+
- Get index within bounds assuming list is not empty.
+ In-game rich text does not support embedded YouTube videos, but they look great in the web browser,
+ so we simply remove them from the in-game text.
-
+
- Add a new item using its default constructor.
+ Unfortunately in-game rich text does not have code formatting yet, so remove the tags while preserving text.
-
+
- In-game rich text does not support embedded YouTube videos, but they look great in the web browser,
- so we simply remove them from the in-game text.
+ Get index within bounds assuming list is not empty.
-
+
- Unfortunately in-game rich text does not have code formatting yet, so remove the tags while preserving text.
+ Add a new item using its default constructor.
@@ -13954,6 +13982,21 @@
HUD with projected labels for teammates.
+
+
+ If not none, only remove zombies of this type.
+
+
+
+
+ If greater than zero, only remove zombies matching this table unique ID.
+
+
+
+
+ Navmesh index to remove zombies within. If set to byte.MaxValue then zombies are removed everywhere.
+
+
Nelson 2025-10-06: better late than never. Current indices into the gun state array (and
@@ -17110,6 +17153,12 @@
Called if dialogue animation is disabled, and when the player presses Interact [F] during animation.
+
+
+ The main reason for this silliness is older versions didn't have a layered clothing shader, rather they
+ pre-baked shirt/pant texture combinations according to the level's zombie configurations.
+
+
Not originally supported by networking. Added temporarily during netpak rewrite because the quaternion
@@ -18051,13 +18100,13 @@
Allows Unity events to send text chat messages from the client, for example to execute commands.
- Messenger context is logged to help track down abusive assets.
+ Messenger context is logged to help track down assets using it in inappropriate ways.
Allows Unity events to broadcast text chat messages from the server.
- Messenger context is logged to help track down abusive assets.
+ Messenger context is logged to help track down assets using it in inappropriate ways.
@@ -18264,6 +18313,26 @@
If true, this sentry can attack vehicles. Defaults to true.
+
+
+ If true, sentry can damage players and vehicles in PvE mode.
+
+
+
+
+ If true, sentry immediately focuses on attacking player.
+
+
+
+
+ Degrees away from forward sentry yaw sweeps left/right.
+
+
+
+
+ Duration in seconds for sentry to complete a sweep from left to right and back again.
+
+
If modifying usage please update support article:
@@ -20170,7 +20239,7 @@
If Unturned is loading this asset bundle from a Steam workshop file but the file ID does not match then
- loading will be canceled. Prevents the asset bundle from being easily copied/stolen.
+ loading will be canceled. Makes it somewhat harder to copy/re-upload without permission.
@@ -21162,7 +21231,7 @@
- Some workshop thieves use an empty title, in which case we show the file ID as title text.
+ Some workshop copyright infringers use an empty title, in which case we show the file ID as title text.
@@ -21575,7 +21644,7 @@
- Thanks DiFFoZ! Ensures GC does not release the delegate.
+ Ensures GC does not release the delegate.
@@ -21845,10 +21914,10 @@
- Perform a move, then do a capsule cast to determine if Unity PhysX went through a wall.
+ Perform a move, then do a capsule cast to determine if physics simulation went through a wall.
Required when disabling overlap recovery because there are issues when walking toward slopes that bend inward.
- To test if Unity works properly in the future; walk toward the inside of a barracks building in the PEI base.
+ To test if physics simulation handles this better in the future: walk toward the inside of a barracks building in the PEI base.
diff --git a/redist/redist-client-preview/RocketModFix.Unturned.Redist.Client.nuspec b/redist/redist-client-preview/RocketModFix.Unturned.Redist.Client.nuspec
index 5d974f63..f7d4507b 100644
--- a/redist/redist-client-preview/RocketModFix.Unturned.Redist.Client.nuspec
+++ b/redist/redist-client-preview/RocketModFix.Unturned.Redist.Client.nuspec
@@ -2,7 +2,7 @@
RocketModFix.Unturned.Redist.Client
- 3.25.10.105-preview20612735
+ 3.25.10.106-preview20803172
Unturned 3 Client-side redistributables. Standalone and always up-to-date.
diff --git a/redist/redist-client-preview/SDG.Glazier.Runtime.dll b/redist/redist-client-preview/SDG.Glazier.Runtime.dll
index ddaaf15c..bf4f8f81 100755
Binary files a/redist/redist-client-preview/SDG.Glazier.Runtime.dll and b/redist/redist-client-preview/SDG.Glazier.Runtime.dll differ
diff --git a/redist/redist-client-preview/SystemEx.dll b/redist/redist-client-preview/SystemEx.dll
index 40852894..e74e7405 100755
Binary files a/redist/redist-client-preview/SystemEx.dll and b/redist/redist-client-preview/SystemEx.dll differ
diff --git a/redist/redist-client-preview/UnityEx.dll b/redist/redist-client-preview/UnityEx.dll
index ac853da7..21bd08d6 100755
Binary files a/redist/redist-client-preview/UnityEx.dll and b/redist/redist-client-preview/UnityEx.dll differ
diff --git a/redist/redist-client-preview/manifest.sha256.json b/redist/redist-client-preview/manifest.sha256.json
index 589d5703..1b964d60 100644
--- a/redist/redist-client-preview/manifest.sha256.json
+++ b/redist/redist-client-preview/manifest.sha256.json
@@ -1,13 +1,13 @@
{
"SDG.HostBans.Runtime.dll": "5903ce4239cd9e249719e6d3c299caa5df46c1f3471daadb319b0974997135fc",
"com.rlabrecque.steamworks.net.dll": "367c3cf766d35b173868941cd2466d3908739b638f17f59f8ff4a9cf149164a5",
- "Assembly-CSharp.dll": "2c374d4ed500c8b1ff7f3f367e58c6ac761d29caac25393328a5433c7981df0e",
+ "Assembly-CSharp.dll": "a832a34fbcd7eafd8d786945977630655250214bdb8567e16f90c8a33942b4ba",
"SDG.NetTransport.dll": "efb6805dff3056d7132186e4ec5f9b203220d1963463da3d1f8729faac10958b",
- "Assembly-CSharp.xml": "1405fc6f77104d854ee96f9e0e6cbfc7c459cc3549ec87ac8dccf6777a12add2",
+ "Assembly-CSharp.xml": "092fe39bfc1f138d01615a417e3cbed97bd07deee25c6f03e53c922630a19e8e",
"SDG.NetPak.Runtime.xml": "f9592fc449fbf9564e4d5d6b28d2d6c9cda75e94bc38250e65c1a1ff064aad11",
- "SystemEx.dll": "4249b035f2b9d0769559961f670a17112af5b5503f3231433f2f045e7812a3eb",
+ "SystemEx.dll": "1a434a5d8f56f5fd780c08c850c5bd7e7831321147bb98ed899f4ba7409f5fee",
"UnturnedDat.dll": "2d8496b96972357d6101445e22e5e9ef39cc6d82403b1b0104e5e1d70dbd392c",
"SDG.NetPak.Runtime.dll": "acf6c447325b8964cb50aaa781f0933c50724d562b00f5db6a6d79beb30e9c46",
- "UnityEx.dll": "929265275061427cd10652624cd7552d85ac1b3925ab74f2b0648a02e0876bd4",
- "SDG.Glazier.Runtime.dll": "69b3cc13f11a07bfa4ed5b4a936354948a5033c37914b614b024dcf57c7445c6"
+ "UnityEx.dll": "80e6ddec7ff7b4549bd22bd0b91b2ef388cf93341216800631f863827162de79",
+ "SDG.Glazier.Runtime.dll": "0d6828280c12984ebbc3bfb5f867b97c8a22194dc034107ae4f4c3653ac3d009"
}
\ No newline at end of file
diff --git a/redist/redist-client-preview/version.preview.json b/redist/redist-client-preview/version.preview.json
index 10542574..41def1a2 100644
--- a/redist/redist-client-preview/version.preview.json
+++ b/redist/redist-client-preview/version.preview.json
@@ -1,7 +1,7 @@
{
- "GameVersion": "3.25.10.105",
- "BuildId": "20612735",
- "NuGetVersion": "3.25.10.105-preview20612735",
- "FilesHash": "8B095D8EBBEC136CEE2170201414C169E1E01732209440F419D93051F70FCBCE",
- "LastUpdated": "2025-10-30T22:18:39.2944893Z"
+ "GameVersion": "3.25.10.106",
+ "BuildId": "20803172",
+ "NuGetVersion": "3.25.10.106-preview20803172",
+ "FilesHash": "E5349FE5079EF1C2A0EECEE80DF50D24B2B8446F0C11FDFBAAA700609B27556A",
+ "LastUpdated": "2025-11-14T18:28:20.8651929Z"
}
\ No newline at end of file
diff --git a/redist/redist-manifests/.manifest.redist-client-preview.txt b/redist/redist-manifests/.manifest.redist-client-preview.txt
index e9695a67..4fcd03fc 100644
--- a/redist/redist-manifests/.manifest.redist-client-preview.txt
+++ b/redist/redist-manifests/.manifest.redist-client-preview.txt
@@ -1 +1 @@
-3096712023787745701
+2978637362974152004