At the moment I am replaying Morrowind, a game I haven’t played since its release in 2002. I’m having a blast.
But there are a few things I am not enjoying and one of them is finding people/things. For example my mercantile skill is too low, I’m getting fleeced by traders. Where can I find a trainer for mercantile?
My answers appear to be: (1) talk to every NPC everywhere until I hit on one, (2) look it up via Google or ChatGPT. There are things I am perfectly happy to look up. Like I couldn’t for the life of me remember how lock picking, alchemy, or enchantment worked. I don’t mind looking up mechanics.
But I find myself a little resentful of having to look up in-world information. How could this be improved? Why can’t I ask an NPC who could can train me in mercantile? And if they don’t know, who do they know who might know?
So I started thinking about a system for asking questions of world knowledge. For example:
Who do you know that trains the mercantile skill?
We could break this down into:
query: who (could also be what, where, how, why, when … is that inclusive?)
subject: you
verb: know
relation: {trains_skill, mercantile}
We pass this query to the world model to get an answer.
That answer might very well be “nobody” and this is where it gets interesting because we could a facility to allow NPCs to make guesses about the world.
For example: We can know which other NPC’s this NPC has a relationship with, and we could model an attribute such as “knows_well” from 0 (knows their name) to 100 (knows where they buried the bodies), and use that as a kind of probabilistic knowledge relation.
We also know what the relationship is between the player and the NPC. So we could add in a dimension about how helpful this NPC wants to be towards the player.
So the second layer might be “I (am sure, think, guess) X in Y city (definitely does|i’m sure|might) do this”. Which could lead the player further into the game without requiring narrative support.
I doubt these are new thoughts (Chris Crawfords work comes readily to mind) but I wonder if anyone else is thinking about this type of thing, has ideas, spoken about it. Anyone else interested?
[Side note: I am working on a choice-based game, but using Rez which allows for building a world model to support such concepts, I guess they might be more directly implementable in a parser-based system]