Trending
Opinion: How will Project 2025 impact game developers?
The Heritage Foundation's manifesto for the possible next administration could do great harm to many, including large portions of the game development community.
Featured Blog | This community-written post highlights the best of what the game industry has to offer. Read more like it on the Game Developer Blogs or learn how to Submit Your Own Blog Post
I kick off a series of articles on game feel with a very useful tip for 2D and 3D platformers: the "Ghost Jump".
(This is a repost from my personal blog)
I want to kick off a series of mini-articles where I’ll provide quick tips on game feel. So this week we’re talking about what I call “the ghost jump”. This seems to be one of those things that are useful to everybody no matter how old the advice really is, so we’re kicking off the series with it.
Video games have this ugly thing going on called “latency”. It’s not only related to networked games, unfortunately – your single-player platformer will have latency from video as well as input devices. I’ll dedicate an entire “game feel” article just to talk about latency, but for now let’s look at one of its most common and frustrating effects: the Bullshit-Fuck-I-Pressed-The-Button-and-I-Still-Fell-Into-the-Sodding-Pit”, or “The Bullshit” for short.
The Bullshit happens when you try to jump from the very edge of a platform to maximize your jump distance. But, alas, the game raises you the middle finger as your character stupidly falls to its demise without ever attempting to jump. Most of the time, it is not actually the player’s fault: a combination of input and video latency gives them the clear impression that, in fact, the button was pressed while the character was still on the platform.
Other times the player really did press the button a little too late, but unless you’re an asshole you really don’t want to punish him/her for that, do you? My school of design, at least, is focused on decision-making and quick thinking instead of perfect precision. Either way, latency does have an influence every time The Bullshit happens.
—
Here’s a playable example of The Bullshit using assets from a jam game I made called Boomerang Boy (Windows only, sorry about that):
So what do we do about it? The solution is quite simple: implement a Ghost Jump where you actually allow players to jump off a platform that is no longer there.
The way I usually go about it is to have a “Ghosting” variable that determines a delay to be used every time you would switch a character from being “grounded” (that is, able to jump) and in “mid-air” (not able to jump since he is already falling). So the game considers that a character is still able to jump for X seconds after he already fell from the platform, with X being the ghosting amount.
Press “G” in the example playable to toggle it on and off.
In the example above I used 130ms of ghosting, and I think it feels great. Even if you are offended by the notion of giving the player a little leeway on the jump timing, you should use at least 50ms of “ghost jumping” just to make it fair – this should be enough to compensate for most latency issues.
Oh, one last thing: don’t design levels where you require players to jump from the very tip of a platform because every time you do that a little baby dies of cancer.
Until next time!
Game Feel Tips Series
Game Feel Tips I: The Ghost Jump
Read more about:
Featured BlogsYou May Also Like