telling the ai where to go?

When setting up the map, for example, you could create areas using CvMap::addArea() (and calling init(), search for calls to addArea() for examples). One area for each area you want (Spain, Rome etc.)

Then you can go over all plots and assign each to whatever area you want.
Don't forget to separate water and non-water tiles.
 
what do you mean by seperate water and non water tiles?
 
An area has a property of whether it's a water area or not, so you can't mix land and water plots in the same area.
 
ok a conditional could presumeably be used...

Code:
for (int iX = x1; iX<x2; iX++)
{
   for (int iY = y1; iY<y2; iY++)
   {
      if(!isWater())
      {
          GC.getMapINLINE().plotINLINE(iX, iY).setArea(iArea);
      }
   }
}

that would set all land plots within coords an area correct?

edit:
my current function is:
Code:
void CvPlot::setCustomArea(int x1, int y1, int x2, int y2, int iArea)
{
    for (int iX = x1; iX<x2; iX++)
    {
        for (int iY = y1; iY<y2; iY++)
        {
            if(!isWater())
            {
                    GC.getMapINLINE().plotINLINE(iX, iY).setArea(iArea);
            }
        }
    }
}
is this correct? would it be called by saying for example:
setCustomArea(1, 1, 2, 2, 3)
to set all coords between 1,1 and 2,2 to area 3 providing they are not water?
 
You have a problem there: you're influencing a group of plots, but you're within the scope of a specific plot.
Also note that your isWater() call references the current plot (this, similar to self in Python except it's a pointer) instead of the plot you're iterating in the loops.
 
1. Move it to another class (CvArea, CvMap, maybe another class depending on where and when you want to do this).
2. isWater() should be called for the iterated plot (same as setArea())
 
whhat so add GC.getMapINLINE().plotINLINE(iX, iY) infront is iswater?

how do I know which class to use :p
 
whhat so add GC.getMapINLINE().plotINLINE(iX, iY) infront is iswater?

Yes.

how do I know which class to use :p

That's what design is about.
That depends on the context in which you use it.
In software design there is no correct answer. Only incorrect ones ;)
 
how would I connect two xml files to the code and make a schema file? because I figured that once I finish the code then it would be easier to edit with an xml file: CIV4AreaDefines.xml and and CIV4AreaPriority.xml.
 
I suggest adding it to an existing schema, probably CIV4TerrainSchema.xml - so these files will be in the Terrain folder.
You'll have to point to the schema file in your new XML files (see how existing XML files do it - it's somewhere in the top), and add the appropriate definitions in the schema file (all tags which you want to use must be defined properly).

You'll also need to define new Infos structs (CvInfos.h, CvInfos.cpp), add appropriate members and methods in CvGlobals, and add a call in CvXMLLoadUtilitySet.cpp to load these files (probably in CvXMLLoadUtility::LoadPreMenuGlobals() or CvXMLLoadUtility::LoadPostMenuGlobals()).

This is a very general description, so look at how other XML files are used, loaded and stored for more details.

And ask for what you can't find ;)
 
should it be made in a certain way (my area defines was simple but priority is harder for me to work out if it will work...)

as I can't look right now, how are these methods and things called apon and defined to actually get the things?
 
should it be made in a certain way (my area defines was simple but priority is harder for me to work out if it will work...)

I don't really understand the question...

as I can't look right now, how are these methods and things called apon and defined to actually get the things?

It would be easiest to follow an existing example (choose whatever XML file which seems most similar) and look at the code for this. If I try telling everything I'm bound to miss a lot of details.
 
the question was do the details of the xml file have to be ordered in a specific way or can I do what I want? (like x and y under <iCoords> or just in the main define. Or does i HAVE to be there?)
 
I don't really understand how the xml file is read (or the schema for that matter...)

these are my xml files currently:
Spoiler :

Code:
<?xml version="1.0"?>
<!-- Created by J_mie6 for AI area programing -->
<!-- Sid Meier's Civilization 4 -->
<!-- Jamie's Rome Mod 1.3 -->
<!-- -->
<Civ4AreaDefines xmlns="x-schema:CIV4TerrainSchema.xml">
	<AreaDefines>
		<AreaDefine>
			<Type>AREA_ITALY</Type>
			<Desc>TXT_KEY_AREA_ITALY</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>1</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_GREECE</Type>
			<Desc>TXT_KEY_AREA_GREECE</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>2</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_IBERIA</Type>
			<Desc>TXT_KEY_AREA_IBERIA</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>3</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_EYGPT</Type>
			<Desc>TXT_KEY_AREA_EYGPT</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>4</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_BRITAIN</Type>
			<Desc>TXT_KEY_AREA_BRITAIN</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>5</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_GAUL</Type>
			<Desc>TXT_KEY_AREA_GAUL</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>6</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_GERMANIA</Type>
			<Desc>TXT_KEY_AREA_GERMANIA</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>7</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_DANEMARK</Type>
			<Desc>TXT_KEY_AREA_DANEMARK</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>8</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_CARTHAGE</Type>
			<Desc>TXT_KEY_AREA_CARTHAGE</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>9</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_TURKEY</Type>
			<Desc>TXT_KEY_AREA_TURKEY</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>10</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_GREECE_NORTH</Type>
			<Desc>TXT_KEY_AREA_GREECE_NORTH</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>11</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_CARTH_EYGPT_MID</Type>
			<Desc>TXT_KEY_AREA_CARTH_EYGPT_MID</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>12</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_MED_ISLANDS</Type>
			<Desc>TXT_KEY_AREA_MED_ISLANDS</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>13</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_AGEAN_ISLANDS</Type>
			<Desc>TXT_KEY_AREA_AGEAN_ISLANDS</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>14</iValue>
		</AreaDefine>
		<AreaDefine>
			<Type>AREA_SOUTH_AFRICA</Type>
			<Desc>TXT_KEY_AREA_SOUTH_AFRICA</Desc>
			<iX1>0</iX1>
			<iY1>0</iY1>
			<iX2>0</iX2>
			<iY2>0</iY2>
			<iValue>15</iValue>
		</AreaDefine>
	</AreaDefines>
