RimWorld

RimWorld

525 ratings
Community Framework
3
4
2
   
Award
Favorite
Favorited
Unfavorite
Mod, 1.2, 1.3, 1.4, 1.5, 1.6
File Size
Posted
Updated
1.607 MB
Aug 25, 2021 @ 10:25pm
Jul 23 @ 12:42pm
9 Change Notes ( view )

Subscribe to download
Community Framework

Description
The Community Framework is a framework that gives more power to modders that use XML. It has multiple features made by the community, for all of which the documentation can be found on GitHub, right here:
https://github.com/ISOR3X/communityframework/wiki

Have you ever wrote a small bit of C# code that could be useful to others, but wasn't really enough to justify making a mod for? This is exactly the reason the Community Framework was created.

Submit your code, have it checked by other coders and have it added to this mod!

If you're interested in having your own code added, check out the introduction on the framework's GitHub repository:
https://github.com/ISOR3X/communityframework/wiki/Adding-your-code

Community Framework was started by ISOREX#8779, and is currently maintained by Turnovus#7761.
84 Comments
Xeonzs Jul 25 @ 6:23am 
Thanks for the update, error resolved :)
Xeonzs Jul 17 @ 4:12am 
2nd message due to character limit:
I wasn't sure if I should post the error or not since you're already working on an update, but figured I'd point it out anyway since it wasn't mentioned yet.
Xeonzs Jul 17 @ 4:12am 
Seeing an error on launch:

Error while instantiating a mod of type CF.CFMod: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: The type initializer for 'CF.HarmonyLoader' threw an exception. ---> HarmonyLib.HarmonyException: Patching exception in method null ---> System.ArgumentException: Undefined target method for patch method static System.Void CF.GenerateQualityCreatedByPawn::Postfix(RimWorld.QualityCategory& __result, Verse.Pawn pawn)
[Ref 9F468612]
at HarmonyLib.PatchClassProcessor.PatchWithAttributes (System.Reflection.MethodBase& lastOriginal, System.Boolean unpatch) [0x00047] in <8124cc12bdf242eab0a5f7e7edecf387>:0
at HarmonyLib.PatchClassProcessor.Patch () [0x0006e] in <8124cc12bdf242eab0a5f7e7edecf387>:0
--- End of inner exception stack trace ---
Turnovus  [author] Jul 11 @ 7:50am 
@Ygdrad
A functional 1.6 build has been made, but I want to migrate to the new TickInterval system introduced in 1.6 before releasing it.

You can download the development branch from GitHub if you want to want to update your own mod before the official release is ready.
Ygdrad Jul 11 @ 7:45am 
Obligatory "1.6 when?" :P
Thanks for the great work, my own mod wouldn't be possible without it.
Scorpio May 4 @ 2:55am 
CF.HatcherExtension is gone?
Turnovus  [author] Mar 7 @ 6:59pm 
@Punful Guy
The CF's sole goal is to provide broad functionality for modders, and does not claim to improve performance or stability.

With that said, invoking any Harmony patch does come with a marginal overhead. Reducing the number of individual Harmony patches on high-volume methods could lead to a minute increase in performance, though I'd expect the effects to be negligible at best.

Reducing the number of Harmony patches can also provide better stability, as there are fewer third-party methods fighting each other over how the program should behave.
Punful Guy Mar 5 @ 8:27pm 
Are these patched methods actually more efficient with this mod? As in with enough mods this would actually increase performance by cutting unnecessary calls?
Tleno Aug 29, 2024 @ 6:12am 
Hey could it be possible to make a request?

Like Output or Recipe Worker that randomizes output so spending consistent resources crafting you randomly get one of multiple defined objects instead of one specific?

Or what about randomization to glower class so object starts off with one of random glow colours instead of predefined?
Fighting Pirate Mar 30, 2024 @ 2:51pm 
Thank you for updating this! This framework has been a really helpful tool. Glade to see it still being supported for 1.5.