6 ms·
Nintendo GBA and DS ROM hacking guide (2016)
- nix23 4y agoI'm working on a project to use 3DS devices as a Terminal and IoT device with RTMES as the OS. Still in pretty early stage (aka nothing to see here) but used 3DS's are cheaper then RPI's have wireless, a Screen a keyboard (touchscreen), infrared, microphone and speaker and even a UPS (battery) plus two different Cores, so it is a pretty powerfull Device for stuff like that.
- lostgame 4y agoThis appears to be a phenomenal document containing a lot of fascinating info on ROM hacking in general - while the document does explicitly appear to cover GBA and DS most specifically (at 300+ pages, I could only skim through it, here) - it covers surprisingly fundamental basics about game development, emulation and core programming concepts. This will be a document I'll keep around for the foreseeable future. Amazing work.
- steponlego 4y agoBack in the '80s there was a lot of save game file hacking going on. My buddy and I would look at save game files for all the hot fun games in the hex editor and try to figure out what values we could change. Bard's Tale had a fairly simple layout, which we painstakingly figured out by, for example, using one item and seeing which values decremented. BTII or III, can't remember, went to some length to prevent this easy hacking of the save state. By the 1990s it was common for save game files to be obfuscated in various ways, making the process much more of a pain in the ass.
- beebmam 4y agoThese days it's far easier to read/edit the memory of running programs than the serialized data saved to disk in save files.
- steponlego 4y agoWe used to break into the monitor for research sometimes too. Great times, no real OS in the way either.
- lostgame 4y agoWell; isn’t that why a lot of traditional ROM hacks historically (at least in the SEGA Genesis/MD hacking scene I was involved with) used savestates as rudimentary ROM hacks? EG - hasn’t it been easier to manipulate data in runtime memory, eg in a savestate; than within the ROM? Asking because I don’t actually know, I’m just recalling a lot of my early ROM hacking, and indeed discoveries in ROMs, by manipulating memory and savestate rather than the ROM itself.
- deaddodo 4y agoI couldn't tell you without a specific example, but I would suspect distributing an edited ROM would be much easier than save state hacking. In a general sense, I suspect the latter is more popular because it's not illegal to modify/distribute save state data; ROMs certainly can be.
- anthk 4y agoThey distribute delta binary patches on the form of IPS formats.
- deaddodo 4y agoWhich gives me even less reason for why they would distribute modified ephemeral data vs source data to alter game logic. Obviously, if you want all 151 Pokemon captured, you would do that through a save state. But if you want increased chances of capturing Pidgey, it would certainly be easier to distribute a ROM (or delte, in this case) with those new ratios baked in.
- drx 4y agoSavestate hacking used to be easier because everything in a savestate is uncompressed and raw. Tile graphics, level layouts, palettes, sprite mappings, etc. To hack a ROM you need to know how to decompress the data, and then recompress your changes. A given game might use multiple compression formats.
- shitcoder 4y agoYeah I definitely agree, wasting time figuring out how to get to the save and apply your changes is the worst obstacle there, in most cases the saves are encrypted and have a check sum applied. Although I've found some games that allow you access the save data without messing around with this stuff, mainly the Shin Megami Tensei line of JRPG games in my experience. Granted, the saves are binary blobs but once you find the value you want you can find an entire struct of data along side it. There are tools like imHex which help the process and help you define the structure of the save file. It's become a common project of mine to save hack and then build a save editor when I'm confident my changes work.
- jayofdoom 4y agoThe 3DS hacking scene is still pretty active. Great form factor devices, fully jailbroken. Guide is pretty easy to follow at 3ds.hacks.guide :) I've got mine as the best form-factor emulation station (for older games) you could imagine :).
- haunter 4y ago+1 it's worth it for the NSUI [0] alone. The 3DS, especially the New 3DSXL is the best handheld to play NES/SNES/GB/C/A games, pixel perfect! 0, https://3ds.eiphax.tech/nsui https://3ds.eiphax.tech/nsui
- messe 4y ago> The 3DS, especially the New 3DSXL is the best handheld to play NES/SNES/GB/C/A games, pixel perfect! For me at least, I think the Steam Deck has it beat these days, although I'll admit I miss the smaller form factor sometimes.
- idonotknowwhy 4y agoLove my New 2DS XL with cfw, but the best form factor for me for those you mentioned is the Miyoo Mini. I have it in my pocket all the time and put has save states, fast forward and low power standby with instant power on. I can play it in short busts whenever I have a few minutes spare instead of using my phone. I recently beat Pokémon Emerald for the first time thanks to this and I'm further through dk county than I've ever been
- ngcc_hk 4y agoAny starting point for steam dock. A run emulation now. Just treat those rom as well roy and start to hack from that I supposed. Btw that is 6 years ago or starting 7. No need of any update?
- maxioatic 4y agoGuessing you meant to ask "any starting point for steamdeck running emulation now" or something like that. If so, I'd recommend EmuDeck [1]. It took me about 10 minutes to set up and has emulators for essentially every platform you could want. (Just need to have roms.) Also, it's open source [2]. [1] - https://www.emudeck.com https://www.emudeck.com [2] - https://github.com/dragoonDorise/EmuDeck https://github.com/dragoonDorise/EmuDeck
- dang 4y agoIs there any URL we can switch the top link to, that contains some of this information but doesn't do an automatic file download as https://gbatemp.net/download/gba-and-ds-rom-hacking-guide.33419/download https://gbatemp.net/download/gba-and-ds-rom-hacking-guide.33... does? (Those make annoying links for frontpage submissions, even when the content is good.)
- wereallterrrist 4y agoYeah, even just a(n automatic) "[pdf]" in these submission titles would help. Or the site could just not force download since most browsers can natively read PDFs, etc.
- everly 4y agoSeems like just taking out the word download after the slash does the trick: https://gbatemp.net/download/gba-and-ds-rom-hacking-guide.33419 https://gbatemp.net/download/gba-and-ds-rom-hacking-guide.33... The info isn't embedded on the page, but the download button for the PDF is unforced but available Edit: Looks like this thread has the info from the PDF embedded: https://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2016-edition-out.73394/ https://gbatemp.net/threads/gbatemp-rom-hacking-documentatio...
- kiisupai 4y agoI dislike them myself and actually tried looking for one but the only alternative I found was scribd, which would require a login to download (even more annoying). Open to hear any good suggestions for PDF hosting.
- helf 4y agoThis is a surprisingly well written /book/. Thanks for the link. I used to do game save file hacking on palmOS as a teen. Was a hoot. Eventually turned to full blown “cracking” of software. That was a fun hobby.
- loupol 4y agoVery comprehensive resource for someone trying to get into rom hacking in general. The GBATEK specification [0] mentioned several times in the guide (not limited to the GBA, it also covers Nintendo DS, DSi and 3DS) feels like a real treasure trove of technical data. [0] https://problemkaputt.de/gbatek.htm https://problemkaputt.de/gbatek.htm
- spicyjpeg 4y agoThat page was written by Martin Korth (aka nocash) as he developed the no$gba emulator. He has a similar page for the PlayStation 1 [1] and prior to that he wrote one for the original Gameboy [2]; both have since been forked and maintained by other people [3]. He is currently homeless and accepting donations, so if anybody finds these pages useful consider donating. [1]: https://problemkaputt.de/psx-spx.htm https://problemkaputt.de/psx-spx.htm [2]: https://problemkaputt.de/pandocs.htm https://problemkaputt.de/pandocs.htm [3]: https://psx-spx.consoledev.net/ https://psx-spx.consoledev.net/ https://gbdev.io/pandocs/ https://gbdev.io/pandocs/
- mattl 4y agoDamn. I registered No$CPC in high school.