Home
about
archive
download
email me

About MapWelder


MapWelder was designed for the Elemental Saga Massively Multiplayer Online RPG by Nexon. Elemental Saga was a fantasy RPG set in a post-apocalyptic future. Despite its considerable potential, the game encountered severe development problems and was cancelled in the USA.

Elemental Saga was one of the last games to use a 2D isometric view style. That and the fact that there were map coordinates on the screen at all times made this project possible.

One of the features of the game were some great automaps. The problem was that they only existed for about 30% of the areas, and they were the lowest level areas. They became useless to most players in a matter of weeks. People wanted detailed maps of the more advanced areas, and the only way was painfully time consuming.

The concept MapWelder was built on is not new. People have created maps for years by taking numerous screenshots and manually pasting them together in Photoshop. Nintendo Power for example has been a prolific user of this technique since the mid-eighties. The problem is that manually placed screenshots are extremely difficult to align accurately, and the entire process is very time consuming. Only a couple of good maps were made for Elemental Saga using this method.

MapWelder was written to automate the process. In its first version, users entered filenames and coordinates into a text file, which the program used to assemble the map. The core ability for MapWelder to scale and place the images perfectly was established here. Even though it was far better than doing it manually, the process was still too cumbersome. The user had to switch to a 'no interface' mode, take the shot, switch back to normal, write down the coordinates and screenshot number, and then put all of that into a text file.

The solution lay in the fact that there were always map coordinates in the interface, and that those coordinates were always in the same place. This made it possible to have MapWelder detect the coordinates directly from the screenshots. This was made easier because a semi-transparent screen behind the coordinates eliminated any chance of the background making the coordinates look wrong. All the program had to do was match patterns of 'white' and 'not white.' Furthermore, the game had a 'minimal' interface mode, which drastically increased the usable amount of the screenshot. The program cropped out the remaining areas of the interface, creating a seamless map.

An interesting feature in Elemental Saga was that it supported multiple interface skins, in the same way popular MP3 players do. This encouraged user creativity but caused problems for MapWelder because different skins put coordinates and interface regions in slightly different places. To deal with it, I created a configuration file that contained all of the information MapWelder needed for each skin in an extremely compact representation. This added the flexibility to add a new skin in about half an hour without needing to recompile.

With those enhancements, making maps was finally a painless process. A quality map usually took about 130 screen shots, and MapWelder could flawlessly process them in about a minute. In the short time it was available before the game was cancelled, I learned of 9 users that made at least 39 maps, and there were probably many more I never knew about. Head over to the archive to check out the maps I was able to collect.


This site was created by Phillip Saltzman.
Mapwelder is powered by Paintlib for C++. http://www.paintlib.de
Last modified: Sun Oct 24 13:49:42 Eastern Daylight Time 2004