MCPcopy Index your code
hub / github.com/Demeter29/Voices_of_the_Court

github.com/Demeter29/Voices_of_the_Court @1.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.1.0 ↗ · + Follow
197 symbols 425 edges 51 files 10 documented · 5%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Voices of the Court

Voices of the Court is a Crusader kings 3 mod that integrates Large Language Models (LLMs) into the gameplay. It lets you hold conversations with the characters and also impact the game state to an extend.

How does it work?

The mod extracts the necessary game information from ck3, converts them into prompts for the llms and and creates a chat for you with the selected character.

How does it impact the game state?

We impact the game with Actions. These are predefined game effects that gets triggered when the llm thinks it should. Only the predefined actions will get triggered, the llm can't make these actions on their own.

Trailer video

link to

Install

Documentation on installation can be found on docs.voicesofthecourt.app

Extension points exported contracts — how you extend this code

Message (Interface)
(no doc)
src/main/ts/conversation_interfaces.ts
ApiConnectionConfig (Interface)
(no doc)
src/shared/Config.ts
ErrorMessage (Interface)
(no doc)
src/main/ts/conversation_interfaces.ts
apiConnectionTestResult (Interface)
(no doc)
src/shared/apiConnection.ts
MessageChunk (Interface)
(no doc)
src/main/ts/conversation_interfaces.ts
Connection (Interface)
(no doc)
src/shared/apiConnection.ts
Preset (Interface)
(no doc)
src/main/ts/conversation_interfaces.ts
Parameters (Interface)
(no doc)
src/shared/apiConnection.ts

Core symbols most depended-on inside this repo

append
called by 17
src/main/RunFileManager.ts
removeTooltip
called by 10
src/shared/gameData/parseLog.ts
complete
called by 9
src/shared/apiConnection.ts
getAi
called by 9
default_userdata/scripts/gamedata_typedefs.js
parseVariables
called by 7
src/main/parseVariables.ts
isChat
called by 6
src/shared/apiConnection.ts
removeLoadingDots
called by 6
src/chatWindow/chatRenderer.ts
changeValue
called by 5
src/configWindow/components/ConfigSlider.ts

Shape

Method 83
Function 63
Class 38
Interface 13

Languages

TypeScript100%

Modules by API surface

src/shared/apiConnection.ts12 symbols
src/configWindow/components/apiSelector.ts12 symbols
default_userdata/scripts/prompts/description/standard/pList.js12 symbols
src/main/conversation/Conversation.ts11 symbols
default_userdata/scripts/gamedata_typedefs.js10 symbols
src/main/ts/conversation_interfaces.ts9 symbols
src/main/conversation/promptBuilder.ts9 symbols
src/shared/gameData/Character.ts8 symbols
src/chatWindow/chatRenderer.ts8 symbols
src/main/RunFileManager.ts7 symbols
src/configWindow/components/ConfigSlider.ts7 symbols
src/shared/Config.ts6 symbols

For agents

$ claude mcp add Voices_of_the_Court \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page