» Раздел: Работа с MPQ и импортом

**Предисловие**

Иногда бывают случаи, когда нам необходимо внедрить своих собственных юнитов в World Editor, то есть сделать так, чтобы они не были в списке «особых», а были в списке стандартных юнитов. В этой статье вы узнаете, как это сделать. Эта статья будет полезна для людей, разрабатывающих свой «собственный» Warcraft, ну а также и для других разумных целей, в частности, для изменения характеристик существующих юнитов (будьте осторожны с этим, так как изменение существующих юнитов может привести к нежелательным последствиям, в частности неработоспособность сетевой игры). Для осуществления внедрения нам понадобится следующее:
- Программа для работы с архивами MPQ (MPQ Master, WinMPQ или что-то наподобие);
  • Microsoft Excel или любой другой редактор, умеющий читать и правильно сохранять файлы в формате slk;
  • Microsoft Word;
  • Мозги (свои);
Итак, начнём!
  1. Откройте файл war3.mpq соответствующей программой, а заодно и World Editor; (а именно редактор объектов);
  2. Сохраните все файлы из папки Units на жёстком диске (обратите внимание – файлы, а не папки).
  3. Откройте сохранённый файл UnitBalance.slk.
  4. Далее нам необходимо добавить своего собственного юнита. Немного о структуре таблицы.
В первом столбце выводится так называемые id-коды юнита. Обратите внимания, что в данном файле нет повторяющихся id-кодов, следовательно, будущий id-код вашего юнита должен быть единственным. Кроме того, следует также отметить, что первый символ кода соответствует расе, а именно h - люди, o - орки, e – ночные эльфы, u - нежить, n – «нейтралы», z – вообще непонятно откуда взялся (по некоторым данным, из других игр, в частности, из Starcraft). Также важным моментом является то, что id-коды всех героев начинаются с большой буквы.
Второй столбец – столбец категорий. Там вы увидите такие значения, как a1, a2, a3, b1, b2 и т.д. Всех, как видно, три категории. К категории l1 (l – это первая буква) относятся герои, к категории l2 – обычные юниты, а к категории l3 – здания. Для юнитов из других игр предусмотрена категория z9.
Третий столбец довольно запутан. В нём уже идёт деление юнитов по другим категориям:
uher – юнит является героем
xbui – юнит является зданием
sum – юнит является вызванным
art – юнит относится к классу артиллерии
tow – юнит является башней
fly1 – юнит является летающим, и не имеет наездника (исключение – вертолёт)
fly2 – юнит является летающим и управляется наездником
peo – юнит является работником
zz – другое
zzz – юнит взят из другой игры
cas – юнит относится к классу магов
me1 и me2 – не очень понятно. По всей видимости, к первому классу относятся обычные слабые воины, а ко второму – сильные.
Четвёртый столбец – это уровень юнита. Если он равен 5 и больше, то юнит считается сильным существом и его нельзя захватить заклинанием «Обладание» у привидения. Как ни странно, башни тоже имеют уровень, равный одному. А у других он вообще отсутствует.
Ну а дальше, думаю, всё понятно.
  1. Добавьте своего юнита в файл. Вот некоторые правила добавления юнитов:
