Diablo 2: Моддинг » Создание новых монстров с новым токеном, основы анимации
Анимация персонажей, монстров и НПС находится в файлах формата .dcc. Вся анимация монстров находится в папке Monsters. Каждая папка имеет название, которое соответствует названию Токена или Кода монстра (этот код можно найти в файле monstats.txt в колонке CODE). Например, токен фаллена это «fa». Внутри папки с именем токена, лежат еще папки с названиями части тел (hd – head, tr – torso, lh – left hand, rh – right hand, ra – right arm, la – left arm, lg – legs, sh – shield, s1 – first overlay). Если вы загляните, например, в папку таких монстров как Corrupted Rogues то увидите что их «ra» и «la» анимации содержат различные типы оружия. Таким образом, игра генерирует разновидности монстров, с разным оружием, доспехами шлемами и тд. Но не все монстры состоят из разных частей, некоторые состоят из только одной. Поэтому, с этого момента мы будем разделять два понятия: много-компонентные (multi-part) и одно-компонентные (one-part). Также в папке монстра есть папка cof, где лежат контрольные файлы анимации. Очень важно указывать правильное название файлов, потому что от этого зависит все. Рассмотрим пример опять таки на Фалленах.
Fatrlita1hth.dcc – это название одного из файлов анимации. За что же он отвечает? Если разбить название на части мы увидим: Fa – это название токена Фаллена, tr – указывает что это Тело (Torso), lit – значит Легкий вариант брони (light), a1 – указывает тип анимации (Атака 1), hth – указывает класс оружия (hth – hand to hand, то есть ручной бой). Что мы должны помнить всегда? Что, создавая новых монстров мы будем использовать только часть тела “tr”, только класс брони “lit” и только класс оружия “hth”. Потому что на самом деле не важно, что у нашего нового монстра будет в руках топор или меч, мы сейчас говорим о коде игры, а не о то, что изображено на анимации. Теперь пару слов про .cof файлы. Это контрольные файлы, которые указывают игре, сколько кадров есть в .dcc файлах, сколько направлений у юнита, какой кадр является действием и тд. Название .cof файлов должно состоять из токена монстра, типа анимации и класса оружия (FAA1HTH.cof).
В Diablo 2, монстры имеют 8 направлений. Направления нужно указывать только в таком порядке как на картинке. В каждом направлении должно быть одинаковое количество кадров.
Подготовка .gif анимации и создание .dcc анимации
Допустим у вас уже есть кадры из которых можно создать гифку подходящую для конвертации в Д2. Но этого мало. Нужно еще обработать эти кадры и подготовить гифку для конвертации в .dcc. Для этого вам понадобиться Gamani Gif Movie Gear. Первое что надо это сделать фон прозрачным. Нажимаем Frame > Global Properties ставим галочку возле слова Transparent и назначаем фоновый цвет прозрачным. Далее внизу надо установить Restore to background. Переходим на следующую вкладку Animation и нажимаем на кнопку возле GIF Bk Color – это цвет фона гифки. Здесь необходимо назначить тот же цвет, который мы сделали прозрачным. Теперь нажмите на кнопку Edit возле слов Global Palette и посмотрите на коды красок – здесь наша задача избавиться от красок с кодом 0,1,2 и 3, потому что игра их не читает. Все просто – если увидите где-то 0,1,2 или 3, просто поменяйте его на 4. От этого цвет не изменится, но будет читаться игрой. И последний штрих, надо продублировать первый кадр. Просто скопируйте первый кадр и вставьте его перед вторым (правая кнопка мышки > Paste before). Если все сделали, нажимаем File > Save Gif animation as…, укажите имя, типа файла .Gif и стиль Animation.
Когда гифка готова, можно конвертировать ее в .dcc. Для этого нам надо программку CV5. Откройте программу, найдите свою гифку, установите Frame from = 1, и нажимайте Save. Выберите тип файла .dcc и укажите имя. Перед вами откроется DCC save settings.
Сверху указываем, что у нашего монстра 8 направлений, а внизу надо поставить палитру Units. А теперь самое сложное и самое главное – это могучие Офсеты. Офсеты нужно вводить со знаком минус «-». Картинка с боку позволяет нам подобрать правильные офсеты на глаз. Чтобы понять какие-именно офсеты вводить вот несколько советов:
С помощью CV5 откройте .dcc файлы монстров из Д2 и пересохраните их как .dcc. Вы увидите, как расположены офсеты у стандартных мобов. Не смотрите на числа – смотрите на место, где линии пересекаются.
Почти всегда место пересечения линий – это возле ног юнита.
Включите 3д мышление – моб крутится вокруг одной точки. Эта точка и есть ваша цель. Эта точка, где у Паладина стоит Аура. Вы можете назначить своему мобу Ауру в игре, чтобы сразу увидеть правильно ли вы ввели офсеты. После нескольких попыток вы сможете вводить более-менее правильные офсеты.
Создание .cof файлов
Для создания .cof файла нам понадобится Сof Editor. У этой программы нет интерфейса поэтому придется работать в DOS’е. Для начала откроем файл new.cof.ini и разберемся с функциями:
- dcc_file = здесь нужно указать имя .dcc файла из которого мы делаем .cof. Файл должен лежать в папке программы
- cof_token = это Токен или Код анимации (мы уже обсуждали это выше)
- cof_mode = тип анимации (ходьба, бег и тд.)
- cof_class = класс оружия (у нас будет всегда HTH)
- nb_layers = количество слоев анимации (у нас будет всегда 1)
- xmin = -512, xmax = 512, ymin = -512, ymax = 512 – всегда должно быть так
- trigger_value = является ли данный тип анимации действием (атака или каст). 0=нет, 1=да
- trigger_frame = кадр, в котором происходит действие (вводим номер кадра)
- layer_order = порядок слоев. У нас всегда = 01
И дальше все оставляем как есть:
- layer_composit_01 = 01
- transparency_01 = NO
- layer_class_01 = hth
Теперь открываем DOS и прописываем путь к программе. Когда оказались в папке с файлом .exe, прописываем команду cofedit.exe –generate new.cof.ini
Таким образом, вы создали файл .cof. Перенесите его в папку «cof» своего нового монстра.
Работа с файлом Animdata.d2
Файл Animdata.d2 хранит в себе всю информацию об анимации в игре. Сам файл находится в папке data\global. Для его модификации нам надо скачать программку Animdata_edit_v2.1. Скачайте и скопируйте содержимое в любую папку. Запустите файл Extract.bat. У вас появится файл AnimData.txt. Этот файл нам и надо модифицировать. В этом гайде мы учимся создавать новых монстров с новыми токенами, поэтому мы не будем модифицировать уже существующую информацию, а будем добавлять новую. Теперь рассмотрим, что означают названия колонок:
CofName – надо указать, как называется ваш Cof файл.
FramesPerDirection – количество кадров в одном направлении.
AnimationSpeed – скорость анимации.
FrameData000-FrameData143 – это инфомация о кадрах. Помните мы говорили про кадр, в котором происходит действие? Если данный Cof файл является действием (атака или каст), нужно указать в каком кадре происходит действие. Если при создании Cof файла вы указали что действие происходит, например, в кадре 8, то здесь найдите колонку FrameData008 и поставьте там «1». Все остальное должно быть «0». Нельзя ставить единицы в файлах, где действие не происходит, и нельзя ставить единицы в двух кадрах. Если закончили, сохраняйте файл, и запустите файл Pack.bat в папке с программой. Теперь найдите файл AnimData.d2 в той же папке и скопируйте его с заменой в data\global. Все, вы создали новый токен для монстра.
Есть еще одна полезная программка COFTXT, которая извлекает информацию из ваших Cof файлов и генерирует строки для файла AnimData.txt. Я ней не особо пользуюсь, но полезно ее иметь при себе и знать, как она работает.
Создание нового монстра в monstats.txt и monstats2.txt
Откроем monstats.txt и создадим новую строку внизу. Всегда лучше копировать какую-нибудь строку из уже готовых и вставить внизу. Здесь главное указать в колонке Code токен вашего нового монстра. Функции остальных строк можно найти в полном описании файла monstats.txt, но пару советов все же дам.
- Название в колонке MonStatsEx всегда должно соответствовать названию в файле monstats2.txt;
- Не забудьте выбрать подходящий AI для своего монстра, здесь можно много эксперементировать;
- В колонке enabled всегда ставьте 1;
Теперь откройте monstats2.txt. Id должно соответствовать имени в колонке MonStatsEx в файле monstats.txt. Скопируйте первую строку и вставьте внизу как новую. Нас интересуют только следующие колонки:
MeleeRng – дистанция, из которой монстр сможет вас атаковать;
TRv = «lit» (остальные пустые)
TR = 1 (остальные пустые)
TotalPieces =1
Колонки mDT mNU mWL mGH mA1 mA2 mBL mSC mS1 mS2 mS3 mS4 mDD mKB mSQ mRN – это типы анимации вашего монстра. Я же не знаю, сколько их у вас будет. Если например, у вашего монстра есть анимация ходьбы, то поставьте «1» в колонке mWL. И так далее.
Restore – всегда «1»!!! (О, Боже, сколько проблем мне доставила эта колонка).
isSel – позволяет навести на монстра мышкой.
corpseSel – позволяет навести на труп мышкой.
isAtt – позволяет атаковать.
Revive – позволяет оживить.
Если все готово, откройте файл levels.txt, найдите строку Act 1 - Wilderness 1, найдите колонки mon1-25 и вставьте здесь имя своего нового монстра. Он должен появиться на Кровавом Болоте. Пойдите, посмотрите что получилось.
P.S.
В данном архиве вы сможете найти кадры анимации юнита из игры Златогорье 2. Вы можете испольовать их чтобы потренироваться использовать советы в гайде на практике.
Diablo 2: Моддинг » Список статей
Здесь находятся актуальные руководства по созданию своих модов для Diablo 2, написанные в 2015-2018 годах человеком, который сам увлекается моддингом и делает свой мод.
Гайды
- Создание Модов для Diablo 2, Часть 1
- Создание Модов для Diablo 2, Часть 2
- Как призывать всех големов Некроманта одновременно
Статьи
- Лимиты TXT-файлов
- Полное описание файла Monstats.txt
- Полное описание Weapons.txt
- Полное описание Armor.txt
- Полное описание Misc.txt
- Создание новых монстров с новым токеном, основы анимации
- Основы редактирования навыков
- Создание новых пассивных навыков
- Продвинутая информация о формате .DT1
Руководства-рисунки
Автор: Zelibobo
Diablo 2: Моддинг » Как призывать всех големов Некроманта одновременно
Примечание: о том, редактировать файлы, читайте в первом гайде
Сначала откройте pettype.txt, скопируйте целую строку golem и поместите ее внизу списка как три новых строки, и переименуйте их в bloodgolem, irongolem и firegolem. Теперь, в той строке, которую вы копировали (та что под «Валкирией»), переименуйте слово golem в столбце “pettype” на claygolem, «idx» оставьте как есть. Теперь, найдите столбец “mclass1” и впишите число 289, а в столбце “micon1” впишите earthgolumicon. После этого удалите все содержимое других столбцов mclass и micon.
Теперь, перейдем к нашим новым строкам. В строке bloodgolem измените idx на 20. В столбце baseicon измените на bloodgolumicon. Теперь, найдите столбец “mclass1” и впишите число 290, а в столбце “micon1” впишите bloodgolumicon. После этого удалите все содержимое других столбцов mclass и micon.
В строке irongolem измените idx на 21. В столбце baseicon измените на metalgolumicon. Теперь, найдите столбец “mclass1” и впишите число 291, а в столбце “micon1” впишите metalgolumicon. После этого удалите все содержимое других столбцов mclass и micon.
В строке firegolem измените idx на 22. В столбце baseicon измените на firegolumicon. Теперь, найдите столбец “mclass1” и впишите число 292, а в столбце “micon1” впишите firegolumicon. После этого удалите все содержимое других столбцов mclass и micon.
Если вы хотите изменить еще и имена големов в игре, вам надо заменить столбец name. Там указаны коды-строки из файла strings.tbl. То есть впишите какоето слово (например «blood» для Кровавого голема) и потом внесите код blood в strings.tbl и в описании напишите Blood Golem или что хотите.
Сохраните Pettype.txt и откройте Skills.txt.
- Найдите строку clay golem (№77) и в столбце Pettype впишите claygolem.
- Найдите строку blood golem (№87) и в столбце Pettype впишите bloodgolem.
- Найдите строку iron golem (№92) и в столбце Pettype впишите irongolem.
- Найдите строку fire golem (№96) и в столбце Pettype впишите firegolem.
- Сохраните Skills.txt и закройте редактор.
А теперь идите, призывайте свою армию Големов и надерите задницу Диабло!
Diablo 2: Моддинг » Создание новых пассивных навыков
Нам понадобятся следующие файлы:
Skills.txt
Skilldesc.txt
States.txt
String.tbl
Сначала надо создать сам навык. Для этого урока мы создадим Паладину навык, который будет давать ему «crushing blow». Назовем этот навык просто - Crush.
Открываем skills.txt, ищем строку 147 (навык «Iron Skin»), копируем целую строку, и вставляем как новую в самом низу файла.
Изменяем поля skill, skilldesc и passivestate на что хотите, в нашем случае - Crush. Очень важно помнить, что то у вас записано в этих полях должно соответствовать и в других файлах – код в поле skilldesc должен соответствовать коду в файле skilldesc.txt, а поле passivestate должно соответствовать коду в файле states.txt.
Измените Id на следующий номер по списку, а в поле charclass укажите, кто будет использовать скил.
Коды персонажей:
ama -> Amazon
ass -> Assassin
bar -> Barbarian
dru -> Druid
nec -> Necromancer
pal -> Paladin
sor -> Sorceress
Идем дальше к полю passivestat1, где мы указываем, на что именно влияет навык. Эти коды находятся в файле Properties.txt в колонке stat1, и они отличаются от кодов, которые мы используем для статов в вещах. Колонки stat отсылаются на itemstatcost.txt, и для некоторых бонусов, напиример «+ ко всем резистам (res-all)» требуется больше чем один пассивный passivestat. Если взглянуть на навык Варвара Natural Resistance, который дает бонусы ко всем резистам, мы увидим, что у него заняты четыре из пяти возможный слотов passivestat, и у каждого стата применяестя одинаковый расчет (более детально дальше).
passivestat1 -> poisonresist
passivecalc1 -> dm12
passivestat2 -> fireresist
passivecalc2 -> dm12
passivestat3 -> coldresist
passivecalc3 -> dm12
passivestat4 -> lightresist
passivecalc4 -> dm12
Итак, здесь мы пропишем item_crushingblow
Далее, в колонке passivecalc1 нам надо указать, как бонус будет рассчитываться с каждым уровнем.
Два самых простых способа, которых можно здесь использовать это ln12 и dm12. Есть и другие более сложные расчеты (их можно найти в файле skillcalc.txt), и вы можете создавать свои собственные формулы. Также здесь можно указывать просто число (например «20») если ваш навык имеет один уровень (как у меня в моде).
Когда вы используете расчет ln12, то в колонке param1 вы задаете начальный бонус на первом уровне навыка, а в param2 число на которое будет повышаться бонус на каждом уровне. То есть, одинаковый бонус на каждом уровне. Это выглядит так:
lv 1 - 10% Crushing Blow
lv 2 - 12% Crushing Blow
lv 3 - 14% Crushing Blow
Когда вы используете расчет « dm12 », то в колонке param1 вы задаете начальный бонус на первом уровне, а в param2 максимальное число бонуса, к которому навык может дойти. При таком расчете на первых уровнях бонусы будут большие, а потому немного будут уменьшаться.
lv 1 - 10% Crushing Blow
lv 2 - 18% Crushing Blow
lv 3 - 22% Crushing Blow
lv 4 - 23% Crushing Blow
Далее, идем к колонке reqlevel, и указываем требования уровня персонажа для использования навыка. Рядом, колонка maxlvl указывает на максимальный уровень навыка.
Теперь ищем колонку Param1, о которой я вспоминал раньше, и ставим число, которое желаем назначить начальным бонусом навыка. Param1 Description просто поле для комментариев. В колонке Param2 ставим число, на которое повышается наш навык (если мы используем ln12), или максимальное число к которому навык моет дойти (если мы используем dm12).
Мы закончили с skills.txt, сохраняем и закрываем.
Теперь нам надо сделать стэйт («state»).
Открываем States.txt, просто добавляем внизу новую строку и в поле state укажите название которые вы написали в поле passivestate в файле skills.txt. У меня это Crush. Не забудьте поставить «0» в конце, в колонке Eol.
Сохраняем и выходим.
Открываем skilldesc.txt.
Копируем строку Ironskin и вставляем внизу, переименовываем на то, что вы указали в поле skilldesc в файле skills.txt. У меня это Crush.
Колонка «Skillpage» решает, на какой странице навыков будет находиться навык (1, 2 или 3). Счет идет снизу, то есть нижняя страница это первая.
Колонка Skillrow решает, в каком ряду будет навык. Всего есть 6 рядов.
Далее, Skillcolumn решает в какой колонке будет навык: в правой (1), по центру (2), или в левой (3).
ListRow не имеет значения для пасивок, потому что мы их не можем выбрать в панели быстрого выбора навыков.
IconCel это число картинки для навыка. Можно использовать классические иконки, а можно и добавлять свои с помощью DC6 Creator.
Четыре клонки Str name, Str short, str long и str alt это описания навыков. Здесь нужно ввести коды с учитыванием последнего числа (то есть если в последнем навыке стоит Skillname281, мы пишем Skillname282). И так для всех четырех колонок.
Str name это само название навыка. Str short это краткое описание навыка, когда мы наводим на него в быстрой панели. Str long это длинное описание навыка в дереве. Str alt это название навыка на экране персонажа. Помните, что здесь мы вводим только коды, а сам текст будем вводить позже в .tbl файлах.
Двигаемся дальше, к колонке descline1. Здесь надо указать код, как именно игра будет отображать текстовую информацию. Этих кодов всего 75! В следующих гайдах я расскажу про них более детально. Пока поставьте здесь 2.
В ячейке desctextb1 мы пишем код-строку символа, который игра показывает после числа. Здесь пишем StrSkill23 – этот код выводит в игре символ процентов «%».
В ячейке desctexta1 мы пишем код-строку характеристики (я создам свою, но можно использовать и уже существующие). Я напишу здесь «crush», чтобы потом добавить эту код-строку в .tbl файл.
В ячейке desccalca1 пишем то же что и в ячейке Passivecalc1 в skills.txt.
Текст, который выводится в игре:
+25% Crushing blow
+25 | % | Crushing blow |
Формула в desccalca1 | «StrSkill23» код в desctextb1 | «Crush» код в desctexta1 |
Сохраняем и выходим.
Теперь время заняться кодами-строками. Откройте string.tbl и добавьте следующие коды-сроки и их описания.
Код | Описание |
str name | Название вашего навыка |
str short | Краткое описание вашего навыка |
str long | Длинное описание вашего навыка |
str alt | Название вашего навыка |
Crush (код из desctexta1) | Crushing blow (с пробелом после слова) |
Вот что получилось у меня в результате:
Помните, что у всех персонажей должно быть одинаковое количество навыков, иначе будет работать только тот у которого наибольше.
Архив с готовыми файлами Skills.txt, Skilldesc.txt, States.txt, String.tbl из данного руководства.
Diablo 2: Моддинг » Создание Модов для Diablo 2, Часть 1
Привет. Меня зовут JetaMan и в этой статье я попытаюсь рассказать вам про основные программы, которые используются в создании модов для Diablo 2. Нормальных статей на эту тему нет на русском языке, а те, что есть уже давно не актуальны. Это мой первый гайд поэтому он будет постоянно редактироваться, и будет добавляться новая информация. Итак начнем.
Создание Модов для Diablo 2
Часть 1
В прошлом, для того чтобы внести изменения в игру модмейкерам приходилось извлекать файлы из архивов, изменять их по своему усмотрению, а потом запихать снова в архив. Потом умные люди придумали команды –direct –txt, с помощью которых игра читала файлы не с архива, а с самих txt файлов в папке с игрой. Но это тоже было не очень удобно, так как не все знали, где и как правильно их прописывать. Сегодня я вам расскажу, как легко начать создавать мод, без выше перечислимых сложностей.
D2SE Modmanager v2.2.0
Для начала скачайте программу D2SE Modmanager v2.2.0. Это наш основной инструмент, через который мы получаем доступ к оригинальному Diablo 2, чужим модам и к своему моду одновременно. Я думаю уже многие слышали про эту программу по этому не буду рассказывать как она работает (если не знаете – вам сюда). Скачиваем программу и устанавливаем. Далее переходим по этой ссылке и скачиваем архив. В архиве есть папка под названием “MyMod”. Эту папку кидаем в папку MODS, в каталоге с игрой. Что в папке? Это плагин, который работает, так же как и остальные моды в D2SE Modmanager. Это чистые, не измененные .txt и .tbl файлы, которые находятся в папке DATA\Global\Excel. Когда вы запустите D2SE Modmanager и увидите синюю иконку “MyMod” это означает что вы все сделали правильно.
В правом нижнем угле вы видите две строчки:
Это как раз и есть те самые команды –direct –txt но уже встроены в плагин. Первая команда –direct позволяет сначала считывать информацию с папки DATA а потом уже с архивов .mpq.
Вторя команда создает .bin файлы из .txt файлов при запуске игры.
Чтобы запустить плагин нажмите Start Plugin в правом верхнем углу.
Вот и все. Вы можете спокойно изменять .txt и .tbl файлы и сразу видеть изменения в игре.
Редактор .txt файлов
Итак, мы получили возможность работать с .txt файлами. Здесь хранятся наиболее редактируемые данные игры. Ни в коем случае не открывайте эти файлы в блокноте, потому что вы рискуете повредить информацию. Существует немало разных программ, которые вы можете использовать для работы с .txt файлами. Я расскажу несколько слов о той программе, которую использую я, а ниже перейдя по ссылке, вы можете посмотреть на другие программы и выбрать, что вам нравится больше.
Я использую программу AFJ Sheet Edit 0.61b.
Преимущества:
- все .txt файлы в одном у нас в одном окне;
- есть очень удобные функции «Зафиксировать первую строку» и «Зафиксировать первый столбец»;
- есть поиск если вам надо быстро найти конкретную ячейку среди большого количества текста;
- в опциях можно изменить размер ячеек, шрифта и сам шрифт;
- автоматически делает резервную копию ваших .txt файлов (регулируется в опциях);
Если когда вы открываете .txt файл все ячейки появляются с минимальным размером, просто в опциях поставьте «Resize Column On Load», и при запуске ячейки будут нормального размера.
Здесь вы можете ознакомиться с другими редакторами.
Запаковка/Распаковка файлов. Программы предназначены для работы с MPQ архивами
У нас уже имеются распакованные txt и .tbl файлы, но в .mpq архивах все еще содержатся файлы, которые могут нам понадобится в работе, например файлы карт, тайлсэтов, анимация, звуковые эффекты и тд. Лично я использовал MPQView, но опять-таки вы можете выбрать себе по вкусу любую другу. Для того чтобы программа смогла найти и распаковать файлы вам надо иметь List File или другими словами Data File, который указывает где лежат нужные нам файлы. Сначала запустите программу, нажмите Open Data File и выберите Data File который вы скачали, после этого нажмите Open Archive и выберите тот архив, который хотите распаковать.
Все Data File'ы и другие программы для распаковки mpq архивов – здесь.
Также к слову, в MPQView есть полезная фича в правом нижнем углу – это фильтр форматов файлов. Если вам нужно распаковать не все а некоторые конкретные файлы выберите формат который вам нужен и программа выдаст файлы только с этим форматом.
Редактирование строк (Strings)
Работая с .txt файлами вы можете обратить внимание, что очень часто там присутствует слово “strings” или сокращенно “str”. Это коды, которые передают информацию в .tbl файлы которые используются игрой для вывода текста. Здесь находятся тексты NPC, тексты квестов, названия уровней, предметов, название скилов и их описание, короче весь весь текст который мы видим в игре. Это надо помнить, когда вы работаете с .txt файлами. Тxt файлы не выводят текст в игре – это делают .tbl файлы, которые находятся в data\local\LNG\ENG\. Для работы я использую AFJ Table Edit 1.11u. Вы можете посмотреть на другие программы за этой ссылкой. Работа с .tbl файлами довольно проста и не требует больших усилий. В левом окошке расположены коды, а в правом – текст который они выдают. Нажмите «+» чтобы добавить код, «-» чтобы удалить код. Когда вы добавляете код, в большом окне вводите текст, который надо отобразить в игре.
На этом первая часть закончена. Работая с .TXT и .TBL файлами можно добиться огромных результатов. Даже великий Brother Laz, автор, по моему мнению, лучшего мода Median XL, почти все свои идеи воплотил именно так. Пожалуйста, пишите в комментариях, что бы вы хотели увидеть в последующих гайдах.
Diablo 2: Моддинг » Полное описание Weapons.txt
О том, что такое txt-файлы и как с ними работать читайте в первом и втором гайде по созданию своих модов для Diablo 2. Как не сложно понять из названия файла, Weapons.txt отвечает за все параметры и свойства оружия.
- Name: просто имя, не влияет ни на что
- Type: первый базовый тип (код из itemtypes.txt)
- Type2: второй базовый тип (код из itemtypes.txt)
- Code: трёхзначное слово/число, которое должно быть уникальное для каждого предмета
- Alternategfx: это код файла DCC предмета для анимации персонажа
- Namestr: это код для .tbl файла, в котором вы указываете название предмета в игре
- Version: 0=классика, 100=ЛОД
- Compactsave: 1=использовать, 0=нет. Это используется для получения меньшего размера сэйвфайла. Эта функция не будет сохранять статы на предмете, такие как количество, префиксы, суфиксы, урон, броню, прочность и тд. Это используется для предметов что не имеют статов, типа баночки, камни
- Rarity: 0=убрать этот предмет из стойки с броней. 1 и выше= частота выпадения предмета из стойки с броней. Хотя бы один предмет должен иметь здесь 1 или игра вылетит
- Spawnable: 1=продается в НПС; 0=не продается в НПС
- Mindam: минимальный урон одноручным оружием
- Maxdam: максимальный урон одноручным оружием
- 1or2handed: 1=да, 0=нет. Может ли Варвар носить одну или две такие вещи?
- 2handed: 1=это двуручное оружие; 0=это одноручное оружие;
- 2handmindam: минимальный урон двуручным оружием
- 2handmaxdam: максимальный урон двуручным оружием
- Minmisdam: минимальный урон метательным оружием
- Maxmisdam: максимальный урон метательным оружием
- Rangeadder: добавляет дополнительную дальность для мили атак
- Speed: позитивные числа=медленная скорость оружия; негативные числа= быстрая скорость оружия
- Strbonus: процент Силы который считается как Бонус к Урону
- Dexbonus: процент Ловкости который считается как Бонус к Урону
- Reqstr: необходимая сила для одевания предмета
- ReqDex: необходимая ловкость для одевания предмета
- Durability: базовая прочность (255 макс)
- Nodurability: 1=неуничтожимая; 0=использовать прочность
- Level: базовый уровень предмета
- Levelreq: необходимый уровень для одевания предмета
- Cost: базовая цена
- Gamble cost: не исползуется
- Magiclvl: дополнительный магический уровень когда находишь предмет (Пример: если поставить 10, то при гембле на 10 уровне вы можете получить предмет со статами 20 уровня)
- Autoprefix: номер группы из automagic.txt
- Openbetagfx: ничего
- Normcode: код нормального предмета
- Ubercode: код исключительного предмета
- Ultracode: код элитного предмета
- Wclass: класс одноручного оружия, стиль атаки (1hs, 1ht, hth и тд)
- 2handedwclass: класс двуручного оружия, стиль атаки
- Component: это означает какой слой анимации использовать из файла composit.txt чтобы показать предмет на персонаже
Часть брони | Номер |
Head | HD #00 |
Torso | TR #01 |
Legs | LG #02 |
RightArm | RA #03 |
LeftArm | LA #04 |
RightHand | RH #05 |
LeftHand | LH #06 |
Shield | SH #07 |
Special1 | S1 #08 |
Special2 | S2 #09 |
Special3 | S3 #10 |
Special4 | S4 #11 |
Special5 | S5 #12 |
Special6 | S6 #13 |
Special7 | S7 #14 |
Special8 | S8 #15 |
- Hit class: какой тип эффекта показывается/слышытся когда врага бьют этим оружием
- Invwidth: ширина в клетках инвентаря
- Invheight: высота в клетках инвентаря
- Stackable: 1-да, 0-нет. Может ли предмет иметь пачки
- Minstack: минимальное количество в пачке
- Maxstack: максимальное количество в пачке
- Spawnstack: количество когда рандомно выпадает
- Flippyfile: файл анимации когда предмет падает на землю
- Invfile: файл изображения предмета в инвентаре
- Uniqueinvfile: файл изображения уникльного предмета в инвентаре
- Setinvfile: файл изображения сэтового предмета в инвентаре
- Hasinv: 1=может иметь дырки, 0 не может иметь дырки (в файле itemtypes.txt нужно поставить хотя бы 1 в строках maxsock1/25/40)
- Gemsockets: максимальное количесто сокетов
- Gemapplytype: эффект камня 0=оружие; 1=броня, шлем; 2= щит
- Special: ничего
- Useable: 0=нельзя активировать правым щелчок; 1=можно
- Dropsound: звук предмета когда он падает
- Dropfxrame: количество кадров которое звук длится
- Usesound: звук когда используется предмет
- Unique: 1=всегда уникальный; 0=не всегда уникальный (используется квестовыми предметами)
- Transparent: неизвестно
- Transtbl: всегда 5
- Quivered: является ли предмет пачкой аммуниции 1=да, 0=нет
- Lightradius: не используется
- Belt: id из файла belts.txt (количество слотов баночек)
- Quest: ИД квеста (для квестовых вещей)
- Questdiffcheck: на какой сложности этот предмет есть квестовый
- Missiletype: какой снаряд выпустит оружие если вы его бросите (ИД из missiles.txt)
- Durwarning: иконка предупреждения когда предмет ломается
- Qntwarning: иконка предупреждения когда заканчивается аммуниция
- Gemoffset: неизвестно
- Bitfield: 1 для кожаных веще; 3 для металических
Функции продавцов
Везде вместо слова Vendors ставим имя продавца.
- Vendorsmin: минимальное количество данного предмета которое этот продавец может подать
- Vendorsmax: максимальное количество данного предмета которое этот продавец может подать
- Vendorsmagicmin: минимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagicmax: максимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagilvl: максимальный уровень магической вещи и статов
- Transform: изменение цвета предмета на анимации персонажа
- Invtrans: изменение цвета предмета в инвентаре
- Skipname: пропустить базовое имя
- Nightmareupgrade: код предмета который будет продаваться вместо этого на Кошмаре; (ххх=без изменений)
- HellUpgrade: код предмета который будет продаваться вместо этого на Аду; (ххх=без изменений)
- Nameable: 1=может быть персонализован; 0=не может
- PermstoreItem: всегда продавать у продавцов
Diablo 2 Resurrected: База знаний » Описание Armor.txt и Misc.txt
Diablo1.ru продолжает пополняться руководствами по созданию своих модификаций в Diablo 2. На этой неделе jetaman прислал две новых статьи, которые рассказывают про параметры файлов Armor.txt и Misc.txt. Первый файл отвечает за свойства и все параметры доспехов, а второй – за все предметы, кроме оружия и брони.
Оба файла имеют огромное количество параметров, и без хорошего описания просто не обойтись.
Читайте:
Также обновлена общая страница:
Улучшен внешний вид, добавлены ссылки на новые гайды и убрана устаревшая информация.
Diablo 2: Моддинг » Создание Модов для Diablo 2, Часть 2
В предыдущем гайде, мы узнали, как распаковать файлы из архивов .mpq. В этой части я расскажу, где какие файлы лежат и чем их редактировать. Часть этой информации уже была опубликована в одной теме, но я решил также написать про это здесь для удобства.
- d2char.mpq – архив файлов анимации персонажей классической версий (не LOD);
- d2data.mpq – архив, содержащий текстовые файлы, изображения предметов, анимацию скилов, анимацию монстров, объекты и карты, интерфейс и шрифты;
- d2music.mpq – архив с файлами музыки и рекламных заставок Blizzard;
- d2sfx.mpq – архив содержащий звуки спецэффектов;
- d2speech.mpq – архив с файлами озвучки диалогов;
- d2video.mpq – архив с файлами видео клипов;
- d2exp.mpq – архив, содержащий все файлы для дополнения LOD;
- D2XMUSIC – архив с файлами музыки LOD;
- d2xtalk.mpq – архив с файлами озвучки диалогов LOD;
- D2XVIDEO.MPQ – архив с файлами видео клипов LOD;
Далее речь пойдет о трёх наиболее обширных сферах моддинга, это редактирование изображений, анимации и карт. Эта статья будет дольше предыдущей, потому, что здесь есть много, о чем рассказать.
DC6 Creator
Програма для просмотра и создания файлов изображений в формате .dc6
Один из первых аспектов игры, которые люди начинают изменять – это предметы. Вернее изображения предметов. Это неверное самое легкое дело в создании мода. Я использую DC6 Creator для этого. Эта программа имеет удобный интерфейс и много хороших функций. Например:
Можно легко выбрать палитру для изображения (все изображения предметов должны быть в палитре “units”)
Можно устанавливать свои офсеты (местоположение изображения в окне);
А также эта программа может открыть и разбить на кадры файлы анимации .gif, что позволяет нам… внимание… создавать анимированные предметы инвентаря!!!
Недостаток это программы в том, что она не поддерживает массовую конвертацию изображений в .dc6. Но это не есть беда, потому что для массовой конвертации есть другая программа CellConv. У нее менее удобный интерфейс, потому как надо прописывать нужные нам параметры в .ini файле.
Анимация персонажей и монстров
Программы для просмотра и редактирования файлов анимации в формате .dcc
Просматривать и извлекать файлы анимации можно программами SixDice и CV5 (скачайте также аддон для CV5). Обе программы имеют плюсы и минусы. CV5 имеет очень много багов, и вылетает почти после каждого сохранения. SixDice имеет работает стабильнее, но у нее отсутствуют некоторые функции. Я лично работаю с CV5, а SixDice мне не нравится. В общем, через CV5 можно сохранить файл в формате .gif а для работы с .gif файлами есть отличная программа Gamani Gif Movie Gear.
Когда откроете CV5, вы увидите два окна: Верхнее – это панель для работы с анимацией, а нижняя это браузер по папкам. Также в верхней панели есть отдельный раздел «Аниматор», где расположены инструменты для работы с анимацией: можно выбирать из какого кадра начать сохранять файл, скорость просмотра анимации, «Играть» и «Сохранить».
Нижняя панель как я уже сказал это браузер. Он тоже делится на две части – слева вид папок, справа кадры анимации. Выберите файл анимации в формате .gif и вы увидите все его кадры. Затем нажмите «Save» в панели «Аниматор», в появившееся окне выберите формат файла для сохранения .dcc и нажмите «Сохранить». Перед вами появится новое окно, которое называется «DCC Save Settings». Другими словами здесь нам надо выставить офсеты для правильного отображения анимации. Офсеты нужно вводить со знаком минус «-». Картинка с боку позволяет нам подобрать правильные офсеты на глаз. Внизу в графе “Trasform to Palette” можно выбрать цветовую палитру для анимации. К слову, все монстры и персонажи должны быть в палитре “Units”.
Win_Ds1_Edit
Программа для просмотра и редактирования карт в формате .ds1
Установка
Для редактирования карт у нас имеется несколько программ, но я расскажу только об одной, по моему мнению, лучшей из всех, так как остальные уже устарели. Она называется win_ds1edit. Для полноценной и удобной работы нам надо скачать два архива – саму программу и GUI интерфейс для нее. Скачайте все и скиньте в одну папку. Запускается программа через ds1edit_loader.exe. Когда вы ее запустите вам скажут что программа не настроена и предложат настроить вручную. Нам нужно настроить загрузчик (loader) и редактор (editor). Если вы настройку пропустили, можно потом еще раз запустить через Options -> Configure Loader и Configure Editor. В окне Configure Editor вам нужно указать папки, где хранятся архивы .mpq (d2char.mpq, d2data.mpq, d2exp.mpq) а в графе Patch_D2 укажите путь на файл на Patch_D2.mpq вашего мода. Графа Mod_dir это путь к вашей папке с модом. Во вкладке Screen можно включить или выключить полный экран. И очень важно – в графе Depth установите 32, это глубина цвета. Если оставить как есть, картинка будет искажена. Также, в вкладке Misc поставьте галочку в графе Allow type 2 objects of higher acts – это позволит вам использовать объекты из высших актов (например из Пятого в Первом), потому что по умолчанию это запрещено.
Далее, нам нужно настроить Загрузчик (loader). Нажмите Options -> Configure Loader. В открывшемся окне вам нужно указать путь к файлу редактора.
Теперь нажмите Options -> Register Extension. Эта функция позволяет ассоциировать .ds1 файлы с этой программой и сразу открывать их в редакторе.
Работа с программой
Запуск
Запускать программу можно с файла .exe в папке или двойным нажатием на файл .ds1.
Добавить или Удалить файлы в списке
Вы можете использовать функцию File -> Add или перетащить файл в список вручную. Также ели в списке уже имеется одна карта, двойное нажатие на другой файл автоматически добавит второй файл в список к первому. Если несколько карт имеют одинаковое имя, откроется окно, где вам предложат выбор. Чтобы удалить карты из списка выделите файл или файлы, которые желаете удалить и нажмите File -> Remove.
Параметры редактора
Ели выберите View -> Show Parameters вы увидите список дополнительных параметров запуска для редактора.
- Resize – изменить размер карты; Работают числа 1-255 (желательно не использовать никакие другие способы измена размера, этот самый надёжный);
- Force DT1 – активация данного параметра заставляет редактор загружать .dt1 файлы из списка, который можно изменять нажав кнопку. Configure .dt1 List. Максимум файлов в списке – 32;
- Force Palette – активация данного параметра заставляет редактор использовать цветовую палитру из Акта указанного в ячейке ниже;
- Don’t check act – этот параметр позволяет редактору не проверять одинаковые ли номера Актов в самом файле .ds1 и в Lvltypes.txt;
- Auto-Detect LvlPrest Def – активация данного параметра заставляет редактор самостоятельно искать число LvlPrest Def, в файле LvlPrest.txt.
Список всех карт, которые Редактор может открыть находится в файле maplist.txt в папке с редактором. Чтобы добавить новые карты в список нажмите Settings -> Configure Loader и потом внизу увидите кнопки Add/Modify/Duplicate/Remove. Нажмите Add чтобы начать процесс добавления новой карты, Modify для изменения данных в уже существующем файле.
Нужно заполнить следующие поля:
- File: название файла целиком с расширением
- Name: Название файла которые вы хотите дать
- Path: путь к файлу
- LvlType Id: Номер Id вашей карты в файле Lvltypes.txt
- LvlPrest Def: Число LvlPrest Def вашей карты в файле LvlPrest.txt
- Comment: Чисто комментарий – не обязательно
Для запуска редактора нажмите File -> Run
Diablo 2: Моддинг » Полное описание Armor.txt
О том, что такое txt-файлы и как с ними работать читайте в первом и втором гайде по созданию своих модов для Diablo 2. Armor.txt отвечает за все параметры и свойства брони.
- Name: просто имя, не влияет ни на что
- Version: 0=классика, 100=ЛОД
- Compactsave: 1=использовать, 0=нет. Это используется для получения меньшего размера сэйвфайла. Эта функция не будет сохранять статы на предмете, такие как количество, префиксы, суфиксы, урон, броню, прочность и тд. Это используется для предметов что не имеют статов, типа баночки, камни
- Rarity: 0=убрать этот предмет из стойки с броней. 1 и выше= частота выпадения предмета из стойки с броней. Хотя бы один предмет должен иметь здесь 1 или игра вылетит
- Spawnable: 1=продается в НПС; 0=не продается в НПС
- Minac: минимальный класс брони который предмет может иметь
- Maxac: максимальный класс брони который предмет может иметь
- Speed: позитивные числа=медленная скорость ходьбы; негативные числа= быстрая скорость ходьбы
- Reqstr: необходимая сила для одевания предмета
- Levelreq: необходимый уровень для одевания предмета
- Block: вероятность блока в %
- Durability: базовая прочность (255 макс)
- Nodurability: 1=неуничтожимая; 0=использовать прочность
- Durwarning: количество прочности, когда появляется иконка предупреждения
- Cost: базовая цена
- Gamble cost: не исползуется
- Code: трёхзначное слово/число, которое должно быть уникальное для каждого предмета
- Namestr: это код для .tbl файла, в котором вы указываете название предмета в игре
- Normcode: код нормального предмета
- Ubercode: код исключительного предмета
- Ultracode: код элитного предмета
- Level: базовый уровень предмета
- Magiclvl: дополнительный магический уровень когда находишь предмет (Пример: если поставить 10, то при гембле на 10 уровне вы можете получить предмет со статами 20 уровня)
- Autoprefix: номер группы из automagic.txt
- Alternategfx: это код файла DCC предмета для анимации персонажа
- Component: это означает какой слой анимации использовать из файла composit.txt чтобы показать предмет на персонаже
Часть брони | Номер |
Head | HD #00 |
Torso | TR #01 |
Legs | LG #02 |
RightArm | RA #03 |
LeftArm | LA #04 |
RightHand | RH #05 |
LeftHand | LH #06 |
Shield | SH #07 |
Special1 | S1 #08 |
Special2 | S2 #09 |
Special3 | S3 #10 |
Special4 | S4 #11 |
Special5 | S5 #12 |
Special6 | S6 #13 |
Special7 | S7 #14 |
Special8 | S8 #15 |
- rArm, lArm, Torso, Legs, rSPad, lSPad: композиция брони. rArm=правая рука, lArm=левая рука, Torso=тело, Legs=ноги, rSPad=правое плечо, lSPad=левое плечо. Каждый компонент имеет три варианта: 0=Light, 1=Medium, 2=Heavy. Когда вы одеваете броню, игра рисует комбинацию компонентов, которую вы выставите. Например, Quilted armor имеет rSPad и lSPad =1. Это значит, что когда вы одеваете эту броню, все останется как есть кроме, наплечников, которые станут вариантом Medium
- Flippyfile: файл анимации когда предмет падает на землю
- Invfile: файл изображения предмета в инвентаре
- Uniqueinvfile: файл изображения уникльного предмета в инвентаре
- Setinvfile: файл изображения сэтового предмета в инвентаре
- Invwidth: ширина в клетках инвентаря
- Invheight: высота в клетках инвентаря
- Hasinv: 1=может иметь дырки, 0 не может иметь дырки (в файле itemtypes.txt нужно поставить хотя бы 1 в строках maxsock1/25/40)
- Gemsockets: максимальное количесто сокетов
- Gemapplytype: эффект камня 0=оружие; 1=броня, шлем; 2= щит
- Useable: 0=нельзя активировать правым щелчок; 1=можно
- Missiletype: какой снаряд выпустит оружие если вы его бросите (ИД из missiles.txt)
- Stackable: 1-да, 0-нет. Может ли предмет иметь пачки
- Minstack: минимальное количество в пачке
- Maxstack: максимальное количество в пачке
- Qntwarning: иконка предупреждения когда заканчивается аммуниция
- Type: первый базовый тип (код из itemtypes.txt)
- Type2: второй базовый тип (код из itemtypes.txt)
- Dropsound: звук предмета когда он падает
- Dropfxrame: количество кадров которое звук длится
- Usesound: звук когда используется предмет
- Quest: ИД квеста (для квестовых вещей)
- Questdiffcheck: на какой сложности этот предмет есть квестовый
- Unique: 1=всегда уникальный; 0=не всегда уникальный (используется квестовыми предметами)
- Quivered: является ли предмет пачкой аммуниции 1=да, 0=нет
- Transparent: неизвестно
- Transtbl: всегда 5
- Lightradius: не используется
- Belt: id из файла belts.txt (количество слотов баночек)
- Mindam: минимальный урон (если на щитах то урон Смайтом, если на ботинках то урон Пинком)
- Maxdam: максимальный урон (если на щитах то урон Смайтом, если на ботинках то урон Пинком)
- Strbonus: процент Силы который считается как Бонус к Урону
- Dexbonus: процент Ловкости который считается как Бонус к Урону
- Bitfield: 1 для кожаных веще; 3 для металических
- Durwarning: иконка предупреждения когда предмет ломается
- Gemoffset: неизвестно
Функции продавцов
Везде вместо слова Vendors ставим имя продавца.
- Vendorsmin: минимальное количество данного предмета которое этот продавец может подать
- Vendorsmax: максимальное количество данного предмета которое этот продавец может подать
- Vendorsmagicmin: минимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagicmax: максимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagilvl: максимальный уровень магической вещи и статов
- PermstoreItem: всегда продавать у продавцов
- Transform: изменение цвета предмета на анимации персонажа
- Invtrans: изменение цвета предмета в инвентаре
- Skipname: пропустить базовое имя
- Nightmareupgrade: код предмета который будет продаваться вместо этого на Кошмаре; (ххх=без изменений)
- HellUpgrade: код предмета который будет продаваться вместо этого на Аду; (ххх=без изменений)
- Nameable: 1=может быть персонализован; 0=не может
Diablo 2: Моддинг » Полное описание Misc.txt
О том, что такое txt-файлы и как с ними работать читайте в первом и втором гайде по созданию своих модов для Diablo 2. Файл Misc.txt отвечает за свойства и параметры всех предметов, кроме оружия и брони.
- Name: просто имя, не влияет ни на что
- szFlavortext: не известно
- Compactsave: 1=использовать, 0=нет. Это используется для получения меньшего размера сэйвфайла. Эта функция не будет сохранять статы на предмете, такие как количество, префиксы, суфиксы, урон, броню, прочность и тд. Это используется для предметов что не имеют статов, типа баночки, камни
- Version: 0=классика, 100=ЛОД
- Level: базовый уровень предмета
- Levelreq: необходимый уровень для использования предмета
- Rarity: 0=убрать этот предмет из стойки с броней. 1 и выше= частота выпадения предмета из стойки с броней. Хотя бы один предмет должен иметь здесь 1 или игра вылетит
- Spawnable: 1=продается в НПС; 0=не продается в НПС
- Nodurability: 1=неуничтожимая; 0=использовать прочность
- Gamble cost: используется только амулетами и кольцами
- Code: трёхзначное слово/число, которое должно быть уникальное для каждого предмета
- Alternategfx: это код файла DCC предмета для анимации персонажа
- Namestr: это код для .tbl файла, в котором вы указываете название предмета в игре
- Component: это означает какой слой анимации использовать из файла composit.txt чтобы показать предмет на персонаже
Часть брони | Номер |
Head | HD #00 |
Torso | TR #01 |
Legs | LG #02 |
RightArm | RA #03 |
LeftArm | LA #04 |
RightHand | RH #05 |
LeftHand | LH #06 |
Shield | SH #07 |
Special1 | S1 #08 |
Special2 | S2 #09 |
Special3 | S3 #10 |
Special4 | S4 #11 |
Special5 | S5 #12 |
Special6 | S6 #13 |
Special7 | S7 #14 |
Special8 | S8 #15 |
- Invwidth: ширина в клетках инвентаря
- Invheight: высота в клетках инвентаря
- Hasinv: 1=может иметь дырки, 0 не может иметь дырки (в файле itemtypes.txt нужно поставить хотя бы 1 в строках maxsock1/25/40)
- Gemsockets: максимальное количесто сокетов
- Gemapplytype: эффект камня 0=оружие; 1=броня, шлем; 2= щит
- Flippyfile: файл анимации когда предмет падает на землю
- Invfile: файл изображения предмета в инвентаре
- Uniqueinvfile: файл изображения уникльного предмета в инвентаре
- Special: не используется
- Transmogrify: позволяет нажимать на предмет право кнопкой мыши, чтобы превратить в другой предмет
- TMogType: код предмета в который мы хотим превратить наш базовый предмет
- TMogMin: минимальное количество предметов которые появляются при Transmogrify
- TMogMax: максимальное количество предметов которые появляются при Transmogrify
- Useable: 0=нельзя активировать правым щелчок; 1=можно
- Throwable: можно ли бросать предмет 1=да; 0=нет
- Type: первый базовый тип (код из itemtypes.txt)
- Type2: второй базовый тип (код из itemtypes.txt)
- Dropsound: звук предмета когда он падает
- Dropfxrame: количество кадров которое звук длится
- Usesound: звук когда используется предмет
- Unique: 1=всегда уникальный; 0=не всегда уникальный (используется квестовыми предметами)
- Transparent: неизвестно
- Transtbl: всегда 5
- Lightradius: не используется
- Belt: id из файла belts.txt (количество слотов баночек)
- Autobelt: позволяет автоматически класть предмет в пояс когда вы его подбираете
- Stackable: 1-да, 0-нет. Может ли предмет иметь пачки
- Minstack: минимальное количество в пачке
- Maxstack: максимальное количество в пачке
- Spawnstack: количество когда рандомно выпадает
- Quest: ИД квеста (для квестовых вещей)
- Questdiffcheck: на какой сложности этот предмет есть квестовый
- Missiletype: какой снаряд выпустит оружие если вы его бросите (ИД из missiles.txt)
- Spellicon: какая иконка скила для этого предмета (например: иконка броска для Копей)
- pSpell: этот параметр контролирует все временные предметы. все временные зелья используют pSpell=6
- State: это параметр для эффекта Оверлэя (State и Cstate1 должны иметь одинаковый ИД из States.txt)
- Cstate1: это параметр для эффекта Оверлэя из файла States.txt
- Cstate2: это второй параметр. Вы можете добавить два разных эффекта для предмета
- Len: время действия временных предметов. Нельзя ставить 0
- Stat1: контролирует какой параметр добавить игроку
- Calc1: значение параметра
- Stat2: контролирует какой параметр добавить игроку
- Calc2: значение параметра
- Stat3: контролирует какой параметр добавить игроку
- Calc4: значение параметра
- Spelldesc: 0=не использовать описание и расчет; 1=только описание (Spelldescstr); 2=описание и расчет (Spelldescstr и Spelldesccalc)
- Spelldescstr: код вывода текста описания предмета
- Spelldesccalc: код вывода чисел расчета общего эффекта всех параметров предмета в Stat1-3
- Durwarning: иконка предупреждения когда предмет ломается
- Qntwarning: иконка предупреждения когда заканчивается аммуниция
- Nameable: 1=может быть персонализован; 0=не может
- Bettergem: (только для камней) код следующего камня в цепочке апгрейда
- Bitfield: 1 для кожаных веще; 3 для металических
- Quivered: является ли предмет пачкой аммуниции 1=да, 0=нет
- Mindam: минимальный урон (если на щитах то урон Смайтом, если на ботинках то урон Пинком)
- Maxdam: максимальный урон (если на щитах то урон Смайтом, если на ботинках то урон Пинком)
- Gemoffset: неизвестно
Функции продавцов
Везде вместо слова Vendors ставим имя продавца.
- Vendorsmin: минимальное количество данного предмета которое этот продавец может подать
- Vendorsmax: максимальное количество данного предмета которое этот продавец может подать
- Vendorsmagicmin: минимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagicmax: максимальное количество данного магического предмета которое этот продавец может подать
- Vendorsmagilvl: максимальный уровень магической вещи и статов
- PermstoreItem: всегда продавать у продавцов
- Transform: изменение цвета предмета на анимации персонажа
- Invtrans: изменение цвета предмета в инвентаре
- Skipname: пропустить базовое имя
- Nightmareupgrade: код предмета который будет продаваться вместо этого на Кошмаре; (ххх=без изменений)
- HellUpgrade: код предмета который будет продаваться вместо этого на Аду; (ххх=без изменений)