Hacker News new | ask | show | jobs
by voltagex_ 4278 days ago
Love it. Any pointers for an easier old (or new) game to have a go at pulling apart like this?
3 comments

I'd definitely check out Halo 2. The modding community was massive. In fact, modding Halo 2 was what introduced me to programming :)

The maps have a very basic encryption(checksum). Map signers are all over the internet if you don't feel like doing the work yourself. There's also many high level tools to play with the maps. I remember taking an a vehicle from one level and placing it in another was a trivial process. Youtube has a plethora of videos where modders show off what they could do

For anyone else looking - Halo 2 is hard to get legitimately now. eBay copies are looking like upwards of $90AUD!
That must be an Australian issue because on eBay and in local stores, it is still $10ish.
I'm not sure - http://www.ebay.com.au/sch/Video-Games-Consoles-/1249/i.html...

Amazon has a (used?) copy for ~$17 - AFAICT it requires online activation so this may not work well.

I was referencing the xbox version of the game. If I remember correctly, the pc version of the game actually allowed cheaters, which takes all the fun out of it IMO

Im sure you could find an old xbox and the game for less than $90AUD. Or, you could buy an xbox, flash the disk drive, download a halo .iso and burn it to a verbatim disk. Thats what I usually do

NES games are pretty easy to tear apart, and emulator tools are pretty good. I use fceuxdsp, running in Wine because I'm too lazy to build it natively. The 6502 was too slow to do any complex compression, and there was really no need to encrypt an NES ROM. Later consoles, of course, get more complex, but the NES is a good place to start.
I don't think that the lack of compression is a matter of speed. After all, C64 games did it all the time. The reason is more likely that it is convenient to store graphics and code plainly in the ROM since it can then be mapped direcly. The NES didn't have enough RAM.
Doom's WAD format is very well documented but still a fun binary format to write a parser to read. I remember writing a parser for it in QBASIC when I was a teen!