</Civ4AreaDefines>


and
Spoiler :

Code:
<?xml version="1.0"?>
<!-- Created by J_mie6 for AI area programing -->
<!-- Sid Meier's Civilization 4 -->
<!-- Jamie's Rome Mod 1.3 -->
<!-- -->
<Civ4AreaPriority xmlns="x-schema:CIV4TerrainSchema.xml">
	<AreaPriorities>
		<AreaPriority>
			<Area>AREA_ITALY</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>7</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>3</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>4</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>4</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>3</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>2</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_GREECE</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>4</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>7</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>2</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>2</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>2</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>6</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_IBERIA</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>5</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>2</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>5</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>4</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>3</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>1</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_EYGPT</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_BRITAIN</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_GAUL</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_GERMANIA</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_DANEMARK</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_CARTHAGE</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_TURKEY</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_GREECE_NORTH</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_CARTH_EYGPT_MID</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_MED_ISLANDS</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_AGEAN_ISLANDS</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
		<AreaPriority>
			<Area>AREA_SOUTH_AFRICA</Area>
			<Civilization>
				<CivilizationType>CIVILIZATION_ROME</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GREECE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_CARTHAGE</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_EYGPT</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GAUL</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BRITON</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_PICTS</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_GERMANIA</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
			<Civilization>
				<CivilizationType>CIVILIZATION_BYZANTIUM</CivilizationType>
				<bCivilizationType>1</bCivilizationType>
				<iValue>0</iValue>
			</Civilization>
		</AreaPriority>
	</AreaPriorities>
</Civ4AreaPriority>


so how would these be arraged in the schema and then defined within the dll?
 
First some suggestions on changing your XML:

In Civ4AreaDefines:
- Remove iValue. You don't need it since this value (which is just an ordered number) is determined automatically when reading the XML.
- Change 'Desc' to 'Description', because this is the default way to do this and it's already read that way from the XML.
- You might want to add more coordinates for each area (if it's not a complete rectangle), so you could do something like:

Code:
<AreaDefine>
    <Type>AREA_ITALY</Type>
    <Desc>TXT_KEY_AREA_ITALY</Desc>
    <CoordsGroups>
        <CoordsGroup>
            <iX1>0</iX1>
            <iY1>0</iY1>
            <iX2>1</iX2>
            <iY2>1</iY2>
        </CoordsGroup>
        <CoordsGroup>
            <iX1>2</iX1>
            <iY1>2</iY1>
            <iX2>5</iX2>
            <iY2>3</iY2>
        </CoordsGroup>
    </CoordsGroups>
    <iValue>1</iValue>
</AreaDefine>

In Civ4AreaPriority:
- Not sure what you need bCivilizationType for. There are existing functions for reading pairs like this (e.g. CivilizationType and int value) but not triplets. You could write one, but are you sure it's needed?

- And in any case, I suggest canceling this file and moving it to either one of these:

The CivilizationInfos XML file, where each civilization holds the values for each area (and use a default one when it doesn't exist).

The Area defines file (your first one) - and each Area define section holds a list of Civilizations. (I prefer this solution, although either one is probably fine)

The reason is that the priority is not an entity of its own but just connects to other entities (area and civ).
Either way, wrap your list (of either civilizations or areas) with an appropriate tag (CivilizationPriorities or AreaPriorities), so you can treat it as one element.

Look at how the existing XML files are defined in the schemas. After you have a final format I can help you with the schema if you're still having trouble with it.
 
Since I didn't see it mentioned anywhere in this thread, I'd thought I'd add how areas are calculated.

Each landmass is a separate area - and each plot on that landmass has the same area id. The same is true for each sea - for each separate sea (i.e. unconnected to any other) - each water tile in that sea will have the same area id.

Lots of things in the game work off knowing which area plots are in. For example - the Great Wall keeps barbarians out of the plots you own in the same area it was built in, but no others. So, that's why it doesn't work on other landmasses or keep out galleys. I think a fair amount of routing and targeting code relies on the areas to work out if boats are needed too.

I think if you edit the map in worldbuilder - the areas get recalculated.

I haven't looked at Rhye's mods though to see if they do something different for areas though.
 
thanks! This could make the great wall obsolete, I mean only useful in italy! well at least it removes great wall spamming!
 
Top Bottom