Showing posts with label achievements. Show all posts
Showing posts with label achievements. Show all posts

Saturday, July 25, 2020

Pinstripe and Broken Achievements

I wanted to write this post at the end of December, but the winter holiday season is a busy time, so that didn't happen. Then, by the time the holidays were over, I was already back at work, and forgot about it. Later on, I had an idea about writing this as a follow-up to How to Cheat in Spec Ops: The Line, but that didn't happen either, mostly due to laziness. Now I have a moment and I can only hope that I remember accurately the details of what I had meant to document in December.

So anyway, there's this game called Pinstripe. I have a hefty collection of random indie stuff in my Steam library, mostly from Humble Bundle and from Fanatical (formerly Bundle Stars), so I probably wouldn't remember exactly where I got this one in particular if there weren't records of it. Cross-referencing my Steam account's history of product key activations with IsThereAnyDeal's list of bundles featuring the game, I see that I must have gotten it from the $1 tier of Humble Jumbo Bundle 12, in late November of 2018. My achievement history shows that this is around the time I first played the game as well, so it didn't languish in my backlog for an extended period of time as many indie games from bundles tend to do. Late November into early December was a nice time to play the game as well, given the snowy winter setting.

Overall, it's a cute game. In any mini-review of any kind of game, I feel morally obligated to judge the gameplay first and foremost; but, in this kind of indie game, it would probably be a lie to say that the game and its mechanics are much more than a vehicle for the developer's artistic expression, which could have been channeled into a short film instead if it could have survived becoming that much less engaging. I won't claim to know the developer's intentions but I suspect the goal was to tell a story in an interactive medium and not to get the player hooked on addictive gameplay. So I'll just say that the gameplay is all right; it gets the job done, and manages to be neither frustrating nor entirely boring. But if you don't care for the story or the music or the art direction, you won't care for the game itself.

What stands out to me in hindsight is the audio. The soundtrack is really nice. The voice acting is also pretty great by video game standards. By the end, the story is perhaps a bit clichéd — well, perhaps incredibly clichéd, if I'm being perfectly honest — but its presentation is not as unbearably pretentious as so many indie games are. In short, they did a good job. It's a nice game. I should feel bad for having paid so little for it.

After having played through the game once or twice, I had unlocked all but one achievement:


Beating Pinstripe in an hour is not a remarkable feat. It's a short game. So, I thought, I might as well try it. There's no visible in-game timer, so I took note of the clock on my computer when I started, and played through the game, already knowing where to go and the solutions to the puzzles. I finished in less than an hour. The achievement didn't unlock. I figured the problem was that I had essentially started a "New Game Plus" so I deleted my save and even reinstalled the game to ensure I was starting with a clean slate. I finished the game in less than an hour again. The achievement didn't unlock.

A trip to the game's discussion forum on the Steam Community site revealed that I wasn't the only one having trouble with unlocking the achievement. It was apparently bugged. I checked the forum again today and it's apparently still bugged. There are workarounds which have solved the problem for some players. At least one guy claimed to have done it just by reinstalling the game, but that hadn't worked for me. In mid-December of 2018, someone came up with another fix which seemingly solved the problem for a lot of other players.

This fix involved editing the Windows registry. Specifically, according to this Steam forum post, one must clear a TotalPlayTime entry from HKEY_CURRENT_USER\Software\Atmos Games, LLC\Pinstripe. Yes, the game apparently tracks total play time in the registry. That just boggles my mind. I don't understand it. Perhaps I just don't understand game development or Windows software development well enough to see why Atmos Games would do this, but it seems insane to me. In any case, for whatever reason, this workaround didn't work for me. I assume I must have done it incorrectly, because it had worked for others. However, having failed once with this attempted registry hack, I had already failed the speedrun achievement at least three times in total, and I was fed up. I uninstalled the game.

However, this was not before I had seen another post claiming to have a fix for the Linux version of the game. At the time, I wasn't using Linux on my personal computer yet, but I figured I might try it someday. Sure enough, I started using Linux the following year. Attempting again to get the last achievement in Pinstripe wasn't really my top priority as a new Linux user, but I was bound to come back to it eventually.

So at the end of 2019, I reinstalled Pinstripe on Linux Mint. Now there was no longer a Windows registry claiming I had played for hours, so if I had still remembered how to finish the game quickly, I probably could have just unlocked the achievement fair and square in one attempt. Unfortunately, I hadn't played the game in about a year. I would most likely have had to play through the game once to remember what to do, and then a second time for the speedrun achievement. I had already messed around with this game enough, and I had already beaten the game in under an hour multiple times as verified by my own clock, so I didn't feel like playing fair. If this Linux workaround documented on Steam could be used to unbreak the achievement, it could also be used to cheat. So I decided to remove any chance of failure, and cheat.

I mean, in my defense, it was barely cheating. The game had already cheated me.

I played through most of the game, and sure enough, as I neared the end, I was not on track to beat the game in under 60 minutes. So I closed the game and, following the advice found in the Steam forum, I opened up the file ~/.config/unity3d/Atmos\ Games\,\ LLC/Pinstripe/prefs. It's a plaintext file in some XML-like format with a handful of tags specifying various preferences such as screen resolution height and width. As promised, there's also a line of the form
<pref name="TotalPlayTime" type="float">xxx</pref>
where xxx is the elapsed play time in seconds. Note that, for the sake of verifying what units are used here (for it could have been milliseconds for all I remember of December 2019), I just reinstalled the game and played it for about a minute, and this line in my current copy of this file now reads as follows:
<pref name="TotalPlayTime" type="float">62.1948</pref>
At the time I first found this file, I suppose it must have read something closer to 3600, as I was approaching the one-hour mark with not enough time to spare. So I opened up the file in vim, decreased the value by a few hundred seconds, opened the game back up, and played to the end. The achievement finally unlocked.

Now I've got my 100% completion in Pinstripe. Was it worth it? Well, no and yes. The time I spent trying to unlock the achievement on Windows was a waste of time. However, I still liked the game and wanted to play through it again last December; I also wanted to test drive the Linux version; and, while I was doing that, I figured I might as well get the achievement I was owed. Editing a text file, by the way, was a lot easier than playing around with the Windows registry. Linux wins again, I guess.

There are people who pay absolutely no attention to achievements. For the sake of my mental health, perhaps I should try to be one of them. For the most part, I guess I am. I have far too many games to be caring about unlocking all of the achievements in all of them, considering how many games have achievements which are just arbitrarily time-consuming, seemingly for no reason other than to decrease the number of players willing and able to unlock them and thus to increase their perceived value among self-proclaimed achievement hunters.

If I've already unlocked over 90% of a game's achievements, though, it's hard not to go for 100%. If there's only one achievement left, it's almost impossible not to try, or to be annoyed by it forever if I know it's unattainable. I have other games which, like Pinstripe, have some broken achievements, but there are not always easy workarounds to unbreak them. Do achievements really matter? Not really. But they're a part of the game, and you shouldn't sell broken stuff.

Dear game developers,
Stop selling broken stuff.

Thursday, February 6, 2020

How to Cheat in Spec Ops: The Line

Why Cheat?: A Quick Review of My Experience with a Not-Completely-Awful Game


