4/28/2015 - C.J. Kimberlin
I had to skip the last one but this time around I was able to participate in Ludum Dare again! My last entry did pretty well so trying top it was going to be challenge. Since I’ve been building up my skill as a game designer, I decided to focus heavily on something that has plagued me in almost every game I’ve made. Level Design, pacing, and the difficulty curve.
Execution for Beep Boop had to be simple. Not only because I was working on it solo for a game jam, but if my goal was to work on level design then that’s what I needed to spend most of my time doing. I leveraged every trick I could to make sure the scope of the project was achievable. I used my Platformer Controller package, kept what the player would do simple, kept the challenges simple, and used a very basic (but pleasing) aesthetic. And of course, most importantly, planned everything up front on paper.
The result of this careful planning? Everything went smooth and I finish at around noon on Monday instead of hectically working until the last moment. Why Monday instead of Sunday when I worked solo? Well, I wanted to leverage some feedback from a playtest Sunday night.
I can’t stress enough how important playtesting is for any game. When you build a game as a designer you are working off of assumptions. With enough experience these assumptions are probably pretty good, but when you’re learning then these assumptions are often wrong. With playtesting you can identify the incorrect assumptions and correct them.
It can be hard to find time and people to run playtesting during a Ludum Dare but if you can then it’ll be incredibly valuable. I had three different playtesting sessions throughout the weekend, each allowed me to improve my design and create a better experience.
My goal of focusing on level design, pacing, and the difficulty curve paid off. This is probably my best game in terms of balance and discoverability. I made an effort to tell the player as little as possible, with the exception of what buttons did what, and allow them to figure it themselves (with hints from the level design). Players far enjoy figuring out what to do rather than being told.
WTF?! Didn’t I just have this in the “What went right?” category? While my level design efforts did go very well, it wasn’t perfect. Looking at the analytics a few days after I published Beep Boop, I noticed a glaring issue; the deaths for one of the checkpoint sections was significantly higher than the others. It also happens to be the section that I lose most my players.
While the difficulty curve should keep going up (on average), the failure curve should be roughly flat for this type of game. This is because the player’s ability at the game is growing along with the increasing challenge. The spike in deaths in the above graph shows that one of my areas is significantly too difficult for the player and should be reworked. Continuing to look at the graph, the final area is probably a little bit too easy.
Other analytics tell me which screens the players struggle with the most. These happen to the screens that I changed after my final play test. Coincidence?
For a project that I wanted to focus on level design, I sure made it hard on myself. My approach to building the area system was not at all modular. While I could tweak what was in any given screen, it was a major pain to change the ordering of screens or even remove a screen altogether. This ended up being very limiting in controlling and tweaking the pacing and flow of the game.
It’s hard to beat myself too much on this. I only had a few hours to build the system and went with what first came to mind. For future projects I’ll definitely have to keep this in mind.
People seem to praise my use of the theme in their posts. I have a hard time buying it as there are no enemies to fight. Is it a weapon if you have nothing to fight?
I think the design behind checkpoints is fascinating and after reading all the comments left by people, it would seem that it is a bad design idea to have spaced out checkpoints.
Is it frustrating to have to redo an area you’ve already done? Absolutely. So is the correct answer just to checkpoint at every screen so you don’t have to? Well, not necessarily.
When designing a game, I find myself trying to remove the frustrations of my players while building on to the positive experiences they have. Having spaced out checkpoints definitely adds to the list of frustrations by forcing players to redo challenges, but it also add two very valuable positives that aren’t immediately obvious.
For a slightly twitchier platformer, I expect the player to need to master the mechanics to use later on. By requiring the player to redo sections when they die, I ensure they get the practice they’ll need for future areas. I can leverage this in my design and assume the player has had the practice they need in order to have a positive experience with future levels.
The second positive spaced out checkpoints give the players is perhaps more important. It feels damn good to reach a checkpoint. As a player progresses through a checkpoint section, the tension increases with the cost of failure should they have to restart. Hitting that next checkpoint relieves all that tension and feels fantastic. Chasing these experiences as a designer should not be ignored.
Does this mean all the feedback I received about the checkpoints are incorrect or unfounded? No, but rather than the obvious solution of checkpointing every screen, I believe it means that my balance is wrong for some sections (again, see graph above).
Not All Playtest is Useful
The reason I enjoy making games so much is that I get so happy when I see other people enjoy themselves when they play my game. Best. Feeling. Ever. I also cringe so hard when I see people struggle. I want everyone to enjoy my game, I don’t want to leave anyone out.
But this isn’t realistic. You’re not going to be able to capture everyone with your game. Improving the experience for one group of your audience can diminish the experience for another group. During playtests you have to be careful to ensure the data you are gathering is from your target audience or is otherwise less useful.
I went to a post Ludum Dare show and tell Monday night and had quite a few people play my game. I’d cringed every time I saw someone struggle and not have fun with my game. I wanted them to enjoy themselves. It sucked that they didn’t. They’d tell me that it looked like I did a great job but they don’t really like platformers and move on. Then someone else would come, groove the game’s pace, and have fun. They’d say that they love platformers and thought this was fantastic.
Does that mean I succeeded?
Spaced out checkpoints are stupid! Let me hear it at @cjkimberlin.
C.J. Kimberlin is a Seattleite professional programmer, aspiring game designer, amateur artist, and the most awesome guy ever, just saying.