Как создавать миссии в гта сан андреас?

Создание модификаций для GTA: San Andreas, часть 1

Любому игростроевцу, который захочет сделать мод для San Andreas, придется продираться через густые скриптовые заросли. Ведь с помощью скриптов можно изменить практически любую игровую составляющую. Хотите добавить в SA безбашенную мини-игру? Не вопрос. Желаете сделать собственный ролик на игровом движке или новую миссию? Тоже не проблема. Главное, научиться разбираться в принципах скриптописания.

Теорию и общие вопросы мы регулярно разбираем в “Самопале” (смотрите цикл статей “Игровое программирование”), на страницах же “Мастерской” займемся целенаправленным изучением скриптового языка конкретно GTA: SA.

Сегодня мы разберемся с основами языка программирования игры и научимся создавать несложные модификации. Самая популярная и распространенная программа для скриптинга под San Andreas — SAMB. Возможности этого редактора безграничны. Впрочем, нет, есть одно серьезное ограничение — ваша фантазия. Но тут мы вам, увы, не помощники. Зато разобраться в редакторе поможем легко. Забирайте SAMB с нашего диска и внемлите.

Важное отступление. При написании скриптов очень большое значение имеет количество пробелов, которое стоит между теми или иными элементами скрина. В статье для удобства восприятия везде стоит по одному пробелу, но если вы хотите, чтобы мод работал, число пробелов должно быть “правильным”. Для этого отправляйтесь на наш диск, где выложены исходные скрипты.

Первый запуск

Во время первого запуска редактора вам необходимо указать директорию с установленной игрой, после чего программа запустится автоматически (в ранних версиях редактора директорию указывать не нужно). Ознакомимся с интерфейсом программы.

Большую часть редактора занимает текстовое окно (пока оно серое), где мы и будем создавать что-то новое или редактировать уже существующее. Над этим окном располагается очень удобная панель инструментов. Откройте файл main.scm, располагающийся в подпапке игры: Data/Script — для этого в панели инструментов щелкните на значок папки со стрелочкой или зайдите в пункт меню File/Open. Перед вами появится подобие проводника Windows.

В правом окне вы должны указать путь к файлу main.scm. Например: C:\Games\GtaSan\data\script. После этого напротив поля File type выберите SCM-файлы. В результате в левом окне появится файл main.scm.

Щелкните по нему один раз и нажмите OK. Перед вами появится еще одно меню, в котором необходимо указать путь хранения файла (можно выбрать любой путь). Когда вы определитесь с местом хранения scm-файла, смело нажмите кнопку OK еще раз. Подождите несколько минут, пока программа переведет машинный код в читабельный язык программирования игры.

Синтаксис редактора

Ознакомимся с синтаксисом редактора. Если не соблюдать элементарные правила написания скриптов, то программа будет выдавать массу ошибок. Она просто не поймет, что вы хотите ей сказать.

Все миссии в GTA: SA представляют собой массу связанных между собой команд. Любая строка с необходимой командой, в свою очередь, состоит из трех частей, например 0417: start_mission $test.

Не горим и в воде не тонем!

Разберем эту строчку более подробно:

0417: — это код команды;

start_mission — сама команда, игнорируется редактором;

$test — переменная или число (числа).

Еще один пример: 03D8: show save screen. (03D8: — код команды; show save screen — команда).

Совсем не обязательно запоминать коды всех команд. В редактор встроена подсказка. Например, если вы напишите ключевое слово boat (лодка) и нажмете клавишу F1, программа автоматически подберет нужную команду:

02D3: boat $A88 drive to 171.0578 942.3843 6.0

Нажав клавишу F1 еще несколько раз, редактор будет подбирать коды команд с интересующим вас словом до тех пор, пока не закончатся все варианты. На слово boat будет выведено следующее:

02D3: boat $A88 drive to 171.0578 942.3843 6.0

02DB: set boat $A88 speed to 10.0

02D3: boat $A88 drive to 171.0578 942.3843 6.0

043a: start boat foam animation ;; never used in VC

043b: update boat $cutsceneanim foam animation ;; never used in SA

02D3: boat $A88 drive to 171.0578 942.3843 6.0

Чтобы посмотреть ключевые слова, как, например, в случае с лодкой, откройте документ Keywords, поставляющийся вместе с редактором.

Создание модификаций