I don't usually play military first-person shooters, let alone cover-based shooters like Spec Ops: The Line. But I got it for $1.00 (along with Duke Nukem Forever and The Darkness II) from Humble 2K Bundle 2, and... it wasn't that bad, at least on the default difficulty setting. I suppose it's precisely because I don't usually play this type of game that I didn't just see Spec Ops: The Line's cover-based shooting mechanics as an inferior version of what you would find in, say, a Gears of War game. For me, it was something different, and I enjoyed it, even though it was occasionally frustrating. Having gotten to the end of my first play-through, I could see myself playing it more, and none of the achievements seemed particularly hard to unlock, so I decided to play through the game a couple more times to go for 100% completion.

It was only at the point where I had unlocked all but one of the game's achievements — the one for beating the game on the hardest difficulty setting, FUBAR — that I realized how anti-fun the game could be. So I dropped it for a while. But after a few years of seeing 49/50 on the game's achievement tracker, it began to bother me.

The thing about me and achievements is that, while I'll make some effort to unlock them if they actually happen to be fun to unlock, I don't really care a whole lot about them otherwise... except in that they annoy me when they serve as a reminder of what's almost finished. In other words, while I don't normally treat a game with achievements as a tedious "to-do" list, 98% complete is just irritating.

So eventually, I did go back to the game and try to beat FUBAR mode, thinking it just couldn't be as bad as I remembered. But it was worse than I remembered. It was an enjoyable challenge for a while, and I actually got all the way to chapter 11 out of 15, but after a certain point, I couldn't play for more than 30 minutes at a time without getting annoyed. I wasn't enjoying it anymore, and while there were occasional moments of satisfaction in which I was able to pass a checkpoint by figuring out some optimal strategy and executing it perfectly, these moments were outnumbered by all the times when having gotten through a tough fight seemed like blind luck. The game's FUBAR difficulty setting isn't just unreasonable at times; it's also where the inherent flaws in the game's design really shine.

When one isn't having fun with a game anymore, does it make sense to keep playing just for an achievement? Not really. Not when nobody else is ever going to see or care about that achievement. When a game isn't fun anymore, the rational choice is either to drop it or to make it fun. I had begun to wonder if there was a way to cheat my way through the last bit of the game, as venting my frustration by breaking the game in some amusing way might make up for what felt like a waste of time so far. Turning that 49/50 into a 50/50 (so that even my undiagnosed OCD could accept that I'm done with the game) without having to subject myself to any more of this sadistic FUBAR nonsense would be nice too.

That's when I realized that the game's configuration files, which are encrypted in the Windows version on which I did the first half of my FUBAR play-through, are human-readable plaintext in the Linux version on which I continued the game after the termination of Windows 7 support gave me the final push towards using Linux for almost everything.

How To Cheat, The Easy Way: Step One Is To Install Linux (Which You Should Do Anyway Unless You Really Love Windows 10)


Install the Linux version of the game using the Linux version of the Steam client, and go to
~/.steam/steam/steamapps/common/SpecOps_TheLine/SRGame/Config
and you'll find a bunch of .ini files — 94 of them, by my count — and a single .txt file. I haven't fully explored the contents of these configuration files, because some of them are rather large, and there are too many of them to summarize here even if I had looked at them all. However, a quick browse through a few of them suggests that they contain variables for almost all the numerical and Boolean values one might want to alter, such as: player health, health regeneration rate, enemy health, the amount of damage required to explode enemies' heads, weapon damage, amount of ammo each weapon gets from ammo boxes, et cetera.

Some files have multiple variations. For example, the files
SRPawnEasy.ini
SRPawnEasy_Coop.ini
SRPawn.ini
SRPawn_Coop.ini
SRPawnHard.ini
SRPawnHard_Coop.ini
SRPawnInsane.ini
SRPawnInsane_Coop.ini
all contain values like character health. The ones with the "Coop" suffix obviously apply to the game's cooperative multiplayer mode, while the files marked "Easy", "Hard", and "Insane" presumably apply to the the game's "Walk on the Beach", "Suicide Mission", and "FUBAR" difficulty modes, respectively. I assume the "Combat Op" difficulty (which lies between "Walk on the Beach" and "Suicide Mission") is considered the default setting, so it probably just uses the values from SRPawn.ini (or SRPawn_Coop.ini for cooperative mode). Furthermore, I assume other difficulty modes will also fall back on SRPawn.ini for values which don't appear in their specific files, as SRPawn.ini has many more lines than the other variations.

I'm making some educated guesses here, because I haven't actually tried editing each of these files individually to confirm that the effects are what we might reasonably expect based on their names and contents. However, I did try editing the file SRPawnInsane.ini with the intent of modifying FUBAR mode. I started by modifying the health values of the player character, Walker, and his two squad mates, Lugo and Adams. This is just a matter of finding the right m_defaultHealth values. There are several m_defaultHealth lines, each appearing in a separate section indicating which character's default health level is being modified. Here's a snippet of SRPawnInsane.ini:
[SRGame.YPawn_Walker]
m_defaultHealth=60.0

[SRGame.YGamePawn_Player]
m_damageModifierExecuting=0.3
m_damageModifierReviving=0.3

[SRGame.YPawn_Lugo]
m_defaultHealth=220.0

[SRGame.YPawn_Adams]
m_defaultHealth=220.0

[SRGame.YPawn_AdamsAlone]

[SRGame.YPawn_Enemy]
m_defaultHealth=155.0
m_chanceToGrantGrenadeToExecutor=0.2
m_vaporizeModifier=3.56
m_headExplodeModifier=1.52
When I found this, I vastly increased the m_defaultHealth values found under [SRGame.YPawn_Walker], [SRGame.YPawn_Lugo], and [SRGame.YPawn_Adams]. I was unsure if it would actually work, but when I started up the game and continued my FUBAR mode campaign, it was clear that the player character and his squad mates were all practically invincible. It seemed too easy but it actually worked.

There are a few other things to note in the snippet above:
  • The [SRGame.YGamePawn_Player] section has a couple of damage modifier values; based on the names, I assume these will alter the amount of damage which the player will take while performing execution moves on enemies and reviving squad mates. However, I haven't tried changing these yet, so I don't know whether they are positive or negative modifiers. Does setting them to 0.0 mean the player takes full damage or that the player takes no damage? Presumably it's one or the other. Either way, setting them to 1.0 probably does the opposite of whatever setting them to 0.0 does, because the fact that each value is currently set to 0.3 suggests that these are fractions of the normal amount of damage.
  • The [SRGame.YPawn_AdamsAlone] section in SRPawnInsane.ini is, in fact, empty. However, it's not empty in SRPawn.ini or SRPawnEasy.ini. In each of those files, this section contains another m_defaultHealth line, so it's safe to assume that we can add one here as well, if we want to. When placed in this section, m_defaultHealth probably modifies the amount of health that Adams has during a sequence in which he is separated from the player.
  • The [SRGame.YPawn_Enemy] section contains some very specific modifiers; you can probably guess what they do based on the names. The file SRPawn.ini has even more values, any of which could most likely be modified here in SRPawnInsane.ini as well. The section name might be a bit misleading, though, as it seems to pertain only to one type of enemy. There are other sections called [SRGame.YPawn_MediumEnemy], [SRGame.YPawn_EnemyMarauder], [SRGame.YPawn_EnemyElite], and so on.
I'm just trying to give you an idea of what can be done with these configuration files. As noted above, some of the .ini files are rather large, so I'm probably just scratching the surface of what can be modified here. I haven't tried making substantial modifications myself — but it looks like you could, in theory, fine-tune many aspects of the game to be exactly how you want them. If you don't like the fact that the player can take damage while reviving squad mates, change it. If you don't like the amount of health that a particular enemy has, change it. If you want enemies' heads to explode with every headshot from any weapon, you can probably make it happen. Whether anyone cares enough about this game to do any of this, however, is another matter entirely.

I only went as far as modifying the health of Walker, Lugo, and Adams — adding a few zeroes to each number, before the decimal of course — and the rest of the FUBAR campaign was a hilarious joke. I got to the end in a tiny fraction of the time it would have taken if I had played the game fairly, and it's probably the only way I would have been willing to get to the end, as my patience had run out. And, for the record, this did unlock the achievement for finishing the game on FUBAR difficulty. Modifying these configuration files does not disable achievements.

Therefore, those of you who actually take achievements seriously as an indicator of your skill level, or something, might want to avoid playing with these configuration files while doing anything which might unlock an achievement. Personally, as noted above, I don't really care — but I can understand how others might regret unlocking a tough achievement by cheating. If you're the kind of person who takes pride in achievements, unlocking one by modifying the game might leave a bad taste in your mouth.

The Case For More Games Being This Easy To Exploit


The encrypted configuration files used by the Windows version of the game actually can be decrypted, but I can't personally vouch for the tool used to do so. I didn't bother with it when I played the Windows version of the game, because I didn't want to cheat at this game badly enough to put up with the extra steps, let alone the mysterious executable. (I trust it a bit more now that I've found it on PC Gaming Wiki, but when I first became aware of the decryption tool, it was through a link on some random forum.)

