@joej said:
It's clear that player want no restrictions, which means static story isn't possible at this point. And they also want a story, which isn't possible without an author. So that's a contradiction. We either aim for an optimal compromise of both, or we choose one or the other extreme. It's not entirely clear where you are here, since you mention setting up scenarios, or story templates to describe potential state and outcomes of a love triangle, for example.
Scenarios are not needed. All the systems needed for stories have to be present even without them. Everything I said was to show that it’s not something we have to compromise. We can have both freedom and story.
For a specific scenario, you will look at all the additional templates and sub-systems needed and implement them, along with the description of the locations, people and relationships. But all the world stuff can be generated on demand, when the player steps outside what's given by the scenario. So you could just set the genre, theme and tone and let the game create all characters and conflicts.
Assuming the smart player kills the end boss after 5 minutes, how should a computer program be able to come up with a further story out of nothing? If human authoring is reduced to defining independent scenarios, how can a program connect them to form a deeper sense and drama, plot twists, and finally a new climax? Because without those things, there is no story in a classical sense. There may be communications, descriptions, even connections between past and potential future events. But that's no story. Meaningful words alone do not define a story.
That's the story structure. Instead of writing the text, we create the systems that follow the rules of storytelling. That seems hard since stories have the effect of dazzling the mind. But that’s why they work. It’s not that complex when you look at the components.
There are several components needed for creating the effect of a captivating meaningful story. So the first steps will not have the Dazzling effect. But it’s steps on the way. That’s why I spent a rather long time studying season arcs, in order to have the effect of how quests can build on each other to a satisfying conclusion.
You don’t need the whole breadth of things the author chooses for stories. But there has to be enough things for them to layer and weave. In later versions, there have to be more things added for creating longer stories or provide replayability.
Game designers have in some parts already explored this space for graphics and music, with procedural generation and responding to the players choices. I’m just asking them to do the same for the stories. It’s still artistry, even when the stories are told through systems. It just hasn't been done for the main story in story-driven games yet.
And the technical question is: Which kind of data structures do you use to form an abstraction of story? What is the data? Which algorithms can turn it into natural language?
The language part I already talked about in length with the Wild at Heart article. As said there already, at level 4, it will be generated from all the world data. Machine learning (not LLM) is not needed but may be the best choice. Until then, it will be presented in abstracted form, in the voice of the narrator retelling what happened. “He tells you that”. I also wrote a bit about data structures and algorithms there.
It's a bit of a knot. None of the first proofs of concept will be in a form where you can easily see how the level 5 version will look. So I need to write about it. But I seem to fail to communicate the vision.
If data structures is the next step, I’ll be happy to do that. Stripping down the crime drama system to the bare minimum, I could start out with just one or a couple of people. Model their memory of the world. And then let the player ask questions. One of them has the ball. You can ask where the ball is. With that, I could add the basic stuff about event memories. Like when did you last see the ball? When events like somebody takes the ball. And then add secrets. And it will be a small detective story about who took the ball and where it is now. Adding locations, habits, plans, relationships, assumptions, miss communication, and so on. I remember a game that did this, but can’t remember which now.
So for that I am thinking of a tree of key/value tables, with the base people table holding what is known by all people, including temporal data for things that can change over time. Village people are pointing to that. And then each person points to village people and possibly other parents. Groups or individuals can also hold sub-versions with theories of events or ideas of what they think other people think. Something general enough to work for what it should do eventually.
So you need to convince them that it is possible, by telling how it works.
I’m not vague by intent. There are a lot of components involved. That’s sort of the thing I know how to do; Seeing how it all connects. The small part of memories described here is one of the core parts that then can be used for conflicts that will be threads of the story.
Examples of some possible conflicts are desire, security, health, acceptance, hiding failure, addiction, fear, protecting reputation, revenge, greed, jealousy, and so on. Conflicting goals. Conflicting philosophies. And then the story structures of rising tension. Or the more detailed sub-steps from the hero's journey.
The story will be created by introducing threads. Just having characters struggle with their problems goes a long way. Then tie it into the theme. And create the events based on that, the player choices and story structure including the hero's journey. My version of the monomyth has 15 steps. (Those can be nested like fractals, as usual.)
Many more linear games have combat where you're supposed to lose or win easily. Since the story is systemic, we can allow for the player to beat the odds. If it's the part of the story where the player loses everything, and the player manages to win anyway, we can change the story by taking inspiration from stories where they beat the odds. The template looks something like:
Preconditions:
- Place in the hero's journey; Trials (before the Abyss)
- Just won a very hard battle, but not more than two
Possible results, selected with constraint satisfaction:
- Another wave of enemies comes. If there reasonable could be more enemies in the area.
- Boss battle. If there reasonably could be a boss in the area.
- An environmental complication. For example a collapsing building.
- One of your friends get struck down or captured
- The macguffin is snatched away
- The place you wanted protected has been attacked in your absence
All of these will be filtered on what makes sense logistically, and then selected based on what fits the theme and tone. The different themes will have their own templates. So this is for the 20% or so of the players who managed to win the battle. And they can still manage to survive these complications. They may manage to stop the baddies from stealing the macguffin. They may evade the collapsing building. So if they manage to win the additional challenges, the story will stay on “challenges”. There will be more complications, until the next chance for a major setback.
For those who lose, you will have:
Preconditions:
- Place in the hero's journey; Trials (before the Abyss)
- Just lost a very hard battle
Possible results, selected with constraint satisfaction:
- Person kidnapped
- Macguffin stolen
- Player kidnapped
- Baddie gloating about plans
- Player separated
- Mentor killed
And so on. Filtered on what fits the constraints and then selected based on theme and tone.
The teme part is more important than the logistics. Not many games manage to do it right. The easiest trick would be to murder your friend that you relied on. But the important part is that you feel that the thing you thought would work didn’t do it. It’s hopeless. And all your support structures are gone. You are on your own and there is nothing you can do. The fantasy version of this is that you get thrown into the dungeon. But the better version is to tie it to the thematic question. If the theme is to find where you belong in the world, this will be the realization that you don’t belong. If the theme is romance, they will leave you. Whatever the theme; this will be there it's demonstrated how it fails the reality check.
Each theme will be developed with similar templates for how they can be expressed through external events, during different parts of the story.
So what happens when you kill the big bad evil guy in the first act? That’s easy. There is always something else behind the curtains pulling the threads. This is why I studied season and multi-season arcs. There should be templates that give options for stories that start with a victory. For example, you retrieve a macguffin or clue for some grander mystery. It can be a story of the power-struggle that results from the power vacuum. It can be the relative that steps in and continues.
The start of the hero's journey is the call to adventure. If the player ignores it, something will come knocking hard.
I did a brief presentation of my version of hero's journey in this article:
https://blog.jonas.liljegren.org/rite-of-passage-and-heros-journey/
That said assuming LLMs would not yet exist. Because now it is possible to generate stories from machines, as we all know.
LLM as they exist today as transformers is not enough. They can be used for creating more natural text from all the context that the system provides, even if it’s a bit overkill for that. Smaller language models could work well enough. Machine learning can also be used for generating micro-expressions and mannerism and speech, for animation during NPC interaction. Many of the constraint satisfaction algorithms can be augmented with machine learning. But it’s not a substitute for having the knowledge graph of the world and story.