Through the near 4 years I’ve been actively speed running I have seen many games gutted within their launch weeks. I’ve seen animation locks and trigger skips. I’ve seen cutscene control and geometry parkour. Countless out-of-bounds and an even higher amount of infinite jump techniques. In 2015 it’s important to understand just what you are up against. Simply put, you are up against a community that thinks faster and harder about glitches than any professional QA team.
It isn’t always incredibly complex though. Sometimes the smallest oversight can crack a game open like an egg. Once that happens, there is nothing previous safeguards can do to stop the rest from spilling out, or from the casual player base catching wind of easy tricks. Now I know that given the sheer range of properties a game can have, there is no true way to guarantee this won’t happen to your product. However, there are some tropes I personally have noted that seem to repeat themselves. These tropes are usually the core point at which testing begins when you want to break a game.
Let’s go through a few shall we?
Infinite Height
This one is pretty easy to understand, although it can come in many variations. The most common place you see these tricks are in brawlers or anything with fast-flowing combat in general, usually executed through chaining height-gaining air functions. Check absolutely all of the functions that raise the height position of the player and make sure you can’t start another one before the player’s position is equal to or lower than where you started. This is a crucial concept because Infinite Height tricks can and WILL destroy your game if they are found.
(e.g DmC: Devil May Cry [2/3] / Devil May Cry 4 SE / Dante’s Inferno [2] / God Of War 2 / Darksiders / Sonic Boom: Rise of Lyric and many many more).
Collision Exploits
These have a nearly infinite amount of ways to occur, so I’ll just try to quickly cover a few from a big range.
2D developers, make sure all functions keep collision checks on all sides of the player, even during animations where you don’t move or when it is expected you will be forced in one direction. Also if you plan on moving the character around automatically through an area without the player’s control, turn off collision until the player gains control back, to avoid potential interference from other objects.
(e.g Sonic 1 / Freedom Planet / Mark of the Ninja)
3D developers, secure absolutely every single seam in your game world. Too often are tricks found via moving directly through a corner. Don’t give the player an ability to increase velocity fast enough to skip coordinates or it may be possible to clip surfaces. I don’t care how secure you think your game is, put kill plains everywhere that you aren’t meant to be.
(e.g Portal / InFlux / Dante’s Inferno)
Trigger Skips
These can really cripple a game if found, especially if it is based around open-world exploration to the slightest degree. If someone finds a way past your event trigger, you can almost certainly kiss any part of the game required to breach an area locked down during said event goodbye. Easy out is to just keep anything that is meant as a barrier locked down by default. You’d be surprised how much you can skip by skirting past a single event. Also keep your areas loading as a whole if possible, some pretty crazy side effects can occur if someone can get past an area load trigger.
(e.g DmC: Devil May Cry / Sonic Boom: Rise of Lyric)
Glitching has become so esoteric to the speed run community that you need to secure your game extremely tight to prevent anything. I nor any gamer expect your game to be completely bug free in an environment like this, but the very least you can do is try and stop those dam holes that can spread very quickly and break the foundation of the rest of it.
Don’t consider any of this to be talking down, I understand it isn’t easy to look out for such abstract things as what is found frequently. All I want is to stop those situations where a developer is heavily discouraged because of bugs being found very shortly post-release, because I can’t imagine it feels good after laboring so hard over a project.
This is only the tip of the iceberg, so any questions or further clarification needed, drop a comment below or hit me up at @CrypticJacknife on Twitter! 🙂
Continue reading with Part 2 right here!
Eh, sorry about the low quality of the Dante’s Inferno examples. Those were captured so long ago.
LikeLike