Создание машины — различия между версиями

Материал из GTAModding.ru
Перейти к: навигация, поиск
(требуется переоформить статью в соответствии с правилами)
 
(не показаны 2 промежуточные версии 1 участника)
Строка 1: Строка 1:
 
{{К удалению}}
 
{{К удалению}}
 
{{Stub}}
 
{{Stub}}
=Вступление=
+
==Инструментарий==
Теперь, когда есть мод SaMoreVehicles(by Alexander), можно спокойно добавлять новые машины. Сейчас это подробно опишется.
+
Нам понадобятся следующие программы и плагины:
Значит так. Добавление новых машин дело не особо хлопотное, но главное ничего не забыть и не перепутать. Для начала скажу что так же лучше установить себе плагин от Alexander'a San Andreas Vehicle Audio Editor Ultimate 1.3
+
* [http://alexander.sannybuilder.com/Files/VehicleAudioEditorUltimate.rar Vehicle Audio Editor Ultimate] [Loader version]
 +
* [http://alexander.sannybuilder.com/Files/SAMoreVehicles.rar More Vehicles PlugIn]
 +
* [http://alexander.sannybuilder.com/Files/SAHandlingAdderUltimate.rar Car Handling Adder Ultimate] (настоятельно рекомендуем избегать добавления своих хэндлингов; поэтому лучше всего этот пункт опустить)
 +
* [http://alexander.sannybuilder.com/Files/ASILoader.rar ASI Loader] (может идти вместе с Handling Adder; те, у кого установлена CLEO, его уже имеют)
 +
* [http://gtasync.com/files/SA_Limit_Adjuster.rar Limit Adjuster]
 +
* [http://www.playground.ru/download/?file=6211&mirror=&from=http GXT Editor] (опять же, те, у кого есть CLEO, могут воспользоваться [http://cleo.sannybuilder.com/plugins/gxthook.rar GXT Hook]'ом)
 +
==Порядок действий==
 +
* Все вышеуказанные файлы разархивировать в корневую директорию (т.е. в ту папку, где расположен '''gta_sa.exe''').
 +
* Выбрать уже готовую и рабочую модель транспортного средства. Должно быть два файла (.dff и .txd). Например, пусть будут sabretur.dff и sabretur.txd (кое-где упоминаются лимиты на название, что-то вроде 14 символов).
 +
* При помощи любого редактора IMG-архивов вставить оба файла в '''models/gta3.img''' и пересобрать (''Rebuild'').
 +
* Открыть '''salimits.ini''' в корневой директории; найти строку
 +
<source lang="text">#Vehicle Models=212</source>
 +
и заменить её на
 +
<source lang="text">Vehicle Models=213</source>
 +
Либо, говоря другими словами, надо убрать символ #, чтобы игра читала эту строку, и увеличить число, поднимая тем самым лимит.
 +
* Открыть '''data\vehicles.ide''' и после строки
 +
<source lang="text">611, utiltr1, utiltr1...</source>
 +
добавить в новую:
 +
<source lang="text">612, sabretur, sabretur, car, SABRE, SABRETU, null, normal, 10, 7, 2ff0, -1, 0.7, 0.7, 0</source>
 +
612 – свободный идентификатор (ID), который можно узнать из '''Free IDs.txt''' (должен быть в одном из архивов);
 +
дальше названия DFF- и TXD-файлов добавляемого транспорта без расширения;
 +
car – тип машины;
 +
SABRE – ссылка на строку в '''data/handling.cfg''' (Handling Adder, по заявлению самого автора, работает нестабильно, поэтому рекомендуется использовать уже имеющиеся хэндлинги. К тому же, там есть неиспользуемые, которые можно изменять по желанию);
 +
SABRETU – GXT-код текста, появляющегося при посадке в транспорт (лимит = 7 знаков); normal – класс машины; 10 – частота появления на дорогах (может варьироваться от 1 до 10 включительно); 0.7 и 0.7 – размеры передних и задних колёс (чем выше, тем больше по диаметру, но теряет в ширине); последний параметр отвечает за тюнинг (-1 – недоступен, 0 – TransFender, 1 – Wheel Arch Angels, 2 – Loco Low Co.).
 +
* Открыть '''VehicleAudioData.ini''' в корневой директории. Внимательно посмотри на идентификаторы, указанные в FromID...ToID; твой должен входить в этот отрезок (612 входит, значит всё в порядке). Если же нет, то можно или увеличить число в ToID, или создать новый отрезок, типа этого:
 +
<source lang="text">[IDs]
 +
Number_of_pairs=2
 +
FromID_1=1
 +
ToID_1=999
 +
FromID_2=1194
 +
ToID_2=9999
 +
</source>
 +
Теперь выбери транспортное средство, звуки которого кажутся тебе наиболее подходящими. Например, ты выбрал Landstalker. Его ID = 400. Значит, нужно скопировать все его параметры (они расположены от [400] до [401]) и вместо 400 вписать твой (612). И полученный текст
 +
<source lang="text">[612]
 +
CarType=0
 +
EngineOnSound=99
 +
EngineOffSound=98
 +
Unknown4=0
 +
Unknown5=0,779999971389771
 +
Unknown6=1
 +
HornTon=7
 +
HornHigh=1
 +
DoorSound=2
 +
RadioNum=8
 +
RadioType=0
 +
Unknown12=0
 +
Unknown13=0
 +
Unknown14=0
 +
Unknown15=0
 +
Unknown16=0</source>
 +
вставить в конец файла. Не забудь сохранить.
 +
* Не будем затрагивать '''HandlingAdder.ini'''; если хочешь придать своему транспорту уникальную управляемость, задействуй уже имеющиеся хэндлинги.
  
Хочу добавить. Все текстовые файлы из папки дата удобней всего редактировать не в чем нибудь а в Sanny Builder'e. Попробуйте открыть какой либо файл в блокноте и в билдере, и тогда вы увидите разницу.
+
Ну вот и всё. Теперь можно проверить свою машину в игре, заспаунить через Car Spawner либо использовать в скриптах, к примеру.
 +
Но есть ещё некоторые нюансы, о которых стоит упомянуть.
 +
==Необязательные действия==
 +
Все нижеуказанные файлы находятся в папке '''data'''.
 +
* Открой '''carcols.dat''' и добавь цвета своему транспорту (иначе он будет чёрный). В нашем случае нужная строка расположится между ''sabre, ...'' и ''sadler, ...'' и будет выглядеть как-то так:
 +
<source lang="text">sabretur, 61,39, 39,61</source>
 +
* Если хочешь, чтобы твой автомобиль ездил по улицам, надо прописать его в '''cargrp.dat'''. Пример:
 +
<source lang="text">sabretur, blade # Gang 4 (SFR — MEX)</source>
 +
* '''carmods.dat''' отвечает за детали тюнинга. Пропиши свою машину, если ей можно их добавлять.
 +
* Добавь текст в .gxt-файл через ''GXT Editor'': открой '''text\american.gxt''', выбери ''Entry > Add'' (''Запись > Добавить''), введи код, использованный в '''vehicles.ide''' (SABRETU), нажми ОК, в текстовое поле справа набери желаемую надпись, которую хочешь видеть при посадке в транспортное средство, сохрани файл. Или, если у тебя установлены ''CLEO'' и ''GXT Hook'', можешь поступить проще: в папке '''cleo\cleo_text''' создай файл с расширением .fxt (''text.fxt'', к примеру) и пропиши свой текст там:
 +
<source lang="text">SABRETU Sabre Turbo</source>
 +
==Частые ошибки и их возможные решения==
 +
* Машина сидит на брюхе и мгновенно испаряется при касании. Это происходит из-за неверной ссылки на хэндлинг. Проверь ещё раз '''data\vehicles.ide''', убедись, что использованная тобой строка (SABRE, например) существует в '''handling.cfg'''.
 +
* Машина не издаёт никаких звуков, кроме «дзинь-дзинь» как у велосипеда. Это из-за ошибки в '''VehicleAudioData.ini'''; указан не тот ID, к примеру.
  
Первое что нужно сделать, так это закинуть файлы новой тачки в gta3.img
+
В принципе, всё. Удачи.
Потом открыть файл vehicles.ide который лежит в папке data.
+
Выберите среди всех строк нужную вам по типу машину(например если добавляете спорткар, то берите за основу строку Инфернуса, Туризмо, Супер Джи Ти или другоу спортивной машины. Аналогично и с другими классами автомобилей. Давайте добавим тачку, которая по характеристикам походит на Лэндсталкер.
+
Открываем файл vehicles.ide в блокноте и видим следующее:
+
Code:
+
 
+
#
+
# see default.ide for id ranges
+
#
+
# flags:
+
# 0x01 gets streamed out after 1 car is generated (for dumpsters, MrWoopy etc)
+
# 0x02 Don't use. Used by code internally.
+
 
+
cars
+
# Id,  Model name,  Txd name,  Type    HandlingId  Game name,  Anims  Class    Frq  flags  Comprules
+
#                             
+
# cars have two extra fields wheelmodelId and wheel scale
+
# planes have one extra field model id of low level of detail
+
[u][i][b]400,  landstal,  landstal,  car,    LANDSTAL,  LANDSTK,  null,  normal,  10,  0,  0,    -1, 0.768, 0.768,  0[/b][/i][/u]
+
 
+
401,  bravura,  bravura,  car,    BRAVURA,  BRAVURA,  null,  poorfamily,  10,  0,  0,    -1, 0.74, 0.74,    0
+
 
+
402,  buffalo,  buffalo,  car,    BUFFALO,  BUFFALO,  null,  executive,  5,  0,  0,    -1, 0.7, 0.7,    0
+
 
+
403,  linerun,  linerun,  car,    LINERUN,  LINERUN,  truck,  worker,    6,  0,  0,    -1, 1.1, 1.1,    -1
+
 
+
Выделяем первую строку которая содержит в себе характеристики Лэндсталкера(она выделена)
+
и копируем её через Ctrl+C.
+
Далее прокручиваем файл вниз и видим следующее:
+
Code:
+
 
+
600,  picador,  picador,  car,    PICADOR,  PICADOR,  null,  normal,  10,  0,  0,    -1, 0.7, 0.7,    0
+
 
+
601,  swatvan,  swatvan,  car,    SWATVAN,  SWATVAN,  van,  big,    4,  0,  0,    -1, 1.366, 1.366,  -1
+
 
+
602,  alpha,    alpha,    car,    ALPHA,    ALPHA,    null,  executive,  10,  0,  0,    -1, 0.7, 0.7,    0
+
 
+
603,  phoenix,  phoenix,  car,    PHOENIX,  PHOENIX,  null,  normal,    7,  0,  0,    -1, 0.7, 0.7,    0
+
 
+
604,  glenshit,  glenshit,  car,    GLENDALE,  GLENSHI,  null,  normal,    5,  0,  0,    -1, 0.7, 0.7,    -1
+
 
+
605,  sadlshit,  sadlshit,  car,    SADLER,    SADLSHI,  null,  normal,  10,  0,  0,    -1, 0.7, 0.7,    -1
+
 
+
606,  bagboxa,  bagboxa,  trailer,  BAGBOXA,  BAGBOXA,  null,  ignore,    4,  0,  0,    -1, 0.6, 0.6,    -1
+
 
+
607,  bagboxb,  bagboxb,  trailer,  BAGBOXB,  BAGBOXB,  null,  ignore,    4,  0,  0,    -1, 0.6, 0.6,    -1
+
 
+
608,  tugstair,  tugstair,  trailer,  STAIRS,  TUGSTAI,  null,  ignore,    4,  0,  0,    -1, 0.6, 0.6,    -1
+
 
+
609,  boxburg,  boxburg,  car,    BOXBURG,  BOXBURG,  van,  worker,  10,  0,  0,    -1, 0.76, 0.76,    -1
+
 
+
610,  farmtr1,  farmtr1,  trailer,  FARM_TR1,  FARMTR1,  null,  ignore,    4,  0,  0,    -1, 0.32, 0.32,    -1
+
 
+
611,  utiltr1,  utiltr1,  trailer,  UTIL_TR1,  UTILTR1,  null,  ignore,    4,  0,  0,    -1, 0.68, 0.68,    -1
+
 
+
end
+
 
+
Между строкой начинающейся на '611,    utiltr1,    utiltr1,' и end вставляем скопированную ранее строку(Ctrl + V).
+
Первый шаг сделан. Теперь рассмотрим строку которую мы вставили.
+
Самое первое число этой строки - это id автомобиля. Изменим его на 612.
+
Второе и третье слова обозначают имя модели и текстуры машины соответственно. Эти имена НЕ ДОЛЖНЫ совпадать с именами заменяемой машины.
+
Четвертое слово обозначает тип машины. В нашем случае это CAR. Так его и оставим.
+
Пятое слово обозначает имя машины, которое будет использоваться в файле HANDLING.CFG. Поменяем его на NEWCAR.
+
Шестое слово обозначает имя машины в игре, то есть ключ с таким именем будет содержать в себе название машины. Этот ключ надо так же добавить в american.gxt. Или можно сделать хитрее, добавив нужный ключ с помощь GXT Hook и FXT Editor'a.
+
Остальные значения рассматривать не будем. Изменение оных может привести к нестабильности игры. Да и к тому же я и сам не зная что они меняют.
+
Теперь пришла пора редактировать файл HANDLING.CFG Тут можно пойти двумя путями. Редактировать сам файл через блокнот или попробовать использовать плагин Alexander'a  San Andreas Vehicle Handling Adder.
+
Но я представлю туториал основываясь на первом пути.
+
Открываем файл HANDLING.CFG и так же как в случае с файлом vehicles.ide находим и копируем строку, которая относится к нашему Лэндсталкеру. Потом можно прямо над этой строкойвставить скопированную. Например так:
+
Code:
+
 
+
; > THE DATA <
+
; ----- cars ---------------------------------
+
;
+
; name      mass    turnmass  drag  centreofmass  boy traction          transmission            brakes      steer  suspension      suslines        antidive  seat col  cost      mflags      hflags      lights
+
; A          B        C        D      F  G    H    I  J    K    L      M N    O    P Q  R      S    T U    V      a    b    c    d    e    f    g      aa  ab  ac    af      ag      ah ai aj
+
LANDSTAL    1700.0    5008.3  2.5    0.0 0.0 -0.3  85  0.75 0.85 0.5    5 160.0 25.0 20.0 4 D  6.2  0.60 0 35.0    2.4  0.08  0.0  0.28 -0.14 0.5  0.25    0.27 0.23 25000  20      500002    0  1  0
+
 
+
LANDSTAL    1700.0    5008.3  2.5    0.0 0.0 -0.3  85  0.75 0.85 0.5    5 160.0 25.0 20.0 4 D  6.2  0.60 0 35.0    2.4  0.08  0.0  0.28 -0.14 0.5  0.25    0.27 0.23 25000  20      500002    0  1  0
+
 
+
BRAVURA      1300.0    2200.0  1.7    0.0 0.3  0.0  70  0.65 0.80 0.52    5 160.0 15.0 10.0 F P  08.0  0.80 0 30.0    1.3  0.08  0.0  0.31 -0.15 0.57 0.0    0.26 0.50 9000    1      1      0  0  0
+
 
+
BUFFALO      1500.0    4000.0  2.0    0.0 0.0 -0.1  85  0.7  0.9  0.5    5 200.0 28.0 5.0  R P  11.0  0.45 0 30.0    1.2  0.12  0.0  0.28 -0.24 0.5  0.4    0.25 0.50 35000  2800    10200000  1  1  0
+
 
+
LINERUN      38
+
 
+
Во вставленной строке заменяем слово LANDSTAL на то которое мы написали пятым по счету в файле vehicles.ide. В данном случае это NEWCAR.
+
Сохраняем изменения.
+
Теперь осталось только добавить новой машине озвучку через плагин Alexander'a и ключ с названием машины в american.gxt
+
Да, и я думаю не надо повторять что нужно перед редактированием любых файлов делать их резервные копии.
+
Удачи!
+

Текущая версия на 19:27, 13 января 2011

Deletion icon.png Эта страница предлагается к удалению.
Один из участников предложил удалить данную страницу. Вы можете высказать свое мнение на странице обсуждения.

Содержание

Инструментарий

Нам понадобятся следующие программы и плагины:

* Vehicle Audio Editor Ultimate [Loader version]
* More Vehicles PlugIn
* Car Handling Adder Ultimate (настоятельно рекомендуем избегать добавления своих хэндлингов; поэтому лучше всего этот пункт опустить)
* ASI Loader (может идти вместе с Handling Adder; те, у кого установлена CLEO, его уже имеют)
* Limit Adjuster
* GXT Editor (опять же, те, у кого есть CLEO, могут воспользоваться GXT Hook'ом)

Порядок действий

  • Все вышеуказанные файлы разархивировать в корневую директорию (т.е. в ту папку, где расположен gta_sa.exe).
  • Выбрать уже готовую и рабочую модель транспортного средства. Должно быть два файла (.dff и .txd). Например, пусть будут sabretur.dff и sabretur.txd (кое-где упоминаются лимиты на название, что-то вроде 14 символов).
  • При помощи любого редактора IMG-архивов вставить оба файла в models/gta3.img и пересобрать (Rebuild).
  • Открыть salimits.ini в корневой директории; найти строку
#Vehicle Models=212

и заменить её на

Vehicle Models=213

Либо, говоря другими словами, надо убрать символ #, чтобы игра читала эту строку, и увеличить число, поднимая тем самым лимит.

  • Открыть data\vehicles.ide и после строки
611, utiltr1, utiltr1...

добавить в новую:

612, sabretur, sabretur, car, SABRE, SABRETU, null, normal, 10, 7, 2ff0, -1, 0.7, 0.7, 0

612 – свободный идентификатор (ID), который можно узнать из Free IDs.txt (должен быть в одном из архивов); дальше названия DFF- и TXD-файлов добавляемого транспорта без расширения; car – тип машины; SABRE – ссылка на строку в data/handling.cfg (Handling Adder, по заявлению самого автора, работает нестабильно, поэтому рекомендуется использовать уже имеющиеся хэндлинги. К тому же, там есть неиспользуемые, которые можно изменять по желанию); SABRETU – GXT-код текста, появляющегося при посадке в транспорт (лимит = 7 знаков); normal – класс машины; 10 – частота появления на дорогах (может варьироваться от 1 до 10 включительно); 0.7 и 0.7 – размеры передних и задних колёс (чем выше, тем больше по диаметру, но теряет в ширине); последний параметр отвечает за тюнинг (-1 – недоступен, 0 – TransFender, 1 – Wheel Arch Angels, 2 – Loco Low Co.).

  • Открыть VehicleAudioData.ini в корневой директории. Внимательно посмотри на идентификаторы, указанные в FromID...ToID; твой должен входить в этот отрезок (612 входит, значит всё в порядке). Если же нет, то можно или увеличить число в ToID, или создать новый отрезок, типа этого:
[IDs]
Number_of_pairs=2
FromID_1=1
ToID_1=999
FromID_2=1194
ToID_2=9999

Теперь выбери транспортное средство, звуки которого кажутся тебе наиболее подходящими. Например, ты выбрал Landstalker. Его ID = 400. Значит, нужно скопировать все его параметры (они расположены от [400] до [401]) и вместо 400 вписать твой (612). И полученный текст

[612]
CarType=0
EngineOnSound=99
EngineOffSound=98
Unknown4=0
Unknown5=0,779999971389771
Unknown6=1
HornTon=7
HornHigh=1
DoorSound=2
RadioNum=8
RadioType=0
Unknown12=0
Unknown13=0
Unknown14=0
Unknown15=0
Unknown16=0

вставить в конец файла. Не забудь сохранить.

  • Не будем затрагивать HandlingAdder.ini; если хочешь придать своему транспорту уникальную управляемость, задействуй уже имеющиеся хэндлинги.

Ну вот и всё. Теперь можно проверить свою машину в игре, заспаунить через Car Spawner либо использовать в скриптах, к примеру. Но есть ещё некоторые нюансы, о которых стоит упомянуть.

Необязательные действия

Все нижеуказанные файлы находятся в папке data.

  • Открой carcols.dat и добавь цвета своему транспорту (иначе он будет чёрный). В нашем случае нужная строка расположится между sabre, ... и sadler, ... и будет выглядеть как-то так:
sabretur, 61,39, 39,61
  • Если хочешь, чтобы твой автомобиль ездил по улицам, надо прописать его в cargrp.dat. Пример:
sabretur, blade	# Gang 4 (SFR — MEX)
  • carmods.dat отвечает за детали тюнинга. Пропиши свою машину, если ей можно их добавлять.
  • Добавь текст в .gxt-файл через GXT Editor: открой text\american.gxt, выбери Entry > Add (Запись > Добавить), введи код, использованный в vehicles.ide (SABRETU), нажми ОК, в текстовое поле справа набери желаемую надпись, которую хочешь видеть при посадке в транспортное средство, сохрани файл. Или, если у тебя установлены CLEO и GXT Hook, можешь поступить проще: в папке cleo\cleo_text создай файл с расширением .fxt (text.fxt, к примеру) и пропиши свой текст там:
SABRETU Sabre Turbo

Частые ошибки и их возможные решения

  • Машина сидит на брюхе и мгновенно испаряется при касании. Это происходит из-за неверной ссылки на хэндлинг. Проверь ещё раз data\vehicles.ide, убедись, что использованная тобой строка (SABRE, например) существует в handling.cfg.
  • Машина не издаёт никаких звуков, кроме «дзинь-дзинь» как у велосипеда. Это из-за ошибки в VehicleAudioData.ini; указан не тот ID, к примеру.

В принципе, всё. Удачи.