#1 06-02-2007 18:05

yelmi
Registered: 10-12-2006
Posts: 134
Website

Косметическое изменение cutscene.

Каждая сцена состоит из трех файлов:
1.    bcesa4w.ifp – файл анимаций;
2.    bcesa4w.cut – я бы назвал его файлом «ini», то есть файл в котором находится информация о персонажах, текстах и т.п.
3.    bcesa4w.dat - ??? Что за параметры я не знаю. Быть может это связано с расположением камеры, актеров и т.д. впрочем для косметического изменения он нам не понадобится.
Анимацию мы трогать не будем, а рассмотрим содержание файла bcesa4w.cut.

info
offset -544.632996 -184.792999 77.403000
end
model
1, csplay, csplay
1, cswoozie, cswoozie
1, SOFYBU, SOFYBU
1, csbcard, csbcard
1, csmoneysing, csmoneysing
1, csbravura, csbravura
1, CsZR350b, CsZR350b
end
text
5300,1450,BCE4w12
7462,1977,BCE4w00
10076,3547,BCE4w01
14229,2620,BCE4w02
18950,2808,BCE4w03
22451,3390,BCE4w04
25852,4526,BCE4w05
30214,1713,BCE4w06
32091,1603,BCE4w07
35127,4555,BCE4w08
40616,1668,BCE4w09
43229,1115,BCE4w10
46824,3484,BCE4w11
end
uncompress
end
motion
range off
quick off
csplay_x:root,1
cswoozie_x:root,1
SOFYBU:Root,1
csbcard:dummybcard,0
csmoneysing:Dummy01,0
csbravura:bravura,0
CsZR350:zr350,0
end

блок:

info
offset -544.632996 -184.792999 77.403000
end
это координаты XYZ сцены.   

Блок:

model
1, DFF, TXD
. . . . . . .
end
В этом блоке находится перечень всех моделей сцены (что за число 1 я не знаю)   

Блок:
text
5300,1450,BCE4w12
. . . . . . .
end
 
BCE4w12 - текстовое сопровождение ролика
5300,1450 – не уверен, но похоже это связано с временем показа текста .

Блок:
motion
range off
quick off
csplay_x:root,1
cswoozie_x:root,1
SOFYBU:Root,1
. . . . .
end

здесь описывается применяемая анимация для каждого актера, предмета, авто сцены.

Кстати в сцене можно подгружать персонажи не только из cutscene.img (csplay, csplay
) но и из gta3.img (SOFYBU, SOFYBU).

Для редактирования bcesa4w.cut блокнотом пользоваться не советую, поскольку игра отказывается принимать такую редакцию. А так как других редакторов нет, по крайней мере мне они не известны, то приходится прибегнуть к помощи Hex Workshop.
Открываем bcesa4w.cut в Hex Workshop.
Заменим в блоке model
1, cswoozie, cswoozie на 1, csclaude, csclaude
1, SOFYBU, SOFYBU на 1, BFYPRO, BFYPRO

также в блоке motion
заменим
cswoozie_x:root,1 на csclaude_x:root,1
SOFYBU:Root,1 на BFYPRO:Root,1

Открываем bcesa4w.ifp в Hex Workshop.
Ищем cswoozie и меняем на csclaude, а так же SOFYBU на BFYPRO.

Есть одно но количество букв в названиях моделей должно совпадать иначе работать не будет.
Сохраняем оба файла, не стоит их переименовывать, поскольку добавить новую сцену не получится.
Открываем cuts.img находим bcesa4w.ifp и заменяем (не удаляем) его на тот что мы правили. Тоже проделываем и с bcesa4w.cut.

Вот скрин моего изменения сцены:
http://yelmi.narod.ru/downloads/cut.jpg

Архив:
http://yelmi.narod.ru/downloads/cut.rar   (1,2 mb)

Last edited by yelmi (06-02-2007 18:15)

Offline

#2 06-02-2007 20:51

Alexander
Registered: 19-08-2006
Posts: 184
Website

Re: Косметическое изменение cutscene.

гут , что ещё написать ... только даже была вроди прога по редактированию катсцен , то для ВС/ГТА3

Offline

#3 06-02-2007 23:21

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

Alexander wrote:

... только даже была вроди прога по редактированию катсцен , то для ВС/ГТА3

Есть ссылки или хотя бы как называется?

Offline

#4 07-02-2007 04:34

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

info
offset -544.632996 -184.792999 77.403000
end
это координаты XYZ сцены.

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

Есть опкоды:

0244: set_cutscene_pos 0@ 1@ 2@ // устанавливает новый offset
08D1: store_cutscene_pos_to 0@ 1@ 2@ // читает текущий offset

В кутсценах используются особые текстуры, модели и пр. Их имена начинаются с префикса CS (CutScene).

См. например

txdcut.ide,
clothes.dat (# cutscene replacement models)

Вместо модели игрока NULL используется модель CSPlay

Last edited by Seemann (07-02-2007 07:22)

Offline

#5 07-02-2007 07:01

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Используемые блоки в .cut файлах


info
общая информация о кутсцене. внутри только параметр offset

offset
Позиция кутсцены. Используется .dat файлами при калькуляции координат при движении камер и пр.

info
offset -378.535004 2239.679932 41.487000
end

<hr>

extracol
Extra Colours
Цвет интерьера. Используется только в роликах внутри интерьеров?

Используется например в sweet3a.cut

extracol
12
end

<hr>

peffect
он же Particle Effect.

Используется например в ryder2a.cut

peffect
cigarette_smoke,0,-1,1,3,0.0,0.0,0.0,0.0,0.0,-1.0
end

параметры: имя эффекта,время начала в мс,время окончания в мс,число3,bone*,координата X, координата Y, координата Z,флоат1,флоат2,флоат3


*bone - часть тела актера, к которой прицепляется эффект/имя объекта
<hr>

remove
убирает объект?

используется например в sweet2a.cut

remove
2523.695,-1678.6,14.492,Gen_doorEXT03
end

параметры: координаты XYZ, имя объекта
<hr>

attach
не использовалось в оригинальных файлах. видимо применяется для того, чтобы прицепить объект как в опкоде 069B или 069A?

параметры: число,число,число
<hr>

uncompress
не сжимать текстуры?

используется например в crasv2b.cut

uncompress
CsColt45-2
CsHernandez
CsPlay
CsSpade
end

параметр: имя текстуры
<hr>

model
В этом блоке находится перечень всех моделей сцены

Лимит: максимум 50 моделей/текстур.

используется например в cat_2.cut

model
1, cs9mm, cs9mm
1, CsCatalina, CsCatalina
1, CsPlay, CsPlay
end

параметры: 1 (параметр не используется), модель (DFF), текстура (TXD)
<hr>

text
перечень GXT ключей

Лимит: максимум 64 строки.

используется например в prolog1.cut

1596,4066,PRO@01
7215,1397,MOBRING
8739,476,PRO@02
9499,811,PRO@03
10644,1389,PRO@04
12439,2718,PRO@05

параметры: время в мс после начала кутсцены, когда показывать текст; время на экране в мс; GXT-ключ
<hr>

motion
блок не используется
<hr>

Last edited by Seemann (09-02-2007 04:31)

Offline

#6 07-02-2007 12:17

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

В кутсценах используются особые текстуры, модели и пр. Их имена начинаются с префикса CS (CutScene)

Не всегда, например, тот же CSPlay находится в gta3.img.

Отлично. Единственное что я не нашел так это звуки. Похоже, что они прописаны в анимации, впрочем, нужно проверить.

Offline

#7 07-02-2007 12:45

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Единственное что я не нашел так это звуки

да там непонятно, тоже с текстами, они иногда выводятся через SCM, иногда самой анимацией.

Не всегда, например, тот же CSPlay находится в gta3.img.

ну, а где ж ему быть то?

Offline

#8 07-02-2007 13:53

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Структура .dat-файлов

.dat -файлы состоят из 4 блоков. Перед каждым из блоков стоит число, указывающее на число строк в блоке.

У каждого блока своя задача, число строк между ними может не совпадать.

Каждая строка в блоке начинается с числа, которое означает время кадра. После первого числа стоит f

рассмотрим на примере prolog3.dat

первый блок, значение неизвестно

32		
0.000000f	66.482513	66.482513	66.482513
0.033335f	66.482513	66.482513	66.482513
3.432335f	66.482513	66.482513	66.482513
3.433334f	38.385883	38.385883	38.385883
10.507334f	38.385883	38.385883	38.385883
10.507334f	73.209091	73.209091	73.209091
19.054335f	73.208534	73.208534	73.208534
24.132334f	73.208206	73.208206	73.208206
27.467333f	73.208015	73.208015	73.208015
27.467333f	73.131004	73.131004	73.131004
29.403334f	73.131004	73.131004	73.131004
29.403334f	58.053219	58.053219	58.053219
34.932333f	58.054138	58.054138	58.054138
34.933332f	40.945454	40.945454	40.945454
38.452333f	40.945454	40.945454	40.945454
38.453333f	73.209091	73.209091	73.209091
51.532331f	73.209091	73.209091	73.209091
51.533331f	73.209091	73.209091	73.209091
55.099333f	73.209091	73.209091	73.209091
55.099333f	73.209091	73.209091	73.209091
57.449331f	73.209091	73.209091	73.209091
59.766333f	73.209091	73.209091	73.209091
62.622335f	73.209091	73.209091	73.209091
62.622335f	33.263638	33.263638	33.263638
65.860334f	33.263638	33.263638	33.263638
65.860334f	38.709007	38.709007	38.709007
69.366331f	38.709007	38.709007	38.709007
69.366331f	73.209091	73.209091	73.209091
72.117331f	73.208939	73.208939	73.208939
72.117331f	73.206947	73.206947	73.206947
79.999334f	39.065083	39.065083	39.065083
79.999998f	39.065083	39.065083	39.065083
;

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

второй блок, значение неизвестно

4			
0.000000f	0.000000	0.000000	0.000000
0.033335f	0.000000	0.000000	0.000000
79.999334f	0.000000	0.000000	0.000000
79.999998f	0.000000	0.000000	0.000000
;

третий блок, положение камеры (2-й, 3-й, 4-й стобцы) в конкретный период сцены (1-й столбец)

38									
0.000000f	8.805551	-3.719353	0.183409	8.805551	-3.719353	0.183409	8.805551	-3.719353	0.183409
0.033335f	8.805551	-3.719353	0.183409	8.815150	-3.721307	0.183209	8.451626	-3.647312	0.190772
1.262335f	7.757018	-3.505925	0.205222	7.757018	-3.505925	0.205222	7.757018	-3.505925	0.205222
3.432335f	7.757018	-3.505925	0.205222	7.757018	-3.505925	0.205222	-275371968.000000	-15845754.000000	857315.000000
3.433334f	-10.141258	-4.535847	0.260944	275371968.000000	15845745.000000	-857314.562500	-9.883165	-4.598759	0.285746
10.507334f	-9.366828	-4.724620	0.335365	-9.624921	-4.661708	0.310563	446698016.000000	-691826432.000000	1145225984.000000
10.527334f	-7.915964	-6.971656	4.055032	-446698016.000000	691826432.000000	-1145225984.000000	-5.932194	-6.549326	4.272332
19.054335f	-1.950393	-5.701630	4.708494	-3.934162	-6.123960	4.491194	-1.945938	-5.700681	4.708671
19.074335f	-2.539562	-4.815588	0.098867	-2.539562	-4.815588	0.098867	-2.539562	-4.815588	0.098867
24.132334f	-2.327205	-4.971255	0.156193	-2.327205	-4.971255	0.156193	-2.327205	-4.971255	0.156193
24.133333f	-2.246556	-8.462526	0.190634	-2.246556	-8.462526	0.190634	-2.246556	-8.462526	0.190634
27.467333f	-2.928668	-7.624153	0.219830	-2.928668	-7.624153	0.219830	-2.928668	-7.624153	0.219830
27.487333f	1.742217	-5.106990	1.312496	1.742217	-5.106990	1.312496	1.742217	-5.106990	1.312496
29.403334f	1.742217	-5.106990	1.312496	1.742217	-5.106990	1.312496	1.742217	-5.106990	1.312496
29.423334f	-2.454746	-4.741591	0.103069	-2.454746	-4.741591	0.103069	-2.454746	-4.741591	0.103069
34.932335f	-2.325624	-4.631198	0.109345	-2.368498	-4.667853	0.107261	-2.325616	-4.631192	0.109345
34.933334f	-1.598422	-4.319922	0.763830	-1.598422	-4.319922	0.763830	-1.598422	-4.319922	0.763830
38.452332f	-1.652100	-4.233980	0.813902	-1.652100	-4.233980	0.813902	-1.652100	-4.233980	0.813902
38.453331f	0.917529	-3.281780	1.049372	0.917529	-3.281780	1.049372	0.917529	-3.281780	1.049372
40.816338f	0.941680	-3.528459	1.107413	0.948475	-3.410495	1.092858	0.910867	-4.063415	1.173414
51.532333f	0.658385	-4.676414	1.254662	0.658385	-4.676414	1.254662	0.658385	-4.676414	1.254662
51.533333f	-0.563745	-4.737701	1.339890	-0.563745	-4.737701	1.339890	-0.563745	-4.737701	1.339890
55.099335f	-0.563745	-4.737701	1.339890	-0.563745	-4.737701	1.339890	-0.563745	-4.737701	1.339890
55.119335f	-0.040242	-4.322056	1.241147	-0.040242	-4.322056	1.241147	-0.040242	-4.322056	1.241147
57.449333f	-0.040242	-4.322056	1.241147	-0.040242	-4.322056	1.241147	-0.040242	-4.322056	1.241147
58.385338f	0.534769	-3.779569	1.193692	0.355930	-3.925123	1.192424	0.798631	-3.564816	1.195563
59.766335f	1.269399	-3.291739	1.275044	1.024692	-3.454236	1.247946	-1421892224.000000	-1221217024.000000	-284245856.000000
59.786335f	-3.348874	-7.258224	0.351820	1421892224.000000	1221217024.000000	284245856.000000	-3.010663	-7.579526	0.315287
62.622337f	-2.327057	-8.228956	0.241445	-2.665268	-7.907654	0.277978	78909176.000000	1911774848.000000	117801488.000000
62.642338f	-2.070762	-2.019555	0.624062	-78909176.000000	-1911774848.000000	-117801488.000000	-2.281029	-2.192084	0.624613
65.860336f	-2.705448	-2.540328	0.625726	-2.495181	-2.367800	0.625175	-2.706844	-2.541462	0.625942
65.880333f	-7.728622	-9.274521	0.334429	-7.728622	-9.274521	0.334429	-7.728622	-9.274521	0.334429
69.366333f	-7.531944	-9.217795	0.355949	-7.531944	-9.217795	0.355949	-7.531944	-9.217795	0.355949
69.386330f	2.736151	-4.816342	1.296973	2.736151	-4.816342	1.296973	2.736151	-4.816342	1.296973
72.117332f	2.730500	-4.827350	1.299148	2.730500	-4.827350	1.299148	2.730500	-4.827350	1.299148
72.137329f	5.893664	-3.636946	0.650604	5.893664	-3.636946	0.650604	5.893664	-3.636946	0.650604
79.999336f	10.852936	-3.058887	0.434475	10.852936	-3.058887	0.434475	10.852936	-3.058887	0.434475
80.000000f	10.852936	-3.058887	0.434475	10.852936	-3.058887	0.434475	10.852936	-3.058887	 0.434475
;

четвертый блок, направление камеры (2-й, 3-й, 4-й стобцы) в конкретный период сцены (1-й столбец)

38									
0.000000f	6.027082	-5.599979	0.796569	6.027082	-5.599979	0.796569	6.027082	-5.599979	0.796569
0.033335f	6.027082	-5.599979	0.796569	6.031160	-5.605671	0.797588	5.876753	-5.390130	0.759001
1.262335f	5.581725	-4.978288	0.685271	5.581725	-4.978288	0.685271	5.581725	-4.978288	0.685271
3.432335f	5.581725	-4.978288	0.685271	5.581725	-4.978288	0.685271	-224390800.000000	2307202.500000	-3359650.750000
3.433334f	-9.002943	-4.828327	0.466905	224390784.000000	-2307212.250000	3359652.000000	-8.998542	-4.826056	0.445805
10.507334f	-8.989737	-4.821511	0.403594	-8.994138	-4.823782	0.424693	405734848.000000	-813582912.000000	50343716.000000
10.527334f	-7.671919	-7.464009	0.567109	-405734848.000000	813582912.000000	-50343716.000000	-5.681027	-7.041109	0.645539
19.054335f	-1.684930	-6.192267	0.802965	-3.675821	-6.615168	0.724534	-1.680480	-6.191272	0.803135
19.074335f	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942
24.132334f	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942
24.133333f	-0.175623	-5.716218	1.095841	-0.175623	-5.716218	1.095841	-0.175623	-5.716218	1.095841
27.467333f	-0.175623	-5.716218	1.095841	-0.175623	-5.716218	1.095841	-0.175623	-5.716218	1.095841
27.487333f	2.200607	-5.162762	1.405257	2.200607	-5.162762	1.405257	2.200607	-5.162762	1.405257
29.403334f	2.200607	-5.162762	1.405257	2.200607	-5.162762	1.405257	2.200607	-5.162762	1.405257
29.423334f	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942
34.932335f	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942	7.582408	-13.106550	2.951942
34.933334f	6.391476	-6.941569	2.520731	6.391476	-6.941569	2.520731	6.391476	-6.941569	2.520731
38.452332f	6.399101	-6.875741	2.584282	6.399101	-6.875741	2.584282	6.399101	-6.875741	2.584282
38.453331f	-0.118404	-5.898085	1.893465	-0.118404	-5.898085	1.893465	-0.118404	-5.898085	1.893465
40.816338f	-0.249923	-5.816545	1.848715	-0.191003	-5.855331	1.869857	-0.517116	-5.640656	1.752840
51.532333f	-0.998357	-5.092641	1.561956	-0.998357	-5.092641	1.561956	-0.998357	-5.092641	1.561956
51.533333f	-0.161762	-5.100545	1.402026	-0.161762	-5.100545	1.402026	-0.161762	-5.100545	1.402026
55.099335f	-0.161762	-5.100545	1.402026	-0.161762	-5.100545	1.402026	-0.161762	-5.100545	1.402026
55.119335f	-0.134280	-5.056001	1.364835	-0.134280	-5.056001	1.364835	-0.134280	-5.056001	1.364835
57.449333f	-0.134280	-5.056001	1.364835	-0.134280	-5.056001	1.364835	-0.134280	-5.056001	1.364835
58.385338f	-0.122425	-4.856032	1.413844	-0.148412	-4.924057	1.415220	-0.084083	-4.755667	1.411815
59.766335f	0.090270	-4.548900	1.329244	0.019421	-4.651206	1.357424	139558720.000000	-1368207872.000000	81345192.000000
59.786335f	0.543553	-8.992808	1.593451	-139558720.000000	1368207872.000000	-81345192.000000	0.626379	-8.548890	1.472023
62.622337f	0.793789	-7.651624	1.226588	0.710964	-8.095542	1.348016	467847904.000000	511591360.000000	-496359.250000
62.642338f	2.313348	-5.989987	1.224976	-467847904.000000	-511591360.000000	496361.687500	2.324203	-6.004459	1.215244
65.860336f	2.346115	-6.033670	1.195600	2.335260	-6.019198	1.205332	2.346182	-6.033761	1.195539
65.880333f	-7.436385	-9.190235	0.366396	-7.436385	-9.190235	0.366396	-7.436385	-9.190235	0.366396
69.366333f	-7.436387	-9.190235	0.366401	-7.436387	-9.190235	0.366401	-7.436387	-9.190235	0.366401
69.386330f	2.981961	-6.726044	1.646927	2.981961	-6.726044	1.646927	2.981961	-6.726044	1.646927
72.117332f	2.972947	-6.728506	1.637174	2.972947	-6.728506	1.637174	2.972947	-6.728506	1.637174
72.137329f	1.273361	-6.418555	2.416590	1.273361	-6.418555	2.416590	1.273361	-6.418555	2.416590
79.999336f	0.805986	-5.666580	1.917611	0.805986	-5.666580	1.917611	0.805986	-5.666580	1.917611
80.000000f	0.805986	-5.666580	1.917611	0.805986	-5.666580	1.917611	0.805986	-5.666580	1.917611

зы. могу дать совет - изучайте dat файлы в Excel'e

Last edited by Seemann (11-02-2007 04:21)

Offline

#9 07-02-2007 14:39

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

ну, а где ж ему быть то?

Большая часть моделей для cutscene находится в cutscene.img.     


Оказывается файлы .cut можно редактировать WordPad при этом можно заменять и добавлять как модели так и текст. Правда с моделями это все равно не имеет ни какого смысла, поскольку если нет анимации, то и соответственно модель отображаться не будет.

Seemann  ты не находил где устанавливается время продолжительности сцены?
Мне удалось добавить текст, но он полностью не успевает отобразиться, заканчивается ролик.

Offline

#10 07-02-2007 14:46

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Оказывается файлы .cut можно редактировать WordPad при этом можно заменять и добавлять как модели так и текст

в смысле новые? не вылетает, если добавлять?

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

ты не находил где устанавливается время продолжительности сцены?

видимо в .dat файле, там общая раскадровка.

Offline

#11 07-02-2007 14:58

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

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

Кстати похоже действительно:
1596,4066,PRO@01     
1596 – время от начала ролика
4066 - длительность показа текста

Offline

#12 07-02-2007 15:52

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

нормального ifp редактора

предлагаешь написать второй 3DMax? smile Нужен скорее плагин для макса, чтобы он читал эти файлы, по-любому R* делали анимации в нем

попробуй разобраться что в дат файлах хранится. мне кажется 3-й, 4-й блоки это позиция камеры (один блок - позиция, второй направление).

Offline

#13 07-02-2007 16:21

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Мое предположение относительно дат-файлов (я не проверял, пока только мысли):

В 3-м и 4-м блоках после столбца времени идут 9 столбцов координат. Их можно разделить на три группы.

3-й блок, 1 группа
8.805551    -3.719353    0.183409
- позиция камеры в данный момент времени

4-й блок, 1 группа
6.027082    -5.599979    0.796569
- направление камеры в данный момент времени (точка в пространстве)

что означает 2-я и 3-я группы в 3-м и 4-м блоках не знаю, возможно угол поворота камеры по оси X и Y (т.е возможно

показывать изображение под углом).


Что касается 1-го и 2-го блока, мне кажется это еще один оффсет для камеры. Значения первого столбца первого блока (66.482513) прибавляются к значениям 1-й группы 3-го блока, значения 2-го столбца - к значениям 2-й группы 3-го блока, значения 3-го столбца - к значениям 3-й группы 3-го блока.

2-й блок относится к 4-му блоку.

Немного путано и возможно неправильно, но я так думаю.

Last edited by Seemann (07-02-2007 16:22)

Offline

#14 07-02-2007 17:06

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

предлагаешь написать второй 3DMax?  Нужен скорее плагин для макса, чтобы он читал эти файлы, по-любому R* делали анимации в нем

Но ведь сам файл ifp не совсем анимация, а что то на подобие архива в котором находятся файлы анимаций. Я имел ввиду возможность добавлять или удалять анимации в файл ifp.
Что же касается .dat то число перед каждым блоком равно количествеу записей в этом блоке.
38 //38 записей в этом блоке                                   
1) 0.000000f    6.027082    -5.599979    0.796569   
. . .
38) 80.000000f    0.805986    -5.666580    1.917611   
Пробовал добавлять новые записи в каждый блок но ни каких изменений не обнаружил.

