Слышали ли Вы о Mission Pack'ах? А слышали ли Вы о DYOM (Design Your Own Mission)? Если на первый вопрос Вы ответили «нет», а на второй — «да», спешу Вас обрадовать: DYOM — это самый известный пример MPACK'а.
Основная суть
Итак, Mission Pack (≈«набор миссий») — это оставшаяся со времён разработки игры и случайно найденная моддерами технология, позволяющая загружать и использовать отдельный, независимый .scm-файл. Что это означает на практике? А на практике это значит возможность создавать крупномасштабные скриптовые модификации, не прибегая к редактированию оригинального main.scm. Напомню, что SCM-скриптинг значительно расширяет Ваши возможности: в едином файле удобно работать с множеством взаимосвязанных скриптов и миссий; можно пользоваться всеми глобальными переменными, в отличие от cleo-скриптов/миссий; если библиотека CLEO установлена, можно свободно пользоваться её опкодами.
Как устроен Mission Pack и как его создать?
MPACK'и следует хранить в холодильнике папке Мои документыGTA San Andreas User FilesMPACK. В папке MPACK создаём папку MPACK#, где # — это номер Mission Pack'а от 1 до 24. Да-да, игра поддерживает аж до 24 MPACK'ов, однако, к сожалению, в меню будет показано максимум девять, о чём предупредил создатель Sanny Builder скриптер Seemann. Внутри получившейся папки (представим, что это у нас MPACK6) должны располагаться следующие файлы: • mpack.dat — файл со свойствами MPACK'а • scr.scm — файл со всеми скриптами (при работе с ним в SB рядышком заведётся ещё и scr.txt, это исходный код, не пугайтесь) • text.gxt — файл с текстом (лично я им не пользовался, предпочитаю вывод текста через опкоды CLEO 4). Теперь по порядку о том, что откуда брать: • mpack.dat — создаём «Блокнотом» или подобной программой, вписываем туда следующее: (номер MPACK'а)#(название MPACK'а)# В качестве примера данные моего MPACK'а: 6#Air & Land# Как видите, в самом начале должен стоять номер, который соответствует номеру самого Mission Pack'а (MPACK6 > 6#…#). Далее, после знака “#”, идёт название нашего «набора миссий». Оно может быть написано по-английски или, если у Вас стоит программа для перевода с русского на «символьный» (например, Rus2GxtCoder), на русском или ином поддерживаемом языке. Именно это название и будет отображаться в меню при начале новой игры. N.B.* Скриптер Deji справедливо отметил, что если указать в качестве номера ноль, то MPACK попросту не покажется в меню. Однако он ошибся, сказав, что этот номер служит всего лишь «выключателем» (переменной типа boolean) Mission Pack'а: моя небольшая проверка показала, что игра, увидев в mpack.dat из папки MPACK6, к примеру, номер 1, будет грузить именно MPACK1, а не MPACK6. Тем не менее теперь Вы знаете, что при необходимости Mission Pack можно скрыть, не удаляя всю папку с ним. *Nota bene (лат. «заметь хорошо») — важное примечание. • scr.scm — лучше всего взять очищенный .scm (stripped.txt) из папки Sanny Builderdatasa. Почему — объясню чуть позже. Итак, необходимо открыть stripped.txt в SB и скомпилировать его под именем scr.scm, сохранив в папку Вашего MPACK'а. Теперь там будет файл .scm и файл исходного кода в .txt, который и следует редактировать впоследствии (по крайней мере, это во сто крат удобнее, нежели каждый раз декомпилировать .scm). • text.gxt — можно просто позаимствовать этот файл у DYOM, а можно скопировать american.gxt из папки GTA San Andreastext и переименовать его в text.gxt.
Запуск Mission Pack'а
Когда создание MPACK'а завершено, он станет (должен стать, если всё сделано правильно) доступен в меню при начале новой игры. Вам будет предложен выбор между оригинальной игрой, с её обычным сюжетом и возможностями, и одним из MPACK'ов. Выглядеть это должно так:
Плюсы и минусы Mission Pack'ов
Плюсы: • относительная простота создания • независимость от main.scm • возможность выбора между обычной игрой и «наборами миссий» • отсутствие конфликтов между разными MPACK'ами, в отличие от одновременно работающих cleo-скриптов/миссий от разных авторов • удобство разработки и проверки сразу нескольких скриптовых модификаций Минусы: • меньшее, чем у cleo-скриптов/миссий, удобство установки • неработоспособность так называемых внешних скриптов (external scripts) без специального патча*: это означает отсутствие таких привычных всем возможностей GTA SA, как парашют**, еда, тюнинг машин и пр. Именно поэтому, если Вы не планируете ставить этот патч, я советую брать для MPACK'ов очищенный .scm, где нет внешних скриптов, которые занимают огромные объёмы текста и которые трудно вычистить из оригинального main.scm. *В Readme патча говорится, что содержащий внешние скрипты .img-файл загружается только в начале сеанса игры, то есть, «если Вы решите во время игры загрузить другой пак, Вам нужно будет выйти из игры и только потом начать его». **Слегка переделанный скрипт парашюта был представлен в DYOM. Он не требует никаких патчей и прекрасно работает. Затем, нагло заимствованный мной, он перешёл в мои MPACK'и, получив небольшую доработку в модификации Air & Land.
Модификации, созданные с помощью технологии MPACK
А теперь привожу небольшой (увы, их в принципе мало) список модификаций, представляющих собой Mission Pack'и (а заодно позволю себе минутку саморекламы): • DYOM (Design Your Own Mission) • Creator • Experiment • Air & Land Успехов в скриптинге! Vital