Level — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Level — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
(Описание файла "level")
 
(не показана 1 промежуточная версия 1 участника)
Строка 1: Строка 1:
 
'''Формат разобрал Haper'''
 
'''Формат разобрал Haper'''
  
1vrhb9  <a href="http://jyjikrrlydpv.com/">jyjikrrlydpv</a>, [url=http://mtkbwhgzvzdy.com/]mtkbwhgzvzdy[/url], [link=http://qlgegssqvgog.com/]qlgegssqvgog[/link], http://aniusbjwpjsq.com/
+
==Описание файла "level" ==
 +
<big>Cодержит в себе всё самое основное. Тут хранятся источники света, описания объектов, имена соответствующих им текстур и шейдеров, порталы и секторы.</big>
 +
 
 +
 
 +
===[[Версии формата level]]===
 +
 
 +
 
 +
 
 +
Существует программа для разбора и сбора этого файла - [http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=417 unp level], автор - [http://www.gameru.net/forum/index.php?showuser=8923 XiaNi]
 +
===Общая структура - блоки файла===
 +
<table width="391"  border="0" style="border: 1px solid black" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="259"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="116"><div align="center">Код блока</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Версия компилятора карты</td>
 +
    <td style="border: 1px solid black"><div align="center">1</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Описание порталов</td>
 +
    <td style="border: 1px solid black"><div align="center">4</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Источники света</td>
 +
    <td style="border: 1px solid black"><div align="center">6</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Короны источников света</td>
 +
    <td style="border: 1px solid black"><div align="center">7</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Объекты</td>
 +
    <td style="border: 1px solid black"><div align="center">3</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Текстуры</td>
 +
    <td style="border: 1px solid black"><div align="center">2</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Секторы</td>
 +
    <td style="border: 1px solid black"><div align="center">8</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
 
 +
 
 +
=== Версия компилятора карты (блок для всех карт одинаковый) ===
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">1</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да) </td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">4</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Номер версии (для всех одинаковый) </td>
 +
    <td style="border: 1px solid black"><div align="center">13</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
 
 +
 
 +
=== Описание порталов  (блок для всех карт одинаковый и данных не содержит) ===
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">4</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да) </td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
 
 +
 
 +
=== Источники света ===
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">6</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да) </td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Источник свет </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">(108*х)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
==== Источник света ====
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="113"><div align="center">Смещение</div></td>
 +
    <td style="border: 1px solid black" width="106"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Тип источника света (встречались только 1 или 2) </td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">(встречались только 1 или 3)</td>
 +
    <td style="border: 1px solid black"><div align="center">4</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style3">Цвет Красный </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style3">8</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style3">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style5">Цвет Зелёный </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style5">12</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style5">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style2">Цвет Синий </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style2">16</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style2">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center"><p>20</p></div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">24</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">28</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">32</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">36</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">40</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">44</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">48</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">52</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Координата X</td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">56</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Координата Z</td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">60</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Координата Y</td>
 +
    <td style="border: 1px solid black"><div align="center">64</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Угол поворота по X</td>
 +
    <td style="border: 1px solid black"><div align="center">68</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style12">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Угол поворота по Z</td>
 +
    <td style="border: 1px solid black"><div align="center">72</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style12">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Угол поворота по Y</td>
 +
    <td style="border: 1px solid black"><div align="center">76</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style12">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">80</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">84</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">88</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">92</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">96</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">100</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">&nbsp;</td>
 +
    <td style="border: 1px solid black"><div align="center">104</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Single(4)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
 
 +
 
 +
=== Короны источников света ===
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">7</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да)</td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Корона источника света </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">(18*х)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
==== Корона источника света ====
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="113"><div align="center">Смещение</div></td>
 +
    <td style="border: 1px solid black" width="106"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style7">Координата X </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style7">Координата Z </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">4</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><span class="style7">Координата Y </span></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">8</div></td>
 +
    <td style="border: 1px solid black"><div align="center" class="style7">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">???</td>
 +
    <td style="border: 1px solid black"><div align="center">12</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Single(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">???</td>
 +
    <td style="border: 1px solid black"><div align="center">16</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
 
 +
 
 +
=== Текстуры ===
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">2</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да)</td>
 +
    <td style="border: 1px solid black"><div align="center">0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Кол-во текстур </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Текстуры</td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
==== Текстура ====
 +
<table width="586"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="345"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="123"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Шейдер (с путём)</td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">String</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Разделитель</td>
 +
    <td style="border: 1px solid black"><div align="center">&quot;/&quot;</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Byte(1)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Текстура (с путём)</td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">String</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black" colspan="3"><div align="center">Начало необязательной части </div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Разделитель</td>
 +
    <td style="border: 1px solid black"><div align="center">&quot;,&quot;</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Byte(1)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Лайтмап 1 </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">String</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Разделитель</td>
 +
    <td style="border: 1px solid black"><div align="center">&quot;,&quot;</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Byte(1)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black"><p>Лайтмап 2</p>    </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">String</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black" colspan="3"><div align="center">Конец необязательной части </div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Нулевой символ - конец названия текстуры</td>
 +
    <td style="border: 1px solid black"><div align="center">#0</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Byte(1)</div></td>
 +
  </tr>
 +
</table>
 +
 
 +
<small> * Примечание: нулевая текстура указана без имени файла и состоит только из символа #0. Так что после поля "кол-во текстур" сразу попадается символ #0, не пугайтесь :) </small>
 +
 
 +
 
 +
 
 +
=== Секторы ===
 +
<table width="582"  border="0" style="border: 1px solid black">
 +
  <tr>
 +
    <td style="border: 1px solid black" width="344"><div align="center"></div></td>
 +
    <td style="border: 1px solid black" width="96"><div align="center">Значение</div></td>
 +
    <td style="border: 1px solid black" width="120"><div align="center">Размер</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Код блока</td>
 +
    <td style="border: 1px solid black"><div align="center">8</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Сжатие данных (0 - нет, 32768 - да)</td>
 +
    <td style="border: 1px solid black"><div align="center">32768</div></td>
 +
    <td style="border: 1px solid black"><div align="center">Word(2)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Размер несжатого блока (в байтах) </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">DWord(4)</div></td>
 +
  </tr>
 +
  <tr>
 +
    <td style="border: 1px solid black">Описание секторов </td>
 +
    <td style="border: 1px solid black"><div align="center">-</div></td>
 +
    <td style="border: 1px solid black"><div align="center">????</div></td>
 +
  </tr>
 +
</table>
 +
[[Категория:Форматы файлов]]

Текущая версия на 17:42, 26 июня 2020

Формат разобрал Haper

Описание файла "level"

Cодержит в себе всё самое основное. Тут хранятся источники света, описания объектов, имена соответствующих им текстур и шейдеров, порталы и секторы.


Версии формата level

Существует программа для разбора и сбора этого файла - unp level, автор - XiaNi

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

Код блока
Версия компилятора карты
1
Описание порталов
4
Источники света
6
Короны источников света
7
Объекты
3
Текстуры
2
Секторы
8


Версия компилятора карты (блок для всех карт одинаковый)

Значение
Размер
Код блока
1
Word(2)
Сжатие данных (0 - нет, 32768 - да)
0
Word(2)
Размер блока (в байтах)
4
DWord(4)
Номер версии (для всех одинаковый)
13
DWord(4)


Описание порталов (блок для всех карт одинаковый и данных не содержит)

Значение
Размер
Код блока
4
Word(2)
Сжатие данных (0 - нет, 32768 - да)
0
Word(2)
Размер блока (в байтах)
0
DWord(4)


Источники света

Значение
Размер
Код блока
6
Word(2)
Сжатие данных (0 - нет, 32768 - да)
0
Word(2)
Размер блока (в байтах)
-
DWord(4)
Источник свет
-
(108*х)

Источник света

Смещение
Размер
Тип источника света (встречались только 1 или 2)
0
DWord(4)
(встречались только 1 или 3)
4
DWord(4)
Цвет Красный
8
Single(4)
Цвет Зелёный
12
Single(4)
Цвет Синий
16
Single(4)
 

20

DWord(4)
 
24
DWord(4)
 
28
DWord(4)
 
32
DWord(4)
 
36
DWord(4)
 
40
DWord(4)
 
44
DWord(4)
 
48
DWord(4)
 
52
DWord(4)
Координата X
56
Single(4)
Координата Z
60
Single(4)
Координата Y
64
Single(4)
Угол поворота по X
68
Single(4)
Угол поворота по Z
72
Single(4)
Угол поворота по Y
76
Single(4)
 
80
DWord(4)
 
84
DWord(4)
 
88
Single(4)
 
92
Single(4)
 
96
Single(4)
 
100
DWord(4)
 
104
Single(4)


Короны источников света

Значение
Размер
Код блока
7
Word(2)
Сжатие данных (0 - нет, 32768 - да)
0
Word(2)
Размер блока (в байтах)
-
DWord(4)
Корона источника света
-
(18*х)

Корона источника света

Смещение
Размер
Координата X
0
Single(4)
Координата Z
4
Single(4)
Координата Y
8
Single(4)
???
12
Single(4)
???
16
Word(2)


Текстуры

Значение
Размер
Код блока
2
Word(2)
Сжатие данных (0 - нет, 32768 - да)
0
Word(2)
Размер блока (в байтах)
-
DWord(4)
Кол-во текстур
-
DWord(4)
Текстуры
-
-

Текстура

Значение
Размер
Шейдер (с путём)
-
String
Разделитель
"/"
Byte(1)
Текстура (с путём)
-
String
Начало необязательной части
Разделитель
","
Byte(1)
Лайтмап 1
-
String
Разделитель
","
Byte(1)

Лайтмап 2

-
String
Конец необязательной части
Нулевой символ - конец названия текстуры
#0
Byte(1)

* Примечание: нулевая текстура указана без имени файла и состоит только из символа #0. Так что после поля "кол-во текстур" сразу попадается символ #0, не пугайтесь :)


Секторы

Значение
Размер
Код блока
8
Word(2)
Сжатие данных (0 - нет, 32768 - да)
32768
Word(2)
Размер блока (в байтах)
-
DWord(4)
Размер несжатого блока (в байтах)
-
DWord(4)
Описание секторов
-
????
Другие места
LANGUAGE