Offline

#15 08-02-2007 14:29

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

0.000000f,-0.581568,-4.710864,0.120556,-0.581568,-4.710864,0.120556,-0.581568,-4.710864,0.120556,

0.000000f , X , Y, Z, X , Y, Z, X , Y, Z,

X , Y, Z  - скорее всего это офсет
X , Y, Z – первая тройка это направление камеры( куда смотрит камера)
При изменении только первых X , Y, Z наблюдал изменения.

0.000000f  - время работы камеры ( быть может между ключевыми кадрами) 
каждый блок имеет одинаковый перечень показателей времени.

12, // блок 1 
0.000000f,51.774010,51.774010,51.774010,

. . . . . . . . .

25.666000f,51.774010,51.774010,51.774010,
;
12, // блок 2

0.000000f,0.000000,0.000000,0.000000,

. . . . . . . 

25.666000f,0.000000,0.000000,0.000000,
;
13, // блок 3
0.000000f,-0.581568,-4.710864,0.120556,-0.581568,-4.710864,0.120556,-0.581568,-4.710864,0.120556,
 . . . . . 
25.666000f,4.131416,1.196047,0.440165,4.131416,1.196047,0.440165,4.131416,1.196047,0.440165,
;
13, // блок 3
0.000000f,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,

. . . . . .

25.666000f,2.735780,-2.429843,1.160247,2.735780,-2.429843,1.160247,2.735780,-2.429843,1.160247,
;
;

В блоках 3 и 4  могут быть небольшие изменения, то есть в блоках 1 и 2 объявлены

1.000000f……………….
2.000000f……………….

то в 3 и 4 блоках между ними могут быть к примеру:

1.000000f……………….
1.444000f……………….
1.888000f……………….
2.000000f……………….

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

Было

25.666000f, ……………………….

Меняем на

30.666000f, ……………………….

Ну а если есть желание при этом наблюдать перемещение камеры, то в четвертом блоке добавим одну строку.
Пример:
До

14, // общее количество строк в блоке
0.000000f,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,
 . . . . . 
25.666000f,2.735780,-2.429843,2.160247,2.735780,-2.429843,2.160247,2.735780,-2.429843,2.160247,
30.666000f,2.735780,-1.429843,1.160247,2.735780,-1.429843,1.160247,2.735780,-1.429843,1.160247,
;

после

15, //увеличиваем количество строк 
0.000000f,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,2.180020,-1.595175,0.742780,
 . . . . . . 
25.666000f,2.735780,-2.429843,2.160247,2.735780,-2.429843,2.160247,2.735780,-2.429843,2.160247,
26.686000f,2.735780,-1.929843,2.160247,2.735780,-1.929843,2.160247,2.735780,-1.929843,2.160247,
30.666000f,2.735780,-1.429843,1.160247,2.735780,-1.429843,1.160247,2.735780,-1.429843,1.160247,
;

