Skip to content
 
 

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KCSE

C++17 Platform

Kingdom Come Script Extender — an SKSE-style native plugin framework for Kingdom Come: Deliverance 2. Ships as a dinput8.dll proxy, no exe patching required.

Build Dependencies

End User Dependencies

Installation

Copy dinput8.dll to <game>/Bin/Win64MasterMasterSteamPGO/.

Plugin Development

#include "KCSE/KCSEAPI.h"

KCSE_PLUGIN_INFO("MyPlugin", "Author", 1);

KCSE_PLUGIN_LOAD(kcse)
{
    kcse->GetMessagingInterface()->RegisterListener([](KCSE::Message* msg) {
        if (msg->type == KCSE::IMessagingInterface::kMessage_DataLoaded) {
            // Game data loaded
        }
    });

    return true;
}

Plugins are DLLs placed in mods/<modname>/KCSE/Plugins/ or KCSE/Plugins/.

Notes

  • KCSE auto-calls KCSE::Init() when using the KCSE_PLUGIN_LOAD macro.
  • Available lifecycle messages: PreDataLoaded (before main.lua / mod init scripts — publish Lua globals here), DataLoaded, LoadGame, SaveGame, NewGame, AllPluginsLoaded.
  • Per-frame tasks via KCSE::GetTaskInterface()->AddTask(fn).
  • Trampoline hooking via KCSE::GetTrampoline().

License

GPLv3

About

A tool to expand KCD modding capabilities

Resources

Code of conduct

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages