1. Make Memorable Environments
Apart from big monuments and gigantic points of interest, try to apply similar principles to your level design, so the player doesn’t feel disoriented in your game. In order to achieve that, add variety to your game assets and use unique architectural elements to serve as points of interest on a smaller scale. When designing my own game DARQ making the environment look memorable was especially important to me. It’s something that I had to learn the hard way during alpha and beta testing.
Since the player can walk on walls and ceilings, it was easy to get lost. I went the extra mile and made the whole environment mostly unique. There aren’t many repeating assets in the game, besides small props. Whether the player is walking on the floor, walls, or the ceiling, it’s a lot easier to navigate the environment without feeling disoriented since every room looks unique and has memorable elements in them.
2. Create Your Game Loop
A game loop is a series of actions that are performed over and over again throughout your game. Every game has a core loop that remains unchanged. Your goal is to design a game loop of actions that is engaging and contrasting in nature. For example, Skyrim’s core game loop involves exploration, fighting, looting, and upgrading new gear. Each action has a different intensity and emotion behind it, that’s why the loop remains engaging throughout hundreds of hours of gameplay. Try to create a game loop that is simple, yet varied. Making the player do too much of the same activity in the game will simply feel boring.
3. Tell the Player What to Do, But Not How to Do It
Having clear objectives is important, but give the player the freedom to complete them on their own term. As a game designer, try to think of multiple ways an objective can be reached. Allow the player to choose the playstyle they prefer and avoid linearity. Make the player feel as if they are the mastermind behind the solution they came up with, even if it was carefully engineered and thought through during the design process.
4. Be Careful with Randomization
Be Careful with RandomizationWhen your game heavily relies on Random Number Generator (RNG), you need to come up with a way to restrict it in some way. For example, if the player has a 90% chance to hit the enemy, the player expects a hit. However, when using RNG, missing 10 times in a row with a 90% chance of success is not impossible. It’s unlikely, but it’s bound to happen sooner or later. It would surely feel as if the game is rigged against the player, so it’s something you might want to avoid. There are ways to apply restrictions to the RNG algorithm, and most games do it. For example, you could prevent the RNG from generating the same outcome more than 3 times in a row. It’s a simple solution of course; it can get a lot more complicated in RPG and strategy games that rely on randomization.
5. Aim to Create Unique Experiences
As a new game designer, you may want to predict all possible outcomes of your game, but linearity is not what players tend to like. Instead, try to create systems that interact with each other and can produce unexpected results. That’s one of the advantages of the brilliant design behind Spelunky. Apart from complete randomization, Spelunky has numerous game systems that allow each player to have a completely unique experience, full of surprises and unexpected interactions.
6. Create High Stakes
Game designers know that high stakes and risky play result in more fun. However, most players would always choose a slow and careful playstyle to maximize their chances of success. The designers of XCOM: Enemy Unknown were surprised to learn that most players progressed through the levels very cautiously, using the over watch action repeatedly. Realizing that such playstyle results in a relatively boring experience, the designers introduced a lot more timed missions in the XCOM 2. Timed missions forced the players to act faster and take more risks. While it made for more exciting gameplay, many players were dissatisfied with enforcing a more risky playstyle.
7. Constantly Introduce New Challenges
Constantly Introduce New ChallengesTo keep the player engaged, you have to constantly invent new challenges. For example, Assassin’s Creed: Syndicate keeps the player engaged by alternating between different types of gameplay all the time. It never gets monotonous, because once the player gets used to the fighting system, there’s a stealth mission that requires an entirely different approach. Once the player becomes good at stealth, the game introduces timed horse racing missions. Finally, to switch it up further, the game alternates between two characters, Jacob and Evie. Switching between them both during and outside of missions keeps the game fresh. The player can customize their skill trees differently so that the characters offer unique gameplay experiences.
8. Aim to Create a “Flow State”
According to the Flow Theory, it’s a state in which the player is fully immersed in a feeling of energized focus, full involvement, and enjoyment in the process of the activity. Needless to say, as a game designer, it’s a state that you want your players to be while playing your game. According to the theory proposed by Mihaly, flow is a state that lies between boredom and anxiety. If your game becomes too easy, your player will feel bored and exit the flow state. If your game becomes too difficult, the frustration and anxiety will break the immersion and enjoyment. As a game designer, your job is to keep the player right in between boredom and anxiety: the state in which the player is fully immersed in the experience.
9. Create Memorable Moments
Memorable moments are usually achieved by contrast. If you want the player to remember something about your game, make it very different from the rest of the gameplay. It could be a contrasting scene in terms of the overall mood, color, and atmosphere. One of the most memorable moments from The Last of Us 1 for me was the scene with the giraffes. It was so unexpected and wholesome made me care for the characters a lot more. It was a spark of hope, or rather a reminder of normal life and beauty in the grim and hopeless world.
10. Design a Killer Inventory System
There’s a lot to consider when designing an inventory system:
Players like to have access to the items they use the most without having to open the full inventory window, so allow players to access their favorite gear (usually potions, spells, etc.) instantly, usually with hotkeys (1 through 9)
As the player finds rare and powerful items, the inventory can serve as a display of the player’s progress in your game. Allow for the items to be viewed up close. If your game is 3D, allow to zoom in and move the camera around. It could be fun for the player to discover hidden details about their most valuable possessions.
Try to have a full-body avatar of the protagonist displayed in the inventory. What can be more satisfying than seeing your character wear the most powerful armor in the game?
If your inventory has a capacity limit (or weight limit), it can add an extra gameplay element of “inventory management.” It can be quite satisfying to organize gear in the most efficient way or make difficult decisions when having to choose between two swords.
11. Allow the Player to Make Decisions Based on Morality
If the player carefully considers the moral implications of their actions -in your video games, you’ve done something right. Taking morality into account when playing a game indicates a high level of engagement and emotional attachment. If you want your players to incorporate their personal moral views into their playstyle, it’s important that moral decisions don’t have serious gameplay implications. For example, if “being good” is the way to gain more XP or gold, the player will always choose good actions over bad ones. It would be for the wrong reasons though, and in no way does it express the player’s moral compass.
12. Use Input Jump Buffer
Games usually detect when the character is grounded. That allows for jumping should only be allowed when the character is grounded, at least if you’re aiming to simulate reality in some way. However, what if the player hits the jump button right before landing? The jump wouldn’t execute, which would feel terrible. Sometimes just a single frame would make the character qualify as airborne instead of grounded, which would make pressing the jump button ignored. Needless to say, that would feel unresponsive and annoying to the player. That’s why you need to listen for input as the character is about to land and be ready to execute the action stored in the buffer as soon as the character touches the ground.
13. Make Your Character Small
Make Your Character SmallAfter you design a character, you naturally want to make it read well in the game. If you’re designing a platformer or a game that requires precise movement, make your character small. The smaller the character, the less your camera needs to move. If your camera is static or barely moves at all, it becomes a lot easier to control the character with high precision within the scene. All good platformers have this in common: the protagonist is very small compared to the world.
14. Fast Respawns & Incremental Progress
If you’re designing a game in which the character is meant to die often, otherwise known as a rage game, make sure you implement fast respawns. This way, death is not perceived as a harsh punishment but as a part of the learning process. Utilize frequent checkpoints, so the player never has to repeat large sections of the game. Fast respawns allow for incremental progress, where deaths serve to educate the player about the level.
15. Introduce Variety to Your Gameplay
To combat boredom that naturally results from reusing game mechanics and game assets (which you should do), you need to come up with ways to introduce variety to your gameplay. Avoid linear level design. Allow players to explore the environment. Create multiple paths to reach any goal. Have a degree of randomization in various aspects of your game, such as enemy encounters, loot, power-ups, and AI behavior. Variety can also be achieved by alternating between day and night, changing the weather, switching between interior and exterior, open and closed spaces, etc.
16. Reuse Your Game Systems
Don’t spend time on making game systems that aren’t utilized enough during gameplay. If climbing is a part of your character’s skill set, you’ve got to come up with multiple ways of using it throughout the game. If a system is used just a couple of times, it’s not worth having. Building a climbing system is a complicated task that involves a lot of coding, animation, and inverse kinematics. You have to justify the time spent on building a complex system by finding creative ways of reusing it repeatedly.
The challenge lies in inventing new ways of using the system. You can use climbing to get to a high platform, descend to a lower platform, etc. Also use it in the chase, escape, or stealth sequences. You can build entire levels around it, where climbing is combined with other skills, like shooting or jumping. That’s just a few examples you get the idea.
17. Reward the Player For Finishing The Game
Rewarding the player for making progress in the game is one of finishing the game? What is there you could do to reward the players for playing your game from start to finish? Think of unlockable costumes, characters, mini-games, concept art, or other things that could make the player feel that the whole journey was worth it.
18. Allow for Skipping Cutscenes
Allow for Skipping CutscenesSome players like watching long curses about the ers wackily, in straight to the gameplay and don’t care about the story. Luckily, in this case, it’s easy to please everyone. There’s absolutely no reason for you to force the player to watch a cutscene. When it comes to the story, try to convey the most important story elements through gameplay.
19. Design Fair Timed Puzzles
One of the ways you can introduce a bit of excitement to your game is to have your player solve a puzzle within certain time constraints. For example, performing a set of actions before the ceiling collapses or figuring a way out of a building before it burns down. Keep the following in mind when designing such puzzles:
The puzzle objective should be clear before or right after the time restriction is introduced
The time designated for solving the puzzle should be tight, but allow the player to make mistakes.
To increase excitement, consider ending the puzzle with the “barely made it” sequence.
In other words, even if the player manages to solve the puzzle fast, the dangerous outcome the player was trying to avoid happens right after the player succeeded (i.e. the ceiling collapses just as the player solves the puzzles, or the building explodes just as the player manages to find the way out).
20. Be Smart About Procedural Generation
Procedural generation is a great solution to filling your game with unlimited content, which ensures endless hours of gameplay. More often than not, however, procedural generation results in bland content that quickly gets boring. Not many games manage to get procedural generation right. There are many ways to approach this topic. Spelunky is known for masterfully implementing procedural generation. Its algorithm is surprisingly not overly complicated, but extremely elegant.
The beauty of procedural generation is that players would never know what rules are at play when the environment is generated. While procedural generation is hard to get right, try not to overcomplicate things if not necessary. Spelunky manages to generate environments that feel well designed, and it’s because it splits them into smaller chunks, each governed by a set of rules. While this approach might not be applicable to all genres, Spelunky is worth researching and analyzing if you’re making a game that utilizes procedural generation.
21. Make the Best Items Impossible to Buy
After all, you want to encourage your players to explore the game, not focus on acquiring in-game currency, right? The way to motivate the player to explore dangerous areas filled with monsters is to get better items, something that one cannot buy in stores.
22. Design Good In-Game Economy
Design Good In-Game EconomyIf you have in-game currency, you have to be smart about how it’s used in the world you’re building. Try not to overpower the player by making them rich too quickly. But also use in-game money to reward the player as they make progress in your game. Most importantly, have a lot of items available for sale. So the player has a lot of things to spend money on. Choosing what is the best thing to buy is an equivalent of reading hundreds of reviews on Amazon to decide what is the best product-it feels good.
23. Make Your Enemies’ Behavior Unique
Making enemies feel unique involves not only the looks but also their behavior. Make sure your enemies have different personalities/behaviors to make them feel unique and interesting to the player. Your enemies can differ in how aggressive they are towards the player (how long does it take before they stop chasing the player and return to their idle state?), how aggressive they become when attacked (would they risk their lives when their health falls below a certain point or would they try to escape?). Would they attack the player when unprovoked? How close would the player need to get for the enemy to attack? Your enemies can also differ in their speed, attack range, blocking skills, health. They can act more bravely and aggressively in groups than one. The possibilities are endless.
24. Reward Player’s Curiosity
Players love to stray off the path and explore. It’s usually disappointing when the exploration doesn’t lead to a satisfying discovery or a reward. Try to create optional paths and locations that are not essential to finishing your game. But provide a nice distraction from the main quest. Make sure to reward the players who display curiosity and explore your game in non-obvious ways.
25. Pause the Game When Large UI Screens Are Open
You may want to pause the game when the full-size map and other large UI elements are open. Such as quest journal, and maybe even inventory (it might be a game design choice not to pause the game while the inventory is open. Baldur’s Gate series was famous for that approach).