Насилие над MPQ
Есть много примеров людей, которые очень хотят сделать мод на
WarCraftIII и стать известным автором. Но каждый автор по-своему задумывает идею и реализацию проектов. Я никогда не расскажу как создать идею, но с технической стороны постараюсь вам помочь.
Нам понадобится:
1.Архив war3path.mpq
2.Его листфайл (в аттаче)
3.WinMPQ для редактирования
4.Model Editor для просмотра (но я лично использую только WinMPQ)
Настоять на своём
Навязывание
В большинстве случаев мод содержит массу нестандартных материалов. Всякие иконки, модели и текстуры занимают место и логично предположить, что их надо сунуть в отдельный архив. С вопросом «А как это сделать?» я проходил немало форумов и нашёл. Этот набор называется
Mod Launcher (далее
ML; см. аттач). За его создание нужно низко поклониться
Алексею, автору
mdlVis. Система
ML проста, нужно переименовать файл
modname.exe в название вашего мода и создать архив в папке с этим файлом, имеющий такое же имя. Так, если ваш запускаемый файл называется
OtherWar.exe, то ваш архив должен называться
OtherWar.mpq. Будьте внимательны, ибо проверка имени чувствительна к регистру.
Наглая рожа при загрузке
При включении игры прямо посреди экрана вылазит «лицо». Так вот
ML даёт возможность установить свою картинку на его место. Для этого нужно создать файл изображения, формата
bmp, ico, wmf, emf, jpg или
gif. Для установки нужно просто поместить картинку в папку с запускаемым файлом и дать ей его имя, аналогично как с архивом. Но здесь есть одна точность, какого бы формата не был файл, его расширение нужно поменять на
*.sph.
Все описанные файлы обязательно нужно размещать в папке с варом. Свой архив для мода поможет организовать его автономность. Картинка загрузки придаст особый настрой на сам мод. Ещё такая система помогает устанавливать в папку с варом, сколько угодно модов, не мешающих друг другу.
Постоянные параметры
Для индивидуальности мода можно настроить игровые постоянные. Применений может быть очень много, но самое главное – это упрощение работы. Допустим вам нужно сделать, чтобы во всех картах ограничение на потребление пищи было 150 и максимальный уровень героя 20.Конечно можно настроить эти параметры отдельно в каждой карте. Но что делать, если их 20 или больше? Ответ прост. Создать архив и заменить стандартные файлы со значениями постоянных на изменённые. Сами по себе параметры содержатся в 2-х файлах:
units\MiscGame.txt и
units\MiscData.txt. Если в них порыться, можно найти много интересных параметров. В нашем случае нам интересен файл
MiscGame.txt и значения параметров
MaxHeroLevel и
FoodCelling (
Этот параметр нужно создать). Как уже понятно, первый параметр — это максимальный уровень героя. Нам нужен 20-й, поэтому заменяем стандартное значение на 20. Второй параметр — это ограничение пищи. Параметра в файлах почему-то нету, но его нужно просто создать и, в нашем случае, дать значение 150. Если у вас имеется большое количество желаемых изменений, то лучше настроить их именно таким способом. Прошу заметить, что такой способ заменяет не только значения, но и их умолчания. Так если в оригинальном варе макс. уровень героя = 10, то здесь само умолчание будет равно 20. После всех манипуляций с умолчаниями мы можем изменять уже из в каждой карте мода поотдельности.
Значения всех постоянных можно узнать из окна редактора «
Дополнительно ==> Игровые константы», нажав на галочку «
Показать названия переменных»
Slk Всемогущий
Создатели модов обязательно сталкиваются с внешней настройкой параметров юнитов. Есть, конечно, геморный способ искать названия переменных и менять их уже в таблицах slk. Но я нашёл вполне действенный и простой способ. Для него нам понадобится Witgetizer.
Всего 3 манипуляции:
1.Нужно создать пустую карту и настроить стандартных юнитов и создать нестандатрных. Это нужно делать обязательно с учётом нового архива! Использовать нестандартных модели/иконки/текстуры. Для упрощения можно импортировать в карту все ресурсы и попробовать их юзать.
2.Сохранить карту и обработать Витгетайзером.
3.Достать таблицы (файлы с расширением *.slk) и закачать их в нестандартный архив. Обязательно нужно соблюдать пути. Если файлы в карте лежали в папке «units\» то в архив их надо закачать в ту же папку.
J-скрипты
Джассеры в своих картах часто используют нестандартные функции, записанные в
CS карты. Чтобы не записывать код в каждую карту, его можно записать в нестандартный «
scripts\blizzard.j» Для простоты можно отделить свой код от близзового. Ещё такой способ хорош тем, что можно очистить
bj, удалив неиспользуемые типы переменных, функции и переменные. Очень рекомендую внести коррективы в стандартные функции в
bj, например функции настройки мультиборда можно сократить раза в 4.
Ещё не забудьте про добавление событий/условий/действий в редактор триггеров :)
Упаковка
Есть в винде такая программа небольшая, которая позволяет создавать свои программы установки. Вызывается она из коммандной строки командой "
iexpress". Неплохо сжимает и вообще очень удобный инструмент для установки модов. Как им пользоваться я не буду рассказывать, ибо эта служба не входит в тему)
Оригинальный автор статьи: T.N.T aka Sano