How to add a new continent to the Overland
------------------------------------------

Keep in mind that adding an additional continent will increase your
RAM and disk usage. You should check to see that your site quotas
will allow you to do this before beginning.

1. Perhaps the most time consuming step - create a graphic image of
the new continent using colors for terrain that conform to the table
in RGB.txt. This will no doubt require ALOT of time, patience, and
effort. Once done, follow the proceedure to convert it into a .raw file.

2. In overland.h, under #define MAP_FILE3 "alatia.raw", add a line like so:

#define MAP_FILE4 "mapname.raw"

mapname.raw would be the name of the new .raw file you generated in step 1.

Then just below that, in this enum:

typedef enum
{
   MAP_ALSHEROK, MAP_ELETAR, MAP_ALATIA, MAP_MAX
} map_types;

Add MAP_something to the listing, before MAP_MAX.

"something" should be a code identifier that you will be able to remember.

Add ACON_something to reflect your new continent before ACON_MAX

3. In overland.c, in these lists:

char *	const map_names[] =
{
  "Alsherok", "Eletar", "Alatia"
};

char *	const map_name[] =
{
  "alsherok", "eletar", "alatia"
};

Add your new continent's name to them.

Then in load_maps, below this section:

   /* Change the names of the continents here to match your world */
   log_string( "Loading continent of Alsherok...." );
   load_continent_one();

   log_string( "Loading continent of Eletar...." );
   load_continent_two();

   log_string( "Loading continent of Alatia...." );
   load_continent_three();

Add another load_continent_X call to load your new continent.

Then, using load_continent_three as a guide, duplicate it, and
name it load_continent_X and make sure you change the MAP_ALATIA
and MAP_FILE3 variables to match those you created for the new
continent in step 2.

4. In build.c, beneath this section:

      if( !str_cmp( arg1, "alsherok" ) )
	   map = ACON_ALSHEROK;

      if( !str_cmp( arg1, "alatia" ) )
	   map = ACON_ALATIA;

	if( !str_cmp( arg1, "eletar" ) )
	   map = ACON_ELETAR;

Add another check for your new continent's values.

5. In afk.h, in this section:

/* New continent and plane support - Samson 3-28-98
 * Name of continent or plane is followed by the recall and death zone.
 * Area continent flags for continent and plane system, revised format - Samson 8-8-98
 */
typedef enum
{
  ACON_ALSHEROK, ACON_ELETAR, ACON_ALATIA, ACON_UNUSED1, ACON_UNUSED2,
  ACON_UNUSED3, ACON_UNUSED4, ACON_UNUSED5, ACON_ASTRAL, ACON_PAST,
  ACON_IMMORTAL, ACON_VARSIS, ACON_MAX
} acon_types;

Change one of the ACON_UNUSED values to reflect your new continent, or add it before
ACON_MAX if you've used them all up already.

6. Make clean, recompile. With any luck you should now have yourself
a nice shiny new continent :)
