Unity

If you want to see more resources like this:

https://www.patreon.com/fireundubh

Unity Modding

Games

Name Developer Unity Version .NET Compatibility
Pathfinder: Kingmaker Owlcat Games 2018.1f0 .NET 4.x (Assembly-CSharp.dll)
Pillars of Eternity Obsidian Entertainment 5.1 .NET 3.5 (Assembly-CSharp.dll)
Pillars of Eternity II: Deadfire Obsidian Entertainment 5.6.3 .NET 3.5 (Assembly-CSharp.dll)
Torment: Tides of Numenera inXile Entertainment 5.4.1 .NET 3.5 (Assembly-CSharp.dll)
Tyranny Obsidian Entertainment 5.2 .NET 3.5 (Assembly-CSharp.dll)

Tools

Most of modding Unity games involves decompiling Assembly-CSharp.dll and patching in new code.

Type Name Developer Price License Download Website
Decompiler/IL Editor dnSpy 0xd4d Open source GPL v3 https://ci.appveyor.com/project/0xd4d/dnspy/branch/master/artifacts GitHub
Decompiler dotPeek JetBrains Free Commercial https://www.jetbrains.com/decompiler/download/ Official Website
Deobfuscator de4dot 0xd4d Open source GPL v3 https://ci.appveyor.com/project/0xd4d/de4dot/branch/master/artifacts GitHub
Monkey Patcher Harmony pardeike Open source MIT Compile from source code GitHub
Monkey Patcher Patchwork Greg Ros Open source MIT Compile from source code GitHub

In development

Name Description Developers
Asset Studio Pro A fork of Asset Studio with better MonoBehaviour support
(Project goals and tasks)
• fireundubh
• Jackal

References

Tutorial Description
Patchwork Design Patterns How to use Patchwork attributes for common problems
Patchwork Project Structure How to structure a Patchwork project
Turning a release build into a debug build ADVANCED. You do not need to do this unless you use debug logging and want Assembly-CSharp line numbers in call stacks.

Notes

  • If you use Microsoft's PEVerify Tool (e.g., Patchwork's Test Run), you may notice that an unmodded Unity game has IL errors in Assembly-CSharp.dll. These errors are likely caused by Unity either writing bad IL or, less likely, performing (probably unnecessary) IL optimizations. For example, the latest version of Torment: Tides of Numenera has 150 IL errors in Assembly-CSharp.dll. Most IL errors can be monkey patched.