Cohost is being quite positive and nostalgic so I think it's time for me to bring in some hater energy. As a farewell post I'll do something very important - talk shit about inertia in shmups.
When people say "inertia" they mean movement accel and decel that gets applied after you press/release a directional input. These 2 usually go hand in hand, but even the presence of just 1 will make people go "inertia!" The basic idea is that, instead of just having immediate, responsive controls, they get run through an additional, automatic "post processing filter" which adds a delay.
It also tends to be applied to cases where you accelerate from a standstill. Gradually going from speed 4 to speed 6 when you hold the focus shot button isn't as much of a problem because you still get an instant response when you need to move, you can just modulate it manually. It also rarely gets applied to special states - people won't complain if a linear, locked in dash has inertia, just your basic movement. Games need a responsive, reliable base layer.
Also, since some people get this confused, inertia has nothing to do with analog controls. You can have analog controls without inertia, and inertia without analog controls. Analog controls, similar to focus shots, simply let players manually modulate speeds.
Another 2 points to keep in mind :
- The biggest problem people who defend inertia are gonna face is decoupling the presence/absence inertia from overall game quality. Some good games have inertia. Are they good because of inertia, or is it in spite of it? Would they be worse if you removed inertia but beefed up patterns/etc. to preserve the difficulty? That's the big question.
- "Inertia is bad" is prescriptive in the same way as "your anatomy is wrong" is prescriptive in art - the rules are important because they're primarily broken by newbies out of ignorance, and overwhelmingly lead to either shitty games, or games that could be better without inertia. Egon Schiele's experiments with human anatomy are not the same as some crappy middle school doodles.
[PREDICTIVE GAMEPLAY]
The simplest goal of inertia is to make dodging harder. It makes it harder to do micro-dodging because you now have to work around an acceleration curve you have no control over. On top of that, it makes reactive dodging less viable - you can't use your reflexes to quickly adjust, because every movement no matter how tiny has startup lag. This inability to use your reflexes makes dodging subtly harder across the board, not just in niche cases.
To me, the most obvious argument for the addition of inertia would be that it shifts the gameplay away from being reactive and towards being predictive. Players will have to think ahead, which could potentially be more engaging than more reactive dodging. The idea is that it could do what Dustforce does to precision platformers.
Here are some problems with that :
- Shmups, especially bullet hell shmups, are already centered around predictive gameplay. The entire core skill being tested is your ability to predict the movement of independent objects over time. The simplest example of this is streaming bullets - there's a lot of delay between when they shoot and when they reach you, you have to anticipate where the bullets will be and move in a kind of whip-like motion.
- These sorta mechanical layers aren't additive - they clash & fight each other all the time. If you add inertia, it'll push you into making balancing decisions that minimize the complexity of patterns, which will simplify the already existing predictive gameplay.
- The same exact argument can be used in defense of extreme levels of input lag. If you wouldn't make it for input lag, ask yourself why you'd make it for inertia. In general, "it's more challenging" isn't a good answer because it can be said of anything.
If you want more predictive elements then simply add more predictive elements. Add more homing bullets that track the player in interesting ways, play around with that stuff. There is no reason to fuck with the player's controls just - everything you need is already there. You can genuinely get the best of both worlds, projectiles which test the player's prediction skills but also instant, twitchy on-the-fly adjustment.
[RACING GAMES & PLATFORMERS]
A common comparison you'll hear is to racing games. If inertia's bad, how come entire genres like racing games depend on it? This comparison is bullshit. Adding inertia to a shmup brings over maybe 1% of a racing game's dynamics. Into a genre whose "native" dynamics pull in a completely opposite direction. It reduces what's a tight interconnected system into a shitty post-processing filter.
Racing games are about building and maintaining momentum. Movement isn't done for other purposes like dodging, misdirecting or attacking, it's done for its own sake. Any forward movement is the player moving closer to a victory condition, no matter how tiny. Because of this alone, momentum stops being a burden, it's a skill the mastery of which the game directly evaluates in an extremely granular manner. But really, this is only the beginning.
On top of being based around forward movement, racing games also try to add as much control and interactivity within that framework as they can. The inertia isn't merely a filter. Your accel pedal will usually be fully analog, and how you press it will matter because it'll affect the traction of your wheels, which in turn will affect your steering, which will change your car's weight distribution, which will make it easier or harder to turn, which interacts with the terrain.
Every mechanic communicates with each other, every input sends ripple effects, it's something players have to always adjust & react to. It's not just an automated, linear curve. This level of interaction between mechanics allows for both interesting challenges, AND dynamics that can benefit the player such as the scandinavian flick - something inertia based shmups lack.
There is nothing you can do in the average inertia ridden euroshmup that you couldn't do better in an arcade shmup. There are no ways of playing with inertia besides just accelerating in a different direction, your accel and speed don't vary based on terrain, there are no ways to use inertia to your advantage, and even if there were none of this would be rewarded.
[STATE BASED GAMES]
State-based games are stuff like action platformers, beat 'em ups, fighting games, etc. Games where you commit to an action on button press, and have to see it through (or cancel it into another state).
The relationship between inertia & state-based games is interesting. Unlike shmups and most racers where movement is continuous and uninterrupted, state-based games typically lock you in place during things like attacks. Games with inertia, however, can actually bypass this lock by letting you carry momentum between different states. Instead of being a limitation which players will always have to work around, it frees the player up to do things that wouldn't have been possible in a purely state-based game.
Just like racing games, state-based games tend to play with indepth momentum control - certain states let you carry momentum, certain states let you build it, certain states slow you down or outright cancel momentum. There is opportunity for control at every step. This control can then be given meaning and weight through different pros & cons of different states - maybe a jump would preserve momentum but cannot be controlled, making you vulnerable. A backstep could break momentum but make you retreat. There's a lot of ways this stuff can be balanced.
Needless to say, none of these dynamics are captured by inerta heavy euroshmups - there are no states, no interplay, no tradeoffs. Once again, it's just a filter.
[MOUSE ACCEL]
FPS games have their own inertia - mouse acceleration settings. Here, inertia doesn't exist to "make the controls more challenging/engaging", it exists to give player more control by trying to address a really unique problem - depth. Because your proximity to a bunch of independent, unpredictable, often quickly moving targets changes constantly, a single static mouse sensitivity setting will have a hard time dealing with the huge range of situations that pop up. It's like if shmups had bullets & hitboxes that constantly changed speed & size in real time, unpredictably - it'd be insanely hard to find the right ship speed to deal with all that crazy variation. In FPS games the problem is even more tricky than in shmups. Because in the latter, you're aiming for negative space, areas where the bullets aren't. In FPS games you're aiming at small moving targets, so the room for error is vastly smaller.
Even so, FPS games offer a range of customization for different player types that inertia-driven shmups do not. People even tend to prefer external tools like Raw Accel that lets them fully tweak & customize the acceleration curve to their liking. Inertia-based shmups don't bother with this, because they aren't adding inertia to solve a concrete problem.
ALSO (shoutouts to Edvard for pointing this out) mouse acceleration is more like modulation than inertia, because it simply adjusts speed of cursor based on the motion of your mouse, rather than applying a post-processing filter. Smoothing is like inertia, and smoothing sucks ass since it just applies accel and decel without player input.
Then, of course, there's the more vague, subjective consideration - what is the game about? FPS games are usually testing the player's ability to track a target visually & having the reflexes + hand-eye coordination to precisely aim and shoot. That's why they tend to be so flexible regarding their crosshair speed, and why the inconsistency in aiming based on distance is seen as a problem to be fixed via inputs rather than an inherent limitation of the game design. In shmups, ship speeds tend to define the style of gameplay, and different speeds have different impacts on the feel of gameplay & player strategy, trying to make that as flexible as possible would just homogenize the games. Unless other drastic changes are made.
[VIRTUAL SENSATION]
Another argument for inertia is that it looks/feels good, because similar techniques work in animation. Or because when testing it in an empty room of grey boxes it feels less stiff than 1:1 movement. This isn't completely wrong because if you're looking at a single ship in a grey room, it will appear to move smoother.
The thing is, players perceive movement not by looking at the ship (because they're looking at enemies/empty spots in patterns!), but rather by looking at the secondary elements surrounding the ship. Dense player shots, for example, allow players to get a sense of their own movement because they create bendy lines that follow the ship - they create secondary motion. Floating options (which do often have inertia), trails, and other appendages can also be seen via peripheral vision and give a sensation of smooth movement. Even when looking at the ship itself, well done turning/banking animations will add just as much if not more than inertia. Combine that with a spin if players change direction too quickly and other animations/appendages, and you've got some really awesome feeling games.
There are many many many ways to improve a game's feel without damaging the player's controls. Igavania games are nearly universally praised for their smooth controls, and they have no inertia at all - it's all handled with primary and secondary animations.
[DEVELOPMENT DOMINO EFFECT]
This section can basically just be filled up with Mark's explanation of the phenomenon. Basically mechanical choices don't happen in a vacuum - they vastly change what sorta game you will make, or can make. Adding inertia into Mushihimesama Futari Ultra is possible on paper, but in practice as soon as devs add lag to movement, it'll become harder to justify really complex, tight patterns. They'll have to simplify, and with that they'll simplify the more interesting, granular, prediction-based dynamics of shmups.
Take for example micro vs macro dodging. If you remove emphasis on micro-dodging (because it's too slippery & frustrating) and focus on the macro, you'll potentially make macro-dodging itself boring by being afraid to make macro-able attacks spread out enough that they'll sometimes force players into micro-dodges. It'll be a more binary dodging game.
The more fundamental the mechanic is to a game's design, the more it'll ripple across the entire game. And there is nothing more fundamental than movement.
[BUT THE BEGINNERS!]
Probably the strongest argument is to simply accept & double down on the simplification. Developers can say "so what if it simplifies the genre's other elements? The harder movement but simpler patterns are easier for players to understand, and thus get into! They can start playing with intention right away, physics are intuitive after all!"
I think this argument's more or less correct. Simplifying patterns on its own would make for a boring shmup, so devs can add a little more challenge by complicating the movement. I'd just say that, once again, there are a lot of ways to achieve this. Simply having bigger hitboxes and focusing on more discrete single attacks like homing projectiles, melee attacks, etc. will allow devs to make dodging more complicated while keeping everything snappy & responsive. Adding more movement mechanics is another good one - players tend to not only tolerate complex mechanics more than complex dynamics, they even welcome it because it provides a very clear set of things to learn & improve on.
There are other issues as well - inertia control isn't a transferable skill, so newbies become trapped. Not just that, but acceleration means that moving is less risky than strategically slowing down since you won't have to deal with the lag. This builds the opposite skill of the one you'd want newbies to learn - in traditional shmups standing still is really good when you can get away with it since it helps you control bullets.
This problem can be attacked from so many different angles that it's suspicious that inertia would be what developers focus on.
[NOW IT'S PERSONAL]
It's time to talk about something a little uncomfortable - developer psychological profiles. Devs who add inertia often follow predictable thought patterns and make choices for a small set of reasons.
- Inertia As Programmer Art. When starting games, devs tend to play around with really basic assets. Sometimes it's static sprites/models, sometimes it's just boxes. In an environment like that, game feel is created through code. This is where adding inertia makes sense as a decision - it combats the stiff feel of movement. Don't fall into this trap, try even the simplest animations before doing this, or reference other games with great animations but no inertia and see what they do.*
- A Lack of Respect. Many developers approaching shmups think of them as a lesser genre that can be improved by copypasting mechanics from more popular genres. Devs don't take the time to internalize shmup gameplay, nor do they consider that a well developed genre might have a useful set of conventions. If you're like this - change your attitude. A lack of popularity does not mean a lack of quality or refinement.
- Clueless & Carelessness. Many devs simply add it because it makes some intuitive sense and never question the choice and how it clashes with other mechanics because they don't play shmups much. If you're one of those devs - just make sure you get a good amount of shmup experience. Get some 1cc's, dabble in scoring, check out euroshmups & compare them to arcade ones. Just learn stuff, things tend to fall into place when devs do that.
- Faux Innovation Sometimes devs legitimately think they're doing something new and aren't part of a massive wave of games doing exactly the same shit and failing time and time again. Again, the best solution to this is experience.
- Sunk Cost & Cope. Sometimes devs will create rationalizations for inertia simply because they've already either built a decent chunk of the game around it, or because they somehow tied its presence in with their ego. I don't think anyone who's like this is gonna listen to me.
Developers need to understand that a lot of the time, they are being read like an open book so the excuses & justifications will not work. If you're an inexperienced shmup player, other players and other devs can spot that immediately. You can't really fake it in this genre.
["DESPITE EVERYTHING, I STILL LIKE INERTIA!"]
If you're a dev and truly like inertia while at the same time want to make shmups with it for god knows what reason, I think these criticisms actually provide an avenue for improving the implementation of inertia. The simplest rule of thumb is : what does it achieve that adding input lag doesn't? If you can't answer that, then don't even bother. Aside from that, there's some other criteria.
- Mastery of inertia should be rewarded in a granular fashion. If you're asking players to learn this skill, then reward them when they do, instead of making it a pre-requisite for engaging in the game's actually rewarding mechanics like cancels or what have you. May have to rethink scrolling. Inertia matters more if going fast lets you advance the game quicker.
- Make inertia two-sided. What sort of unique stuff can players who master inertia do that wouldn't be possible in other shmups, and how does it benefit them during gameplay? "You can eventually play it like a normal shmup!" isn't very compelling.
- Inertia should have a lot of modulation and dynamics, instead of being a post-processing filter. Let players play around with the simple physics simulation and connect everything together.
- Adding inertia to special states is fairly safe, if you have a strong base layer of responsive controls, you can play around with all sorts of momentum mechanics freely.
- Make the inertia itself feel good in ways that cannot be captured with secondary animations. If the game's based around drifting, add a car and actually have it drift.
- Radically rethink everything about how patterns, enemy waves & levels are designed to fit the game. Threading the needle with shitty controls may not be the best choice.
In short, if you wanna make it work, be prepared to actually do some serious design work. You can also use these criteria to evaluate whether existing implementations of inertia.