#76 21-09-2008 20:13

PoMu4
Registered: 28-08-2008
Posts: 8

Re: Вопросы по опкодам

Всем прет!
Может кто сказать как это с помощью клео скриптинга сделать, или какие опкоды для этого нужны? sad
Вот что именно - http://www.youtube.com/watch?v=DCuhlsfM3Go

Last edited by PoMu4 (21-09-2008 20:14)

Offline

#77 27-10-2008 13:13

Alien
Registered: 12-10-2008
Posts: 564

Re: Вопросы по опкодам

В общем вот он сабжект:

034E: move_object 0@ to 1@ 2@ 3@ speed 13@ 16@ 19@ flag 1

Судя по описанию, он должен двигать объект 0@ в точку с компонентами скорости 13@ 16@ 19@ по осям координат X Y и Z. Но есть одна нестыковка: в майне он используется в качестве проверки, т.е по сути является каким-то логическим оператором и возвращает значение булева типа: True или False.
Например открытие пневматических дверей в миссии  "Черный проект" осуществляется так:

if 
034E: move_object $OBJECT_M_A51_BLASTDOORR to 219.941 1874.571 13.903 speed 0.1 0.0 0.0 flag 0 
jf @MAF4_14346

и

if 
034E: move_object $OBJECT_M_A51_BLASTDOORL to 207.842 1874.571 13.903 speed 0.1 0.0 0.0 flag 0 
jf @MAF4_14419

Существует и обратный ему опкод:

834E:   not move_object $2658 to 1903.383 967.62 15.438 speed 0.0 0.0 0.05 flag 0

Двигать объекты с этим опкодом у меня не получилось - может кто-то знает как сделать так чтобы получилось, а?:cry:

Offline

#78 27-10-2008 17:07

Fess
Registered: 29-04-2008
Posts: 62

Re: Вопросы по опкодам

@Alien - ставь опкод в цикл все будет работать:

{$CLEO}
0A24: enable_military_zones_wanted_level 1
0@ = Object.Create(3095, 268.664, 1884.06, 15.925)
034D: rotate_object 0@ from_angle 90.0 to_angle 90.0 flag 0 
Actor.PutAt($PLAYER_ACTOR, 271.2008, 1884.6787, 19.029)
while true
    wait 0
    034E: move_object 0@ to 276.14 1884.06 15.924 speed 0.05 0.0 0.0 flag 0
end

Offline

#79 28-10-2008 08:33

Alien
Registered: 12-10-2008
Posts: 564

Re: Вопросы по опкодам

пнятненько, щас заценю...

Offline

#80 24-11-2008 00:18

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопросы по опкодам

У меня возникло 2 вопроса:
1. Существует ли опкод наподобие 06D7 (включение и отключение траффика поездов в ГТА СА), чтобы в нем можно было изменять частоту появления поездов?
2. При декомпиляции скрипта с помощью СБ 3.04 возникает сообщение об ошибке: "Неизвестный опкод 4A6D по адресу 9175". Известен ли кому такой опкод? И ещё: я вписал в консоли команду ignore unknown, но при попытке декомпиляции снова вылетает та же ошибка. Что можете посоветовать в такой ситуации?

Offline

#81 24-11-2008 10:47

Alien
Registered: 12-10-2008
Posts: 564

Re: Вопросы по опкодам

угу у мну тоже эта консоль не работает - пишу и ничего...
А ты попробуй в файле SASCM строчку 0A6D: ... поменять на 4A6D: ...

Offline

#82 24-11-2008 12:22

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

Re: Вопросы по опкодам

2. При декомпиляции скрипта с помощью СБ 3.04 возникает сообщение об ошибке: "Неизвестный опкод 4A6D по адресу 9175". Известен ли кому такой опкод? И ещё: я вписал в консоли команду ignore unknown, но при попытке декомпиляции снова вылетает та же ошибка. Что можете посоветовать в такой ситуации?

вместо ввода команд в консоль можно использовать прямое переключение нужных опций. Для этого есть специальная кнопка справа от кнопки запуска игры.

Если ты пытаешься декомпилировать CLEO-скрипт, то кроме IGNORE_UNKNOWN нужно включить опцию SKIP_SCM_HEADER

