It's solvable it's just a lot of work. You need to have guardrails, i.e. multiple sanity-check passes (maybe there are other techniques, but I found this to be most effective)

One concrete example I'm sure these Skyrim mods aren't using is: enums in structured outputs [1] with a finite list of locations/characters/topics/etc that are allowed to be discussed. The AI is not allowed to respond with anything that is not in the enum. So you can give it a list of all the locations in the game in a huge array and it would be forced to pick one.

[1] https://platform.openai.com/docs/guides/structured-outputs#a...