I have recently been reading Eric Raymond's
The Art of Unix Programming and it strikes me that many of the principles of good programming that he expresses could also be applied to RPG design. Based upon his work, I would like to propose the following 'laws' of RPG design. I'm sure that not everybody is going to agree with them, but they are a good starting point for a discussion of elegant RPG design. Let the flames begin!
Rule of Modularity
A rule system should be built out of simple parts joined together by common mechanics that are as intuitive as possible. The links between different subsystems should be as clean and standardized as possible – an approach that promotes flexibility and adaptability.
Ideally, final choices about how the rules work should be pushed as far toward the end user as possible. The rules should provide many options and support many different styles of play. GMs should be able to customize the core system based upon their needs and preferences.
The core game mechanics should be as small and tight as possible. Most of the rules that are not absolutely essential for making the game work should be moved to optional 'plug-ins' that GMs can use or ignore as they like without breaking the game as a whole.
Each new addition to the game system should do only one thing, but should do it well. When introducing several new features to the game, it is better to create a number of small extensions rather than one large one.
Additions to the core system should be self-contained. Game designers should try to avoid introducing dependencies between optional extensions.
By keeping the system as modular as possible, it is possible to modify one part of the rules without destroying the integrity of the game as whole.
Responsibility for maintaining game balance should be shared between the game designer and the individual GM. The notion that the game designer should build checks and balances into the core mechanics that make it impossible to break the system is ill-advised -- the same limitations that prevent you from doing really stupid things with the rules may also prevent you from doing really amazing things with the rules.
Rule of Clarity
Clarity is better than cleverness. It is better to have elegant and graceful rules than comprehensive rules that try to anticipate every eventuality. (Actually, it would be best to have rules that are both graceful and the cover almost every situation, but this seems to be an unattainable ideal. When in doubt, always choose playability over comprehensiveness).
Increasing the complexity of the rules to cover every possible situation that might arise is usually a bad trade off. Complex rules are more likely to harbor issues with game balance.
Furthermore, the more complex the rules are, the harder it becomes for future developers to build upon them.
Rule of Separation
As much as possible, try to separate crunch from fluff. Create generic mechanics and leave it to individual GMs to decide how to implement them in specific settings or genres. Don't tie any new game mechanics that you introduce too closely to a specific setting or genre.
Rule of Simplicity
Always design for simplicity; only add complexity where you absolutely must. However, note that simple rules are not necessarily the same as elegant rules -- complexity is only bad when it is unnecessary.
Actively resist rules bloat. Don't try and cram too many features into any given subsystem.
Always try to re-use existing rule mechanics rather than introduce new ones.
Encourage a design tradition that places a high value on coherence and simplicity.
Rule of Parsimony
Introduce new game mechanics only when it is clear that nothing else will do. Always weigh up whether the benefit of introducing a new rule mechanic will outweigh the complexity that the new mechanic will add to the system as a whole.
Rule of Transparency
Try to ensure that anybody can look at the game mechanics that you design and immediately understand what they do and how they do it.
Try to avoid the use of complex mathematics as much as possible. Follow simple mathematical progressions that are easy to remember. GMs should be able to calculate the probability of success or failure of any dice roll in their head.
The game mechanics that you design should be able to demonstrate their own appropriateness each time they are used.
Rule of Robustness
If your rules are simple and transparent, they will be robust.
Avoid introducing lots of additional mechanics that handle special cases. If the basic mechanics are robust, it should be possible for GMs to handle special cases on the fly.
Rule of Least Surprise
When designing a new rule, always do the least surprising thing. Avoid gratuitous novelty and excessive cleverness.
Don't require the GM or players to learn any new game mechanics if you can possibly avoid it. If you do need to introduce new game mechanics, make them as intuitive as possible.
Novelty is a barrier to entry; it puts a learning burden on the gamer, so try to minimize it.
Find similarities between the rules that you want to introduce and existing parts of the system that players already know about. Make the structure of your new subsytem mimic the structure of existing subsystems as closely as possible .
Also, pay attention to the history of RPG design. Over the past three decades, RPGs have developed conventions about how rule systems should work. You can use these traditions to your advantage in order to tame the learning curve.
The Rule of Least Surprise should not be interpreted as a call for conservatism in game design. As in other sorts of design, laws and guidelines are not a substitute for good taste and judgment. Always consider your tradeoffs carefully — and evaluate them from the end user's point of view.
Nonetheless, the bias implied by the Rule of Least Surprise is a good one to hold consciously, mainly because game designers have a tendency to be too clever for their own good.
Rule of Silence
Well-behaved rules do their jobs unobtrusively, with a minimum of fuss and bother. Bad rules require constant checking against rulebooks.
Don't have any more charts and tables than are absolutely necessary.
Rule of Economy
Gaming time is precious. As a general principle, it's better to waste the developer's time than the time of the gaming group.
Well-designed rules should treat the gamer's attention and concentration as a precious and limited resource, only to be claimed when necessary.
Rule of Extensibility
Never assume you have the final answer. Distrust all claims for “one true way”.
Nobody is smart enough to optimize for everything, nor to anticipate all the uses to which a rule system might be put.
Designing rigid, closed rule systems is an unhealthy form of arrogance.
Always leave room for future growth and development; otherwise, you may find that you are locked into unwise design choices because you cannot change them while maintaining backward compatibility.
Make it easy for future designers to plug new functions into the game system without having to rebuild the core game mechanics from scratch.
Embrace the concept of an open system that is extensible and contains lots of hooks for customization.