The OCS is a modding SDK for Kenshi written in C#
It provides services for dealing with the various folders and data files used by the game. As well as providing a managed context for loading multiple mods for editing (Similar to FCS)
A single cs file example patcher for SCAR's pathfinding fix can be found here.
- Load, edit and save the game's various data files.
- Read and edit the enabled mods (Ticked in the launcher) and the load order.
- Locate Steam and Gog installations of the game and their folders. Including Steam's Workshop content folder and the old save folder.
- Discover the structure of mod and save folders as well as the files contained within.
- Load multiple base and/or active mods into a
ModDataContext
for editing and saving.
Massive shout out to SCARaw for his help throughout the project.
Add the main nuget (https://www.nuget.org/packages/OpenConstructionSet/)
Optionally add the dependency injection nuget (https://www.nuget.org/packages/OpenConstructionSet.DependencyInjection/)
Once you have a reference to the dependency injection assembly simple add OCS to your services.
services.UseOpenContructionSet();
This will setup the IInstallationService
and the IContextBuilder
Both services can be contructed normally
var installationService = new InstallationService();
var contextBuilder = new ContextBuilder();
IInstallationService
- Provides functions for locating installations of the game.IContextBuilder
- Provides functions for building FCS like Mod Contexts. These allow multiple base and/or active mods to be loaded for editing.