The fact that the files are not encrypted in the Linux version of the game is probably an oversight — or maybe they just didn't care, or maybe they figured Linux users would find out how to break into the files anyway, or maybe they already knew about the decryption tool for the Windows version by the time they made the Linux version so they decided decryption was pointless. In any case, the fact that the files are encrypted in the Windows version is a clear indication that players were not meant to mess with these files.

But why not?

Cheating in multiplayer games is not okay, because it spoils the experience for other players, hence the existence of anti-cheat measures in multiplayer games. When it comes to single-player games, though, I don't see why we shouldn't be able to do whatever we want with a game that we bought. Many single-player games are made to be (or just are) easily modifiable; Skyrim, for example, is famous for community-made mods. Other single-player games, however, are made to be (or just are) very difficult to modify, as the Windows version of Spec Ops: The Line would be if nobody had figured out how to decrypt its files.

It's almost a shame that a game like Spec Ops: The Line, which is considered by many to be thoroughly mediocre, happens to be one of the games in which so much of the configuration is exposed to players through plaintext or easily decrypted files. A lot of games expose graphical settings not found in-game via configuration files, but in my experience, the ability to change the gameplay this way is rare. I wish I could so easily make similar modifications to games like Alan Wake, not because they're hard and I need to cheat, but because it would be fun. I'd actually like to make Alan Wake harder. Unfortunately, it's not an easily modifiable game.

Achievements are a possible reason that a game's developers might not want players to have unmitigated access to configuration values like player health. Some people take achievements seriously, especially rare achievements which are difficult to unlock; the perceived value of such an achievement, for players able to unlock it through skill and perseverance, is lessened when someone like me unapologetically cheats to unlock it by modifying configuration values.

But just as developers can program a game to disable achievements when built-in cheat codes are activated, they could also program a game to disable achievements when some deliberately exposed configuration file differs from the intended defaults, as verified by a checksum or whatever. I guess I'm advocating for games to offer the same level of easy modification as Spec Ops: The Line, if not more, but on purpose instead of by accident.

Some developers release powerful tools for modding their games, which is great. Changing a configuration file is also great, though, especially for players who aren't going to bother learning how to use whatever modding tools exist. My philosophy as a software developer is that hard-coding arbitrary numbers is bad and everything which reasonably could be configurable should be configurable, and maybe that's far easier said than done when it comes to games — I'm a software developer, not a game developer — but I have a feeling that most games hide configuration from players on purpose, and doing this just to prevent a human from cheating against a computer is silly. The ability to cheat is not going to ruin a game for anyone with any self-control.

I'm also a big fan of games having plaintext save files, for similar reasons. I've played a few, and although I've rarely bothered to skip ahead or otherwise cheat by editing their save files, knowing that I had the option was nice. Save editing is probably hard to detect, so I don't expect it from games whose developers want achievements to mean something — but as with all forms of unintended cheating, my selfish take on the subject is that I should be able to cheat to unlock achievements, and also, deal with it.

Sorry for making the global achievement statistics for Spec Ops: The Line slightly less accurate though, I guess.

Friday, April 10, 2015

The Benefits of Cowardice

Recently, I've been playing a lot of the Gauntlet-style PC game Hammerwatch. Like The Binding of Isaac, my other recent indie game obsession, Hammerwatch came into my game collection by way of a dirt-cheap bundle whose other games I haven't touched. My digital game collection is filled with perhaps too many of those bundle B-sides — games which I only own because buying an entire set of games happened to be the cheapest way to get a single game which I actually wanted (most often thanks to Humble Bundle, Bundle Stars, and similar sites). I tell myself I'll get around to enjoying these incidental purchases eventually, but life and video games don't often leave time for each other, so it rarely happens. Sometimes takes me quite a while even to try the games I bought on purpose. For instance, I didn't actually get around to playing Hammerwatch for several weeks after the bundle went on sale.

And now, according to Steam, I've spent over 50 hours playing it. There's the first problem with Steam: It permanently records my playtime, without any option to reset the count, and displays the information publicly unless my entire profile is made private. The only way to avoid the shame of my friends knowing exactly how much of my life has been wasted is to play a game in offline mode (or run the game outside of Steam entirely if possible). The other problem with Steam is that it taunts me with achievements. Oh, sure, I can ignore achievements in a bad game. I won't play garbage just to increase the number of unlocked achievements shown on my profile. But any good game with achievements is just begging for 100% completion, and as an occasionally obsessive completionist, I often can't resist. Any set of challenges or unlockables will do the trick, in fact, but achievements — being (like the playtime counter) public and permanent — are particularly good at keeping me playing a difficult game past the point where I might otherwise have given up.

It was exactly for this reason that I found myself playing Hammerwatch's unreasonably punishing survival level, completion of which is related to two achievements (one for medium difficulty and one for hard). After the first few attempts, I began to suspect it was virtually impossible to beat, at least on my own. Hammerwatch is a multiplayer game but, having no friends currently playing the game and having no desire to play with strangers, I had been flying solo up to this point. My brother owns Hammerwatch, so I could have enlisted his help, but he hadn't played in a while and had never accumulated as much playtime as I had. He would have been rusty, at best, and might have been little more than dead weight in a game of survival with shared lives. So I continued playing survival mode on my own, determined not to let two little achievements stand in the way of total victory.

