Пятница, 19.04.2024, 10:10
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов 2
Вопросы по созданию КЛЕО-скриптов 2
VitalДата: Вторник, 30.10.2012, 22:03 | Сообщение # 256
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, я проверял при помощи звуков и задержки (чтобы можно было услышать звук). А также я преобразовывал некоторые опкоды в комментарии. Получилось вот, что:
Если сделать создание маркера комментарием, то вылет остаётся.
Если сделать комментарием и создание маркера, и создание актёра, то вылета не будет, по крайней мере в этом кусочке кода (потом эти актёры используются, но звук, которым я проверял, слышен).
Значит, проблема в создании актёра.


SCRIPTER
 
Den_spbДата: Вторник, 30.10.2012, 22:08 | Сообщение # 257
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Модель актёра загружена?
 
VitalДата: Пятница, 02.11.2012, 19:02 | Сообщение # 258
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, это модель #MALE01, которую, вроде бы, грузить не надо. Но я попробую. Я слышал, что две модели: эта и модель игрока - грузить не надо.

Добавлено (30.10.2012, 22:11)
---------------------------------------------
Увы, загрузка модели не увенчалась успехом...
Почему мне всегда попадаются какие-то странные ошибки?!

Добавлено (02.11.2012, 19:02)
---------------------------------------------
С прошлой проблемой справился, в VC нету массивов sad , поэтому пришлось выкручиваться.
Теперь другой вопрос:
Я создал актёра типа 10 (PIG - свиньи с пистолетами, которые представляют собой каких-то охранников).
Но он не атакует игрока (не отвечает ударом на удар).
0193: set_actor 1@ objective_to_act_like_ped
//01CA: actor 1@ kill_player 0[/code][code]
Если использовать 0193, то актёр тупо бегает по карте, как бешеный, не отвечает на удары.
Если этот опкод убрать, он будет просто стоять на месте и всё так же не реагировать на побои. При выстреле начинает убегать в неизвестном направлении.
Если взять опкод 01СА, то он просто бежит к игроку, но этот эффект мне не нужен.
Если взять опкод 011А, который задаёт ненависть актёра к какому-либо типу людей, ничего не выходит, реакции ноль.
Если взять опкод 03F1, результата тоже нету...
Как сделать так, чтобы этот дурак не носился по карте, как угорелый, а ходил спокойно, как все пешеходы, а также чтобы реагировал на удары игрока (т.е. начинал атаковать в ответ)?


SCRIPTER
 
Dimon_gtaДата: Понедельник, 03.12.2012, 01:48 | Сообщение # 259
Группа: Пользователи
Сообщений: 1
Статус: Offline
Всем привет.
Помогите разобраться. Я создал скрипт и при его сохранении выскакивает ошибка.
Вот оппкод:
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
Audiostream.Load3D(0@,seagulls/seagulls.mp3)
038B: load_requested_models

:NONAME_35
wait 0
Audiostream.SetPosition(0@, 310.1304 -1775.688 4.595)
Audiostream.Volume(0@) = 10.0
Audiostream.Loop(0@, 1)
004E: end_thread

Ошибка: Неизвестная команда Audiostream.Load3D(0@,seagulls/seagulls.mp3).

Что здесь неверно указано?
 
Den_spbДата: Понедельник, 03.12.2012, 22:13 | Сообщение # 260
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Не компилируется потому, что путь к файлу должен быть обозначен как строка - для этого его следует выделить с обеих сторон кавычками (при этом текст станет ярко-красным).
Другая ошибка в том, что команду 004E в клео-скриптах применять нельзя, вместо этого используется 0A93.
А команда 038B в данном случае не нужна - она загружает модели игровых объектов, а не звуки.
Вот пример загрузки и проигрывания звука:
Code
{$CLEO}   
audiostream.Load3D(11@ "CLEO\police.mp3")   
repeat   
     wait 0   
until  audiostream.Load3D(11@ "CLEO\police.mp3")   
0AC2: set_3d_audiostream 11@ position -1402.31 1365.67 5.38   
Audiostream.PerformAction(11@, PLAY)   
Audiostream.Loop(11@ 1)   
0A93:
 
VitalДата: Вторник, 11.12.2012, 19:44 | Сообщение # 261
Группа: Проверенные
Сообщений: 206
Статус: Offline
Хотел задать вопрос относительно скриншотов. Вот у нас есть опкод
Code
0A1E: dump_screen 1  

Он делает снимок экрана. Но при этом в изображение не попадает текст, таймер и прочие элементы. Можно ли как-нибудь сделать снимок экрана со всеми этими элементами? Это было бы для меня очень полезно.

Добавлено (11.12.2012, 19:44)
---------------------------------------------
Den_spb, сразу хочу спросить, как создать актёра, чтобы он, находясь далеко от игрока, не падал сквозь всё подряд (а ведь в оригинальной игре такого нету), а оставался там, где был создан.


SCRIPTER
 
Den_spbДата: Среда, 12.12.2012, 00:49 | Сообщение # 262
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (Vital)
Den_spb, сразу хочу спросить, как создать актёра, чтобы он, находясь далеко от игрока, не падал сквозь всё подряд (а ведь в оригинальной игре такого нету), а оставался там, где был создан.

Можно попробовать заблокировать актёра такой командой: 04D7: set_actor $PLAYER_ACTOR locked 1
 
VitalДата: Среда, 12.12.2012, 19:09 | Сообщение # 263
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, попробовал, не выходит то, что нужно. Актёр висит в воздухе, к тому же его нельзя убить, это не засчитывается игрой. Но в оригинале как-то ведь делали отдалённых актёров, которые, находясь даже на крышах, там и оставались, а не падали за неимением твёрдой модели...

