copying whole maps at once

Chris H.'s Ultima / ACS-style game development system!

Moderators: Ice Cream Jonsey, Chris H

Post Reply

copying whole maps at once

Post by Garth » Mon Nov 29, 2010 3:46 pm

Having made a GYNORMOUS custom map in ACk I now only wish I could somehow quickly and easily reproduce it for various versions of the same map to represent different time periods or world changing events, or to copy into other adventures, or to upload and share with other ACK game designers to use.

It is a complete and accurate worldmap of all the continents of earth filled with different color tiles representing the different earth biomes. The tiles used can easily be replaced with your own versions of that type of terrain to customize the worldmap by simply changing out a few tiles.


Post by Garth » Tue Nov 30, 2010 7:52 pm



Post by Garth » Tue Nov 30, 2010 7:54 pm



Post by Garth » Thu Dec 02, 2010 4:56 pm

I tinkered around with the files a bit and found that by copy the file with the extension .RGN to another adventure folder i can import all the regions and maps of one adventure over to another. Only thing is it copies all of them and overwrites any that already exist there. So it is good for importing maps from one adventure to a new project but not much else. I want to get inside that RGN file and figure out how to extract just one map and maybe edit it with a hex editor or something to duplicate a map within the same adventure.

Heather Harrison
Posts: 44
Joined: Fri May 21, 2010 8:40 pm

Post by Heather Harrison » Fri Dec 03, 2010 10:05 pm

In my Ultima II remake, I had the same issue. After creating the world map for BC, I wanted to copy that map to AD and Aftermath so that it could be modified for those time periods. Here is the method I figured out.

First, create a new custom world map region, and take note of its number.

Then, find all of the map files for the original region. These are the filenames with numbers in the extensions. The first character of the extension (which can be a number or a letter) seems to indicate what type of map file it is. The next one or two digits will be the region number. Note that some of these files are related to savegames; you don't have to copy them. Consult the manual to figure out which ones these are. (I don't remember off hand.)

Copy the files with the number for the original region to the files with the number for the new region.

This brings in the data, but I was unable to find a way to get the 16X16 cells of the region to automatically copy over, so this has to be manually constructed. This is why the new region should be a custom world map. Add as many cells as are in the original region, and then arrange them appropriately. (If necessary, convert the original region to a custom world map to see how it is organized.)

This is still a bit of work, but it saves some of the trouble. At least it is not necessary to draw the map again.

I have had some strange problems with this on a few occasions, so I can't guarantee success. In particular, monsters in the existing map sometimes get messed up, so it is best to do this before adding monsters to the map. It also messes up portals; any portals in the map need to be deleted and redone in the copied version.

Note that I have not tried anything like this with room-based regions, but a similar method might work.



Post by Garth » Sat Dec 04, 2010 5:03 pm

You are a lifesaver Heather! That is much much simpler than redrawing it all tile by tile! Thanks so much. Ill let ya know how it goes, tryin it out now.


Post by Garth » Sat Dec 04, 2010 7:58 pm

awesome! Worked like a charm Heather! You win five internets! I also recorded the process of reentering all the numbers in a macro so it will be even faster next time i need to copy this map. :D

Now that all that tedious work is out of the way i can begin work on some more terrain like tiles to replace the plain solid color biome tiles i used. Ill make a backup of my Biomes.A1, Biomes.B1, and Biomes.C1 files which contain this map, and zip them together with the autokey macro then upload the archive to a filesharing site like sendfile or something so it is available to the public. Ill also include a text file detailing how many tiles the map uses and which tile slots it takes them from so that you dont end up with a crazy random looking map.

I am now debating how I should break down the world map into regions. I guess for a modern game it would be easy as simply making a bunch of smaller worldmaps in the shape of the various states and countries. Historical games could be a bit of a problem since boundaries have changed so many times throughout history.

Well ancient boundaries would be pretty simple. Like most of the map occupied by one great empire or another such as the Babylonians, Greeks or Romans. And the rest by various loosely defined tribes/races who didn't define their boundaries on any map the way civilizations did. And many of them were Nomadic anyway.

Depending on the historical scope or ancient-mythological setting perhaps whole continents could even be left out or made inaccessible for that specific game so that alot fewer regions need be created. Damn, the possibilities are endless. Ive really opened up a can of worms this time... :P

Hmmmmmm... >:D (an idea creeps the ol Garthian brain-bucket!)

How about I use this worldmap, or part of it atleast, for the Rivers of Light project? I could even use it for my Metal Gear and Wasteland projects as well since they both take place in known parts of the world. Wasteland in the southwestern US, and Metal Gear in Africa/South Africa or something. Damn. If only ACK supported unlimited tilesets I could actually make a massive ACK demo with all those combined on one world map! Holy shit that would be EPIC!

Posts: 223
Joined: Sun Jan 25, 2009 2:17 am
Location: Dallas, TX

Post by rld » Mon Dec 06, 2010 11:47 am

Chris posted on the subject earlier - basically the same thing that Heather said. He had to copy regions in U4PART2 when creating the 'day/night' region variants.

Code: Select all

Say you wanted to copy region 12:

Back up your adventure. (I tend to do this about once an hour anyway when I'm working)

Create a new region (let's say it ends up as 17) of the same type and dimensions.

Copy the .A, .B, and .C files (copy game.A12 game.A17, etc.)

Open the new region and delete all the portals. If the map edge is a portal, change it to a non-portal terrain.

Re-create all the portals.

Set the region options as needed (those don't copy)


Post by Garth » Tue Dec 07, 2010 9:13 pm

Thanks rld, I had searched the forums for that because I though I remembered something like that being mentioned but could not find it. I dont think the search engine for this old version of phpbb is very good. Anyway, I emailed Chris about it and he replied with basically the same thing you just quoted.

He added some cool little details though that are good to know...
Create a new region of the same type, then replace files. Each region has four files: A, B, C, and W:

.A## ( for example, region 3 would be .A3) has the terrain data
.B## has stacked item data
.C## has creature data
.W## has wandering creature data

So replace the new region's four files with the ones from the old region and you've copied almost everything. Make sure you do all four, they reference each other.

Unfortunately you're missing the portal definitions: they are defined somewhere else, so those you'll need to remove all the portals from the new region before you add any new ones. Make sure you delete them all (including map border if you use one) and then you can create them again.
I guess everything is probably in the manual somewhere as I keep finding stuff I didnt realize was in there all the time, like that list of the file extensions at the end I somehow missed or overlooked before. :P


Post by Garth » Tue Dec 07, 2010 9:21 pm

Oh BTW: Anyone who reads our tiny little community's postings who would like to correspond about anything related to ACK or game design in general feel free to use my email. If isn't spam I will definitely respond, especially if its about creating adventures! :D

Post Reply