9 year old me got my first "hacking" experience out of this game. With the shareware version, you could not select the ultra tank that could shoot 3 bullets for a human, but you COULD if it were the computer player.

The "hack": -start a game with a normal tank VS ultra computer player as p2. -save the game (as a file). -open the game file. -read the ASCII text and just flip which player has which text.

Now, I had my ultra tank.

Scorched Earth was also my first hacking target. Found out that your cash balance and weapons inventory was all stored in a mysterious .ini file and you could just edit it.

I "hacked" Cap'n Hector in Escape Velocity.

The game was shareware and he'd show up to ask you to pay the fee. After the trial period he'd start lobbing missiles at you. There was a basic editor you could open to adjust all the ship stats and weapons, so while you couldn't turn him friendly you could at least de-claw him.

I remember thinking it was weird how "easy" it was to work around, but it's hard to imagine the studio would care much: a pre-internet 14 year who loved the game that much is probably more useful as an ambassador than a paying customer.

I did something similar for the sequel Escape Velocity Override when I was a kid. It also had the same Captain Hector. Though in my case I buffed my own ship's armor and shields instead. I was not very good at the game (still am not to be honest), so I kind of needed that anyway to get through it.

I also remember that in EV Override you needed to stay below a certain amount of money to not trigger Captain Hector, and I would set the system clock back so it wouldn't think that the trial period had passed.

There are two modern spiritual successors to the EV games that might interest you if you haven't heard of them. Both are open source and have a decent amount of content (but aren't complete): Endless Sky, and Naev. Where the former is much closer to the old EV games in feel.

Also, if the game is single-player, you don't care: Simply let the players enjoy the game how they want to enjoy it.

That's true if it was just cheating.

But in this case I was hacking the shareware payment enforcement. Rather than shutting down completely the game would send an invincible and fairly destructive enemy (Hector) after you. It was really a clever trick from the developers to make the game mostly unplayable if you didn't pay after the trial period.

Ahh it didn't click that this was shareware enforcement, thanks. I guess back in those days developers weren't really fussed about payment, because paying was really hard (mailing in checks, and nobody had credit cards).

Many of them (us) made software for the love of it, and didn't care if it was cracked. I never got a single sale from my software but I didn't care.

Shigeru Miyamoto feels personally attacked by your comment :)

I gave myself a million lives in Super Mario and there's nothing Miyamoto can do about it!

He wakes up in the middle of the night in a cold sweat because of people like you /s

Mine was on a similar game, GORILLA.BAS. I would edit the banana code for a much bigger explosion. Lots of fun back in computer class!

The difference being that editing the source code was the point of the BASIC examples provided with DOS/QBasic/GW-Basic (they’re there to teach you programming!)

After learning the secret of "breaking" protected BASIC programs in DOS (which involved a poke, as I recall), I remember making higher difficulty levels for a BASIC Star Trek game, because it just wasn't very hard.

We added other weapons to make a poor mans scorched earth as we were only allowed to make games.

My school had a similar loophole: game weren’t allowed in the computer lab, unless you wrote it yourself…

oh man!!!!!! You reminded me my first gaming experience on a PC with oragne-green screen :D Awesome game

I removed collision detection so I could throw bananas through buildings

Where would we be without computer class

Something I wonder! Grateful :D

It would be a nice thread on here, to see what people's first hacks were, especially from that era when people were usually just alone and stumbling on these things.

While not the first hack by a long shot and not even mine but I always loved the idea of how it worked.

There used to be program called Gamehack or something like that. Essentially you would start the game and point this application at said game in RAM, then take note of something like the score being "187" or whatever. Jump into 'Gamehack' and it would search for everything in memory with that value. You would then play for a little bit longer and once the score had changed, you could then jump into game hack and find which of those memory addresses had changed to the new score. Usually you would only have one, you could then change this number to what ever you wanted.

It was such a simple concept but it worked so well. Wouldn't be able to do something like that anymore due to all manner of sandboxing in action. Lost a tool, gained security.

Only other hack was messing with the vehicle stats in Vice City. Ended up with the firetruck that could jump the entire map. Good fun.

> It was such a simple concept but it worked so well. Wouldn't be able to do something like that anymore due to all manner of sandboxing in action. Lost a tool, gained security.

This class of programs absolutely still exists (see: every debugger, scanmem, GameConqueror, etc.).

Sandboxing doesn't prevent processes from inspecting the memory of other processes, it just prevents the sandboxed process from doing things it shouldn't.

This reminds me of Game Genie:

https://en.wikipedia.org/wiki/Game_Genie

They really markted that well has having to enter codes, but of course, they were just ROM addresses + values to pretend to be at those addresses.

Obfuscated, however, because they didn't really want people being able to properly make their own codes.

Sounds like a precursor to CheatEngine

https://cheatengine.org/

I used a tool called ArtMoney; apparently still actively developed and sold from an .ru domain.

Playing Omega (roguelike) on ATARI ST, there were food shops that you could buy stacks of fried lizard bites if I remember correctly? Anyways, I found out that if you bought the max amount 99999999, it would actually give you money. Baby's first buffer overflow. The only issue is that it would also put that amount in your inventory, so you were basically too slow to move and had to drop each stack so my towns were littered with stacks of lizard bites. I'm not sure where the bug was introduced and I never found it in the PC versions later on when I looked.

Opening Eye of the Beholder II save files and moving items in your inventory to detect the hex code.

Then trying other random codes and finding stuff in your inventory like animal carcass

This might make a nice top-level Ask HN.

Saving a game in Bard’s Tale (for Amiga). Buying an item in a store. Saving the game again. Comparing the save files with a hand-rolled AmigaBASIC hex dumper to find the bytes that changed. Working out from there how it stored money balances in the file. Tweak a little… and voila, everyone in my party’s getting mithril plate and frost horns.

