|
|||||||||||||||||
|
|||||||||||||||||
|
|
Ответ |
|
Опции темы | Поиск в этой теме | Опции просмотра |
![]() |
#1 | ||
Junior Member Сообщений: 29
Репутация: 40
![]()
Detective
|
Автор: B.LAKER
Скажем троекратное спасибо GOLOD55 за этот скрипт! И так, скрипт дает возможность крутить говой в нутри салона авто при езде (а ля ТДУ) и фрикамеру, вообще очень похоже на ГТАшеый камера хак. Вот небольшое демонстрационое видео (???) Вобщем вот: Развернуть для просмотраF1 = вкл\выкл. скрипткамеру
LEFT \ RIGHT \ UP \ DOWN = вращение камеры LEFT1 \ RIGHT1 = горизонтальная коррекция FIRE \ ACTION (лмаус\рмаус) = вперед\назад SNIPERMODE = зум камеры [свернуть] Сам скрипт: Автор: GOLOD55 Развернуть для просмотраdim_act 1
dim_frm 2 dim_flt 13 //scriptcamera_mode beta GOLOD55 02.02.08 findactor 0,"Tommy" getactivecamera 0 findframe 1,"Tommy.neck" vect_set 10,0,1,1 Label 101 commandblock 0 wait 1000 Label 100 commandblock 0 commandblock 1 human_getseatidx 0,10 ctrl_read 1,OBJECTIVES if flt[1]=1,CAM,-1 if flt[11]=-1,-1,100 if flt[10]=-1,-1,INCAR if flt[9]=1,CAM,-1 label INCAR ctrl_read 1,SNIPERMODE if flt[1]=1,snip,-1 vect_set 2,0.01,0,0 ctrl_read 1,UP if flt[1]=1,ROTS,-1 vect_set 2,-0.01,0,0 ctrl_read 1,DOWN if flt[1]=1,ROTS,-1 vect_set 2,0,0.01,0 ctrl_read 1,LEFT if flt[1]=1,ROTS,-1 vect_set 2,0,-0.01,0 ctrl_read 1,RIGHT if flt[1]=1,ROTS,-1 vect_set 2,0,0,-0.01 ctrl_read 1,LEFT1 if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.01 ctrl_read 1,RIGHT1 if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.1 ctrl_read 1,FIRE if flt[1]=1,MOVE,-1 vect_set 2,0,0,-0.1 ctrl_read 1,ACTION if flt[1]=1,-1,100 --- label MOVE frm_getrot 0,5 vect_mul_quat 2,5 frm_getpos 0,5 vect_add_vect 2,5 frm_setpos 0,2 goto 100 --- Label ROTS frm_getrot 0,5 quat_mul_quat 1,5 frm_setrot 0,1 goto 100 --- Label CAM let flt[11]=-flt[11] if flt[11]=-1,-1,unlock camera_lock 1 frm_linkto 0,1 let flt[9]=1 if flt[10]=-1,-1,101 act_setstate 0,inactive let flt[9]=0 goto 101 --- label snip let flt[12]=-flt[12] if flt[12]=-1,-1,unsnip camera_setfov 10 goto 101 --- label unlock frm_linkto 0,-1 camera_unlock act_setstate 0,active label unsnip camera_setfov 70 goto 101 [свернуть] Что делать с этим скриптом чтоб его вставить! Вот токачто зделал мини тутор: Качаем прогу BScriptView 6.0 скачать , потом жилательно распаковать трактором новую папку MISSIONS. Открываем скачаную програму BScriptView 6.0: 1) Нажимаем вверху File --> Load Scene2.bin 2) Находим папку MISSIONS в папке с мафией и там например FREERIDE (у меня это так D:\GAMES\MAFIA\MISSIONS\FREERIDE), это означает что устанавливатся будет в свободную езду, и будет работать только там, так же можно попоже установить и в сельскую месность(FREEKRAJINA) и прогулку ночь и в любую миссию и тд... И так что дальше, нажимаем вверху insert --> other 3) После нажатия insert должно появится такое 4) Подписываем в Name как угодно, можно и как на скрине и нажимаем insert 5) Потом в пустом поле стираем косые и вставляем сам скрип который изложен выше 6) Должно получится такое 7) Ну и нажимаем save. Все. Должно заробоатать. Автор: GOLOD55 free_camera beta1 сделан ручной фокус зуума. удерживая клавишу SNIPERMODE, настройте зуум. повтор.нажатие выключит зуум. Развернуть для просмотраF1 = вкл\выкл. скрипткамеру
LEFT \ RIGHT \ UP \ DOWN = вращение камеры LEFT1 \ RIGHT1 = горизонтальная коррекция FIRE \ ACTION (лмаус\рмаус) = вперед\назад SNIPERMODE = зум камеры. удерживать клаву. dim_act 1 dim_frm 2 dim_flt 14 //scriptcamera_mode beta1 GOLOD55 30.03.08 findactor 0,"Tommy" getactivecamera 0 findframe 1,"Tommy.neck" vect_set 10,1,1,1 Label 101 commandblock 0 wait 1000 Label 100 commandblock 0 commandblock 1 human_getseatidx 0,0 ctrl_read 1,OBJECTIVES if flt[1]=1,CAM,-1 if flt[11]=-1,-1,100 if flt[0]=-1,-1,INCAR if flt[9]=1,CAM,-1 label INCAR ctrl_read 1,SNIPERMODE if flt[1]=1,snip,-1 vect_set 2,0.015,0,0 ctrl_read 1,UP if flt[1]=1,ROTS,-1 vect_set 2,-0.015,0,0 ctrl_read 1,DOWN if flt[1]=1,ROTS,-1 vect_set 2,0,0.015,0 ctrl_read 1,LEFT if flt[1]=1,ROTS,-1 vect_set 2,0,-0.015,0 ctrl_read 1,RIGHT if flt[1]=1,ROTS,-1 vect_set 2,0,0,-0.015 ctrl_read 1,LEFT1 if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.015 ctrl_read 1,RIGHT1 if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.1 ctrl_read 1,FIRE if flt[1]=1,MOVE,-1 vect_set 2,0,0,-0.1 ctrl_read 1,ACTION if flt[1]=1,-1,100 --- label MOVE frm_getrot 0,5 vect_mul_quat 2,5 frm_getpos 0,5 vect_add_vect 2,5 frm_setpos 0,2 goto 100 --- Label ROTS vect_mul_scl 2,flt[10] frm_getrot 0,5 quat_mul_quat 1,5 frm_setrot 0,1 goto 100 --- Label CAM let flt[11]=-flt[11] if flt[11]=-1,-1,unlock camera_lock 1 frm_linkto 0,1 let flt[9]=1 if flt[0]=-1,-1,101 act_setstate 0,inactive let flt[9]=0 goto 101 --- label snip let flt[12]=-flt[12] if flt[12]=-1,-1,unsnip label zoom commandblock 0 commandblock 1 ctrl_read 1,SNIPERMODE if flt[1]=1,-1,100 camera_getfov 13 let flt[13]=flt[13]-0.5 camera_setfov flt[13] let flt[10]=flt[10]-0.007 if flt[13]<5,101,zoom --- label unlock frm_linkto 0,-1 camera_unlock act_setstate 0,active label unsnip camera_setfov 70 let flt[10]=1 goto 101 [свернуть] |
||
цитата |
![]() |
#2 | ||
Junior Member Сообщений: 20
Репутация: 10
![]()
Detective
|
Если заменить "OBJECTIVES", например, на "HORN", будет ли вызываться камера нажатием клавиши "H" (default)?
Upd. В общем проверил, заменил "OBJECTIVES" на "HORN", зашел в игру и нажал на "H", и все прекрасно заработало. М.б. кому сгодится инфа ![]() Последний раз редактировалось Camry4Ever; 31.10.2020 в 10:43. |
||
цитата |
Поблагодарил: |
ruslan13 (03.03.2023)
|
![]() |
#3 | ||
Junior Member Сообщений: 1
Репутация: 2
![]()
Detective
|
чё за гений это написал, у меня нет папки missions, ничего не работает
|
||
цитата |
![]() |
#4 | ||
Mafia Modding Crew Сообщений: 143
Репутация: 160
![]() ![]()
Judge
|
Сначала надо распаковать A1.dta MafiaDataXtractor' ом или DTA Unpacker ом.
|
||
цитата |
![]() |
#5 | ||
Senior Member Сообщений: 739
Репутация: 479
![]() ![]() ![]() ![]() ![]()
Priest
|
не проще заюзать гораздо лучше вариант?
https://github.com/Romop5/mafia-came...era-mod-v2.zip Usage: Copy HotReloader.exe, camera_injector.exe and cameramod.dll to game's directory. Then run the original game, and run camera_injector.exe to load the modification. D3D8to9 wrapper is required for mod to work correctly. Please, use Release package which contains the copy of .dll. Use F2 key to control GUI ingame. |
||
цитата |
![]() |
#6 | |||
Senior Member Сообщений: 1,193
Репутация: 1010
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
Hitman
|
чё за гений это написал
![]()
__________________
Цитата:
|
|||
цитата |
![]() |
#7 | ||
Senior Member Сообщений: 508
Репутация: 528
![]() ![]() ![]() ![]() ![]() ![]()
Priest
|
Возможно ли изменять скорость камеры?
|
||
цитата |
![]() |
#8 | ||
Senior Member Сообщений: 508
Репутация: 528
![]() ![]() ![]() ![]() ![]() ![]()
Priest
|
Дополнение к работе Фрикамеры, которое помогает избежать рывков камеры, когда вы нажимаете на клавишы "влево/вправо" поворачивая руль.
Такое решение, возможно, кому-то уже известно, но я не встречал похожего, в любом случае, повторение не повредит. Инструкция. 1.Устанавливаете дополнительно к моду Фрикамеры, скрипт пересаживания игрока с водительского места на пассажирское. Этот скрипт под катом: Развернуть для просмотраdim_flt 10 dim_act 10 dim_frm 10 findactor 0, "Tommy" findactor 1, "NULL" label 101 findnearactor 0, 1, Car getactorframe 1, 1 car_getspeed 1, 0 if flt[0] > 0, 101, -1 compareownerwithex 0, 1, -1, 101 ctrl_read 1, HORN if flt[1] = 1, -1, 101 car_setspeed 1, 1 commandblock 1 human_getseatidx 0, 2 if flt[2] = 0, 102, -1 if flt[2] = 1, 103, -1 if flt[2] = 2, 104, -1 if flt[2] = 3, 105, -1 if flt[2] = 4, 106, -1 if flt[2] = 5, 107, -1 commandblock 0 goto 101 label 102 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezLtoR.i3d" wait 600 human_force_settocar 0, 1, 1 wait 1000 // ??? ????? ????? ?????????, ???? ???? goto 101 label 103 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezRtoL.i3d" wait 600 human_force_settocar 0, 1, 0 playsound "black_on.wav", 1, 10, 5 wait 1000 goto 101 label 104 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezLtoR.i3d" wait 600 human_force_settocar 0, 1, 3 wait 1000 goto 101 label 105 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezRtoL.i3d" wait 600 human_force_settocar 0, 1, 2 wait 1000 goto 101 label 106 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezLtoR.i3d" wait 600 human_force_settocar 0, 1, 5 wait 1000 goto 101 label 107 human_holster 0 commandblock 0 person_playanim 0, "AutoPrelezRtoL.i3d" wait 600 human_force_settocar 0, 1, 4 wait 1000 goto 101 [свернуть] 2. В игре садитесь в машину на водительское место, нажимаете на клавишу "основной гудок", когда ваш персонаж уже будет на пассажирском сиденье, снова нажимаете на клавишу "основной гудок". Все, после этого включаете Фрикамеру и рывков при её использовании не будет. Способ будет работать до того момента, пока вы не выйдете из машины. Минус этого способа в том, что ваш персонаж не будет двигаться за рулем, т.е. анимации, водителя крутящего руль, нет. |
||
цитата |
![]() |
#9 | ||
Junior Member Сообщений: 22
Репутация: 17
![]()
Detective
|
Реально по другому воспринимаешь езду на машине.
|
||
цитата |
![]() |
#10 | ||
Junior Member Сообщений: 1
Репутация: 2
![]()
Detective
|
Скорость поворота влево право можно чутка поравить в блоке
Код:
vect_set 2,0,0.015,0 ctrl_read 1,LEFT if flt[1]=1,ROTS,-1 vect_set 2,0,-0.015,0 ctrl_read 1,RIGHT Для себя из управления камерой оставил поворот влево право (LEFT, RIGHT), смещение вперед для устранения выпирающих плеч (FIRE) и вверх(ACTION) для машин с низкой посадкой. Скорость камеры уменьшил для точной подстройки. Fov слегка увеличен для компенсации приближения. Вкл. скрипта на HORN1. Развернуть для просмотраКод:
dim_act 1 dim_frm 2 dim_flt 14 //scriptcamera_mode beta1 GOLOD55 30.03.08 findactor 0,"Tommy" getactivecamera 0 findframe 1,"Tommy.neck" vect_set 10,1,1,1 Label 101 commandblock 0 wait 1000 Label 100 commandblock 0 commandblock 1 human_getseatidx 0,0 ctrl_read 1,HORN1 if flt[1]=1,CAM,-1 if flt[11]=-1,-1,100 if flt[0]=-1,-1,INCAR if flt[9]=1,CAM,-1 label INCAR ctrl_read 1,SNIPERMODE if flt[1]=1,snip,-1 vect_set 2,0.015,0,0 ctrl_read 1, if flt[1]=1,ROTS,-1 vect_set 2,-0.015,0,0 ctrl_read 1, if flt[1]=1,ROTS,-1 vect_set 2,0,0.025,0 ctrl_read 1,LEFT if flt[1]=1,ROTS,-1 vect_set 2,0,-0.025,0 ctrl_read 1,RIGHT if flt[1]=1,ROTS,-1 vect_set 2,0,0,-0.1 ctrl_read 1, if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.015 ctrl_read 1, if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.002 ctrl_read 1,FIRE if flt[1]=1,MOVE,-1 vect_set 2,0,0.001,0 ctrl_read 1,ACTION if flt[1]=1,MOVE,-1 if flt[1]=1,-1,100 --- label MOVE frm_getrot 0,05 vect_mul_quat 2,5 frm_getpos 0,05 vect_add_vect 2,5 frm_setpos 0,2 goto 100 --- Label ROTS vect_mul_scl 2,flt[10] frm_getrot 0,05 quat_mul_quat 1,5 frm_setrot 0,1 goto 100 --- Label CAM let flt[11]=-flt[11] if flt[11]=-1,-1,unlock camera_lock 1 frm_linkto 0,1 let flt[9]=1 if flt[0]=-1,-1,101 act_setstate 0,inactive let flt[9]=0 goto 101 --- label snip let flt[12]=-flt[12] if flt[12]=-1,-1,unsnip label zoom commandblock 0 commandblock 1 ctrl_read 1,SNIPERMODE if flt[1]=1,-1,100 camera_getfov 13 let flt[13]=flt[13]-0.5 camera_setfov flt[13] let flt[10]=flt[10]-0.007 if flt[13]<5,101,zoom --- label unlock frm_linkto 0,-1 camera_unlock act_setstate 0,active label unsnip camera_setfov 75 let flt[10]=1 goto 101 [свернуть] Последний раз редактировалось fttlov; 02.06.2024 в 20:26. |
||
цитата |