И ни в коем случае не надо менять никакие INI файлы. В том скрипте скорее всего используются продвинутые методы кодинга с использованием hex-вставок. Там нет новых опкодов.

Offline

#83 24-11-2008 14:50

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопросы по опкодам

Спасибо, помогло. Скрипт удалось декомпилировать. Там действительно используется hex..end.
Хотел ещё узнать: "09CF: set_train $Train flag 0 - задаёт поезду флаги". Что значит "флаги"?

Last edited by Den_spb (24-11-2008 14:56)

Offline

#84 24-11-2008 15:16

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

Re: Вопросы по опкодам

Флаг - это специальная переменная или часть какой-то структуры. Флаг отвечает за переключение чего-либо. Это как лампочка - включил - горит / выключил - хмм, не горит. Если флаг равен 1, то что-то начинает работать, если флаг равен 0 - что-то отключено. Самый яркий пример:

02AB: set_actor 2@ immunities BP 0 FP 0 EP 1 CP 1 MP 0

здесь флаги, которые отвечают за иммунитеты.

09CF выставляет какой-то флаг для поезда, но неизвестно какой (везде, где в описании опкода написано flag, там значение неизвестно).

Offline

#85 29-11-2008 09:50

Vova_Van89
Registered: 02-11-2008
Posts: 6

Re: Вопросы по опкодам

Есть ли опкод или группа опкодов при помощи которых в переменную записывается сколько метров пройдено CJ с загрузки сохраненки?

Offline

#86 06-12-2008 15:39

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопросы по опкодам

такого опкода не знаю. Но здесь можно обойтись без специального опкода

Offline

#87 21-12-2008 10:51

GTASA
Registered: 13-09-2008
Posts: 476

Re: Вопросы по опкодам

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

Offline

#88 24-12-2008 00:16

kuirp
Registered: 24-12-2008
Posts: 1

Re: Вопросы по опкодам

Народ!
Ведь есть спец. опкод для загрузки анимации из файла PED.ifp?
Я не могу его найти.
Сделайте плиз простенький скрипт, чтоб, при нажатии на кнопку(скажите какую), проигрывалась анима из файла PED.ifp.=)
В стандартной справке Санни Билдера нет такого примера(мол догадывайтесь сами=().

Offline

#89 23-02-2009 03:02

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопросы по опкодам

Такой вопрос: с помощью этого опкода можно намертво скрепить два транспорта:
0683: attach_car $Car_1 to_car $Car_2 at_offset 0.0 -4.6 0.65 rotation 0.0 0.0 0.0
А как их потом обратно расцепить?

Offline

#90 23-02-2009 10:13

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Вопросы по опкодам

Den_spb wrote:

Такой вопрос: с помощью этого опкода можно намертво скрепить два транспорта:
0683: attach_car $Car_1 to_car $Car_2 at_offset 0.0 -4.6 0.65 rotation 0.0 0.0 0.0
А как их потом обратно расцепить?

0684: detach_car 208@ 20.0 180.0 0.0 collision_detection 0
Попробуй=)


GIMS developer

Offline

#91 25-02-2009 15:02

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Вопросы по опкодам

0684: detach_car 208@ 20.0 180.0 0.0 collision_detection 0

3Doomer, благодарю. Это то, что нужно.

Offline

#92 28-02-2009 16:45

KOLLEGA
Registered: 10-01-2009
Posts: 52

Re: Вопросы по опкодам

Опкоды

04E5:   object $714 near_point -277.999 614.19 radius 25.0 25.0 flag 0 
04E6:   object $3335 near_point $3367 $3368 $3369 radius 3.5 3.5 3.5 flag 1

по идее должны проверять нахождение объекта в  определённой  точке, но у меня why-то не работает:(
Зато откуда-то появляется маркер в этих координатах:rolleyes:
А что означают эти флаги? зачем они?


Поправьте меня если я ошибаюсь
только вежливо :)

Offline

#93 10-03-2009 01:47

MIXAZZZ
From: Москва
Registered: 07-01-2007
Posts: 8
Website

Re: Вопросы по опкодам