The survival level in Hammerwatch works like this: Only one extra life is given to start. Waves of increasingly numerous and increasingly powerful enemies spawn to attack the player, while the eventual boss (the Crystal Lich) sits in the center of the map, invincible but able to shoot any player who comes too close. Vendors, reached by way of a portal in a hidden room, sell upgrades and extra lives, which can only be purchased with currency obtained by inflicting damage on a few large crystals placed around the map. Meanwhile, stalactites periodically fall to the floor in random places, doing serious damage to everything in a huge area; these can kill a player instantaneously. After about 45 minutes, the regular bad guys stop spawning and the Crystal Lich comes out to fight.

My first character of choice in the game's main campaign had been the paladin (equipped with a sword which deals damage in a wide arc, a shield which blocks most projectiles coming from ahead, and some other incredibly useful abilities). However, I had heard the ranger (equipped with a long-range bow and not much else of import) was the most viable choice for beating the Crystal Lich (whose homing projectiles travel almost as far as the ranger's arrows). Unfortunately, the ranger isn't as well suited to the pre-boss fight against huge waves of enemies. The paladin would have been better for that. I could only pick one, though, and I didn't want to play 45 minutes to get to the boss only then to find myself in a virtually unwinnable fight, so I was committed to using the boss-killing ranger throughout my solo attempt.

