Yesterday I got into a long, complicated discussion with several people about story-based games.
One thing a lot of people seem to think is that if you want to tell a story with a game, you should use something that conveys that story rapidly and clearly rather than filling your game with grindy bits.
But that's a mistaken way of thinking, I think. The point of a story isn't to tell it as fast as possible. Gameplay is a critical pacing and agency element.
Sure, you could just make a novel. And, if you wanted to make it a video game, you could just make it a digital novel where you flip pages by clicking.
But that's really boring. The whole point of making it a video game is to allow the player to explore the world and the story with a pace that suits them. The time they spend caught in the maps or mechanics of the game is time spent becoming more invested in the world and the story.
If you're trying to tell a story, though, you've got to get a move on. You use gating systems to allow players to acclimate themselves as much they want, then move on to the next story chunk and repeat the process. You could call it the "string of pearls" approach, except that in this case we're talking about each pearl being made of time rather than plot. How long will the player want to hang around here? What can they see? What can they accomplish? What can they gain? Each of these is an opportunity to bind them more closely to their characters, the NPCs, the world.
RPG mechanics are probably the best at this because they are specifically built to stretch and stretch. They stretch further for less effort - all you need is to add a new variation with new stats, and you have a new area, a new monster, a new quest. Most other kinds of games you would need to carefully hand-craft each challenge or they would begin to feel repetitive and stale.
But... RPG mechanics are repetitive and stale.
In my opinion, the best RPG mechanics would be ones that let you spend time getting into the world and the game, then let you grab the world and play with it. The two-shot: first make the player feel it is important. Then let the player play with it.
With that in mind, here's a basic idea:
The game is similar to other RPGs except that you aren't grinding level. You're grinding friendship and personality traits.
Once you break free of the local area, fight the boss, build the bridge, whatever it is, there's a section where your characters live through a piece of the story. You get to watch them participate in the plot according to the friendship and personality traits you ground for them.
Then you get control again, in a new place, with slightly older characters and some new ones. New freindships, new personality traits, new ways to grind them using new combat powers...
Each time, the amount of plot between the hub zones increases. The pace and grandeur increases. The effect your characters have on the world increases.
The thing about this is that you don't even have to do some kind of difficult simulation system. You just have the core plot defined, maybe with a few variants, and the rest is all about which characters end up with which people, which factions, in which places. The larger plot arc doesn't have to care whether James stayed behind to defend the village or went out to strike at the lich lord. Only James and the other village-related characters care.
This isn't a method of creating stories out of character interactions. It's not a method of generative storytelling. It's just taking all the choices and affiliations that you would normally give to the player, and instead giving them to the characters that the player builds.