I had a Loki software demo of Heroes of Might and Magic 3 for Linux. Couldn't find the full game anywhere, certainly not legally. You could only play one scenario with one town. But from saving and comparing save files in a hex editor, I figured out how to play as the other towns, change heroes and skills etc. The key discovery was finding out that the saves were compressed with something very like gzip. The game complained that checksums didn't match when I loaded a decompressed->modified->recompressed save file, but it still worked just fine.

My first was almost kinda similar to GP: me and my cousin played a game called ReVolt, and found that you could make the cars go faster by changing their speed attribute in some text file we found just poking around the game files.

Man we had some good fun with that! It always ended with us boosting our cars so much they flew out of the map

Mine was very simple, just finding and playing with values in config.ini for Red Alert 2 so that I could have infinite Tanyas and such.

Next step was trying to get the boot screen to display a MS-branded Borg cube but instead bricking the machine. Parents were not thrilled about that.

Ooh the Dungeon Keeper demo actually had all of the characters, just not the art assets. So when I was 11 I modified the ini file and had invisible giants and vampire lords doing my bidding in my dungeon. I was very proud of myself.

Did anyone manage to cheat in Oregon Trail?

I imagine you could change the chances of mishaps, or start with $1M, or remove the limit of how many buffalo steaks you could bring back from a hunt.

Starting off as a banker is probably the easiest way to "cheat". :)

Me as a kid realizing that the rate of fire on the shotgun was directly tied to the number of animation frames in the original Doom. Cue mecha super-extreme gatling shotgun and also mecha super-extreme choppy frame rate.

Hitscan weapons for the win.

Adding money to a CIV 1 save game file with the PCTOOLS hex editor.

Bypassed the anti-piracy manual check in the second Championship Manager[1] game for my buddy. It was a typical check at the time which in this case asked you to reference a table of soccer matches in the manual and enter the correct game results for one of the games, ie 1-3 or similar.

I had been teaching myself programming for a few of years and had recently gotten my hands on Turbo Pascal. I had just started dabbling in assembly as well. So I launched the game through the debugger and by stepping through functions, in assembly obviously since I didn't have source, I finally got to the place where it waited for me to input the game results.

It encoded the game result in a single register, and compared the value in that register to a value in another register which it had loaded the correct value into.

Using the surrounding code, I located the byte in the executable and replaced that one comparison instruction with one which compared one of the registers with itself, which of course was the same all day err day. Wrote a small program to apply the one-byte patch.

Took a lot of time, especially tracing to find the right place since I wasn't very good at using the debugger nor that proficient with assembly. But very satisfying when my buddy could just enter whatever result he wanted and enjoy the game.

After that I dropped cracking games and focused on save-game cheats which I did for a while until games added sanity checks or just had very dynamic save-game formats.

[1]: https://en.wikipedia.org/wiki/Championship_Manager_2

The whole cracking scene was where a lot us cut our teeth learning to use machine code debuggers.

Very much so. Fixing software so that they correctly recognized my preferred serial number of #12345 was valid. Using soft-ice to register itself was always a deeply ironic.

But to be honest I started before then, on the ZX Spectrum. First of all it was patching games to get infinite lives, or time. But later it became necessary to patch the loaders before you could even access the game-code - speedlock, bleeplock, etc.

I remember saving a lot of allowance so i could buy the Multiface One for the ZX Spectrum. Instant hacking and saving possibilities.

https://en.wikipedia.org/wiki/Multiface

I never had one, and often lamented it!

Being able to pause a running game and peek/poke at the RAM would have been very useful for hacking games, though of course I'd still need to crack the loader to share the POKEs with other people.

Oh it was. It had its own handy interface where you could alot of things live in the memory. I remember hacking for infinite lives/credits and finding out secret passwords. It was a very fun and very expensive ( for me ) device. I did not need it for copying games. There were some local hobby clubs which had almost every game and software.

Sounds familiar. As a kid I was bothered that I had to harvest spice or Tiberium (I forgot whether it was Dune 2 or Command & Conquer, but I think the latter).

So I figured out where in the binary save file credits were stored and wrote a small Pascal program that would give me the highest possible credits so that I could focus on base and unit building :).

Dune 2 before that was similarly hackable. The level definitions were just text files with an encoding that only certain editors would open.

This reminds me of something similar I did as a teenager in the 90s. Also some shareware game, can't remember exactly what it was about (I think a submarine game?). The shareware version only gave access to the first map. After digging around the files I found that it included all the maps and simply renaming map n to map 1's file name allowed you to play it

I had a similar youthful hacking experience with this game, I was also 9 at the time. The computer players would say a little trash-talk phrase before making their shot. I edited the text file that contained all the phrases and added new ones with swear words. My older brother, who was the one that installed the game on our computer, noticed the new phrases asked me if I had edited the text file. I lied that I hadn't, then re-edited the file to remove my changes.

I did this exact same thing. I added a bunch of Monty Python quotes.

Mine was similar but it was the original C&C. Found this sketchy-ass save game editor/mod editor, proceeded to give the little Nod buggies the laser from the obelisk of light to trivialize the single player campaign.

That feeling of being the leetest of leet haxors just from editing some ini settings was pretty glorious.

I recall the INI files of Red Alert were an open book for modding the game mechanics. I had spies with silenced pistols and "tesla cufflinks". It was really fun making crates spawn super frequently. I also vaguely recall making one of the planes into a nuke carpet bombers (fun, but the forced delay each time a nuke went off was a tad annoying).

Then there were the Duke Nukem 3D CON files...

CON files were great. One of the first enemies I made as a kid was a "basilisk"-type creature that if you looked at, there was a RNG chance it would

  wackplayer
If you know, you know.

L33T!