TilesGroup.xml

Данный файл содержит списки тайлов и объектов разбитых на группы и подгруппы.
Расположение: по умолчанию располагается в папке клиента, но при желании может быть вручную перемещен в папку профиля.

Общая структура файла

 1<?xml version="1.0" ?>
 2<TilesGroup>
 3  <Group />
 4  <Group>
 5    <Group />
 6    <Group>
 7      <Group />
 8      <Group />
 9    </Group>    
10  </Group>
11  <Group />
12</TilesGroup>
Как видно Файл состоит из множества "секций", вложенных друг в друга. Эти секции образуются тегами "Group", содержащие следующие не обязательные атрибуты:
  1. Name - Название группы, что будет отображаться в списке групп, если название не указанно группа будет отображаться как "NoName".
  2. Nodes - уровень включаемых вложений, определяет глубину вложений подгрупп, тайлы из которых будут включены в данную группу. По умолчанию значение равно 0, что говорит о том что тайлы из подгрупп не будут включаться, любое число выше 0 задает глубину максимального вложения подгрупп для включения тайлов, в случае если значение равно "-1", то в группу будут включены тайлы из всех подгрупп всех подгрупп.
  3. Id - Не обязательный атрибут, задающий уникальный индификатор группы, индификаторы разных групп не должны совпадать. Индификаторы групп служат только для ссылок на группы.
  4. color - Атрибут форматирования текста, задает цвет в формате R8G8B8 названия группы в списке групп, по умолчанию равно значению 0х000000
  5. bold - Атрибут форматирования текста, может принимать значения "True" или "False", определяет толщину названия группы в списке групп. По умолчанию равно "True" если группа содержит более 4х подгрупп и "False" в противном случае.
  6. ital - Атрибут форматирования текста, может принимать значения "True" или "False", определяет использование курсива в названии группы в списке групп. По умолчанию равно "True" если группа не содержит подгрупп и "False" в противном случае.

Допустимые элементы

1        <Land  ID="0x01B5"/>
2        <Item  ID="0x219C"/>
3        <Tile  ID="0x619C"/>
4        <Link  GroupID="0101"/>
5        <Link  BrushID="0045"/>
6        <Entry ID="0013"/>
7        <Brush ID="0002"/>

Данные теги описывают какой-то конкретный тайл с указанным ID в одноименном атрибуте (как в шестнадцатеричном виде так и в десятичном). Тег "Land" описывает тайлы рельфа и их текстуры, тег "Item" описывает статику, а тег "Tile" может описывать и то и другое одновременно, благодаря общему ID. В общем случае для тайлов рельефа TileID = LandID, а для предметов TileID = LandID + 0x4000. Данные элементы помещаются внутри тегов, описанных в предыдущем пункте, для описания тайлов. Тэг Entry описывает мульти-объекты, заданные в TilesEntry.xml, аналогично тэг Brush описывает объекты-кисти, заданные в TilesBrush.xml. А тэг Link является ссылочным типом данных на группу с индификатором GroupId или на кисти с индификатором BrushId. Ссылки отображают содержимое группы без вложенных подгрупп (Будьте предельны осторожны - перекрестные ссылки на группы могут повесить редактор) или тайлы кистей, сортируя их в определенном порядке.

Пример заполнения файла

  1<?xml version="1.0" ?>
  2<TilesGroup>
  3  <Group Name="Текстуры">
  4    <Land ID="0x0002" />
  5    <Land ID="0x346E" />
  6    <Land ID="0x3472" />
  7    <Land ID="0x3474" />
  8    <Land ID="0x3471" />
  9    <Tile GroupID="0x0001" />
 10    <Tile GroupID="0x392F" />
 11    <Link BrushID="114" />
 12  </Group>
 13
 14  <Group Name="Предметы">
 15    <Group Name="Декорации">
 16      <Group Name="Ankhs" Id="114">
 17        <Group Name="North">
 18          <Item ID="0x0004" />
 19          <Tile ID="0x4005" />
 20        </Group>
 21        <Group Name="West" Id="114">
 22          <Tile ID="0x4002" />
 23          <Item ID="0x0003" />
 24        </Group>
 25      </Group>
 26      <Group Name="Стены" Nodes="1" Id="114">
 27        <Group Name="Деревянные">
 28          <Item ID="0x0006" />
 29          <Item ID="0x0007" />
 30          <Item ID="0x0008" />
 31          <Item ID="0x0009" />
 32          <Item ID="0x000A" />
 33          <Item ID="0x000B" />
 34          <Item ID="0x000C" />
 35          <Item ID="0x000D" />
 36          <Group Name="Окна">
 37            <Item ID="0x000E" />
 38            <Item ID="0x000F" />
 39          </Group>
 40          <Item ID="0x0010" />
 41          <Item ID="0x0011" />
 42          <Item ID="0x0012" />
 43          <Item ID="0x0013" />
 44          <Item ID="0x0014" />
 45          <Item ID="0x0015" />
 46          <Item ID="0x0016" />
 47          <Item ID="0x0017" />
 48          <Item ID="0x0018" />
 49          <Item ID="0x0019" />
 50        </Group>
 51      </Group>
 52      <Group Name="Крыши">
 53        <Group Name="Керамические">
 54          <Item ID="0x23D3" />
 55          <Item ID="0x23D5" />
 56          <Item ID="0x23EB" />
 57        </Group>
 58        <Group Name="Керамические">
 59          <Item ID="0x23D5" />
 60          <Item ID="0x23D3" />
 61          <Item ID="0x23EB" />
 62        </Group>
 63        <Group Name="Керамические">
 64          <Item ID="0x23EB" />
 65          <Item ID="0x23D5" />
 66          <Item ID="0x23D3" />
 67        </Group>
 68      </Group>
 69    </Group>
 70  </Group>
 71
 72  <Group Name="Объекты" color="0xFF8800" bold="True" ital="True">
 73    <Entry ID="0201" />
 74    <Entry ID="0002" />
 75    <Entry ID="0001" />
 76  </Group>
 77
 78  <Group Name="Кисти" color="0xFF0088" bold="True" ital="True">
 79    <Brush ID="0202" />
 80    <Brush ID="0002" />
 81    <Brush ID="0203" />
 82  </Group>
 83
 84  <Group Name="Banana!">
 85    <Group Name="node - level 1" Nodes="-1" Id="114">
 86      <Group Name="node - level 2" Nodes="5">
 87        <Group Name="node - level 3" Nodes="5">
 88          <Group Name="node - level 4" Nodes="1">
 89             <Group Name="node - level 5">
 90               <Group Name="node - level 6">
 91                 <Group Name="node - level 7">
 92                   <Group Name="node - level 8">
 93                     <Land ID="0x0001" />
 94                   </Group>
 95                 </Group>
 96               </Group>
 97             </Group>
 98          </Group>
 99        </Group>
100      </Group>
101    </Group>
102  </Group>
103
104  <Group Name="Пустая Группа" color="0x888888" bold="True" ital="True">
105  </Group>
106
107   <Group Name="Что-то там ещё" color="0x444444">
108  </Group>
109</TilesGroup>