Also zur Frage mit dem richtig programmieren, kann ich dir jetzt leider nicht helfen :D
Aber vllt bei dem Rest.
Also, an sich kann man eigentlich fast alles in einem Pokemongame verändern. Man kann das Aussehen der Städte ändern, man kann Farben ändern, man kann Häuserformen/-farben/-größen und so weiter ändern, man kann die kleinen Bildchn der Pokemon ändern, man kann ändern, was Leute sagen, wo sie stehen, was sie machen, man kann Attcken ändern und so weiter... Das einzige, was ich jetzt wüsste, was man nicht ändern könnte, wäre der Ablauf in einem Kampf und dass man z.B. immer nur in einem Vieréck rumläuft (also nicht in alle Richtungen gehen kann).
Tja, Hack Tools fideste auf RHW (Rom-Hackers-World) oder auf WAH (einfach mal bei Google RHW eingeben).
Es gibt viele unterschiedlich Programme. Ein (denke ich) relativ wichtiges Programm ist unzL GBA (suche bei Google alles ;)); damit kann man Bilder von Pokemon, Bällen, Items, Helden, anderen Personen ändern, man kann den Titelscreen grötenteils anpassen usw. Ist ein sehr umfangreiches Prog. Dann wäre auch Advance Map wichtig. Damit änderst du Städtebilder, also die Karten (Maps) und auch die Personen, die in einer Stadt sind. Hier kann man auch die Gebäudestrukturen verändern und auch, wie die Blumen ausshen und so, welche Farbe das Gras hat usw.
Aber ich denke, das findeste alles auf RHW oder WAH.
Meine wichtigsten Progs:
-Advance Map 1.92
-unlZ GBA
Professionell Tilemap Creator (Spanisch)
-Overworld Editor
und snoch ein paar kleinere Progs.
Hoffe, ich konnte helfen ;)
lg