Своя GTA San Andreas на iOS

в 15:06, , рубрики: android, game development, GTA, gta: san andreas, iOS, mobile development, метки: , , , ,

Своя GTA San Andreas на iOS
Всем доброго времени суток! Меня зовут Министр Ада и сегодня мы посмотрим на недавно вышедшую GTA San Andreas для iOS.
Смотреть мы будем немного с ракурса непривычного обычному пользователю, но уже ставшим родным для разработчиков.
Я расскажу вам о том, что можно сделать с этой игрой имея при себе более-менее прямые руки и доступ к IPA-файлу игры.

Остальные действия происходят при помощи джейлбрейка iOS устройства. Заменить который можно лицензией разработчика.

Немного истории

Когда в 2005 году вышла GTA San Andreas моддинг игр серии GTA уже шел полным ходом. Были и моды небольшие в виде нового транспорта, и глобальные в виде изменения ещё и территорий игры. Спустя некоторое время появились небольшие программы, которые позволяли редактировать архивы этой игры. И понеслось.
Меня всегда не удовлетворял тот стандартный низко полигональный транспорт во всех сериях игры и благо с этим справились, так же появились моды на машинки для GTA SA. И вот вышла GTA SA на iOS. И я подумал, а почему бы не поставить туда новые машинки? Я подумал и начал делать.

Много действия

До этого я ни разу не работал с уже готовыми программами для iOS. Первым делом, я попытался распаковать его архиватором 7z, который успешно справился с работой и предоставил мне папку Payload, в который и было то, что мне нужно.
Папка gta3sa.app — корень игры, тут полностью все файлы игры. Посмотрев структуру GTA SA для PC можно увидеть, что там используется небольшая иерархия папок, которая хранит в себе файлы по категориям:

  • Anim
  • Audio
  • Data
  • Models
  • Movies
  • Text

Нетрудно догадаться, что лежит в каждой из них. Так этого в портированной игре я не увидел. Все файлы были свалены в одну кучу, что конечно может быть и удобно, но крайне непривычно после PC версии игры.

И так, я задался провести небольшую работу в виде замены машинки для игры. Вспоминая опыт былых лет по редактирования PC версии GTA SA, было решено проверить внутреигровой архив gta3.img в котором должны храниться не только 3d-модели и текстуры машин, но и другие файлы отвечающие за устройство игрового города. Файл был успешно найден и вес его составлял 276 мб, для сравнения тот же файл, но для PC версии игры весит порядка 900 мб. Для нас это значит, что безусловно файлы в архиве значительно ужаты.

Внутреигровые архивы формата *.img в то время спокойно открывала утилита IMGTool 2.0, но погуглив увидел, что сейчас есть более усовершенствованная программа для этих действий, которая отличается более быстрым исполнением своей работы. Имя её GTA-SA Crazy IMG Editor.

Я попытался открыть игровой архив gta3.img через эту программу… И да! Он открылся! Формат не поменялся! Значит есть надежда, что и остальные форматы не трогались! Используем поиск и ищем машину picador, это машина Райдера, вашего соседа.

Экспортировав файл машины picador.dff, файл модели машины, я пока не нашел файл с текстурами той же машины. PC версии игры как модель, так и текстуры всё лежало в gta3.img . К сожалению, посмотреть в 3d-редакторе файл машины не получилось, файл был заблокирован, но всё так же не терял надежды и продолжил свою работу.

По своей натуре я любитель немецкого автопрома, поэтому было решено заменять игровую модель на BMW 750Li 1995 года.
Специально для игры была найдена машина с небольшим полигонажем, относительно, за авторством Greengiant. Ссылку прилагать не буду, всё находиться в интернете за пару минут. Машину заменил, настройки машины прописал в файлах vehicles.ide, handling.cfg, carcols.dat. Инструкция по установки машины прилагается в самом архиве с моделью. Вот и всё, машина настроена и заслана в игру. Теперь изменённые файлы либо упаковываем снова в IPA архив, либо через программу iTools , открываем папку приложения GTA SA и в самом приложении находим папку gta3sa.app в которую и копируем наши изменённые файлы. Запускаем игру и смотрим, что у нас вышло:

Своя GTA San Andreas на iOS

Так же можно заметить, что чуток просел FPS, это из-за сравнительно большего полигонажа модели, но думаю, что на аппаратах от Apple более мощных, чем мой iPhone 4s никаких заметных проседаний FPS быть не должно. Вес этой модели 1,5 МБ, до этого ставил BMW X5 весом в 3 МБ, проседание FPS было более заметное, но играбельное.

Своя GTA San Andreas на iOS

Машина есть, едет правильно, не переворачивается, но где же текстуры? Рядом с img архивом лежал файл с расширением pvr.dat, немного погуглив я узнал, что для этого формата уже написан редактор — TXDFucker за авторством Nick7 aka Lego. C его помощью я импортировал в игру текстуры машины. Хотя тут тоже есть свои подводные камни, в игре есть ограничение на количество текстур, т.е. что бы импортировать 8 текстур машины, мне пришлось удалить 8 текстур из игры. Не особо понятно, для чего сделано такое ограничение, ну да Бог с ним. И вот, что получилось в итоге:

Своя GTA San Andreas на iOS
Своя GTA San Andreas на iOS
Своя GTA San Andreas на iOS
Своя GTA San Andreas на iOS

Так же на одном форуме по серии игр ГТА пользователь с ником Frank.s написал, что у него получилось очистить карту ГТА и приложил не только скриншот, но и файлы с очищенной картой.

image

Я думаю стоит ждать волну моддинга для мобильных версий ГТА и переносов различных старых модов в виде карт и новых моделей.
Конечно, может старые модели iphone не потянут новых модов, но с новыми устройствами от Apple всё должно быть хорошо.
Моддинг для устройств на Android немного отличается, но не значительно, поэтому потенциал в использовании модификаций на этой системе будет больше, чем на iOS.

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

Всего вам самого наилучшего! Спасибо!
Хочу отдельно поблагодарить Nick7, который помог мне с добавлением текстур в игру.

Автор: Rosad

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js