SCRIPTER
 
Vadik7Дата: Среда, 19.12.2012, 22:08 | Сообщение # 264
Группа: Пользователи
Сообщений: 20
Статус: Offline
Привет. Если я не ошибаюсь, с переходом на cleo 4 увеличилось кол-во опкодов, которые можно использовать при создании скриптов. А где можно найти эти новые опкоды? Opcode Search Tool, что в Sanny Builder`e, отображает всё те же 1808, а где же новые? wacko

Simply Vadik7 ©
 
Den_spbДата: Четверг, 20.12.2012, 00:39 | Сообщение # 265
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Добрый вечер. Если в Поиске опкодов отсутствуют новые опкоды, значит при установке КЛЕО4 не был заменён файл Sanny Builder 3\data\sa\opcodes.txt. Удобнее устанавливать КЛЕО4 с помощью инсталлятора - в этом случае все файлы заменяются автоматически (в окне инсталлятора должна стоять галка "Sanny Builder data" - заменять файлы Sanny Builder). После установки КЛЕО4 Поиск опкодов должен содержать 1880 опкодов.
 
Vadik7Дата: Четверг, 20.12.2012, 01:14 | Сообщение # 266
Группа: Пользователи
Сообщений: 20
Статус: Offline
Den_spb, да, я установил версию CLEO 4.2a-src, а она именно с ручной установкой. Сейчас посмотрел - в архиве с этим cleo, к сожалению, и в помине нет opcodes.txt. Так что заменить файл на обновленный opcodes.txt (по пути Sanny Builder 3\data\sa\opcodes.txt) не представляется возможным даже вручную, за неимением обновленного opcodes.txt sad А можно его теперь отдельно где-нибудь найти? Спасибо)

Simply Vadik7 ©
 
Den_spbДата: Пятница, 21.12.2012, 00:32 | Сообщение # 267
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Прикрепил версию opcodes.txt для КЛЕО4 к сообщению.
Прикрепления: opcodes.txt (100.3 Kb)
 
Vadik7Дата: Пятница, 21.12.2012, 02:17 | Сообщение # 268
Группа: Пользователи
Сообщений: 20
Статус: Offline
Quote (Den_spb)
Прикрепил версию opcodes.txt для КЛЕО4 к сообщению.

Огромнейшее спасибо, Den_spb! Заменил по указанному тобой пути, теперь в Sanny 1880 опкодов, как ты и говорил smile


Simply Vadik7 ©
 
VitalДата: Пятница, 21.12.2012, 21:26 | Сообщение # 269
Группа: Проверенные
Сообщений: 206
Статус: Offline
Den_spb, проблема с актёром практически полностью решается при помощи опкода 02CB. Я создал такую проверку и поместил её в основной код:

Теперь актёр не станет падать, пока игрок его не увидит. А если игрок видит актёра, значит, он достаточно близко, чтобы модели прогрузились, а земля стала осязаемой. Для одного актёра этот способ вполне подходит, что мне и нужно. Для большего количества уже не знаю, что и предпринять (правда, мне это уже не понадобится).


SCRIPTER

Сообщение отредактировал Vital - Пятница, 21.12.2012, 21:27
 
Vadik7Дата: Суббота, 22.12.2012, 23:25 | Сообщение # 270
Группа: Пользователи
Сообщений: 20
Статус: Offline
Здравствуйте. У меня возникла сложность в осуществлении следующего действия в скрипте. Мне нужно, чтобы одна машина с актером внутри врезалась, таранила и разбивала машину, в которой едет игрок (CJ), соответственно, если бы CJ вышел из своей машины, то актер пытался бы его задавить. Вообщем, я решил решить это через Decision Maker, т.е. я настроил поведение актера следующим образом:
// Decision Maker //
060A: create_decision_maker_type 2 store_to 2@
0708: reset_decision_maker 2@ event 36
0709: set_decision_maker 2@ on_event 36 taskID 506 unknown 0.0 100.0 chance 0.0 unknown 0.0 1 1
060B: set_actor 1@ decision_maker_to 2@
// Acquaintance //
077A: set_actor 1@ acquaintance 4 to_actors_pedtype 0
wait 0
Немного поясню - event 36 - это когда у актера отношение ненависть(hate), а taskID 506 - это TASK_SIMPLE_KILL_PED_WITH_CAR (лично я понял это, как убить педа с помощью машины, понимаю, что тогда было бы BY_CAR, но всё же...). А осуществляется это, когда отношение "ненависть" - 100% и в машине и пешком, это тут: unknown 0.0 100.0 chance 0.0 unknown 0.0 1 1 Отношение "ненависть" актера к CJ я настроил в acquaintance: 077A: set_actor 1@ acquaintance 4 to_actors_pedtype 0 Тем не менее реакция 0, т.е. актер в машине даже не попытался сдвинуться, не то что преследовать и таранить CJ sad В чём же причина и вообще можно ли такое провернуть с помощью Decision Maker`а?
Потом я подумал как же ещё можно получить желаемое. Порылся в опкодах и вот этот опкод меня насторожил: 06E1: AS_actor 50@ using_car 51@ target_car 69@ with_order 29 max_speed 30.0 traffic_flag 2
Это не то? Подскажите. Спасибо)


Simply Vadik7 ©

Сообщение отредактировал Vadik7 - Воскресенье, 23.12.2012, 01:52
 
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов 2
Поиск: