The day after my last post on Stalker, I finally realized that Stalker sucks. It has a good design but was poorly executed. I came to that conclusion upon getting to the final “level” (should be called an area, but their shoddy translation rears its head again) in which you have to rush through the outer perimeter of the Chernobyl Power Plant in about six minutes before the reactor has a blowout. I wasn’t even told that I had to do everything before the blowout, so my play style dictated that I creep around and then hunker down until the blowout was over; but here’s the thing: it never ends. When I looked it up on the forums and saw that was the case, I just threw in the towel. I had enough of this game and its half-assed gameplay. I only wanted to play it because people related it to Deus Ex repeatedly. But no, it isn’t like Deus Ex; it wishes it was like Deus Ex.
So I was trying to decide what game I would partake in next, and as you could guess from this post’s title, I chose Grand Theft Auto 3. I had only played this game through once before back in 2003. But when I remembered how irritating the gangs were in that game, I grew more uneasy about playing it again. I recalled quite specifically a quote from my (late) blog on January 1, 2003:
… Then I played GTA3 for the rest of the day…or..er..night and early morning. I have 58 of the 100 secret packages, and that armor at my hideout for getting package 50 is going to help a whole lot. I finally did beat the Turismo mission, although I had to cheat to win after about 40 more attempts to win. I had to use the time slow cheat so I could see dangers and react more quickly. The problem wasn’t speed, because I had a Stinger from Staunton Island, but the fucking car blowing up. Once, I was so fucking close to winning, I was on the home stretch with nothing in front of me and could see the final waypoint. Then, because I was in Chinatown, a Triad member shot my car and it was enough to set it over the edge and start burning. I kept going but it blew up within feet of the win. I streamed obscenities for about five minutes and woke up the parents. Usually, though, it was a shotgun-wielding Mafia member that set my car ablaze. When I slowed it down, I made sure to run them over or block their view with another car. It’s too bad I had to cheat, but it wasn’t anything too drastic, only a speed change, so I could react in time. It’s impossible to complete missions in Portland now, though, because all the gangs hate me. I only go back for secret package hunts, now.
Knowing the gangs would ruin my gaming experience, I looked around the GTA3\data directory for a config file that handled gang weapons. After I didn’t find anything in the plain-text config files, I suspected the main.scm file handled such attributes. Just from my observations of the file in UltraEdit, it appeared to be a structured scripting language. After a few Google queries, I came up with a very nice program called Barton Waterduck’s Mission Builder that can decompile the script file. Of course, as with any decompiler, you can only get it back into an “assembler-like” format; all control structures except jumps are lost. But I was at home with the code in only a few hours, having successfully implanted some code to change the gang weapons when in mid-game (you can see that code in the screenshot at right). Naturally, I tooled up the mod to work with the game’s story changes so I could release it to the public. Information on the final product can be found here.