Запускаем и видим плавное перемещение камеры и актеров сцены застывших на последнем движении анимации.

Offline

#16 08-02-2007 15:01

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Есть скрипт для макса для чтения IFP
http://gtanet.com/kam/KAMS_Max.rar

но у меня нет возможности проверить

Offline

#17 08-02-2007 15:18

Alexander
Registered: 19-08-2006
Posts: 184
Website

Re: Косметическое изменение cutscene.

Дык тут все такие моделлеры , аж некуда  smile

Offline

#18 08-02-2007 15:52

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Звуки для кутсцен записаны в ехе.
http://sannybuilder.com/images/forums/csst.gif

При желании их можно найти в ехе и подредактировать номера
http://sannybuilder.com/images/forums/csste.gif

На этом скриншоте зеленым отмечен указатель на имя первой кутсцены, красным - номер саундтрека (ogg в файле audio\streams\cutscene).

Пример редактирования: открываем gta_sa.exe в хекс-редакторе, ищем последовательность байтов 20878600 (это указатель на самую первую кутсцену prolog1). После него стоят 2 байта: С2 02 - это номер саундтрека 706. Меняем эти байты на 72 02 (=626) и вуаля - во время стартовой сценки играет совсем другая музыка.

Offline

#19 08-02-2007 22:58

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

