Designing Good Rules
This is the second part of two in a short series on how to design Your Next Systemic Game , and this time, we’ll dive into designing rules . A few years ago, I was demonstrating a system to a friend. Look here, you can do this, and when you activate these things, see what happens! It got some excitement, with the synergies involved, and sparked a great comment: “So it’s more like designing board game rules than a computer game?” Yes! Yes it is! Just like board game rules, a systemic design needs to be clearer and more easily communicated than even the real world is. Self-consistent, as Tom Leonard once wrote . But it’s also not. In a board game, players need to understand and internalise all of the rules before they can explore the game’s strategies, and the state-space is clearly restricted by the physical components of the game. In a digital game, much of the interaction can be left for the player to discover and can become obfuscated by complexity itself. Learning how to apply the rules is a process of discovery for the player. Before we can design rules, we need to know what they are applying to. Modern games rely heavily on content . Objects built for specific purposes. A gun. An enemy. A level. You expand your game by adding more of them, or making new types of things that you can then add more of. How a certain piece of content behaves is usually very specific, and even if new content can add new behavior, there is rarely any interconnection. Systems works differently. If you have the concept of something being flammable in your game, every piece of content in your simulation needs to be adapted to this rule in one way or another. Even objects that are not flammable will usually provide some kind of response, like having the flame fizzle out against it or begin to glow menacingly red and generate a heat haze. What this means is that you can add more systems and all of the objects you already have will then “just work” based on how you tell them to interact with these systems. You can create a lot more variety this way, by relying on robust interconnected systems, and not having to produce things because the players get bored. Look at the Building a Systemic Gun post (one of the most viewed on this blog) for a more practical example of the difference this makes. There are three key elements to designing rules for emergent effect: “Combine simple behaviors to give the impression that the monsters are working together,” writes Derek Yu about his game Spelunky . ” This not only creates challenging situations, but it also makes the world feel more like a living, breathing ecosystem. Wherever possible, I tried to add monsters that attack you from new directions, so that when they were paired with existing monsters the attacks would feel coordinated. ” (Emphasis mine.) That’s it: have new enemies attack from different directions. A rule that is never communicated to the player, but serves to inform the game’s development and make them feel coordinated. A simple rule that, when combined with more simple rules, generates an emergent experience. This is the holy trinity of rules design. They get some more attention in a previous post on designing systemic games . At a high level: Permissions are what you can do. Restrictions are exceptions to permissions. Conditions provide the framework for the other two. The following could be the rules set up for a simple fire propagation system. Each rule here is simple, but it doesn’t have the raw simplicity of “new enemies attack from new directions.” A gestalt is “an organised whole that is perceived as more than the sum of its parts.” Consider a character class in Dungeons & Dragons or the specific role you may have in a hero shooter such as Overwatch . You’re the healer, or the glass cannon, or the damage dealer. These are variations of gestalts. You can rely on gestalts used in other games, or you can come up with your own. What you want is to provide rules for each gestalt that separates it from others and encourage players to actively switch between gestalts as they play in order to keep the game fresh. When we say that something can be internalised, it means that it can be made part of someone’s immediate understanding of the world. Gravity and darkness are two examples of things we have all internalised. You know that things fall if you drop them, and you know that you can’t see anything when it’s dark. If you drop something, you’ll instinctively react to try and catch it. If it gets dark, you squint. Something intuitive can then be defined as something quickly or easily internalised . Game rules are harder to internalise, because we must first describe the game world. But there are some key terms you can consider. Borrowed from Michael Sellers’ excellent book Advanced Game Design A Systems Approach , and elsewhere. For easier adaptation, focus on comprehension, elegance, and notion. “[P]resenting the game in such a way that players can build a mental model of it.” Michael Sellers This one is easy, because you’ve already prepared your Model in the previous post (right?!). Players must understand what they are interacting with. They must be introduced to the rules and be able to decipher the rules. A game with rules that are contradictory or generate too much information in a short time can end up frustrating instead. We may insist on tutorials or intro sections. On illustrative feature videos. But when it comes down to it, the best way to make our players understand the game they’re playing is by letting them play it. Only when you’ve interacted using a rule a number of times will you understand the rule. “Creating a diverse space for players to explore based on only a few rules.” Michael Sellers One reason platformers have such wide appeal is that they are extremely simple to internalise. You need to learn how to jump, and many of the other interactions will follow from there. You usually need very few rules and most of them will make sense simply because of that internalised concept of gravity that was mentioned before. This is also why many shooters will have visible projectiles and simple rules tied to them, like touching a projectile killing you or dealing damage. Similarly, the best way you can achieve elegance is by building your entire game around a single verb. Jump. Shoot. Drive. Then you can let the other elements click in place based on what comes out of that verb. “We have these broken notions of physics and when a video game takes those broken notions of physics and gives them life in a virtual world it doesn’t bother us.” Jamie Fristrom Not only doesn’t it bother us when our childhood ideas of physics are proven right by a game, against realistic fact, it often entertains us and feels just as natural as reality. A notion is an idea or whim, something that just comes to us naturally. It’s taking the description of a phenomenon not from its published scientific lore but from a science book from the kids’ section in the library. When we intuitively understand how our momentum is retained through Portal ‘s portals, this is notion at its best. Because there are no such portals in the real world, and there’s really nothing to say that we’d retain our momentum through them if there were. Notion means that things make more sense than they do in real life. If the Spelunky snake attacks a certain way the first time you encounter it, then it has to work like that in the future as well. If not, the system becomes too unpredictable to internalise. Consistency is important, but it doesn’t mean that everything has to behave the same all the time. It’s the outcome of interactions that need to be consistent, not necessarily the full output of a scenario. “Game systems should have predictable outputs for given inputs.” Michael Sellers In Thief , if I get spotted by a guard, they will first become suspicious before they are alerted. This gives me some time to react. How much time depends on lighting and circumstances, but you can quickly learn how this system behaves and play on its predictability. Staying behind guards is better than to risk it, for example. One reason many games don’t involve physics simulations in direct interaction, unless it’s done for fun, is because of its inherent lack of predictability. You want your Rocket League ball to bounce the same, so you can improve your skill at taking shots. A stated rule should always behave the same. A system should always provide the same outputs from the same inputs. “[R]ules and content should function the same in all areas of your game.” Michael Sellers Many games start from very clear rules but make seemingly arbitrary exceptions. You can shoot and kill characters, but if you shoot and kill this particular character it’s game over or checkpoint reload. Or they are immune to the damage. This is inconsistent and will make it harder to internalise the systems involved. It’s also bad for the sense of immersion. If a player has internalised a tool they can use, it should always behave as expected. Perhaps they have a grappling hook that can let them climb to new vertical locations. But then in the new level, the hook bounces off an invisible wall as the player finds an interesting balcony to reach. Maybe the level designer felt that it would make the level too easy, or there’s a story beat that introduces this balcony. But if you want to be serious with your rules, this lack of coherence is always a bad thing. “Enabling the system to be used within multiple contexts or to have new parts added within it.” Michael Sellers Once you have your consistent rules in place, you can start experimenting. A guard in Thief that is blind but reacts faster to sound would combine well with metallic floors causing lots of noise to make an interesting scenario. The more you think of this variability early on, the better. Remember the five areas of maximising iteration : Authoring, Transitioning, Tweaking, Testing, and Updating. “[C]reate game systems such that content can be reused in new ways or created procedurally” Michael Sellers Once you have your simple, intuitive, and coherent rules in place, you can extend them. You can use this to change or even to make make rules, both through your game itself and by providing tools for players to do so on their own. With your systems and rules in place, you can easily let other systems alter their outcomes. Have your spawning system spawn more enemies of a specific type or no enemies at all of another type. Or make it turn entire systems on or off to vary the gameplay. Some of these things can be represented as systems in their own right, such as weather that decreases your sight or makes all rock surfaces slippery. Other things can be expressed through the game’s UI or story. If you push this even further, and modularise your systems more, you can let your systems make the rules. This becomes possible for any system that has sufficient variation in its inputs and outputs. In the board game The Awful Green Things From outer Space , there are various weapons that you can use and various effects that those weapons can cause. As you run around on the ship in the game, you can pick weapons up. But you don’t know what effect they’ll have. Only once you hit an awful green thing with it will you draw a chit that determines what the effect actually is. They may be very vulnerable against the weapon, or you may cause them to split into more awful green things. Mutators, modifiers, custom game modes. Players have always been fond of mixing things up. What’s important about these changes is that they will always use the same pool of common content and then change the rules in one way or another. Like setting up a custom game in Civilization . Back when Xbox Live launched with Halo 2 , the community that formed invented many new ways to play. One of the ones I remember was the “zombie” game mode, where you’d arm one side (the humans) with shotguns and then have one player play a zombie using an energy sword. If a human was killed by a zombie, they’d switch to the energy sword on respawn and now become part of the zombie team. The interesting part of this was that it was an entirely verbal agreement, but still worked. Later Halo games introduced the Forge, where these kinds of variations could be created as customisations and be shared across the community. Of course, with PC gaming, there’s always been modding, and modding can push things much farther than what something like Forge can do. But modding is beyond the scope of this post. Back in the Game Balancing Guide , you find Dax Gazaway’s classification for players’ openness to learning new rules. If your game is too different from other games, there will be a segment of gamers that won’t like it or may not even touch it. Games are interactive. Players will understand something that they play much faster and much more intuitively than they will understand something they watch . The connection between button press and feedback will make more synapses fire than just watching through a video. Because of this, it’s always better to let the player do what they are expected to do than it is to tell them how it’s done. On the very first screen of Super Mario Bros. , you’re not told that you have to jump. Rather, if you don’t jump you die and have to start over. Always aim to let the player play before you show them something. Sometimes you can’t rely on interactive gameplay for one reason or another, and you still have information you need to convey to the player. Mandatory information is generally the domain of linear games. Cutscenes and staged sequences are the tools used in those cases. Passive observation techniques . If you can, avoid using dialogue or written text. This is where film and television are good inspirations, because they try to minimise how much characters talk and how much is shown. Use the minimum amount of exposition or narration, and have the player discover things in their own time. Avoid forcing their hand. Always aim to show and not tell , and rely on words only if you really have to or don’t have time to find a better solution. As a way to parcel out information, you can refer to the inverted pyramid in journalism. Always get the most important element of a rule across first. Ideally, by letting the player experience it first-hand. A rule is made simple by clear boundaries. “Move one square” may sound simple enough, but can you move diagonally? Can you move into a square where there’s already another object occupying the same space? Can you move into the blue square, or only the white one? This is where your rules collide with reality and where you will need to really consider what you are making your rules for . Where effects originate from (their sources) and which things are affected by them. What you will quickly notice is that rules can easily overlap multiple systems. If instead of saying “wood burns,” you’d say “flammable materials burn,” we can’t know what the rule means without first internalising which things are flammable. Saying “wood burns” means that the player can look into the environment of the game, identify something as wood, and then understand that it burns. Wood being flammable in this case, becomes a perceived affordance once internalised. The following is effectively a glossary of the terms used in this post. You can combine it with the previous post and you’ll have a sort of manual on how to go about making a systemic game. Send me an e-mail at [email protected] when I can play it! Design simple systems . Provide intuitive rules . Apply these rules consistently . Permissions: Wood burns. Books burn. Fire spreads. Restrictions: Water douse flames. Storms douse flames. Magicwood won’t burn. Conditions: Burning things break over time. Design simple systems . Permissions , Restrictions , and Conditions are your three main rule frameworks. Gestalts can be used as communicable collections of rules and invitations to expand player play styles. Provide intuitive rules . Comprehension means understanding how a rule works. Elegance is about making wide use of narrow elements. Notion argues that you should lean into what players already expect, even against common sense. Apply these rules consistently . Predictability means that you get the same outputs from the same inputs. Coherence makes sure that your game works the same under all circumstances. Variability is a strength of consistency, because it lets you mix things up. Extensibility can mean systems or players changing or even making up the rules. Communicating rules includes some considerations: Play, Don’t Show : games are interactive first and foremost. Lean into it. Show, Don’t Tell : words are the least effective channel you can use; don’t use them if you don’t have to (or want to). The Inverted Pyramid is a handy journalistic tool that you can use to parcel out information. Boundaries need to be set, so that players understand where a rule begins and ends. Perceived Affordances are intuitive visual elements that aid the communication of your interactions (and therefore rules).