Мы плавно подошли к самому ответственному моменту: созданию собственных модификаций. Для начала разберемся, из чего состоит файл любой миссий в San Andreas.

Файл main.scm состоит из четырех частей.

1 часть. Ставит размер памяти для скриптов — нужно только для редактора.

2 часть. Список используемых объектов в игре и скриптах.

3 часть. Указатели на миссии и внутриигровые блоки.

4 часть. Собственно код миссий, мини-игр, путей самолетов/вертолетов.

Пока нас не будут интересовать первые два блока — они не нужны, если вы не собираетесь создавать мегасложную миссию или совершенно новую игру.

Чтобы создать новую модификацию, нужно знать, как и с чего начать и чем закончить проект. Щелкните по “биноклю” в панели инструментов, в меню поиска введите 004F: create_thread ЈЈ и нажмите кнопку Find. Вы увидите список неизвестных пока вам команд. Давайте разберем на примере, как пишется мод.

004F: create_thread ЈЈIgromod1

004F: — это, как мы говорили чуть выше, код команды.

create_thread ЈЈ — это сама команда, отвечающая за создание потока, программы, ответственной за выполнение какого-либо действия, изменять команду нельзя!

Igromod1 — название нашего мода в файле main.scm.

Cj — настоящий медик. Хирург или патологоанатом…

Найдите то место, где заканчивается последняя команда, начинающаяся c 004F, и ниже вставьте свою строчку: 004F: create_thread ЈЈIgromod1;.

Обратите внимание, что символ ЈЈ необходимо копировать только из других команд: то, что вы напишете сами, программа не примет и выдаст ошибку при компиляции!

Далее в меню поиска (для быстрого вызова нажмите клавишу CTRL+F) введите слово orig и снова нажмите кнопку Find. Над строчкой:

;————-Mission 0—————

вы будете размещать все свои модификации, мини-игры, но не миссии — насчет этого будет отдельный разговор.

Любой блок, подпрограмма или мод начинается со строки Igromod1. Она играет роль идентификатора названия, которое вы писали выше. Название Igromod1 должно соответствовать названию Igromod1 в строке 004F: create_thread ЈЈIgromod1;.

Если названия не совпадут, то при компиляции — переводе языка программирования в машинный код игры — редактор снова выдаст ошибку, что блок не найден.

Ниже нужно написать строку с задержкой на определенное время, чтобы игра не зависла: 0001: wait 0 ms.

В моем случае задержка составила 0 мс, но если, например, вам нужно, чтобы какое-то действие выполнялось не сразу, то задержку можно увеличить.

Дальше начинается чистой воды эксперимент: Например, вы можете установить у игрока бесконечный бег:

0330: set player $PLAYER_CHAR infinite run to 1 (true)

Или сделать его (игрока, конечно) пожароустойчивым:

055D: make player $PLAYER_CHAR fireproof 1

А ведь можно и перекрашиваться совершенно бесплатно:

0335: set free paynspray to 1 (true)

Дадим игроку побольше денег — с ними в SA всегда были проблемы:

0109: player $PLAYER_CHAR money += 9000000

Вам мало брони и жизней — увеличим их стартовый набор на 100 единиц, мало не покажется:

035F: set_actor $PLAYER_ACTOR armour_to 100

055E: set_player $PLAYER_CHAR max_health += 100

Зачем ждать, пока нам в игре любезно предоставят реактивный ранец, создадим его около нашего дома (gRoove Famile Streets) сами!

032B: $jet = create_weapon_pickup 370 15 ammo 1 at 2488.562 -1666.864 12.8757

То, что вы должны увидеть при успешной декомпиляции скрипта.

Загадочные цифры 2488.562 -1666.864 12.8757 представляют собой координаты, по которым будет создан jetpack. О координатах и других непонятных цифрах в этой команде речь пойдет во второй статье цикла.

Думаю, быстрая перезарядка ствола придется всем по вкусу:

0331: unknown_player $PLAYER_CHAR set_fast_reload 1

Самое время научиться менять привычную одежку игрока. Изменить одежду главного героя на любую другую не так сложно. Для смены одежды игрока используются вместе две нижеуказанные команды:

087B: set_player $PLAYER_CHAR clothes «VEST» «VEST» 17

070D: $PLAYER_CHAR

Первая задает игроку определенную одежду, а вторая “обновляет” модельку персонажа.

Дадим игроку возможность рассекать по всему игровому миру без ограничений с самого начала игры:

0629: change_stat 181 (islands unlocked) to 4

И напоследок повысим скиллы персонажа до максимума:

062A: change_stat 165 (energy) to 999.0 ; float

062A: change_stat 23 (muscle) to 999.0 ; float

062A: change_stat 21 (fat) to 0.0 ; float

062A: change_stat 163 (health upgrade) to 999.0 ; float

062A: change_stat 160 (driving skill) to 999.0 ; float

062A: change_stat 229 (bike skill) to 999.0 ; float

062A: change_stat 223 (pilot skill) to 999.0 ; float

062A: change_stat 230 (cycling skill) to 999.0 ; float

Завершение проекта

Знаний для создания первого несложного мода вам уже хватит. Но чтобы модификация заработала, нужно еще написать команду, которая завершит работу после создания всех бонусных вещей. Выглядит она так: 004E: end thread.

Вид на наше творение из игры.

Если вы решили создать мод, содержащий все модификации, описанные в статье, то в итоге у вас должно получиться следующее:

0001: wait 0 ms

0330: set player $PLAYER_CHAR infinite run to 1 (true)

055D: make player $PLAYER_CHAR fireproof 1

0335: set free paynspray to 1 (true)

032B: $jet = create_weapon_pickup 370 15 ammo 1 at 2488.562 -1666.864 12.8757

0109: player $PLAYER_CHAR money += 9000000

035F: set_actor $PLAYER_ACTOR armour_to 100

055E: set_player $PLAYER_CHAR max_health += 100

0629: change_stat 181 (islands unlocked) to 4

062A: change_stat 165 (energy) to 999.0 ; float

062A: change_stat 23 (muscle) to 999.0 ; float

062A: change_stat 21 (fat) to 0.0 ; float

062A: change_stat 163 (health upgrade) to 999.0 ; float

062A: change_stat 160 (driving skill) to 999.0 ; float

062A: change_stat 229 (bike skill) to 999.0 ; float

062A: change_stat 223 (pilot skill) to 999.0 ; float

062A: change_stat 230 (cycling skill) to 999.0 ; float

087B: set_player $PLAYER_CHAR clothes «countrytr» «countrytr» 17

070D: $PLAYER_CHAR

004E: end thread

Последние штрихи — нажмите клавишу F7, редактор скомпилирует файл в формат, привычный для игры. Скопируйте его из папки, в которой хранится main.scm (путь для хранения файла main.txt и будущего main.scm вы указывали во второй менюшке, появляющейся при открытии файла main.scm из директории Data/Script установленной игры) в папку Data/Script игры. После чего запускайте San Andreas — и можете играть в модификацию.

* * *

Мы изучили основы скриптового языка GTA: SA. Научились работать с редактором SAMB. Даже с этим базовым уровнем знаний вы уже можете экспериментировать, используя данные текстового файла Keywords.

Мы прощаемся с вами до следующей статьи (будет опубликована в одном из ближайших выпусков “Мастерской”), в которой наши модостроительные интересы значительно расширятся — мы научимся манипулировать персонажами и транспортными средствами, создавать свои видеоролики, познакомимся с понятием цикличности и освоим еще множество интереснейших возможностей.

Частый вопрос о том, как проходить ГТА Сан Андреас возникает на разных ресурсах в сети. Разработчики в 2004 году не думали о возможностях упрощения игрового процесса. Проекты того времени заставляли потеть над частью миссий в течение трех часов и больше. В культовой игре от Rockstar Games таких моментов соберется десяток.

Разбитые клавиатуры, мышки, изувеченные пальцы с мониторами – такие последствия были не редкостью после тщетных попыток пройти сложный момент. О них со всеми советами можно прочесть в статье. Материал особенно рекомендуется пользователям, которые проходят сюжет впервые.

Трюки на автомобилях

Пропустить в GTA San Andreas миссии основного сюжета невозможно, а потому игроку придется пройти их все. Так появится доступ к полной истории Си Джея. На пути одним из заданий будет завоевание награды с уважением в миссии с лоурайдерами. Игрок берет под управление предоставляемый автомобиль с переработанной подвеской.

Включается музыка и в окружении толпы главный герой должен выполнить трюки в виде раскачивания машины. На экране будут возникать стрелки необходимые для нажатия. Пользователям рекомендуется выкрутить на всю громкость звук, чтобы попадать в такт. Нажимать на стрелочки, продемонстрированные на экране нужно в момент их полного вхождения в круг. Количество плюсуемых очков в общий зачет будет максимальным при такой схеме.

Предварительно стоит проверить расположение клавиш. Во многих версиях данная миссия реагирует на цифровую клавиатуру Num Lock (8,4,2,6). Для удобства рекомендуется переназначить кнопки, если проверка подтвердила данный факт.

Освоение воздуха

Даже в опытного игрока при упоминании прохождения летной школы в GTA San Andreas начинается нервный тик. Главный герой должен пройти десять сложных заданий для получения возможности купить аэродром за 80 тысяч долларов. На нем проходят испытания.

Уровни прохождения варьируются от бронзы до золота, это отмечается при прохождении новых миссий. В зависимости от них на аэродроме главного героя появится лучшая модель техники. Каждая миссия из десяти отличается высокой сложностью. По отзывам пользователей, настоящие трудности возникают на третьем и четвертом этапе. Сначала игрокам предложат пролететь круг в воздухе, доступен выбор направления по часовой стрелке или против. Главным советом здесь будет постоянный спуск газа, скорость не идет в общий зачет. Пользователю главное пролететь все контрольные точки.

Прохождение лётной школы

Клавиши Q и Е помогут в местах, где необходимо совершать маневры. Четвертое испытание обратное к третьему. В описанном выше задании необходимо было взлететь и пролететь круг, то здесь появляется главный герой в воздухе. После пролета всей дистанции необходимо посалить самолет в указанную точку. Главное не забыть выпустить шасси при приземлении клавишей «+». Задания интересные, в них нет отдельного руководства, а успех зависит только от личных навыков игрока.

Умения вождения

Пройти школы в GTA San Andreas удавалось тем игрокам, которые много времени проводили за рулем и штурвалом транспортных средств. Наравне с летными испытаниями пользователи по сложности ставят автошколу. Для ее окончания предстоит закончить 12 миссий. Первые задания предусматривают легкие действия по типу создания круга 360 градусов машиной на месте.

Для этого достаточно зажать клавиши вперед, назад и выбрать сторону разворота. Следующая задача заключается в развороте на 180 градусов без вылета с трассы. Грамотно войти в поворот на окраине цветных конусов поможет ручной тормоз (кнопка «пробел»). Третья миссия предусматривает проезд дистанции на полицейской машине с пробитым правым колесом сзади. Игрок не должен зацепить даже один конус. Водителям придется учитывать в поворотах то, что зад будет сносить дальше вправо. В этом скрывается главная опасность.

По уровню сложности следует отметить четвертую задачу. Игрокам необходимо проехать пять небольших кругов за 40 секунд. Основная сложность скрывается во вхождении в повороты без потери скорости. Для этого нужно смещаться на внешний радиус дороги, а при повороте выравниваться на внутреннее кольцо. В стандартной ситуации это означает движение справа с дальнейшим передвижением влево.

Настоящая война

Каждое задание в ГТА Сан Андреас предусматривает получение репутации с деньгами. Не исключение третья миссия Зеро. Парень ведет личную вымышленную войну против некоего Беркли. Он поставит задачу пробраться на базу врага, игрок станет ассистентом в данной войне. Ему под управление даются игрушечные вертолеты «Гоблины». Зеро будет ехать по извилистой дороге на машине с радиоуправлением.

Задача Карла заключается в создании безопасного пути напарнику. На дороге враг раскидывает бочки, при помощи магнита вертолет их убирает. Сбрасывать нужно на сторону, мимо основного пути. Автомобиль Зеро «Бандит» не сможет самостоятельно противостоять «Тиграм» – миниатюрная военная техника. Игрок должен брать на базе бомбы и сбрасывать на них для подрыва.

Начало миссии “Зеро”

Прицелится в воздухе сложно, подлетать рекомендуется на ближайшую к цели дистанцию. Третьей задачей главного героя является закрытие пропастей досками. Импровизированные мосты создаются по аналогичной схеме. Пользователь летит на базу, магнитит доски, закрывает ими пропасть для «Бандита». Главный секрет задания в скорости. Карл не должен ждать напарника, следует лететь вперед, исследовать местность, устраняя угрозы.

Акробатические трюки в воздухе

Задание «Свободное падение» может заставить передумать скачать на ПК ГТА Сан Андреас любого пользователя. Миссия заключается в совершении воздушного маневра. Игроку предстоит подняться на старом медленном вертолете вверх на указанной точке, дождаться пролетающего ниже частного самолета и прыгнуть прямо на него. В задании основную роль играет расчет с правильными действиями.

Первостепенно пользователь должен поднять вертолет на дистанцию, когда отметка возле миникарты окажется на средине шкалы. Разворот личного летающего средства следует начинать в момент, когда цель в виде частного рейса покажется на горизонте. При попытке сделать маневр после оповещения миссию считайте проваленной. Игрок не успеет проделать необходимые действия, частный самолет движется на огромной скорости. Когда цель появилась на горизонте, игрок должен с разворотом направиться к красному указателю.

Дальше начнется заставка с проникновением в салон самолета. Внутри игроку предстоит разделаться с охраной, добравшись до кабины. Пилоты должны быть устранены, за штурвал садится Карл. Последним испытанием станет посадка летающего аппарата в указанном аэропорту. Задание выполняется четко по инструкции, в ином случае пользователя ждет провал.

Завершение истории

Вышеперечисленные задания не сравнятся по сложности с последней сюжетной миссией. После приезда на точку игрок крадет бронетранспортер для продолжения движения. Ехать придется через стены здания. Предатель Биг Смоук скрылся на четвертом этаже, добираться необходимо с перестрелками, противников несколько десятков. Поднимаясь по зданию, внимательно следите за боковыми помещениями.

В каждом из них прячутся враги, к спецназу подоспеет подкрепление. На втором этаже в лаборатории опасными противниками станут владельцы двух пистолетов и стрелки на верхней платформе. Стрельба во врагов не всегда правильное решение. Противники быстро убираются выстрелом в канистру с горючим, находящуюся возле них. Мелкие комнаты третьего этажа нужно исследовать на предмет пополнения здоровья. Выше последует битва с бывшим товарищем.

Стрелять нужно в открытые части тела, не забывая о постоянно прибывающей охране. Следующая заставка будет при участии копа Тенпенни. Для окончательного завершения игрок должен догнать врага, отбиваясь от преследования. Внимания заслуживает момент с пожарной машиной. Если притормаживать для выбора дистанции, то миссия начинается с контрольной точки.

Как создать хорошую DYOM миссию. Часть 1: Меню для GTA San Andreas

Скачать DYOM можно на нашем сайте, по .

Сразу извиняюсь, что нет должного русификатора. И так, на первом скриншоте мы видим само меню.

Во вкладке «Меню миссии» вы можете начать миссию, сохранить её или же загрузить, а также начать создавать новую. Можете попросить программу показать свой аудио код для каждой миссии. Но это уже не в этой части.

Во вкладке «Меню сторилайна» вы можете сделать миссии, не запуская их отдельно. То есть, как будто вы проходите сюжетную линию: без пройденной миссии не будет последующей.

Во вкладке «Настройки» вы можете задать имя миссии, текст в начале миссии (запускается вместе с миссией), время, которое вы проходите определённую миссию, время, даваемое на прохождение определённой миссии, время суток, погоду, розыск и для любителей хардкора можно поставить бунт (работает только в Лос-Сантосе). Всё перечисленное показано на скриншоте соответственно.

Думаю, вкладку «Игрок» расписывать не нужно. Скажу только, что функция даёт возможность выбирать каким персонажем вы будете играть. Во вкладке «Объекты» содержится список целей, которые вы можете поставить в миссии (всего можно установить 100 целей), это могут быть автомобили, пешеходы, пикапы, объекты из всего Сан Андреаса, чекпоинты, а также установить анимации главному герою и многое другое (конкретней я расскажу об этом в следующих частях).

Во вкладках «Актёры», «Машины», «Пикапы» и «Объекты и эффекты» содержится тоже, что и в «Объектах», но они не являются целями.

Во вкладке «Инструменты» содержатся такие вещи, как телепорт к маркеру, поставленному на карте, телепорт к цели, вызвать джетпак, вызвать любую машину (две последние нужны, например, для создания гонок — чтобы не телепортироваться много раз, а взять и доехать или долететь до места), телепорт в определённый интерьер (в некоторые невозможно попасть без должных модов).

Ах да, чуть не забыл, все сохранённые вами миссии, либо установленные автоматической установкой попадают в папку «Мои документы».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *