This library is used for loading custom c# assemblies into Unity games' runtime without having to modify any game files.
Place the dll file next to the game's main directory, if it's a 32bit unity game, use version-x86.dll, otherwise, use version-x64.dll (rename to version.dll in either case)
Create an assemblies.txt which will contain the path to your c# dlls and a static entry point path, i.e. SomeMod\\SomeLoader.dll=SomeNamespace.SomeClass:StaticInitMethod. you can have as many of these as you want, one per line.
The basic structure of the c# project would be as such
namespaceSomeNamespace{publicclassSomeClass{publicstaticvoidStaticInitMethod(){newThread(()=>{Thread.Sleep(5000);// 5 second sleep as initialization occurs *really* earlyGameObjectsomeObject=newGameObject();someObject.AddComponent<SomeComponent>();// MonoBehaviourUnityEngine.Object.DontDestroyOnLoad(someObject);}).Start();}}}Downloads can be found in the releases tab.