I died. A lot. I died dozens of times without ever getting a chance to fight the Crystal Lich. After all, the ranger (who deals damage at long range but in a narrow line as opposed to the paladin's wide arc) doesn't do well when surrounded, and getting surrounded in the survival level is all but inevitable. The one obvious benefit was the ability to farm crystals somewhat effectively without stopping. The ranger can shoot a crystal while approaching and then shoot some more while departing. Even so, I could never afford enough upgrades to stay on the winning side of the arms race for very long. Eventually, I'd always start dying faster than I could farm enough crystals to replace the lives I was losing.

Then I noticed that the hidden room with the portal to the vendors, although it's a cramped dead end, is actually very safe: Few enemies spawn in range to see the player, and stalactites don't fall there (except in the case of one scripted stalactite drop which destroys the portal at the start of the boss fight). Perhaps best of all, the nova-firing trap in an adjacent room is close enough that it will fire when the player stands in the hidden room, and this periodically damages a nearby crystal for free money (as does the occasional lucky stalactite drop). This free money isn't as much as what a player can get by actively mining the other crystals, so I had no intention of hiding in the hidden room throughout the entire pre-boss battle. Still, it was the best solution for the second half of the fight, during which any attempt at mining was likely to cost me more lives than I could buy with the money I had gained.

And by retreating to the hidden room when things got too hard, taking my free money like a welfare check while waiting for the boss to appear, I finally loved long enough to fight him. At that point, it was just a matter of fighting him from a distance while finishing off any nearby enemies left over from the pre-boss phase. I won.

Thus I was left with a somewhat viable solo strategy for the survival level in Hammerwatch, using the ranger:
  1. Don't destroy the nova-firing trap in the east room.
  2. Farm the crystals in the north (behind the green spike trap), west (behind the red spike trap), and center (near the Crystal Lich). Each should have enough time to recharge while you're farming the other two.
    • Don't bother with the crystal in the east (behind the blue spike trap); the active nova-firing trap makes it difficult to escape the room safely.
    • Eventually a crystal in the south will be made available, but that little room with two small openings is a death trap. Don't go there.
  3. Buy upgrades for speed, bow damage, and bow penetration. Buy an extra life when needed, but keep in mind Step 4 below.
  4. When things get too difficult (and you're dying more often than you can mine enough cash for the next extra life), go to the hidden room and stand just south of the portal, ready to shoot anything that comes after you. You are not totally safe here, so don't fall asleep.
  5. As you get free money from the crystal in the east (which should be taking damage from the nova-firing trap), keep on buying upgrades and/or stock up on extra lives, at your own discretion.
  6. When a stalactite starts to fall above the portal, get out of the hidden room. Avoid the boss until you've cleared the nearby remaining enemies.
  7. Fight the boss from a distance, coming a bit closer to shoot him and backing up to a very safe distance when he fires back. It will take a while, but if you can avoid the stalactites and any leftover enemies on the map, you'll win.
This cheesy strategy allowed me to beat the survival level on medium difficulty. Unfortunately, it wasn't so reliable for hard difficulty. After fighting and farming as much as possible without repeatedly dying, I was able to hide in the hidden room until the boss emerged, but the necessary task of clearing out remaining enemies during the boss fight became much more difficult. My damage output just wasn't sufficient to avoid being overrun once a group of enemies caught my scent, especially since the area of effect of the ranger's attack is constrained to a thin line.

Ultimately, I ended up playing with strangers to beat survival on hard mode, but even finding a suitable game wasn't easy. At any given time, I only saw one hard survival game (or none at all), and the first few games I joined were full of novices who didn't really know what they were doing. Even when I managed to join a game with more experienced players, lack of easy communication made things very difficult. By some miracle, however, I was eventually able to join a game with a couple of players (a warlock and a ranger) who were unbelievably good. Even when we were joined by a fourth player (a paladin) with no survival level experience, we weren't dragged down. I ended up getting killed before the boss was dead, but the other ranger lured the boss into a narrow hallway in which his attacks were blocked and finished him off.

So I got lucky. My advice for Hammerwatch's survival mode without friends? Try my solo strategy. If that doesn't work, I'm all out of suggestions, because you can't really count on finding a game full of expert players who are able to coordinate a victory with complete strangers. In other words: Good luck!

But, whatever. I got mine.

Sunday, July 20, 2014

On Killing Thousands of Robots

For the past few months, during my unintended (laziness-induced) hiatus from updating this blog, I've been playing a few different games. I spent some time on Planetside 2, which is fun with friends but isn't something I would ever play without them. I also tried and failed a few more times to make further progress in The Binding of Isaac, whose randomly generated dungeons and mostly unexplained item system are a great source of replayability despite all the frustration that inevitably comes with such a strongly luck-based game.

More importantly, however, I've wasted far too much time playing a game called Hard Reset and also I've fallen back in love/hate with another time-sucker called Ultratron. I didn't expect much, since I didn't pay much — Hard Reset came as part of a $4 bundle from Bundle Stars, and Ultratron came in a $1+ bundle from Humble Bundle — but I've played almost 50 hours of the former and nearly 40 hours of the latter, so I probably got my money's worth.

Hard Reset is a gorgeous first-person shooter with some interesting weapon design, a minimalist heads-up display, and a heavy emphasis on using environmental hazards to destroy the seemingly endless waves of mechanical bad guys. The game was developed by some of the same people who made Painkiller and, like its occult-themed cousin, Hard Reset is often described as an "old-school" shooter — a throwback to the days of Doom and Quake. To some extent, this is accurate. Unlike so many modern video games, this one doesn't try very hard to be a movie. It's not filled with excessive dialogue and exploding set pieces and scripted action sequences. It's non-stop running and gunning all the way through. It's all about challenging the player. It's a real game. It does attempt to tell a story — perhaps it even tries a little too hard — but, just as in Painkiller, it's not a very good story and it should probably be ignored anyway.

Most of the exposition takes place during loading screen cut scenes, drawn and badly animated in the style of a comic book. When you get to one of these loading screens, I suggest that you go and make a sandwich or something. The plot hardly makes any sense, the acting and writing are both profoundly awful, and the protagonist (made immediately ridiculous by a hilariously typical video-game-action-hero voice) was apparently designed by some 12-year-old kid who thinks the unnecessary use of profanity is just the coolest thing ever conceived. For all intents and purposes, Hard Reset doesn't have a plot. It's far more story-driven than Painkiller, but even if you manage to decipher what's going on, you're not going to care in the end.

Where Hard Reset really strays from its old-school shooter roots is in the adoption of some modern gameplay mechanics. If you'll allow one more comparison to Painkiller, I'd like to point out that its demon-slaying protagonist could run circles around almost any enemy... or, more accurately, he could jump circles around any enemy. While running speed was rather slow in Painkiller, the player could accumulate a lot of extra speed by repeatedly jumping. Although this trick was not explained in any tutorial, it was crucial. This high mobility was a staple of Painkiller gameplay, and provided an advantage over the enormous hordes of enemies that would otherwise surround the player. Hard Reset, on the other hand, has painfully slow running speed and no "bunny hopping" ability. Instead, you just get a sprint button which allows a modest boost in speed for only a couple of seconds.

The limited sprinting ability does manage to be useful, but only marginally so. I must stress that "a couple of seconds" is no exaggeration. The protagonist runs out of breath faster than a morbidly obese pack-a-day smoker with one leg. The result is a game that feels maddeningly sluggish to fans of the same fast-paced old-school shooters to which games like Hard Reset and Painkiller draw so many comparisons. The problem is exacerbated by certain enemies whose attacks often seem unavoidable and — I'm convinced — sometimes are. Running at the speed of a tortoise, armed with only two seconds of slightly-faster-than-tortoise sprinting, can be extremely frustrating when you're being bombarded with missiles and you can't think of a way to output enough damage to kill the enemy before his carpet bombing attack kills you.

Even switching to the right gun can be a bit of a chore — a waste of time when there's no time to waste — thanks to the game's interesting but gimmicky weapon system. Most of the first-person shooters of my childhood days would allow the player to carry a totally unrealistic number of weapons (usually the game's entire arsenal) at once for the sake of fun. On the other hand, most  modern shooters limit the player's holding capacity (usually to two or three guns) either for the sake of realism, or for ease of access when using a console gamepad instead of a full keyboard, or for the increased challenge that might be faced by the player when he or she is forced to drop a useful rocket launcher in order to pick up a needed sniper rifle. The weapon system in Hard Reset almost seems like a parody of these modern trends in that, technically, only two guns exist in the entire game.

The player is immediately given an assault rifle and a plasma rifle. The gimmick is that each of these guns can be upgraded with up to four additional weapon modes, and most of these weapon modes have both a primary and a secondary function. So you'll get your shotgun, your grenade launcher, your rocket launcher, your lightning gun, and your big laser canon. You'll even be able to hold them all at once. Unfortunately, all of those functions will be crammed into two weapons, which means you often have to switch to the correct gun and then to the correct firing mode instead of just going directly to the weapon you want. This can be a problem when you need to pull the right weapon quickly, especially since the timely use of stunning weapons on fast enemies is all that compensates for the protagonist's lack of speed.

Despite these issues, Hard Reset is pretty decent. You'll need to adapt to the unusual weapon system, and you'll need to get over the fact that the main character can't run twenty feet without taking a breather, and you'll need to pretend the laughable plot doesn't exist... but none of these are reasons not to play. If there's a reason not to play, it's a lack of patience and an unwillingness to lose a lot before winning. Hard Reset is a rarity in modern times — a truly punishing game whose higher difficulty levels will be deemed impossible by many players.

As for me, it seems I'm a masochist. After starting at the easiest difficulty setting, I decided to work my way up to the hardest. Normal mode all right, Hard mode was frustrating, and Insane mode nearly caused me to smash my computer on numerous occasions. At this level, the game becomes a nightmare. The toughest enemies are bullet sponges, practically unavoidable projectile attacks can kill you in seconds, and you're forced to adopt strategies that weren't necessary before. The use of immobilizing weapons, like stasis grenades and EMP bursts, becomes an absolute necessity, and players who fail to utilize environmental hazards like explosive red barrels will find it difficult to overcome the cruel mathematical problem of dealing enough damage to the enemies before inevitably being shredded to pieces. The infinite waves of little enemies that harass you during boss fights are suddenly a real threat, and they'll kill you as often as the bosses themselves do. Splash damage from explosive weapons will kill you even when you think you're behind cover. When playing the higher difficulty modes, you will die a lot, even if it's not your fault. The game isn't fair.

But I beat it anyway. I kept trying even when I thought it was impossible. I responded to the game's unfair tactics with some unfair tactics of my own. I had an all-out battle of patience and reflexes and wits against a computer and won.

The only problem is that Insane mode isn't actually the highest difficulty. There's one more, called Heroic mode. It's even harder. Worse yet, mid-level checkpoints are removed. You have to beat entire levels without screwing up at all, and the levels are long. Throughout most of Insane mode, I died at least once or twice in every fight, and dozens of times in others.

I think this is where I give up. I don't think I'll ever get through Heroic mode. Even if I'm capable, I just lack the willpower. I've played through the entire game four times and it's no longer fun enough to justify that kind of frustration. And that's okay — I'm fine with that — except that my completion of the game will forever be stuck at 98%. There are just two achievements left: one for beating Heroic mode and then, stupidly, another achievement for unlocking all achievements.


It's just so close that I can't not be annoyed.

I don't usually care much about achievements. Some people can't get enough of them, and some people absolutely despise them. Most of the time, I'm indifferent. Optional challenges are great, as long as they're actually fun, and whether those optional challenges come in the form of "achievements" or some other functionally equivalent feature with a less silly name is irrelevant. If I play all the way through a game and I want to play it some more, the additional challenges are something worth considering. Sometimes I decide to ignore them.

But that's hard to do when I've already done all but a couple of them. It's not even about the pride of reaching 100% completion; it's about leaving things unfinished. It's about the fact that achievements on Steam are a permanent record that I have to see whenever I look at the game in my library, even if it's not installed. It's about something being so close to perfection and not being perfected. As far as I'm concerned, 0% is just as good as 100%, but numbers like 1% and 99% are the worst.

I have a similar issue with Ultratron, the other beautiful, chaotic, punishing, evil-robot-themed game I've been playing recently. If you understand that the title is a reference to Robotron: 2084, you probably already know that this one isn't a first-person shooter. Ultratron is a top-down arena shoot-em-up with highly stylized faux retro graphics and a multitude of ridiculous power-ups. Much like Titan Attacks, the over-the-top Space Invaders clone made by the same developer, Ultratron starts out slow and then gradually becomes an unforgiving hell of colorful projectiles and flashy explosions. And it's more addictive than heroin.

I loved Titan Attacks so much that I played it until I had all the achievements unlocked. I thought I loved Ultratron that much too, but a few of the achievements are just stupidly difficult. Once you're past a certain point, the game becomes extremely intense, and you only get a checkpoint every ten levels — after, not before, each boss. Worse yet, some of the most challenging achievements require a certain number of kills, and the counter resets to zero if you start playing from a checkpoint. If you want the game to count your 10,000 kills, you'll have to get them all in a single playthrough without ever dying. It doesn't have to be all in one sitting, since you can save at any time, but that save disappears after it's loaded. Saving is for taking breaks, not for backing up your progress.

I got fed up with Ultratron after a while, and stopped playing it for months, but I'm back at it again. I told myself I was just going to play a few rounds, but now I'm looking at those last few achievements and saying "yeah, I can totally do that." And I probably can't, but 94% is so close to 100% that it's hard not to try. I should also note that we're not really dealing with additional challenges, in this case, since Ultratron is one of those arcade-style game that goes on as long as you can keep winning. The game doesn't have a real "ending" so the completion of achievements is really the only form of "winning" there is.

Sure, it's silly to be so irritated by falling short of 100% completion, but at least I have the sense to know I'm being silly. At least I'm not so determined that I'm willing to keep playing these games past the point where they stop being enjoyable. When I wanted to unlock the last few achievements in L.A. Noire, just for the sake of neatly wrapping up a fairly enjoyable game, I just used a walkthrough for those idiotic scavenger hunt achievements (Star Map, Auto Fanatic, and Hollywoodland) because doing it myself would have taken so long that I would have hated the game by the time I was done with it.

Not everything can be helped with a walkthrough, though. So should I try to beat Ultratron? Should I bother to clear that last hurdle in Hard Reset? Surely I've blown up more than enough robots this year, with a combined 85 hours in these two games alone (plus whatever uncounted hours I spent playing them with Steam in offline mode). I guess the answer is "maybe someday."

Or maybe I'll just use Steam Achievement Manager — a tool whose use I never understood before now — to unlock these practically impossible achievements just so I'm not tempted to waste endless hours actually attempting them. Trying to master everything I play is exactly why I'll never get through my backlog.

Thursday, July 11, 2013

Steam Sales: Not What They Used to Be

This article was also published on Gather Your Party on June 12, 2013. Read it here.



Today marks the beginning of yet another seasonal Steam sale. This typically means another themed event to accompany the daily discounts, and this year's summer sale is no exception, but users who aren't already enjoying the recently introduced Steam trading cards might be less than thrilled about the nature of this event. The Summer Getaway Sale predictably implements the new feature with the unveiling of ten Summer Getaway trading cards.


Always in search of ways to convince potential customers that Steam is more than a typical online distributor with some neatly packaged digital rights management, Valve has famously made a habit of supplementing its well-known seasonal sales with themed objectives, contests, and other giveaways. Last year's two big events, however, were arguably lackluster compared to those which had come before, and this isn't a nostalgia-induced observation.

The Great Steam Treasure Hunt of December 2010, for example, was a pretty big deal. By completing special objectives related to in-game actions and community participation, Steam users could enter into a series of drawings to win free games. Every two days, 20 people won the top five games from their wishlists; 3 users then won a hundred games at the end of the event. The Steam Summer Camp Sale in 2011 followed a similar format with a few differences, namely that a single "ticket" was earned for each completed objective. Three of these tickets could then be exchanged for something at the prize booth (e.g., free downloadable content for a Steam game). Each ticket earned also came with automatic entry into another free-game sweepstakes in which 100 people won ten games.

The Great Gift Pile event, which took place the following winter, was perhaps the most notorious Steam event to date. This time, each completed objective came with one of three prizes: a lump of coal, a coupon, or a free game. Seven lumps of coal could then be "crafted" into a non-coal prize, and any remaining lumps of coal at the end of the event were used as entries into yet another Steam game give-away: One lucky person won every game on Steam, 50 won ten games, 100 won five games, and 1,000 won the Valve complete pack. Unfortunately, Humble Indie Bundle 4 was going on at the same time, and the name-your-own-price bundle included Steam keys for some of the games whose achievements were needed to win prizes.

People quickly realized that, by creating dozens of Steam accounts and buying dozens of bundles for $0.01 each, they could vastly increase their odds of getting free stuff without spending a lot of money. All of that free stuff could then be traded back to their main Steam accounts. Because of this easily exploited loophole, Steam ran out of third-party coupons before the event was over, and Humble Bundle was forced to raise the minimum price for Steam keys to $1.00.

Compared to the previous events, the Summer Sale of 2012 was a massive step down. Discounts went on as usual, but the sale was devoid of any contests or cool prizes, possibly due to the previous event's Humble Bundle shenanigans. Only a few community-based objectives were posted for the duration of the sale, and the only reward for participation was an easily obtained Steam badge. The following Holiday Sale was more of the same.

These last two events did come with a couple of new features which return this summer: Flash Sales which roll over every few hours (like Daily Deals on crack) and a Community's Choice poll to determine which of three games will go on sale next. It should be noted, however, that the games featured in Flash Sales and Community's Choice polls often seem to end up being featured as Daily Deals anyway.

So here we are, at the start of another sale, and again there are no sweepstakes or contests in sight. Furthermore, with the absence of any specially themed achievements or objectives, it looks like the last remnant of the old Steam events has been swept aside to make room for something presumably more lucrative.


This event's special badge can only be earned by crafting all ten Summer Getaway trading cards, and these cards can be obtained in a few ways. The easiest is by casting Community's Choice votes (three of which are good for one card), yielding a maximum of one card per day. Unfortunately, this only works if your Steam level, based on previously collected badges, is 5 or higher. If not, or if you can't check into Steam every few hours for the next eleven days, you'll have to turn to alternative methods: spending money on Steam (which is likely Valve's favorite option), crafting badges for games you already own (which involves collecting other sets of cards), trading other items for the required cards (which means you need something worth trading), or simply buying the cards from other users on the Steam market (a monetary transaction from which Valve takes a small percentage).

As Valve continues to push the new trading card feature, frequently adding to the list of participating games, it's possible that the use of trading cards to earn a badge, as opposed to the completion of special achievements, will be the norm in future Steam events.

Wednesday, September 5, 2012

Perfectionism: No Fun Allowed

I've always been a perfectionist. If I can't do something right, I don't like to do it; when I attempt any kind of work, I obsess over the details until it's just right.

I'm still not sure whether this is a good thing.

In the context of work and school, it translates to effort and dedication, but more often than not, it also slows me down. Sure, it helped me impress my art teacher in high school when most of the other students couldn't give less of a damn, and it earned me some nice grades elsewhere because I wasn't content to turn in half-assed work. Unfortunately, I think, it seems to have gotten a lot worse over the years. By the time I was (briefly) studying physics in graduate school, I found myself wasting precious time writing long solutions to complex problem sets neatly instead of getting them done quickly. As a result, I slept too little and stressed too much.

In the context of video games, my perfectionist tendencies make me a so-called completionist. If I care at all about the game I'm playing, I have a burning desire to collect every item, unlock every achievement, kill every enemy, find every secret, complete every side-quest, or get the highest possible rating on every level.

The Dangers of Completionism


When I played Metroid Prime — a fantastic game, by the way — I couldn't resist picking up every single missile expansion and energy tank. Maybe I wouldn't have cared if not for the way the game kept track of these things and displayed them as a completion percentage, taunting the mildly obsessive among us. Getting to the end of the game and seeing anything less than 100% felt to me like a minor failure. Of course, missile expansions and energy tanks are pretty useful, so the satisfaction of truly "finishing" the game wasn't the only motivation for finding them. I have no reasonable excuse, however, for scanning every creature, every item, and every bit of Pirate Data and Chozo Lore to fill up the in-game logbook. My only reward for doing so, in the end, was access to a couple of unlockable art galleries. But it wasn't about concept art; it was about not leaving things unfinished.

Only afterwards did I realize that I would have enjoyed the game a lot more if I didn't fixate on finding every little secret. I can't even go back to the game now, because I made myself sick of it.

Games like Metroid Prime are a nightmare for completionists, but we play them anyway because we're all masochists. The really terrible part is that setting aside the carefree enjoyment of the game for the sake of a cruel meta-game in which you pick up a hundred hidden items really isn't as bad as it gets. (With the help of a good walkthrough, if you're not too proud to use it, you can complete even the most tedious item-hunting quest with relative ease.) Being a completionist becomes a real problem when the additional challenges we choose (or need) to undertake are so difficult that untold hours are swallowed up by dozens of consecutive, futile attempts with no discernible progress. In the time I wasted getting gold medals on every level of Rogue Leader and its sequel Rebel Strike, I could have played all the way through several other games. I guess the benefit here is that being a perfectionist saved me some money; I got more time out of these games than anyone ever should.

The Need to Achieve


And what of achievements? I'm no fan, and it's not just because of my wacky theory that they're partly responsible for the decline of cheat codes in single-player games. I think achievements cheapen the sense of accomplishment we're supposed to feel when we do well in a game. A lot of developers have fallen into the habit of giving the player an achievement for every little task, like finishing the first level, or killing ten bad guys, or essentially — in rare and truly embarrassing cases — starting the game. (Only sometimes is this actually meant to be amusing.)

In my opinion, anything that necessarily happens during the course of a normal play-through should never be worth an achievement, but developers so often disagree. In Portal 2, fourteen of the achievements (pictured right) are unlocked simply by playing the single-player campaign. Obviously, there are other achievements in the game, but the player shouldn't need to be periodically congratulated for making regular progress.

Achievements, when done correctly, present extra challenges to the player. But even then, achievements teach players that nothing is worth doing unless there's a prize. We're not encouraged to make our own fun and set our own goals; we're encouraged to complete an arbitrary set of tasks, which may or may not include completing the game itself, attempting the harder difficulty settings, or doing anything genuinely entertaining.

But despite my philosophical objections to the idea of achievement hunting, I can't resist, especially if I only have a few achievements left after I beat the game. Unfortunately, those last few achievements tend to be the hard ones. But hey, you can't just leave the game 99% complete. You can't just leave one achievement locked. Right? Seriously, I can't be the only person who finds this absolutely intolerable.

After beating Trine, I spent far too long attempting a flawless run through the last level on the hardest difficulty to get a surprisingly difficult achievement. (I thought this game was casual!) When I played Alan Wake, I never would have bothered collecting a hundred (useless) coffee thermoses scattered throughout the game if there weren't an achievement for doing so. I even carried that damned garden gnome all the way through Half-Life 2: Episode Two. (Please kill me.)


Too Much of a Bad Thing


But even I have limits; a few of the achievements in Torchlight, for example, are just too hard or too much of a grind. They're far from impossible to get, but the game will stop being fun long before you get them, and if you play for the achievements, you'll become suicidal in no time. (Big fans of the game might disagree; most of the achievements will be unlocked naturally if you're okay with playing the game for 150+ hours, but catching 1000 fish just isn't worth anyone's time.)

Similarly, I have no interest in finding every flag in Assassin's Creed, or every feather in Assassin's Creed II, and I don't know why anyone ever would. Even as a hopeless completionist, I can usually tell when attaining 100% completion in a game will lead to more frustration than satisfaction. There's already so much (repetitive) stuff to do in the Assassin's Creed games that I can't imagine why they thought it would be a good idea to throw in a few hundred useless collectibles as well.

Just to bother me, I'm sure.

Collectible items and other tertiary objectives can be good for replay value, but when they extend the playtime beyond the point where the game loses all appeal and becomes a chore — when even a completionist such as myself doesn't want to try — it's just bad game design.

Self-Imposed Perfection


Being a perfectionist doesn't just mean being a completionist. My first play-through of Deus Ex took twice as long as it should have taken, but only because I developed a terrible habit of loading quicksaves constantly, not to avoid dying but to avoid wasting lockpicks, multitools, medkits, and ammo. If I missed a few times while trying to shoot a guy in the face, I couldn't just roll with it and keep going. I went back and tried again. If I picked open a lock and there was nothing useful behind that door, I loaded my save. (And of course, at the end of the game, my inventory was full of stuff I never got to use, but item hoarding is another issue entirely.)

My tendency to needlessly replay sections of a game is probably worst when friendly NPCs can be killed by the enemies. Even if their survival doesn't affect me in the slightest, I often feel the need to keep them alive, and I'm more than willing to reload a save if even a single one of them die. (This used to happen a lot when I played S.T.A.L.K.E.R.: Shadow of Chernobyl, but eventually I learned that it's sometimes best to save my ammo, let my fellow stalkers die, and scavenge their bodies afterwards. Such is life in the Zone.)

Reloading a save when you haven't lost might seem strange, depending on your play style, but some games encourage this type of behavior with optional objectives that are easily botched. Take the Hitman series, for example. You could choose to walk into nearly any mission with a big gun and simply shoot up the place, but the highest ratings are reserved for players who never get seen, fire no unnecessary shots, and kill no one but the primary targets.


This usually isn't easy, because save scumming isn't an option. The first Hitman game doesn't allow saves in mid-level, and the sequels only allow a certain number of saves per mission, depending on difficulty level. This makes perfecting a mission even more painful, and in my opinion, it's another example of bad game design. While I can see why they would want to prevent players from abusing the save system (thereby adding some real difficulty and making the game more "hardcore"), this is kind of a cruel thing to do with such a slow-paced game that involves so much trial-and-error. If you don't save often enough, you might end up repeating several minutes of sneaking at a snail's pace to get back to where you were.

Somehow, I did manage to master every mission in the second and third games, but I don't recommend it. Having to kill a guy and dispose of his body on the fly because he saw you picking a lock is fun, but in the interest of earning the highest rating, I always had to start over instead. When you try to play Hitman perfectly, it's tedious and time-consuming, and essentially requires you to memorize each map. No fun allowed.

Fixing Bad Habits


As a result of all this, my extensive backlog of unfinished games is only slightly longer than the list of games I've been meaning to replay without hitting the quickload button and without going off-course to satisfy my obsessive completion disorder. (The S.T.A.L.K.E.R. games are near the top of that list, but I'd also like to replay those when I get a better computer, which isn't happening any time soon.) Games are more fun when they're played at a natural pace, and I wish it weren't so hard for me to ignore the little distractions along the way.

The best advice I can give to fellow perfectionists, after some soul searching of my own, is the following:

1) Get a screwdriver and pry the quickload button off of your keyboard. Alternatively, I suppose, you could simply go to the control settings and unmap the quickload function. If you can't unmap it, just remap it to a key on the far side of the keyboard, and then promptly forget which key that is. Quicksaving constantly is fine — I won't judge you — but you shouldn't be reloading a save unless you die.

2) Play through the game as quickly as you can; do only the bare minimum. This is normally something I'd discourage, because I believe that games should be enjoyed, not rushed. But if you're getting bored with games before you finish them because you're spending so much time trying to do every side-quest or collect all the items, stop it. Start over. Enjoy the game at its intended pace before you ruin it by attempting a frustrating scavenger hunt. These things are there for your second play-through, and if the game isn't good enough to warrant a second play-through, the optional stuff isn't worth your time.

3) Don't read the list of achievements before you play the game. If you read them, you'll try to get them. Achievement hunting is for replay value, and if it's your first priority, you need to rethink your entire outlook on life. Again, if the game isn't good enough to warrant a second play-through, the achievements aren't worth your time.

Wednesday, August 15, 2012

What Ever Happened to Cheat Codes?

If you've been playing video games for more than a few years, you almost surely remember a time when cheating was a standard feature a lot of games. I'm not referring, of course, to the kind of cheating that gets you permanently banned from your favorite server — the kind that requires exploitation of programming bugs or "hacking" of the software — but rather to the use of built-in cheat codes that developers would include in their games to spice things up and to assist the less gifted among us.

You might even know a few of them after all these years. If you ever played Doom, then IDDQD and IDKFA should be burned permanently into your brain. While invulnerability and instant access to the game's entire arsenal of weapons have the potential to suck all of the fun out of any demon-slaying adventure, the developers trusted us to use these codes responsibly, whether that meant using them only in dire circumstances, only after completing the game without them, or never at all. Some players, I'm sure, preferred instead to use them all the time, but that was okay as long as they had fun doing it.

It wasn't very long ago that the inclusion of cheat codes was the norm, but at some point, they gradually disappeared. Although I have nothing but anecdotal evidence to back it up, it seems to me that cheat codes faded out of common existence around the same time that "achievements" became ubiquitous and downloadable content (DLC) became the industry's choice method of squeezing more money out of their customers. There isn't necessarily a causal relationship here, but the disappearance of built-in cheats does seem to coincide with a more general transformation in the way games are made and marketed.

There were cheat codes in the 2005 horror/shooter game F.E.A.R. — one of my favorite games of the past ten years, although I don't like to admit it, since the plot went from mediocre to insufferably bad after the first installment. The same cheats worked in both expansion packs, Extraction Point and Perseus Mandate, released in 2006 and 2007, respectively. But the first true sequel, the 2009 game F.E.A.R. 2: Project Origin, was devoid of cheat codes. Want to be invincible? Too bad.

Instead of cheats, the game had a few dozen achievements to unlock (which, like most achievements, don't really give you anything except a little "congratulations" for performing various in-game tasks which usually aren't very challenging). This, along with the inexplicable removal of several useful features (like dedicated multiplayer servers and the ability to lean around corners) as well as the implementation of digital rights management (which is arguably far more intrusive than a simple product key and disc check), makes the transition from F.E.A.R. to F.E.A.R. 2 somewhat representative, in my eyes, of how video games have changed as a whole.

While achievements are by no means a logical replacement for cheat codes, they have filled the spaces formerly occupied by cheats on websites like GameFAQs. Look up any recent game and go to the "cheats" tab, and you'll likely see a list of trophies, achievements, or other unlockables instead. The page will likely tell you how to unlock each one, but this is information which can usually be accessed in-game. It doesn't make a whole lot of sense to list achievements on a cheat site, but achievements must have seemed like a logical replacement for the cheat codes that disappeared around the time that these non-functional "unlockables" emerged.

Of course, cheat codes and unlockables are not mutually exclusive features; many games have had both, and some games (like the Nintendo 64 shooters GoldenEye 007 and Perfect Dark) combined the two concepts by including cheats that had to be earned, not simply looked up and punched in. However, the trend in modern games is to forgo cheats entirely in favor of unlockables, which are more often achievements than anything useful. If a game does have achievements, cheats are usually absent, and vice versa.

I won't say this is because cheating makes the achievements too easy to get — after all, if the developers want to preserve some kind of competitiveness or genuine challenge in achievement hunting, they can just program their games to lock achievements if cheats are activated, as is done in Half-Life 2 — but developers who put achievements in their games likely care a bit too much about controlling the player's experience. They care about "challenging" and "rewarding" the player (which is unfortunate because the gameplay is rarely challenging and victory is rarely rewarding). They don't care nearly enough about letting the player have fun in his or her own way.

But I can't lay all the blame on developers. They're not alone in their belief that cheats can ruin a game, even though the player is free to decide not to use them. A lot of self-proclaimed "hardcore gamers" share this sentiment. I do not.

The fact is that cheats aren't always about gaining an advantage or winning a game with minimal effort. When cheat codes were commonplace, it wasn't unusual for developers to include cheats that had little or no effect on a game's difficulty. These cheats existed either for laughs (see "Paintball Mode" in GoldenEye 007 and Perfect Dark) or to alter the rules of the game in fun ways that didn't necessarily benefit the player (like the reduced gravity cheat in Vigilante 8), not because we needed them to win. Even when they did have an obvious effect on difficulty, cheats in single-player games were used primarily for screwing around rather than getting to the end of the game as quickly as possible. For players with an ounce of restraint and self-control, cheats add replay value rather than subtract it.

Unfortunately, cheats are unlikely to make a big comeback. Today's developers don't seem to have any interest in hiding secrets in their games, and if they think of anything that adds extra value to their product, they'll most often try to sell it to you on the side. Usually, this means offering "additional" features (such as levels, items, and playable characters) as DLC with a price tag, even when these things are already available at the time of the game's launch and could have been included in the game itself. Occasionally, however, a developer actually has the balls to try to charge you for cheats, whether they're sold as DLC (such as the "Invincible Pack" for Saints Row: The Third) or as unique codes that unlock features already included in the game's files (as in Clive Barker's Jericho and some other games published by Codemasters).

From the back cover of the Clive Barker's Jericho manual. I have no idea if the hotline still works (nor do I want to try it), but it seems that the web page doesn't even exist anymore. The small print at the bottom of the page [not pictured] clarifies that codes obtained via the hotline would cost only what they charged for the call, but that getting codes online would require a "small" payment by credit card or PayPal.

This is pretty horrifying, but the success of the microtransaction business model applied to video games — most prominently to "free-to-play" massively multiplayer online games — has shown that a staggering number of people are essentially willing to pay to win. Since it works for multiplayer, it's not so crazy to think people might be willing to pay extra to gain an advantage in a single-player game as well.

I still think selling cheats is insanely dumb, but people are still going to buy them, just like they'll blindly pay for everything else the publishers take out of the finished product at the last minute and set aside as "DLC" for the purpose of grabbing more cash. (Imagine buying a movie ticket only to find out that the last ten minutes of the film will cost you an extra $3.95. Now imagine all of the people who don't boycott that movie. My point is that day-one DLC is evil and consumers are stupid.)

Since the current attitude of big video game publishers is that anything non-essential should be sold off as "extra" content, cheats might regain some real popularity in the form of DLC, but it seems unlikely. Cheat codes clearly went out of style for unrelated reasons, perhaps for the same reasons that we haven't already seen every major developer jumping at the chance to make some extra money by selling invincibility and extra ammo. Perhaps the most obvious problem with cheat codes is that most video games have gotten so easy that developers think we don't need cheats at all. Again, however, I should point out that it's not about need; it's about fun.

Personally, I'd like it if things would go back to the way they were before. Oh, sure, everyone feels that way, especially the nostalgic, aging video game enthusiasts such as myself, but I have no desire to hold the industry back. I realize that most of the changes made by the industry in recent years were, successfully or not, made for the sake of progress. But cheat codes only have the potential to make a game better — never worse — and the fact that they've almost completely been taken away can only be seen as a step backward.