Pick an event, e.g.
Events pick stories, e.g. famine might spawn:
- Players hired to go somewhere to get food and bring it back
- Players encounter a good riot
Events can spawn new events, e.g. famine might spawn bandits and/or unrest
Stories can change the event or cause new events, e.g. a famine might spawn a food riot mission; if the food riot ends in major bloodshed, it might spawn unrest; if the food riot ends without people getting any food, it might spawn banditry.
In this model, the events and stories are “mad libs” where the story engine simply fills in the blanks with world metadata provided by the game engine. E.g. a famine might have a location, a mission to “go somewhere and bring back food” might have an “patron” (who hires the players?) a destination (where do the players find the food?) and a reward (what do the players get if they complete the mission?)
The obvious mechanism for making this system more sophisticated comes down to three ideas:
- Break stories into smaller “atoms”
- Make the “atoms” interchangeable
- Allow stories to behave like “atoms”
E.g. “players are hired” “to go somewhere” “to get some food” “and bring it somewhere else” “and receive a reward” breaks the earlier example into “atoms”.
Let’s look at the “to go somewhere” atom. This could easily be used for other missions, such as the classic “kill” and “collect” missions, e.g.: “players are hired” “to go somewhere” “and kill someone” “and receive a reward”
We also used the “players are hired” atom. We might consider that to be a “hook”, and change the mission to: “hook” “to go somewhere” “and kill someone” “and receive a reward”.
Or even more generic: “hook” “challenge” “reward”.
Let’s be more sophisticated: “hook” “challenge” “reward for success” [or “penalty for failure”] [or “consequence for skipping”.]
(Now imagine that “hook” is optional as well. E.g. if there’s a famine, the player can skip the hook and just do it. Events might spawn quite a few “automatic” background missions that players can just do without prompting.)
Now we start creating interesting “atoms” and “molecules” (i.e. stories that look from outside like an atom) and allow substitution based on a simple classification system.
E.g. “hook” could be “player is hired” or “player sees wanted poster” or “player hears rumor”; “challenge” could be “kill fred”, or “go somewhere” “and kill fred”, or “find dead body” “figure out who killed them (i.e. fred)”, “find fred”, “apprehend or kill fred”. Again, imagine “find” and “track down” atoms with lots of intricate subtypes and you can immediately see a lot of possibilities.
Ambient Activity (Random Encounters)
The concept of events spawning missions and spawning or morphing into new events extends to creating activity around the player that ties in with what’s happening and affords rich opportunities for player actions.
E.g. instead of randomly encountering bandits, you are much more likely to encounter bandits (and, say, caravans fortified against bandits, and victims of bandits, and increased patrols, and fights between bandits and law enforcement) if a banditry event is active in an area.
Events are tied both to places and players. This allows concepts like a player being undercover, on the run, or hunted — things pretty much only seen in the form of highly contrived and scripted content.ideas markdown 02/23/2015 23:14:18