Есть скрипт для макса для чтения IFP

Действительно только для чтения, так как новую анимацию добавить с его помощью к существующим в .ifp нельзя, а созданный с его помощью новый .ifp не желает грузиться игрой (по крайней мере у меня).

Я догадывался о том, что звуки для кутсцен записаны в exe, но все же была надежда на иной результат. Что ж видимо новые сцены создать не удастся без нормального ifp редактора, ну и не естественно не обойтись без ковыряния exe. Уже и не знаю, а стоит ли вообще ломать голову над этим? Самая простенькая сцена весит 800 – 900 kb плюс exe, либо к нему патч…

Offline

#20 09-02-2007 03:24

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Действительно только для чтения, так как новую анимацию добавить с его помощью к существующим в .ifp нельзя, а созданный с его помощью новый .ifp не желает грузиться игрой (по крайней мере у меня).

а как этот IFP выглядит в максе - как несколько отдельных анимаций, или он целиком сцену грузит?

Уже и не знаю, а стоит ли вообще ломать голову над этим?

Думаю, надо разобраться со значениями .cut, которые отмечены красным в 5-м посте. А там видно будет. Для "косметического" изменения cutscene информации здесь более чем достаточно.

Offline

#21 09-02-2007 12:59

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

а как этот IFP выглядит в максе - как несколько отдельных анимаций, или он целиком сцену грузит?

