The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.

Reply
 
Thread Tools
  #1    
Old December 30th, 2008, 09:36 AM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
Introduction to ROM Hacking

Part of Hacking Library

Welcome to this document. I'm Quacker, and I doubt you know me. I'm here to help beginners with basic aspects of hacking and show them ways to creative development. In this series, called Hacking Library, I will encompass basics and also some more advanced areas. Don't worry, it won't be that hard to get over those parts ;) For convenience, I bolded the keywords so when you don't want to mess with whole text, you can read the parts that

ROM hacking is altering the game's code to change appearance of game's elements, altering the areas of gameplay (maps), background music, the events happening in game (scripts) and overall plot. Everything mentioned can be altered using one or two (maybe even more) methods. We will speak about the first two - hex editing and tools usage.

Hex editing is a process of editing hexadecimal numbers that represent the actual ROM. This ROM stores important data in header for making it possible to launch the game, graphics, scripts and more, what makes the game code. By changing right values at right places, hex editing may become an ultimate hacking technique. By hex editing, it's possible to change basically every aspect of the game. Coolboyman's Pokémon Prism is a perfect representation of such radical changes.

And although hex editing may be great help, it is not easy to master. Some tasks are repetitive and may become boring. That's where the tools come into the play. The tools actually edit the data by editing hex in a same manner we would do, but they offer you a more friendly interface and visual representation of the numbers. Take a map as an example. When you open it in a map editor, it looks like a town or a route. But when you see it in a hex editor as a bunch of repeating hex numbers, it may get annoying to change each and every tile by rewriting the value. Therefore it's quite convenient to use the tools. Sometimes, hex editing is really needed. For example, before palette editing tools, people used to change palettes ussing VBA's palette viewer plus a hex editor. I am still used to change my palettes this way, when I don't want to mess with APE.

We won't go much deeper because now you know what is ROM hacking and how the games are hacked. More detailed guides can be found all over this forum.

This document shows the pros and cons of tools. Tools are really convenient, but you see, it all comes from hex editing. Therefore you should know a bit about hex editing so you don't get scared by numbers when there isn't any tool for desired task.

The tools are also a bit "addictive" so you must be sure you don't rely on them completely. For example, how would you write scripts with tools? It's hardly possible, even with so-called helpers. You must believe in your own skills and imagination, don't be shy, use "trial and error" technique and don't forget to make a backup ;)

So, I hope you enjoyed reading this document/artice and you will read more from Hacking Library ;)

---
Document and layout ©2008 Quacker. To be used only with permission.
__________________

Last edited by Quacker; January 1st, 2009 at 07:52 AM.
Reply With Quote
  #2    
Old December 30th, 2008, 02:25 PM
D-Trogh's Avatar
D-Trogh
Dead
 
Join Date: Jul 2005
Location: Belgium
Age: 23
Gender: Male
Send a message via Windows Live Messenger to D-Trogh
Heh, nice! I hope people who are new to ROM hacking will finally understand that hacking isn't just using the available tools!
They should know how it all started; more people should explain how there tools works when they release one (Oh darn.. that includes myself too..);
people should learn understand what they're changing.
I hope your Hacking Library helps them to.. well; what I said on the previous lines.

Oh, and welcome to The PokéCommunity!
__________________
[NTME | WPEDS | HTPE | SGPE | TGPE | PDEDS]
Reply With Quote
  #3    
Old December 31st, 2008, 12:49 AM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
Thank you very much ^^ You see, people may know a bit more now about how the tools work in backend. It is indeed a really general explanation, nothing specific, but for a beginner it's enough. Now it depends on the beginner if he/she wants to read the document.

And I am not really that new :P
__________________
Reply With Quote
  #4    
Old December 31st, 2008, 10:53 AM
Imposter Oak's Avatar
Imposter Oak
"hahaha omg ur so funny" True
 
Join Date: Dec 2008
Location: Here, there, everywhere.
Gender:
Since when do ROMs contain a BIOS?
Reply With Quote
  #5    
Old January 1st, 2009, 04:15 AM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
Well, they do contain parts of BIOS. Maybe I have mistaken. But the data at first X bytes along with ROM header contain snippets of BIOS, or not?
__________________
Reply With Quote
  #6    
Old January 1st, 2009, 05:31 AM
HackMew's Avatar
HackMew
Mewtwo Strikes Back
 
Join Date: Jun 2006
Quote:
Originally Posted by Quacker View Post
Well, they do contain parts of BIOS. Maybe I have mistaken. But the data at first X bytes along with ROM header contain snippets of BIOS, or not?
Kinda. http://nocash.emubase.de/gbatek.htm#gbacartridgeheader
__________________
Reply With Quote
  #7    
Old January 1st, 2009, 06:51 AM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
Yes, that was my source. But well, seems like I misinterpreted it. If I understood well, it does contain snippets of BIOS for comparison and also instructions for it. I will fix this par

Oh, if you have any questions that could be answered by me, feel free to post them here.
__________________
Reply With Quote
  #8    
Old January 1st, 2009, 07:19 AM
Imposter Oak's Avatar
Imposter Oak
"hahaha omg ur so funny" True
 
Join Date: Dec 2008
Location: Here, there, everywhere.
Gender:
Game ROMs don't seem to contain portions of the actual BIOS, the BIOS is stored elsewhere in the GBA hardware so you wouldn't need to replicate any part of it. From that source that you're talking about, it doesn't provide instructions for the BIOS, it seems the BIOS is the one making all the decisions. The instructions are for the processor only.
Reply With Quote
  #9    
Old January 1st, 2009, 07:54 AM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
Everything's fixed so I won't have inaccurate information in there and you won't have any complaints
__________________
Reply With Quote
  #10    
Old January 1st, 2009, 08:39 AM
Snyser's Avatar
Snyser
Champion
 
Join Date: Sep 2008
Location: Forgotten!! LOL
Gender:
Send a message via Windows Live Messenger to Snyser
can someone give me fulfledge guide about scripting because i want to learn it.
Ps:
and quacker thanks for the document i read it and i never did no that it was actualy the hex thing that let you change tings not the tools the tool only makes it easyir

and sorry if i post this in the wrong section!!
Reply With Quote
  #11    
Old January 2nd, 2009, 12:24 PM
Quacker's Avatar
Quacker
Beginning Trainer
 
Join Date: Dec 2008
Gender:
You should have posted your request in a different thread. But other than that, thanks for the comment.
__________________
Reply With Quote
Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 04:29 PM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.