Прототипы предметов хранятся в текстовом виде в файлах в
директории Server/Proto/Items/.
Редактируются с помощью редактора объектов.
Файл items.lst содержит список файлов, содержащих данные о
прототипах предметов. В составе SDK это файлы:
ammo.fopro
armor.fopro
container.fopro
door.fopro
drug.fopro
generic.fopro
grid.fopro
key.fopro
misc.fopro
wall.fopro
weapon.fopro
Каждый файл создан для хранения своего типа объектов, форматы
прототипов каждого из типов объектов имеет различия.
Общие поля:
Pid |
Номер прототипа (должен быть уникальным для всех типов
объектов) |
Type |
Определяет тип объекта |
PicMapName |
Изображение на земле |
PicInvName |
Изображение в инвентаре |
Flags |
Флаги объекта |
SoundId |
Идентификатор звука |
Material |
Тип материала |
Примечание по поводу PicMapName и
PicInvName:
В настоящий момент (ревизия 396) движок использует библиотеку DevIL
( http://openil.sourceforge.net/
),
которая позволяет использовать графические файлы следующих
форматов:
.bmp, .cut, .dds, .doom, .hdr, .gif, .ico, .jpg,
.lbm, .mdl, .pal, .pbm, .pcd, .pcx, .pgm, .pic, .png, .ppm, .psd,
.psp, .raw, .sgi, .tga
Исключения:
.jp2, .exr, .mng, .tif, .lcms, .utx, .wdp
( http://openil.sourceforge.net/about.php
)
Кроме того движок так же может использовать графику таких игр
как:
- Fallout 1/2 (.frm)
- Fallout Tactics (.spr, .til, .zar)
- Arcanum (.art)
- Boldur's Gate, Icewind Dale, Planescape Torment (.mos,
.bam)
Так же можно использовать текстовый формат fofrm, данный вормат может к
примеру объединить несколько различных графических файлов в
анимацию или добавить изображению сдвиги, если исходный формат
файла этого не позволяет или его редактирование является
трудоемким.
Имена файлов могут содержать дополнительные параметры (все
параметры можно комбинировать):
Формат SPR:
- Для загрузки определенной анимации из SPR Файлов можно указать
ее имя после знака $ в имени файла, например:
Mutant$CrouchAttackClubSwing.spr
Без указания берется первая анимация
- Влияние на цвета:
Что бы сделать смещение по цвету укажите в параметрах имени файла
('$') необходимые значения.
Формат: fileName$[index,r,g,b]animName.spr (смещений [...] может
быть сколько угодно)
где index - номер части тела (0 - разное, 1 - кожа, 2 - волосы, 3 -
броня, -1 - все слои);
r,g,b - смещения по цвету для каждой компоненты, могут быть
отрицательными.
Пример: someSprite$[2,50,-30,-20]anim1.spr - загрузить спрайт
someSprite.spr, c анимацией anim1 и смещением по цвету волос на RGB
(50,-30,-20).
Формат ART:
- Выбор палитры: номер палитры указывается после знака $
Пример: dfmbnsba$1.art
- Включение прозрачности элементов палитры (alpha = max(R, G,
B)): $t
- Зеркальное отражение: $v - вертикальное отражение, $h -
горизонтальное отражение
- fx[-y] - указывает номера загружаемых кадров(-а) и их
направление, пример:
anim1$f3-0.art - значит будут загружено 4 кадра 3, 2, 1, 0
Формат BAM:
- Для формата BAM есть возможность указания номера
воспроизводимого цикла и кадра - для указания номера цикла в
параметрах имени файла ('$') укажите его индекс, а для указания
кадра добавьте прочерк и индекс кадра. Примеры:
fileName$5.bam - загрузить fileName.bam с кадрами под циклом номер
5;
fileName$1-4.bam - загрузить fileName.bam с кадром номер 4 под
циклом номер 1;
fileName.bam - загрузить fileName.bam с кадрами под циклом номер
0.
Примечание:
Если вы используете параметры в именах графических файлов, вам так
же необходимо добавить их в файл HashNames.lst находящийся в папке
Data клиента.
Формат записи: [любое число] [имя файла] [конец строки].
Например:
0 art\scenery\BrazureFire$t.ART
0 art\scenery\BrazureFire$t3.ART