Many software products have a component called an Application Programming Interface or “API” which, put simply, allows a programmer to extend the software by linking an external program to common or useful functions of the core software. For instance, Google has a search API which allows a web programmer to easily leverage (or ‘steal’) features of Google’s search engine for their own website. Among other things, this prevents said web programmer from having to write her own search engine from scratch.
Today, I’m going to focus on an API of sorts for a role playing groups. I’m calling it an API because it allows players to change things in their game (the “core software” using the API metaphor) based on stuff that happens in the “real world,” such as absent players, addition of new players, what to do when players get sick of a character, or when players see the group template breaking down.
Speaking of the group template–most of this article is based on that concept. If you’re not familiar with it, it boils down to defining what your party is, what they’ve done together in the past, and what their current situation is through written or verbal interaction of the players. I’ll post a link to a deeper article on the group template below.
I’m going to stick with the API concept through this article, so to give you all a helpful brain shift to role playing games, let’s think of it as the “Accounting for Players Interface,” as in, an interface or set of prepared ideas that allows a group to adjust the game based on account of the players.
Like the group template, the API should be developed before the game–the whole point is to create a system that prepares the group to adjust behavior based on certain incidents. Software APIs work by exposing certain “functions” or “methods” to (such as “Search Near…” for Google Maps API) to the programmer. In the same way, we’re going to consider what “functions” should be defined for an RPG API.
Why Bother Writing an RPG API for your Role Playing Game?
There’s a ton of articles out there on what to do with absent players, or with tension between players (not characters), or dealing with character death. This article does not advocate for all-purpose solutions to these problems–instead, it suggests that ways to handle these things occur on a campaign-by-campaign basis. The truth is, different styles of games and players call for different responses.
John Wick gets at this idea in Houses of the Blooded, where he advocates for players signing contracts (or perhaps waivers) before playing the game in a certain style that is designed to ratchet up anxiety. High anxiety is one reason why an RPG API could be useful for your game–having guidelines for tense situations that were developed when cooler heads prevailed is handy.
More that that, though, a RPG API can enhance the fun of the game by setting expectations for mundane stuff. In the same way most GMs hand wave shopping or eating, an RPG API allows a party to hand wave explaining why Grundark the Cleric, who was with the rest of the party in the wilderness at the end of last session, is for some reason not around right now because his player couldn’t make it to this session.
Furthermore, the RPG API allows for better expansion for our hobby by planning for changes to the party makeup. This means that, when you finally convince your friend to come try out a game, you have a pre-planned way to put his character in touch with the group template. Now, he won’t feel like a fifth wheel the very first time he games.
We know it happens–real life prevents all players from attending all games. Often, notice can be given–sometimes it can’t. In either case, I frequently see groups struggle to cope with this on a case-by-case basis, and I’ve even seen this bring campaigns to a stop.
So, when players are creating characters and group templates and the GM is defining setting details, why not figure out how you’re going to handle this? There’s lots of good ideas–pick the one that’s right for your game. Depending on your solution, you may also need to figure out what consequences a character with an absent player might suffer–if the rest of the party falls, does he surrender, or is he the lone getaway?
The answer doesn’t matter–but answering the question matters.
Function: new(player, character)
This one is a touch more complex, and it really should be defined as part of filling out your group template. When working on a group template, a significant amount of time and emotion is spent figuring out how the “core party” got together. This is great for getting a game off the ground quickly and setting expectations well, but this investment by players up front can have a net effect on making new players feel excluded. Even if your group isn’t “in danger” of growing, this “function” can be useful in case of character death.
Plan ahead for how you’re going to add people to the party. Create “hooks” in your group template the same way you would a new adventure. You might even go so far as to define which NPCs might make good potential characters. The most important thing is to allow for the “shared experiences” part of the group template to have new characters inserted into it.
Even if the “shared experiences” are intensely personal and limited to the core players, you can likely find ways to involve characters on the periphery of this. For example, if your original party of 3 have a heist as their shared experience, and only the three of them were involved, a “hook” could still be a supplier, or a former security guard who got fired after the heist… there’s plenty of opportunity.
The point is to think ahead about how to add new characters, and how to quickly make them “first class citizens” of the story.
If you’re going to worry about how to add new characters to the mix ahead of time, you should also worry about how to dispose of old characters. I’m not talking about absent characters (we already have a function for that), and I’m not even talking about characters who die.
This function is for the sort of gamers who, for whatever reason, get sick of playing a character and want to move on. It’s never fun to play someone who isn’t functioning the way you want, and it isn’t fun to “suicide” that character so you can try a new one.
Maybe the nature of your campaign is such that the only appropriate way out of a story is to die–it’s hard to imagine a paladin marching against the gates of Hell going out in any other way. Other options include making the character an NPC (whether an ally or enemy), having a “wound” take the character out of commission (but possibly put them on the back burner), or simple retirement or cashing out. Again–there isn’t a universal right answer, but there probably is a small set of right answers for your game.
This is probably one of the least important functions to figure out ahead of time, but it’s pretty simple after you’ve tackled the previous two, so it’s worth defining here. Furthermore, we all know stories are usually more engaging with consistent characters. There’s a paradox that I’ve often seen at work: if you put someone in a funhouse with no doors, they’ll look for an escape. If you show them the way out, they’re more likely to just stick around and have fun. The simple knowledge that freedom to quit exists can be enough to keep someone going.
Function: reTemplate(character, group)
This is all about responding to a character or group that’s falling away from the ideals defined in the group template (or, in Fate-style games, the “guest star” stories). Sometimes, you’ve got three characters wearing white hats, and the one who said he’d wear gray has been mostly black until the last adventure where he traded his hat in for an ascot. Alternatively, a few characters (or maybe even the whole group) has fallen so far away from what they said they wanted to be that there’s no course correction.
Some might say, “Just try to make it work.” But a group that has fundamentally changed from its original design will pull the campaign in a direction the GM didn’t intend, and that can spoil the fun (and engagement) of a GM. Or, in the case of a character that just doesn’t fit, whole adventures can be “wasted” on one character’s foibles, so that the core plot never continues.
Again, there are many options here. “Just deal with it” could be a fantastic way to go for a Paranoia game. (Hmm. Group templates for Paranoia. I’d love to see it.) Alternatively, the group could agree that an in-session “intervention” would be appropriate, or that a vote of more than half the party would put the PVP flag up. If everyone agrees that the new direction of a group is fun, a new group template could even be written or retconned.
This is probably the most important thing to devise when heads are cool. It’s hard to look at a friend who has a character they’re invested in and say, “Dude, it’s not working.” Discussing how you’re going to have this conversation early on can help prevent it from happening in the game.