Since I don’t want to write about controls ever again, I’ll make a long story short. I tried a new control scheme for the plasma rifle alt-fire. If the player is firing the weapon, then if they also press down the right mouse button (RMB) they start charging the stasis. 

I assumed that, since the RMB is also used for melee, there would be situations where the player goes for a melee, doesn’t quite lift their finger off the LMB for that first frame, and therefore charges the stasis for one frame and then does nothing. However, this has not happened to me one time in testing. This control scheme appears to work near perfectly.

Unfortunately, this will only work with the plasma rifle, as its firing is relatively continuous. Accidentally shooting an extra bolt of plasma when you’re starting to charge the stasis is pretty much meaningless. In contrast, the sniper rifle is a more traditional weapon, and has a tiny clip. Accidentally firing an entire sniper shot every time the player wants to use the sniper alt-fire is a non-starter. Theoretically, we could add a buffer of a few frames between LMB and firing, or only fire upon button release, but that would add unwelcome latency.

But I still wanted the interesting dynamic that the concussion grenade brought. Since it clears out enemies so effectively, and the enemies cluster in the middle, it allows for much more aggressive movement. It’s also just fun to blow the enemies all over the place.

Implementing this effect through either a second type of grenade or a grenade alt-fire would come with many of the same issues that we’ve already seen with the weapons. We would need a button dedicated to switching between grenade types, and UI indicating which grenade is selected, although holding down LCTRL might not be as big of a deal, as the player would be less likely to have recently pressed TAB. I decided to avoid those issues, and simply added the concussive force effect to the already existing grenade. 

Unfortunately, it doesn’t work for a number of reasons. As it stands, the holy water grenade is very damaging against trash enemies, and keeps powerful enemies hitstunned. The concussive grenade was supposed to be the opposite, where it briefly auto-stunned even the largest enemies, and scattered the trash types. Combining these two mechanics just makes one effect dominant, and makes predicting the effect of the grenade quite difficult, since tiny differences in placement lead to massive differences in results. There is also a gigantic issue shown at the end of the video above, where a very powerful enemy type is near a grenade, which now auto-stuns it, then traps it in stun for the duration of the holy water’s existence. In other words, it’s finicky, and occasionally massively overpowered.

I’ll keep workshopping some ideas while I mostly work on other things.

You may also like

2 Comments

  1. Like the charge for the stasis could you hold the grenade button to “cook” it varying it from the concussion to holy, or vice versa either as a full conversion from one to the other or a sliding scale, although not sure how hand placement on the keyboard may impact this? Have you thought about having the controls re-mappable, granted I’m talking from a position of not even knowing the first thing about game design, cheers for posting my comment in the previous article, been a reader for years and it made my day.

    1. I like the way you’re thinking, and that was also my idea. It feels terrible to have the sniper rifle not fire instantaneously. However, I doubt the same would be true for the grenade, since it already has some travel time, provided that the lag is relatively low. Later on, this lag can be hidden by a few frames of animation anyway, where the avatar instantly cocks back their arm, but the grenade is not instantly thrown.

      Having said this, I’ve been disappointed by seemingly great ideas not working out in practice before. The only way to know is to try.

Leave a reply

Your email address will not be published. Required fields are marked *

More in GDev