Hi guys!! Im making this thread again, because my last one was deleted because of a server crash!
Alrite! Here are the basics of rom hacking Pokemon GBA games!!

Mapping

Mapping is basically hacking maps in the games or creating new ones. It requires some creativity and determination. Unfortunately some newbies think these is the easiest job and clog up forums with they're applications to be a mapper for ROM hacking teams.
Mapping needs a lot of creativity. You must make it look real. Example, removing all HM obstacles is just a newbie thing. You MUST put obstacles that can be only unlocked later in the game. That will make the game more challenging & fun!

Things you will need:
-Advance map or elite map (Advance map is better and easier)
-A tile inserter to insert custom tiles.

Info: Advance Map is a program to edit the Maps in a Pokémon game. Additional, you can edit the Movement data (the data that sets where you can move on a Map), rearrange the blocks of the tilesets, edit the behavior of tiles, edit the Events on a Map (People, Signs, Warps...), add new events, export Map files, show the People on a map as their representative Sprites, And a lot more.
Here is a ScreenShot of me using Advance Map:


Scripter

The most important thing you have to learn if you want to make a REALLY GOOD pokemon hack. Scripting is vital for any good GBA pokemon hack. It is inserting events through scripting like adding text to npcs or getting them to give you items/pokemon. Some people find it the easiest job, others find it the most complex. If you are one of the persons who find it complex, Just look up tutorials on YouTube and other websites on the web.

Things you will need:
-A good script editor ( I'd recommend XSE)
-Advance map.

After having the XSE or any other script editor, You will need Advance map.
Example, when making the game in advance map, you can select a sprite and edit its content's.
XSE Screenshot: (Dont mind the Error X3)


Spriting

Spriting, A very important part to ROM hacking. If you're a spriter you change the sprites however you want. For example, recolouring the in-battle pokemon sprite or giving your trainer a different color, hairstyle, etc. Ive done a bit of spriting myself and its not hard to learn. You will get used to it, and also, you need a lot of patience to make it. Also, If you want to make a pokemon region of your own, you can create your own unique pokemon ^^

Things you will need:
- A good paint program
- Unlz-Gba for applying your creations to the game.
(For a paint program, I use MS paint. Very simple ^^ )

Unlz-Gba Screenshot:

Other Info

In pokemon ROM hacking, there are a lot of other hings you can do. For example,
Changing the music of the games.

The things you will need for ROM hacking are:

Pokemon hacking software's. (Search over Google.)
A Pokemon Fire Red, or leaf Green rom.
(R/S/E if you want to. I recommend starting with fire red or leaf green if you are a beginner.)

Rom Hacking Tools (Links)

Here are some websites where you can find some good hacking tools.

Pokemon Game hacker

WaHack (Best Hack Site Ever Made In the World O_O. I use this site instead of the others.)

DarkTech (Best after Wahack)

Tutorials
Here are some good tutorials I found. If you cannot find the tutorial you are looking for here, search in Google.

Scripting Tutorials
Link - DiegoIsAwesome's XSE Scripting tutorial. Very beginner friendly
Link - Old school scripting method but still somewhat beginner. By Foullump
Link - XSE tutorial by Raikou-kun.

Mapping Tutorials
Link - Haefele's AMap mapping naturally tutorial.

I guess that's the end if it ^^ I hope this tutorial helped you!! If it did, please press the thank button! Also, if you have any questions, feel free to ask!!



Credits
Spoiler!