I. ID-код должен быть универсальным. Помните, что первая буква есть раса юнита, а для героев она является большой.
II. Не нужно делать несоответствия между категориями и классами. То есть, если вы добавляете героя, то нужно обязательно задавать ему категорию l1 (l – это какая-то буква), класс uher.
III. Внимательно читайте комментарии, представляющие собой «красные углы» в некоторых ячейках первой строки файла!
  1. Сохраните файл и обязательно запомните ID-код вашего юнита.
  2. Откройте файл UnitData.slk.
  3. Отредактируйте этот файл, добавив в него ID-код вашего юнита и установив необходимые параметры;
  4. Сохраните файл;
  5. Откройте файл UnitAbilities.slk. В нём содержится информация о способностях юнитов. Проводим ту же самую операцию, как и с предыдущим файлом: добавляем ID-код и устанавливаем параметры. В столбике AbilList располагается информация об обычных способностях юнита, а в столбике heroAbilList находится информация о «геройских» способностях. Естественно, доступно лишь для юнитов-героев. Со всеми способностями и их ID-кодами можно ознакомиться в файле Units\AbilityData.slk архива MPQ.
  6. Сохраните файл;
  7. Далее открываем файл *UnitStrings.txt, где под * я подразумеваю расу юнита. Что же мы видим? Мы видим смесь английских символов с какими-то другими, не известными нам. Не пугайтесь. Просто эти файлы закодированы. Если у вас английская версия Warcraft’a, то у вас всё будет нормально отображаться, а вот если русская – то «иероглифы» неизбежны. Этот файл необходимо открыть не обычным «Блокнотом», а программой Microsoft Word, которая позволяет декодировать текст в привычный нам язык. Теперь мы понимаем информацию этого файла. В этом файле содержатся тексты для юнитов. Чтобы лучше понять, что означает каждая категория (Hotkey, Tip, Ubertip и др.), вернитесь в редактор объектов. Выберите любого юнита, а затем нажмите Просмотр --- Вывести величины в необработанном виде. Это облегчит вам задачу. Отредактируйте данный файл, добавив в него информацию о своём юните и сохраните его.
  8. Следующим файлом для редактирования является *UnitFunc.txt. Здесь ничего декодировать не надо. Необходимо также отредактировать файл, используя «необработанный вид» величин. Сохраните этот файл.
  9. Теперь откройте файл Unitweapons.slk. О том, как отредактировать первые 4 столбика, описано в пункте 4. Ну а дальше используете подсказки «красных углов». Сохраните файл.
  10. Если ваш юнит является героем и входит в стандартный список какой-либо расы, добавьте его ID-код в файл NeutralUnitFunc.txt в третьей строке. Снова сохраните файл.
  11. Для установки внешнего вида отряда, а также звуков, используемых им, необходимо внедрение его ID-кода с соответствующими параметрами в файл UnitUI.slk. Значения столбцов легко понять по описаниям. Сохраните файл.
  12. Теперь экспортируйте все файлы в архив MPQ. Если ваш юнит все равно не добавляется, то придётся редактировать все вышеупомянутые файлы в архиве war3x.mpq.
