Please do not ask when mod authors will update their mods to 3.9.X
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.
What is this library for?
This library aims to provide additional tools to client modders which will (hopefully) allow them to write more optimised code and reduce the performance cost and memory allocation of their code even further.
How to install this library (For users):
- Download the latest release
- Open the .7z file with 7-Zip
- Drag and drop the "BepInEx" folder into your SPT folder
How to use this library (For mod developers):
- Download the latest release
- Copy the assemblies EXCEPT the
UnityToolkit.dll
from the release zip to where you store your project's assembly references - Add all the assemblies as assembly references to your project
- Add
[BepInDependency("com.Arys.UnityToolkit")]
attribute to your plugin class - You can now use UniTask and Unity.Collections in your mod
What features does this library provide?
- UniTask is a near zero-allocating, performant version of C# Tasks that's suited for Unity than the standard C# implementation.
- It doesn't use threads or
SynchronizationContext
/ExecutionContext
so the result is faster performance and lower allocation while matching Unity threading (single-thread). - It is also possible to replace Unity Coroutine usage, which has poor performance and higher memory allocation, with UniTask instead.
- Documentation: https://github.com/Cysharp/UniTask
- It doesn't use threads or
- Unity.Collections is included in this library for the additional
NativeContainer
types it provides such asNativeList
,NativeHashMap
,NativeMultiHashMap
, andNativeQueue
.- These are useful data types when you are working with Unity's Job system as they are thread-safe.
- Documentation: https://docs.unity3d.com/Packa…[email protected]/manual/index.html
Is it safe?
Yes, both assemblies are just compiled versions of their original git repo I've also included a VirusTotal scan of both on the GitHub releases page
-
Version 1.0.1
- Arys
- 108k Downloads
Updated UniTask from v2.5.4 to v2.5.5
-
Version 1.0.0
- Arys
- 2k Downloads
Initial release
Steven P
Spt 3.9.5 is telling me it can't find the unityplayer.dll, it is in the bepinex folder, is that where it belongs?
elliottnally
Does the UnityToolkit 1.0.1 work with 3.8.3 still?
Arys Author
This mod (across all versions) will always work on any version of SPT, so yes.
However it's best to ask the original mod dev what version they used. I cannot guarantee that future versions are backwards compatible if they referenced an older version of this library.