Hi Alloc,
I've been working on some mods to the dedicated server, but have been doing so by hacking the .il directly, which is a pain. I thought, instead, I'd take your route through deobfuscation, building, and patching the assembly. I thought it a good start to build your server improvements solution, and was elated to find a source tree for it just above the release directory form your link.
However, I'm not getting through deobfuscation using the Deobfuscate pre0.3.1 release. It says "success" and produces an Assembly-CSharp.deobf.dll, but the result still has the scrambled unicode chars. The mainlog.txt shows that it's not able to load any of the .dll's in the sub-tree, or one of their dependencies.
ERROR : Unable to load the patcher NamePatcher :
ERROR : System.IO.FileLoadException: Could not load file or assembly 'file:///C:\Users\tdriscoll\Documents\7 Days To Die\dllmod\Alloc_build\binary-improvements\deobfuscate-7d2d\patchers\NamePatcher.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
File name: 'file:///C:\Users\tdriscoll\Documents\7 Days To Die\dllmod\Alloc_build\binary-improvements\deobfuscate-7d2d\patchers\NamePatcher.dll' ---> System.NotSupportedException: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information.
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile)
at DeobfuscateMain.Deobfuscator.Main(String[] args)
The deobfuscate tree has the config.xml, Deobfuscate-Main.exe, mailog.txt, Mono.Cecil.dll,Mono.Cecil.Rocks.dll and the patchers subdirectory containing the three .dlls that don't want to load.
Is there a dependency that's missing from the release tree, or is it likely encountering an execution permissions issue?
Thanks in advance for any direction you might provide.