Hey! Welcome to the world of hacking!
The above advice is a bit problematic so ignore it. I'll give you a few steps.
1.) Get either a FireRed or Emerald ROM. These are the main options that people create tools, ASM, and features for. The other ROMs aren't as documented and don't have as many options. FireRed has more options and I prefer it over Emerald, but both have their ups-and-downs.
2.) You only really need a few things to make a hack. The main tools you will need are Advance Map v. 1.92, eXtreme Script Editor, Free Space Finder, and a hex editor (I prefer HxD). With these 4 tools, you can literally make your entire hack, and I'm completely serious about that. If you have a plot and some scripting knowledge, you can do just about anything with these tools (unless you want to implement unique features, which might require extra tools).
3.) For scripting help,
diegoisawesome's tutorial and
tajaros' tutorial are the best reference guides. You can literally script just about anything using these tutorials.
4.) If you want to find tools to use, head over to the Tools forum in the ROM Hacking section. Do not use YAPE - it's extremely outdated and there are far better tools for editing Pokemon. I personally recommend Gen 3 Tools, but you can also use Gen III Hacking Suite or Pokemon Game Editor.
5.) Always search before asking questions. Search using both Pokecommunity's search function and Google. Inevitably, you will find what you're looking for.
Good luck!