Here is a video of my capturing a small map from Sword of Mana.
http://www.4shared.com/file/cTBEAbik/Map_Creator_Show.htmlThe video is one minute in length and has a screen resolution of 1920x1080.
Let me explain what is going on.
I start by showing I am only using a walk through walls code (I call it Freemove). The last five codes freeze flower, grass and water animations. Sword of Mana has an independently moving screen. This means when the screen reaches the edge it stops even though your character can keep moving. This means I have to find the address for the screen coordinates as well as the address for the character coordinates.
I start out in the upper-left corner of the map, as this is where I was when I entered the map. In this game, like most, the co-ordinates loop around. This means if I move my character to the left of zero on the x axis, it loop around to 65,535. I then enter the map menu (any menu works) to refresh the position of the screen. Since I am at X co-ordinate 65,000+ the screen tries to follow but will only go as far as the game allows. This shows me the right edge of the map.
I do the same procedure for the Y-axis. This gives me the bottom-right corner of the map. I can now resize the canvas to the exact size of the map, making things a bit easier to see.
All that is left is to fill in the empty spots. As you can see, I take six screenshots total making the entire process take ~40 seconds.
It's slower than usual but I was trying not to hit the screen transition points.
In the program window, you can see in the output image (the map I am creating) a filled red square and an empty red rectangle.
These represent the character and screen positions, respectively. This makes it easy to see where everything is at and where the captured image will land.
There are other features, such as stepping that I can show as well. Stepping allowed me to make a map of the FFV Advance world map in under five minutes.
Please note that my program requires at least character co-ordinates to work properly. It uses these to track where you are on a global scale.