I checked a lot and I don't think there are any exceptions, though the position of the 1 and 0 can vary; they can be at the beginning, end, or the middle.
I believe the 1 and 0 are flags that represent different ways that coordinates are linked.
- 1 means the coordinates are sequential but the boundary has changed. For example a passable_area would be (road coordinates) 1, (slot coordinates).
- 0 means the coordinates are not sequential but the boundary has changed. For example a passable_area would be (transitional_area coordinates) 0, (slot not connected to transitional_area coordinates).
Regarding the other flags, as 3 is always at the beginning of a list of coordinates and 2 is always at the end I believe this tells ETW where to start and where to finish.
Boundaries with a passable_part of 191 (flags 3; 1; 0) has a middle hex value of 0, 2, or 6.
Boundaries with a passable_part of 225 (flags 2) has a middle hex value of 0, 1, 2, 4, 5, 6, 8, a, or d.
Boundaries with a passable_part of 231 (flags 1; 2) has a middle hex value of 0, 1, 2, 3, 4, 5, a, c, or d.
Boundaries with a passable_part of 237 (flags 3; 2) has a middle hex value of 0, 1, 2, 4, 5, or a.
Boundaries with a passable_part of 239 (flags 3; 1; 2) has a middle hex value of 0, 1, 2, or 5.
Boundaries with a passable_part of 241 (flags 0; 2) has a middle hex value of 0, 2, 4, 6, a, or e.
Boundaries with a passable_part of 245 (flags 0; 2) has a middle hex value of 0, 2, 4, 6, a, or e.
Boundaries with a passable_part of 247 (flags 1; 0; 2) has a middle hex value of 0, 2, 6, or e.
Boundaries with a passable_part of 253 (flags 3; 0; 2) has a middle hex value of 0 or 2.
It seems that the more flags there are the fewer variations for the middle hex value.
Also I notice something odd with boundaries that have the same passable_parts and unknown2; they seem to be the same shape.
I've tried making new pathfinding for a corn resource in the Americas theatre but I can't get it to work correctly. Any idea what the problem could be? Here is the code.
Code:
<rec type="grid_cells">
<bin6>57 57 57 57 ; aa a9 62 a8</bin6>
<ary type="boundaries">
<boundaries passable_part="182 (of 255)" unknown2="68116 (10a14)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173318"/><!-- 1; 0; 16221 (-613.775247573852,242.0); 16238 (-613.76731300354,242.018256187439); 16254 (-613.476286888123,242.369248390198); 16267 (-613.223579406738,242.674026489258); 16284 (-613.09761428833,242.990606307983); 16306 (-612.611347198486,243.368979454041); 41686 (-612.577087402344,243.391661643982); 41689 (-613.213439941406,244.028050422668) -->
<boundaries passable_part="33 (of 255)" unknown2="11522 (02d02)" path_type="6 (road)" path_id="23 (cherokee_territory)" vertex_index="173329"/><!-- 41687 (-611.869934082031,243.391661643982); 41686 (-612.577087402344,243.391661643982); 16306 (-612.611347198486,243.368979454041); 16284 (-613.09761428833,242.990606307983); 16267 (-613.223579406738,242.674026489258); 16254 (-613.476286888123,242.369248390198); 16238 (-613.76731300354,242.018256187439); 16221 (-613.775247573852,242.0); 16222 (-613.262837409973,242.0); 16241 (-613.168367385864,242.113935470581); 16258 (-612.875298500061,242.467391014099); 16273 (-612.766156196594,242.74169254303); 16287 (-612.365704536438,243.053291320801); 16302 (-612.0,243.337852478027) -->
<boundaries passable_part="97 (of 255)" unknown2="4609 (01201)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173344"/><!-- 16302 (-612.0,243.337852478027); 16287 (-612.365704536438,243.053291320801); 16273 (-612.766156196594,242.74169254303); 16258 (-612.875298500061,242.467391014099); 16241 (-613.168367385864,242.113935470581); 16222 (-613.262837409973,242.0); 2 -->
<boundaries passable_part="13 (of 255)" unknown2="148224 (24300)" path_type="7 (slot)" path_id="23 (cherokee_territory)" vertex_index="173352"/><!-- 3; 41687 (-611.869934082031,243.391661643982); 41686 (-612.577087402344,243.391661643982); 41689 (-613.213439941406,244.028050422668) -->
</ary>
</rec>
<rec type="grid_cells">
<bin6>57 57 57 57 ; 6c 57 57 57</bin6>
<ary type="boundaries">
<boundaries passable_part="253 (of 255)" unknown2="532033 (81e41)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173357"/><!-- 3; 16364 (-610.68711566925,244.0); 16332 (-610.947397232056,243.733949661255); 16307 (-611.947806358337,243.378465652466); 16302 (-612.0,243.337852478027); 0; 2 -->
<boundaries passable_part="128 (of 255)" unknown2="1312 (00520)" path_type="6 (road)" path_id="23 (cherokee_territory)" vertex_index="173365"/><!-- 16302 (-612.0,243.337852478027); 16307 (-611.947806358337,243.378465652466); 16332 (-610.947397232056,243.733949661255); 16364 (-610.68711566925,244.0); 41690 (-611.233581542969,244.028050422668) -->
<boundaries passable_part="134 (of 255)" unknown2="68480 (10b80)" path_type="7 (slot)" path_id="23 (cherokee_territory)" vertex_index="173371"/><!-- 41687 (-611.869934082031,243.391661643982); 41690 (-611.233581542969,244.028050422668); 1 -->
<boundaries passable_part="4 (of 255)" unknown2="263424 (40500)" path_type="6 (road)" path_id="23 (cherokee_territory)" vertex_index="173375"/><!-- 41690 (-611.233581542969,244.028050422668); 41687 (-611.869934082031,243.391661643982) -->
</ary>
</rec>
Code:
<rec type="grid_cells">
<bin6>57 ff 57 57 ; 6e 57 57 57</bin6>
<ary type="boundaries">
<boundaries passable_part="189 (of 255)" unknown2="139841 (22241)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173378"/><!-- 3; 16550 (-612.396326065063,246.0); 16440 (-614.0,244.924202919006); 0; 41689 (-613.213439941406,244.028050422668); 41691 (-613.213439941406,244.735152244568); 41696 (-612.577087402344,245.371550559998); 41697 (-611.869934082031,245.371550559998) -->
<boundaries passable_part="0 (of 255)" unknown2="0 (00000)" path_type="2 (transition area)" path_id="-1 (transition)" vertex_index="173387"/><!-- 16550 (-612.396326065063,246.0); 1; 16440 (-614.0,244.924202919006) -->
<boundaries passable_part="97 (of 255)" unknown2="4360 (01108)" path_type="7 (slot)" path_id="23 (cherokee_territory)" vertex_index="173391"/><!-- 41697 (-611.869934082031,245.371550559998); 41696 (-612.577087402344,245.371550559998); 41691 (-613.213439941406,244.735152244568); 41689 (-613.213439941406,244.028050422668); 2 -->
</ary>
</rec>
<rec type="grid_cells">
<bin6>57 57 57 57 ; 57 57 57 57</bin6>
<ary type="boundaries">
<boundaries passable_part="176 (of 255)" unknown2="1572 (00624)" path_type="7 (slot)" path_id="23 (cherokee_territory)" vertex_index="173397"/><!-- 41690 (-611.233581542969,244.028050422668); 41692 (-611.233581542969,244.735152244568); 41697 (-611.869934082031,245.371550559998); 0 -->
<boundaries passable_part="134 (of 255)" unknown2="66832 (10510)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173402"/><!-- 41697 (-611.869934082031,245.371550559998); 41692 (-611.233581542969,244.735152244568); 41690 (-611.233581542969,244.028050422668); 1; 16382 (-611.168571472168,244.079860687256); 16404 (-610.806714057922,244.449738502502); 16427 (-610.487402915955,244.776114463806); 16462 (-610.595821380615,245.209319114685); 16515 (-610.281079292297,245.748164176941); 16551 (-610.133975982666,246.0) -->
<boundaries passable_part="45 (of 255)" unknown2="142088 (22b08)" path_type="6 (road)" path_id="23 (cherokee_territory)" vertex_index="173413"/><!-- 3; 16551 (-610.133975982666,246.0); 16515 (-610.281079292297,245.748164176941); 16462 (-610.595821380615,245.209319114685); 16427 (-610.487402915955,244.776114463806); 16404 (-610.806714057922,244.449738502502); 16382 (-611.168571472168,244.079860687256); 41690 (-611.233581542969,244.028050422668); 16364 (-610.68711566925,244.0); 16386 (-610.517504692078,244.173369407654); 16420 (-610.045068740845,244.656257629395); 16458 (-610.168217658997,245.148315429687); 16487 (-610.0,245.436307907104) -->
<boundaries passable_part="97 (of 255)" unknown2="5121 (01401)" path_type="0 (passable area)" path_id="23 (cherokee_territory)" vertex_index="173427"/><!-- 16487 (-610.0,245.436307907104); 16458 (-610.168217658997,245.148315429687); 16420 (-610.045068740845,244.656257629395); 16386 (-610.517504692078,244.173369407654); 16364 (-610.68711566925,244.0); 2 -->
</ary>
</rec>