Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
September 26, 2017
arrowPress Releases






If you enjoy reading this site, you might also want to check out these UBM Tech sites:


Game Design Deep Dive: Finding the beat in Crypt of the NecroDancer Exclusive

Game Design Deep Dive: Finding the beat in  Crypt of the NecroDancer
September 17, 2014 | By Ryan Clark

September 17, 2014 | By Ryan Clark
Comments
    11 comments
More: Console/PC, Indie, Audio, Design, Exclusive, Deep Dive



Game Design Deep Dive is a new series from Gamasutra, with the goal of shedding light on specific design features or mechanics within a video game, in order to show how seemingly simple, fundamental design decisions aren't really that simple at all.

Check out last week's installment on the digging mechanic of
SteamWorld Dig. Also don't miss these developer-minded looks at the movement system in Road Not Taken and Amnesia's "sanity meter."

Who: Ryan Clark, Founder/Designer/Programmer at Brace Yourself Games

Im probably best known as the guy who designed and programmed Crypt of the NecroDancer in 2014, but I began my journey as a game developer in 1984 when my dad taught me to program terrible games in BASIC on our Apple IIe, when I was 6. I continued making games as a hobby for the rest of my life, eventually founding the Game Programming Wiki in 2004 to help share some of the knowledge Id gained. In 2005 I took the plunge and went full time, co-founding Grubby Games and releasing our IGF nominated puzzle game, Professor Fizzwizzle. You may also remember Grubby for our two other IGF nominated games, IncrediBots and FizzBall. In 2009 we sold the company to Big Fish Games, and in 2013 I decided to start over again, founding Brace Yourself Games to create Crypt of the NecroDancer.

What: A rhythm mechanic that requires almost zero beat accuracy

Crypt of the NecroDancer is a rhythm game that goes to great lengths to require as little rhythm as possible. What caused us to stray so far from the traditional rhythm game formula of PERFECT OK MISS?

Why?

My design goal for Crypt of the NecroDancer was to make a dungeon crawling roguelike game that felt fair. Fair in the way that Spelunky feels fair: When you die in Spelunky, you can usually only blame yourself. You didnt see that arrow trap. You foolishly feel onto spikes, etc.

As long as a game is fair, it can be extremely challenging without frustrating the player. Each death is the result of a lack of knowledge (Oh, I didnt know that those faces would shoot arrows at me! Now I know!) or a lack of skill. Gaining the necessary knowledge or skill is entirely in the hands of the player.

Contrast this with the original roguelike, Rogue. I played the hell out of it when I was young, and despite my wealth of experience I often died due to lack of food, inadequate equipment, or just plain bad luck. I believe that the majority of Rogues generated dungeons are actually unwinnable. Yet, for some reason, I kept coming back time and time again. Despite its unfairness, I still loved it. But recently I wondered: Would I have loved it even more if it were truly fair?

So began my quest! To achieve this goal of making a fair roguelike I ended up making a roguelike game that is turn-based yet-time limited. This, in effect, made the game a rhythm/action game, but that was not my original intent!

How?

I believe that the real-time nature of Spelunky is what permits it to feel fair. There are no random combat dice rolls, as in Rogue. Its based solely on skill: You either whipped that bat first, or it touched you first. But I didnt want to strip Rogue of its turn-based nature entirely, so I hybridized: There are still turns, but they are fast! I hoped that this would retain the best aspects of both games.

When I tried prototyping this, having turns of enforced duration felt like moving to a beat! So I tried playing the game to the rhythm of “Thriller by Michael Jackson, and it was both hilarious and fun -- but there were some problems.

First, I implemented the game with about 20 percent leeway around the beat. For a 120bpm song you have 500ms per beat. A 20 percent leeway means you have to be within 100ms of the beat or your movement will fail. I did this because this is what rhythm games traditionally do they require you to be accurate.

But I found that the times when you are least accurate are the times when you are most stressed! If a miniboss dragon has just bashed down a wall and is about to fireball you, the fact that youve been startled means that your next movement is likely to be less accurate. But if you MISS the beat and fail to move, youll die and get frustrated. So I tried increasing this leeway value and was surprised to discover that it felt best at 100 percent! I think I was unwise to emulate rhythm games here. Most rhythm games require you to simply obey commands, and their challenge comes from doing that accurately. In NecroDancer the challenge comes from the fast tactical combat itself. Requiring accuracy is just frustrating.


Second, my initial prototypes had the player move on the beat, while the enemies moved halfway between the beats. I felt that this gave the game a predictable, I move, then you move, then I move type of structure. And it also made combat obvious: If an enemy moves into your tile, it attacks you. If you move into an enemys tile, you attack it! The drawback, however, is that it doesnt feel like the whole game world is visually synchronized to the beat. You move on the beat, but the enemies dont.

This makes it more difficult for players to get into the groove keep the beat themselves. However, the alternative is to have both the player and the enemies move at the same time, but allow the players action to take priority. I worried that this priority system would be confusing to players, so I didnt try it at first. It was only after persistent prodding from Matt Thorson (creator of TowerFall) that I gave it a shot. And he was right; the game does feel much more unified when everything happens on the beat. There are some strange corner

"When I decided that rhythm gameplay was the way to go, I did not expect to end up removing the precise rhythm requirements that are a hallmark of the rhythm genre!"
case drawbacks created by this simultaneous movement scheme, but since they crop up so rarely, I think the benefits greatly outweigh the disadvantages.

Last, for debug reasons I was logging data that showed how far off the player was from the beat, each time they moved. From looking at these logs I noticed that players naturally drift away from the beat when stressed, then drift back toward it afterward. As mentioned above, they would sometimes miss a beat due to this stress and get frustrated, so I used a leaky integrator to implement an autocalibration system. If the player is moving a little faster or slower than the beat, the game will slowly shift the effective position of each beat to match. This can only be pushed so far, but it does help to ensure that the player doesnt receive a MISS when they feel like they were indeed on the beat.

My reasoning was this: A player hits the key when they perceive the beat to be. They might be wrong, but thats where they feel that the beat is! And if the game tells them that theyre wrong, in the heat of battle, they get frustrated. So this autocalibration system bends the rules a little (without drifting more than 1/2 beat away from the true beat position) to give the player as much benefit of the doubt as the gameplay rules can bear.

The result

When I set out to create a fair roguelike game, I did not expect to end up with Crypt of the NecroDancer. And when I decided that rhythm gameplay was the way to go, I did not expect to end up removing the precise rhythm requirements that are a hallmark of the rhythm genre! But I am very pleased with how it all turned out. I think the key for me was iteration (playing the game a ton myself, playtesting with friends, relatives, and other game designers), while staying open to having the design go to a place that I did not initially expect!

Are you a developer interested in contributing to Gamasutra's Game Design Deep Dive series? Email editor-in-chief Kris Graft: kgraft@gamasutra.com


Related Jobs

Sanzaru Games Inc.
Sanzaru Games Inc. — Foster City , California, United States
[09.26.17]

VFX Artist
Sanzaru Games Inc.
Sanzaru Games Inc. — Foster City , California, United States
[09.26.17]

UI Artist
Respawn Entertainment
Respawn Entertainment — Los Angeles, California, United States
[09.26.17]

Senior VFX Artist
Deck Nine Games
Deck Nine Games — Westminster, Colorado, United States
[09.25.17]

Senior Console Programmer









Loading Comments

loader image