народ, по поводу опкода 034E:
этот черт двигает объект только в одном направлении,
допустим я делаю двери лифта, цикл в вайле как выше, у меня двери раздвигаются (открываются) по X, но и по идее значение движения по X одной из дверей должно быть отрицательно, ну он сцук двигает всегда положительно, поэтому одна дверь открывается , вторая на на ее место двигается, и так до бесконечности,тк она не может достичь нужныж ей координат (при открытой двери они меньши, а опкод увеличивает их, игронит отрицание в speed по полной), мож кто че посоветует?
и чего вообще флаг контроирует? его изменение на 1 ничем не помогло.

вот кусок рабочего кода

while true
    wait 0
    034E: move_object $ObjectLEFTDoor to 2134.714 $Lift_LeftDoorPointy $LiftPointDownZ speed 0.05 0.0 0.0 flag 0
    034E: move_object $ObjectRIGHTDoor to 2132.535 $Lift_LeftDoorPointy $LiftPointDownZ speed -0.05 0.0 0.0 flag 0
end

3dsmaxuserxy7xw1.jpg
logobar.gif
gttclububar.jpg

Offline

#94 10-03-2009 14:39

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

Re: Вопросы по опкодам

Каким опкодом можно заставить одну машину ехать за другой? В частности я пользуюсь этим скриптом, и опкоды 07F8, 05F1, 05F2 не работают.


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#95 10-03-2009 15:14

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

Re: Вопросы по опкодам

to Gyr

используй вот этот хитрый опкод, раскрывающий свои секреты.
06E1: AS_actor 0@ using_car 1@ target_car 2@ with_order 0 max_speed 0.0 traffic_flag 0
ну тут все понятно, order значит, конкретная позиция относительно тачки, нужную сам ищи.
да единственный момент, должен быть актер, который поведет тачку - 0@.
удачи...


I know everything and nothing...

Offline

#96 10-03-2009 15:34

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

Re: Вопросы по опкодам

используй вот этот хитрый опкод, раскрывающий свои секреты.
06E1: AS_actor 0@ using_car 1@ target_car 2@ with_order 0 max_speed 0.0 traffic_flag 0

не годится. Мне нужно, что-бы машина ехала впритык нужной, а этот опкод пускает её по стандартным путям траффика, и по бездорожью моя машина преследовать не хочет, а едет в обход, по дороге.


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#97 10-03-2009 16:18

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

Re: Вопросы по опкодам

to Gyr

так я понял, тебе нужно, чтобы тачка ехала, игнорируя все пути, просто тупо следовала, так я понимаю.
тогда делай так, вначале отсчитывай вот это
0407: store_coords_to 0@ 1@ 2@ from_car 3@ with_offset 0.0 -6.0 0.0 //от тачки за которой надо следовать получаем координаты на 6.0 единиц назад от тачки, можешь брать другое значение
далее прописывай следующее
00AF: set_car 4@ driver_behaviour_to 9 //тачка которая следует получает поведение игнорировать пути
00AF: set_car 4@ driver_behaviour_to 8 //либо вот этот вариант
00A7: car 4@ drive_to 0@ 1@ 2@ //тачка которая следует начинает ехать туда
можешь до этого указать max_speed, ignore_traffic flag.


I know everything and nothing...

Offline

#98 15-03-2009 11:55

Gyr
From: Серпухов
Registered: 03-02-2009
Posts: 246
Website

Re: Вопросы по опкодам

Каков предел значений для опкодов 

01EB: set_traffic_density_multiplier_to 10.0 

00AE: set_car 6@ traffic_behaviour_to 3 

03DE: set_pedestrians_density_multiplier_to 10.0

?


Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!

Offline

#99 15-03-2009 15:13

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Вопросы по опкодам

предел в движке игры, не известен

у 00AE: set_car 6@ traffic_behaviour_to 3 предел это 3, так как это тип езды. а вообще, экспериментируй

Last edited by 3Doomer (15-03-2009 15:14)


GIMS developer

Offline

#100 13-04-2009 23:37

Driver
Registered: 11-04-2009
Posts: 7

Re: Вопросы по опкодам

У меня вопрос какой опкод для того что бы сесть в тачку пассажиром?) И какая проверка есть "сидит ли игрок на пассажирском месте"?

Offline

Board footer

Powered by FluxBB