GTA_IFP_IO.ms выводит в своем окне список анимаций которые присутствуют в загруженном ifp.
Можно подгрузить модель и назначить ей анимацию (можно назначить весь список), но сохранит в новый файл как одну анимацию, то есть списка анимаций уже не будет.
Вот в  Hex – редакторе заголовок bhill3c.ifp:

ANPK.6..INFO........BHILL3c.NAME....csblender...DGAN8(..INFO............CPAN.'..ANIM,...Dummy01.............

А это заголовок сохраненного мной файла при помощи  GTA_IFP_IO:

ANP3."..KamMaxScriptExp.............csdope..................8...........Root........................i...

Быть может и в этом тоже причина вылета.

Я не большой знаток анимации, но мне неоднократно приходилось читать о сценах и их настройках (камеры, свет, привязка актеров, предметов к данной сцене и т.д.). В файлах .dat, как я понимаю, описаны только настройка камеры, а все остальное наверное прерогатива exe. Ведь в .cut определена только, так сказать, опорная точка сцены, а координаты актеров и т.д. В общем, описание самой сцены должны быть.

Offline

#22 09-02-2007 14:15

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

2yelmi:
Ответ очевиден - KAMS не предназначен для редактирования кутсцен. Он работает только с одиночными анимациями актеров, которые хранятся в файле gta3.img + ped.ifp. Это можно понять по заголовку файлов: у кутсцен заголовок ANPK (Animation Pack), а у простых IFP - ANP3. Файлы, созданные в KAMS как раз и имеют 2-й заголовок. Вот почему там только 1 анимация.

Насчет настроек сцены - я все же думаю, что это хранится в IFP. Вряд ли разработчики стали бы разделять анимации и координаты.
Кстати формат у IFP (кутсцен) довольно простой. Можно написать unpacker, правда вряд ли это что-то даст.

Offline

#23 09-02-2007 16:31

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

Seemann wrote:

Ответ очевиден - KAMS не предназначен для редактирования кутсцен. Он работает только с одиночными анимациями актеров, которые хранятся в файле gta3.img + ped.ifp. Это можно понять по заголовку файлов: у кутсцен заголовок ANPK (Animation Pack), а у простых IFP - ANP3. Файлы, созданные в KAMS как раз и имеют 2-й заголовок. Вот почему там только 1 анимация.

А как же anim.img и тот же ped.ifp имеет в своем составе большой перечень различной анимаций.

Насчет настроек сцены - я все же думаю, что это хранится в IFP. Вряд ли разработчики стали бы разделять анимации и координаты.

Похоже координаты действительно находятся в анимации для cutscene.

Кстати формат у IFP (кутсцен) довольно простой. Можно написать unpacker, правда вряд ли это что-то даст.

Но может это даст понять возможно ли реально редактировать, изменять cutscene.

Я где то читал, что персонажи и анимация для Quake3 экспортировались в ASCII – формат 3ds max (под названием ASE) быть может и у GTA подобный экспорт.

Offline

#24 10-02-2007 13:26

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Косметическое изменение cutscene.

Написал простенький просмотрщик содержимого IFP - показывает сколько внутри анимаций, ничего более. Сначала выберите папку с IFP-файлами, потом выбирайте нужный в списке

http://sannybuilder.com/dev/ifptool.rar

http://sannybuilder.com/images/forums/ifptool.gif

Offline

#25 10-02-2007 13:43

yelmi
Registered: 10-12-2006
Posts: 134
Website

Re: Косметическое изменение cutscene.

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

Параметры второго блока – это координаты камеры для каждого ключевого кадра.

0.000000,0.000000,0.000000 – означают, что в каждом ключевом кадре будут применяться стандартные координаты камеры, то есть те координаты камеры, которые были установлены для каждого кадра сцены при ее создании.

Третий блок отвечает за перемещение камеры, а четвертый – за вращение камеры между ключевыми кадрами.
Параметры времени должны быть одинаковыми для всех четырех блоков. В третьем и четвертом блоках между установленными временными отрезками могут устанавливаться промежуточные величины времени для более плавного или наоборот резкого движения камеры. Эти промежуточные значения должны быть одинаковыми для третьего и четвертого блоков.
Действие каждой записи третьего блока напоминает опкод
015F: set_camera_position X Y Z 0.0 0.0 0.0 ,
а четвертого - 0160: point_camera X Y Z 2

Offline

Board footer

Powered by FluxBB