На этом всё. Спасибо за внимание!
1
Голосов: 1
adic3x - 15 years ago
1
Голосов: 1
ой бред...
1
Голосов: 1
FREEZE_ball - 15 years ago
1
Голосов: 1
Енто уж точно...
1
Голосов: 1
Juriusmaster - 15 years ago
1
Голосов: 1
Даже не представляю, нужно ли это комуто... %)
0
Голосов: 0
Dd_01 - 15 years ago
0
Голосов: 0
Хм, умная статья, но имхо бесполезная. Значительно проще создавать нестандартные единицы, тем более отличий у стандартных и нестандартных как таковых нет...
0
Голосов: 0
adic3x - 15 years ago
0
Голосов: 0
там есть много интересных нюансов, но в статье они упущены.
1
Голосов: 1
Еркебулан - 15 years ago
1
Голосов: 1
глаза болят
1
Голосов: 1
XomaDj - 15 years ago
1
Голосов: 1
НЕТ ЭТО КРУТО!!! Для тех у кого тупой комп долго создает нестандартиков эта статья супер. GREAT THANKS Sargeras.
3
Голосов: 3
Паня - 15 years ago
3
Голосов: 3
ИМХО только для глобальных мобов, ибо карта с такими боевыми единицами будут только у обладателя этого .mpq / для обычных карт не подойдёт
1
Голосов: 1
ArchWorm - 15 years ago
1
Голосов: 1
Нет, это интересно, нестандартные войска вместо стандартных, это отличный стиль
Паня, редактируешь реестр, добавляешь в поле Allow Local Files в директории вара занчение 1, и кидаешь полученные файлы по адресу установки вара
1
Голосов: 1
Zeratul - 15 years ago
1
Голосов: 1
Обьясните нафиг это надо
0
Голосов: 0
Еркебулан - 15 years ago
0
Голосов: 0
небольшой толк есть.
2
Голосов: 2
Nowise - 15 years ago
2
Голосов: 2
Статья нормальная для ознакомления, для общего развития, кроме того, если создаешь супер-новый-мир, тогда чтоб глаза не мозолились можно это применить.
2
Голосов: 2
MORPEX995 - 15 years ago
2
Голосов: 2
Nowise, я с тобой согласен
0
Голосов: 0
Ренеско - 15 years ago
0
Голосов: 0
У кого комп слабый и у кого сильный долго создает нестандартные объекты тем советую
залесть в пункт меню "Окно" и убрать галочку "Список кистей". Будет намного быстрее. А что до этой статьи то лично мне она очень помогла правда её нужно использовать немного в других целях...
0
Голосов: 0
ShadowWolf - 15 years ago
0
Голосов: 0
А можна ли впихнуть в редактор свои иконки? А то импортить кумарит
1
Голосов: 1
BarracuDa - 15 years ago
1
Голосов: 1
[b]ShadowWolf[/b] Ну тогда у тебя будут отображаться они, а других нет.
0
Голосов: 0
ShadowWolf - 15 years ago
0
Голосов: 0
тоистть? ток те шо проимпортил?
1
Голосов: 1
C0oo1D - 14 years ago
1
Голосов: 1
Импортированные будут отображаццо, а таким образом внедренные - нет! Я считаю что лучче не парить се мозги этим... статья полезная, не спорю, но в большинстве случаев это не надо, и есть некоторые неудобства...
1
Голосов: 1
Enein - 14 years ago
1
Голосов: 1
Статейка норм, но навряд ли кто-нить захочет этим заниматся
2
Голосов: 2
Lawliet - 14 years ago
2
Голосов: 2
а раньше, давным давно, это был один из единственных способов редактировать спеллы.. хотя здесь и описаны юниты, спэллы делаются подобным образом..
1
Голосов: 1
DeViloM - 14 years ago
1
Голосов: 1
Уважаю труд! Нормально!
4
Голосов: 4
Sargeras - 14 years ago
4
Голосов: 4
Хм...) В принципе подобных комментариев я и ожидал, я даже предвидел, кто и что напишет)
2
Голосов: 2
Toolike - 14 years ago
2
Голосов: 2
Вообще спомошью этого можно создавать моды....
1
Голосов: 1
MORPEX995 - 14 years ago
1
Голосов: 1
А можно ли впихнуть свои модели в список стандартных?
3
Голосов: 3
megasniper - 13 years ago
3
Голосов: 3
народ не тупите, очень полезная статья, для тех кто создает моды к вару (я например создаю мод с новой рассой)
2
Голосов: 2
Faam - 12 years ago
2
Голосов: 2
Вообщето статья полезная! Или што не кому не нужен сразу готовый дамми?
0
Голосов: 0
Skino - 12 years ago
0
Голосов: 0
Очень полезная статья, особенно кто редактирует закрытые карты...
0
Голосов: 0
Феникс - 6 years ago
0
Голосов: 0
WoW) спасибо! Вот что я и искал)
0
Голосов: 0
Slashur - 4 years ago
0
Голосов: 0
Можете это уже не читать,простой способ найден,тогда вам сюда www.hiveworkshop.com/threads/w3x2lni-v2-4-4.305201
0
Голосов: 0
Стрелец - 4 months ago
0
Голосов: 0
Статья полезная в отдельных кругах. Но парочка вопросов
• Если сунуть .slk файлы в свой mix, они же заменят стандартные .slk варика?
• Способ точно рабочий?
Я как раз разбирался в данном вопросе, дабы сделать создание Нестандартных Юнитов для Варкрафт 3 более удобным, т.е. написать программу, которая все данные будет записывать в файл, а Карта или сам Варкрафт (Если на то пошло) будут его расшифровывать и всех моих юнитов из файла можно будет без труда использовать.
• Так же у меня вопрос с точки зрения Удобства. Юниты сделанные таким способом будут отображаться на карте, если карта полностью пустая, а все твои файлы находятся в Mix файле?