Hacker News new | ask | show | jobs
by gear54rus 4278 days ago
10/10 good article.

I wonder if something remotely similar is possible with todays games. With all the custom data formats and compression algorithms being used.

4 comments

It's not necessarily easy, but decoding MMO data files can be massively profitable for players. Reams of valuable data are often stored client-side to save on sending it during gameplay. You can maybe learn what items are in the game (including items in not-yet-released updates), where the items drop, and what the exact % droprate they have. You can learn the exact HP and other stats of mobs (if it isn't normally displayed).

If you mean extracting images, 2d image formats are pretty easy and 3d are quite doable. Things like http://kayin.moe/?p=2218 exist for some games.

Yeah, most often tools like you linked are built by partially reverse engineering (ie: with a disassembler and a lot of time) the game's binary though rather than a simple guessing-based method as the author used here.
I'm still bummed that OnLive died. Seemed to me like it would have been the PERFECT platform to kill cheaters for MMOs that weren't twitch-based.
I doubt there are really many custom compression algorithms, mainly just custom container formats.
There are some. I had to deal with a microsoft project using one, and in the end the only solution we came up for dealing with it was extracting the decompression code out of the EXE file and embedding it in a DLL (at run-time, to prevent copyright infringement issues).
Absolutely! Are there any games you'd like to see in particular?
Nothing in particular.

I love reading RE posts but I don't plan on making any mods to any games in the near future. Therefore I don't want to specify any 'targets' for your efforts unless I'm willing to extend them :)

I was talking about something big and sophisticated, like Crysis or Battlefield (from the top of my head). I'm under the impression they have something more than uncompressed bitmaps and 8bpp resolution but I've never done anything like this to be certain.

Thanks! Keep up the good work.

The CryEngine documentation would be a good start for Crysis http://docs.cryengine.com/display/SDKDOC1/Home. Battlefield would require some reverse engineering since it runs on Frostbite, which EA's internal game engine, and not publicly available.
I'm wondering whether there are any Android games that'd use custom formats or whether lots use off the shelf engines.

I've always had a passing interest in game reverse engineering - I remember the days when "ripper" applications had a good chance of pulling the music out of a game.

I would love to see something like Football Manager, it's perfect for data extraction, I think, as it's largely a game of data.

I know a few programs are able to read the data, such as FM Genie Scout (Watch out if you download, it's filled with adware) and FMRTE (Paid only).

I would be very interested to see this happen. I'd like to get into RE but don't know where one would begin. Having an example from a modern game might give some nice pointers to start working on the games I play and love right now.
personally, its not games, but approaches to getting information from games

finding / latching onto a rendering call and shooting the inputs to that call off to a separate file to export market data from a game, was one of the more interesting approaches I've heard. But how someone managed to work that out is beyond me