Oxygen-Not-Included-Modding
Harmony
Oxygen-Not-Included-Modding | Harmony | |
---|---|---|
6 | 26 | |
117 | 4,886 | |
- | - | |
1.2 | 8.9 | |
about 1 year ago | 16 days ago | |
TypeScript | C# | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Oxygen-Not-Included-Modding
-
what is oni coded in
C#
-
How to make mods and submit them in workshop (steam)
ended up -> https://github.com/Cairath/Oxygen-Not-Included-Modding/wiki
-
I've got some idea about making a mod. How.to make mods?
howto
- Can the game load WHILE we spend time carefully picking out our starting dupes?
- Modding resources
-
Exploring some modding ideas
Here is the guide I used to get started: https://github.com/Cairath/Oxygen-Not-Included-Modding/wiki/Introduction#your-first-mod
Harmony
- How to make mods?
- Learning how to mod
- [Gordianquest] Mod amplificateur de butin
-
Fast Script Reload - Hot Reload implementation for Unity is now open source!
Some more details https://github.com/pardeike/Harmony/issues/424
-
Set return value of method called by method in unit test
Here's what you're looking for.
-
Why use { get; set; } at all?
Probably a little out of your scope but the library Harmony you can write patches (detours) on methods. Using get/set instead of a field would allow you to override the property's method. Let's say you wanted to write something to always have the name uppercase. You could patch the constructor and set this.name = this.name.ToUpper() but that field is publicly assignable so you can't really enforce that. On the other hand with a property you can override the set method to say this._name = value.ToUpper().
-
Python's "Disappointing" Superpowers
It's kind of a subtle distinction that I think was lost between the posted article and the original article it was responding to, but I don't think the kinds of reflection capabilities that Roslyn provides is what the author intended. The specific example given in the referenced article for "Higher-order programs" specifically refers to the ability to replace function implementations at runtime without interrupting the program, and specifically calls out hot-code reloading (such as what Java provides) as a deficient form of similar functionality. This is closer to the type of functionality libraries like Harmony provide, but even that solution requires including the library and instrumenting your code ahead of time.
-
Reverse engineering integrity checks in Black Ops 3
https://github.com/pardeike/Harmony harmony lets you patch functions at runtime, kind of like a dll injection / memory edit
-
Loot amplifier mod
Download Harmony 2 and put net472 version of the library into GordianQuest_Data\Managed
-
Replace class method from DLL with my own
I'd recommend looking into Harmomy and seeing if you're able to use it. It makes modifying DLLs pretty convenient.
What are some alternatives?
Mono.Cecil - Cecil is a library to inspect, modify and create .NET programs and libraries.
Fody - Extensible tool for weaving .net assemblies
Extenject - Dependency Injection Framework for Unity3D [Moved to: https://github.com/modesttree/Zenject]
UnrealCLR - Unreal Engine .NET 6 integration
UniTask - Provides an efficient allocation free async/await integration for Unity.
InjectFix - InjectFix is a hot-fix solution library for Unity
mono - Mono open source ECMA CLI, C# and .NET implementation.
delaunator-sharp - Fast Delaunay triangulation of 2D points implemented in C#.
Unity-Lua - A wrapper around MoonSharp that allows easy development of moddable Unity games
UnityAssemblyInjector - generic assembly injector for unity games - without requiring to modify any game files
UnofficialCrusaderPatch - Unofficial patch for Stronghold Crusader 1
unity-guid-regenerator - :id: GUID regenerator for Unity assets