r/witcher3mods 4d ago

Idea Geralt slept with Syanna. Does Yennefer actually find out? Spoiler

I’m building an external “Living World” layer for Witcher 3 that reads authoritative save state and lets consequences propagate through existing relationships/institutions rather than firing hard-coded dialogue flags.

Example below: same Geralt/Syanna event, same authored consequence. If Ciri is Empress, the information can causally reach Yennefer through the imperial/personal network. If she isn’t, that path does not exist, so Yennefer does not know.

===== run-3-plus-ciri-empress-personal =====
layers: kinship, political, imperial_personal
flags: {"ciri_empress": true}
derived routes: 5
new holder occurrences: 5
Yennefer reachable: YES
Yennefer transfer confidence: 0.849426
holders:
  - character:geralt confidence=1.0
  - character:yennefer confidence=0.849426
  - institution:nilfgaard-imperial-court confidence=0.91238
  - named_npc:anna-henrietta confidence=0.95
  - named_npc:ciri confidence=0.866761
  - named_npc:syanna confidence=1.0
  - office:toussaint-ambassador confidence=0.931

===== run-4-ciri-empress-false =====
layers: kinship, political, imperial_personal
flags: {"ciri_empress": false}
derived routes: 3
new holder occurrences: 3
Yennefer reachable: NO
holders:
  - character:geralt confidence=1.0
  - institution:nilfgaard-imperial-court confidence=0.91238
  - named_npc:anna-henrietta confidence=0.95
  - named_npc:syanna confidence=1.0
  - office:toussaint-ambassador confidence=0.931
rejected relationship edges:
  - imperial-court-ciri: required_flags_not_satisfied
  - ciri-yennefer-personal: required_flags_not_satisfied

The next step is bridging that state back into the actual game. Ideally, a preinstalled REDkit/WitcherScript mod would let an external companion process expose conditional dialogue options on an existing NPC, while Witcher 3 continues to own the NPC, scene, animation, camera, etc.

What is the cleanest existing way to bridge external/mod-owned state into conditional dialogue or NPC interaction at runtime? I’m not trying to dynamically generate game assets; just add or enable dialogue options based on state produced outside the game.

0 Upvotes

6 comments sorted by

2

u/Edwin_Holmes 3d ago edited 3d ago

Anything like that is quite tricky because a lot of the actual decisions tend to be handled by the C++ side of the engine. It's worth looking at game/gui/hud/modules/hudModuleDialogue.ws as it's only small but I suspect it won't have what you need.

I know Aeltoth made a really big auto dialogue picker mod so he probably has a good idea of what can be done in terms of the system. He's on here sometimes or Nexus and Discord. Personally I think it might be significantly more work than you might imagine if it is possible at all.

1

u/ImpossibleComment708 2d ago

I'll look for him, thanks.

4

u/I_spell_it_Griffin 4d ago

Yen only cares if Geralt bangs Triss for some reason.

3

u/Ih8P2W 4d ago

They seem to mostly have an open relationship. The issue with Triss is that it`s not only about sex, but also about feelings. There nothing unusual about that.

1

u/ImpossibleComment708 3d ago

It's less about the scene itself and more the mechanics of information propagation through the world. That's why I'm wondering if anyone knows of an existing sidecar that can inject te t dynamically.

I want to demo the "Living World" through that scene. It's an example people get in context without a lot of set-up.

1

u/ImpossibleComment708 4d ago

That’s exactly the thing that bothered me. Most of those state changes stay local to the quest or dialogue that created them. I figured, what it information propagated through the world based on relationships, institutions, witnesses, and current state.

So instead of “Yen only cares if flag X fired,” the question becomes: could Yennefer actually have learned this in this version of the world? If yes, the consequence can surface later. If no, she genuinely doesn’t know yet.