Skip to content

lmaydev/OpenConstructionSet

Repository files navigation

The Open Construction Set

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)

API Docs

A single cs file example patcher for SCAR's pathfinding fix can be found here.

Features

  • 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.

Thanks

Massive shout out to SCARaw for his help throughout the project.

Introduction

Project Setup

Add the main nuget (https://www.nuget.org/packages/OpenConstructionSet/)

Optionally add the dependency injection nuget (https://www.nuget.org/packages/OpenConstructionSet.DependencyInjection/)

Using Dependency Injection

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

Using Services directly

Both services can be contructed normally

var installationService = new InstallationService();
var contextBuilder = new ContextBuilder();

Services

  • 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.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages