000178. RRR-файлы в GTA SA. Как их делать и использовать-
RRR-файлы в GTA SA. Как их делать и использовать?|В этом уроке мы познакомимся с очередным типом файлов. Научимся их создавать и использовать в игре.|wmysterio|wmysterio||||Привет, друзья! Сегодня мы будем изучать файлы путей автомобилей, которые имеют расширение "RRR". Эти файлы являются бинарными и обычно хранятся в IMG-архиве за адресом:
X:\GTA SA\data\Paths\carrec.img
Главное преимущество таких путей в том, что они гарантируют нам точное поведение автомобиля от начала маршрута, до его конца. Обычно мы можем обойтись и без них, заставляя машину ехать куда надо через скрипт, но иногда ситуация бывает настолько специфичной, что реализовать всё скриптом просто невозвожно или результаты слишком не предсказуемы.
Вот для таких случаев часто и создают RRR-файлы, которые хранят все точки маршрута со всеми углами машины, параметрами двигателя, моменты когда она притормаживает и всё в таком духе. В итоге мы имеем так называемый "Playback record", который мы будем называть маршрутом.
Главный недостаток ( а иногда и преимущество ), что автомобиль теряет физические свойства. Иными словами будет выполнять воспроизведение маршрута в таком виде, в котором он был записан. Если между точками находятся автомобили или другие объекты, то машина будет проходить сквозь них, а другой транспорт будет отскакивать, как от поезда.
Для начала научимся создавать путь. Для этого часто используют старенький скрипт от Seemann'а, который имеет название Carrec.cs. Его желательно открыть ( исходники прилагаются ) и настроить под себя. В основном нужно настраивать 3 параметра:
Константа | Значение |
---|---|
REC_INTERVAL_MS | Отвечает за то, как часто будет делаться новая запись точки маршрута. Чем значение меньше, тем чаще будет добавлятся точка. |
FILE_PATH | Путь к выходному файлу. |
KEY_REC | Код клавиши, которая запускает и останавливает запись маршрута ( в сочетании с клавишей Shift` ) |
Скрипт работает по следующему принципу: садимся в нужный транспорт, нажимаем клавиши Shift+<kbd>R
. Далее начинаем ехать как и куда Вам угодно. Скрипт будет записывать точки маршрута. Когда нужно остановится, нажимаем эту комбинацию клавиш ещё раз и путь готов!
× **ВАЖНО:** имя файла обязательно должно содержать числа, больше за ноль! Рекомендую сначала проверить доступность имени в архиве ( нужно, чтобы такого файла небыло ), чтобы случайно не перезаписать существующий файл.× **Примечание:** рекомендую для записи маршрута использовать тот же транспорт, что Вы планируете создавать в скрипте. Иначе могут быть нестыковки.
Для успешной загрузки такого пути, нам необходимо добавить его в "carrec.img" спомощью любого IMG-редактора. Ну и с конце писать скрипт. Рассмотрим базовые опкоды для работы с RRR-путями:
908 в этом случае является именем файла, поэтому всегда сохраняйте файлы с числовым именем, как уже было сказано выше. После этого мы можем заставить транспорт воспроизвести наш путь следующими опкодами:
Поскольку маршрут сам по себе является "записью воспроизведения", скорость мы приравниваем к общей длительности маршрута. Это дополнительно позволяет нам использовать опкоды, которые бывают пелезными при определённых обстоятельствах:
Следующие опкоды я не тестировал, поэтому их описания могут быть неточными:
Здесь важно отметить, что воспроизведение маршрута перемещает машину в позицию первой точки пути, поэтому для более плавного перехода лучше создавать машину в тех же координатах.
Ну и, наконец, пример скрипта, где машина будет ехать по записанному маршруту:
Этим способом я делал гонки для мода 'Проект "Неизвестный": Чёрный список', где соперник использовал путь, тем самым его "интеллект" был намного выше, чем могли бы быть без такого маршрута:
Надеюсь, этот материал был для Вас полезным. На этом у меня всё. С Вами попрежднему - wmysterio.|1125|1|0|38913452png
640359
320`180``||rrr_fajly_v_gta_sa_kak_ikh_delat_i_ispolzovat|1510794350
Last updated