Суббота, 20.04.2024, 03:53
Качественные скрипты, моды и дополнения для GTA без регистрации
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Вопросы по созданию КЛЕО-скриптов
Den_spbДата: Четверг, 01.12.2011, 20:03 | Сообщение # 916
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (vip_kz)
Всем привет, меня интересует скрипт по экстрам на автомобиле. 6 экстр мало, хотелось бы конечно больше, и как в GTA IV, можно использовать несколько экстр одновременно. Реально ли реализовать такое в GTA SA ?
Увеличить количество экстр думаю будет не просто. Как вариант, можно добавить экстры как дополнительные компоненты и делать их видимыми/невидимыми с помощью скрипта.

Quote (Fimka_alex)
Добрый вечер, мне нужна помощь. Мне нужно клео бота типо АвтоПилот, смысл такой что-бы он ездил по заданых коордионатах, и активиации на клавише. Зарание спасибо!
Добрый вечер. Здесь не стол заказов.

Quote (ILYALION)
Как можно заставить машину не ехать никуда? Я думаю, что через макс. скорость, но как считать максимальную скорость машины, чтобы можно было вернуть всё обратно.
Хотя нет, поставил максимальную скорость машины 0.0, и ничего не произошло
Судя потому, что ограничение макс. скорости не подействовало, речь идёт о машине игрока. В таком случае надо просто выключить двигатель машины (см. поиск опкодов).

Quote (ILYALION)
07CC: set_player $PLAYER_CHAR button_15 1
Видимо включает/отключает возможность использования игровой кнопки 15 (вход/выход из машины).

Quote (ILYALION)
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0
Включает/отключает игнорирование игрока всеми (копами и др. актёрами).


Сообщение отредактировал Den_spb - Четверг, 01.12.2011, 20:07
 
ILYALIONДата: Четверг, 01.12.2011, 20:12 | Сообщение # 917
Группа: Проверенные
Сообщений: 325
Статус: Offline
Den_spb, сможете посмотреть, с помощью чего останавливаетсяч авто игрока в этом скрипте? http://pastebin.com/JNaTKNVn По-моему, через память, но как это реализовать мне?
 
lbgh8846Дата: Четверг, 01.12.2011, 20:18 | Сообщение # 918
Группа: Пользователи
Сообщений: 77
Статус: Offline
Подскажите пожалуйста почему этот скрипт вызывает вылетание на стандартной игре,но нормально работает на очищенном мэйне?
Code


{$VERSION 3.1.0027}
{$CLEO .CS}

//-------------MAIN---------------
0000: NOP  

:START
wait 0  
if and  
Player.Defined($PLAYER_CHAR)  
$ONMISSION == 0
jf @START
Model.Load(#STREAK)
Model.Load(#STREAKC)
//Model.Load(#BAGBOXA)
//Model.Load(#BAGBOXB)
038B: load_requested_models  
Model.Destroy(#STREAK)
Model.Destroy(#STREAKC)
jump @NONAME_15

:NONAME_15
wait 0  
if and  
    Model.Available(#STREAK)
    Model.Available(#STREAKC)
    //Model.Available(#BAGBOXA)
    //Model.Available(#BAGBOXB)
jf @NONAME_15  
06D8: 1@ = create_train_at 2868.903 1339.482 9.82031 type 1 direction 0  
0186: 5@ = create_marker_above_car 1@  
0165: set_marker 5@ color_to 3
wait 6000  
jump @NONAME_112  

:NONAME_112
wait 3000  
//06DC: set_train 1@ acc 4.0  
//06DD: set_train 1@ speed 9.0  
//wait 4000  
06DC: set_train 1@ acc 4.0  
06DD: set_train 1@ speed 30.0  
wait 8000  
06DC: set_train 1@ acc 23.0  
06DD: set_train 1@ speed 40.0  
wait 4000  
06DC: set_train 1@ acc 36.0  
06DD: set_train 1@ speed 90.0  
jump @NONAME_212  

:NONAME_212
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 735.1723 2157.643 13.88891 radius 110.0 110.0 110.0  
jf @NONAME_271  
jump @NONAME_622  

:NONAME_271
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 166.7408 1263.741 21.84773 radius 160.0 160.0 160.0  
jf @NONAME_330  
jump @NONAME_622  

:NONAME_330
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere -1948.513 123.3992 24.71862 radius 280.0 280.0 280.0  
jf @NONAME_389  
jump @NONAME_622  

:NONAME_389
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 1724.866 -1957.952 12.5391 radius 370.0 370.0 370.0  
jf @NONAME_448  
jump @NONAME_622  

:NONAME_448
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 2289.056 -1285.643 23 radius 280.0 280.0 280.0  
jf @NONAME_504  
jump @NONAME_622  

:NONAME_504
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 2868.903 1339.482 9.82031 radius 390.0 390.0 390.0  
jf @NONAME_563  
jump @NONAME_622  

:NONAME_563
wait 0  
if
$ONMISSION == 0  
jf @DESTR
if  
01AF:   car 1@ sphere 0 in_sphere 1451.415 2636.311 9.82227 radius 336.0 336.0 336.0  
jf @NONAME_212  
jump @NONAME_622  

:NONAME_622
wait 0
06DD: set_train 1@ speed 0.0  
wait 40000
if  
//8117:   not player $PLAYER_CHAR defined  
$ONMISSION == 1   
jf @NONAME_112
0164: disable_marker 5@  
07BE: remove_references_to_train 1@  
jump @START  

:DESTR
wait 0
0164: disable_marker 5@  
07BE: remove_references_to_train 1@  
jump @START  

 
Den_spbДата: Четверг, 01.12.2011, 20:19 | Сообщение # 919
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (ILYALION)
Den_spb, сможете посмотреть, с помощью чего останавливаетсяч авто игрока в этом скрипте?

Code
02D4: car 8@ turn_off_engine
Выключение двигателя, о чём я и говорю.

Quote (lbgh8846)
Подскажите пожалуйста почему этот скрипт вызывает вылетание на стандартной игре,но нормально работает на очищенном мэйне?
Хорошо бы заглянуть в SCM Log.


Сообщение отредактировал Den_spb - Четверг, 01.12.2011, 20:23
 
ILYALIONДата: Четверг, 01.12.2011, 20:24 | Сообщение # 920
Группа: Проверенные
Сообщений: 325
Статус: Offline
А этот опкод тоже выключает двигатель?
081D: set_car $10934 engine_operation 1
Тогда параметры 1-вкл, а 0-выкл?
 
Den_spbДата: Четверг, 01.12.2011, 20:26 | Сообщение # 921
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Наверное. Это можно выяснить экспериментальным путём.
 
walkДата: Пятница, 02.12.2011, 06:45 | Сообщение # 922
Группа: Проверенные
Сообщений: 96
Статус: Offline
Den_spb, ну без задержек - без wait я раньше проверял так. Т.е. здоровье игрока вайт здоровье игрока, а потом сравнивал результаты, а сейчас такое не пройдёт. Как сделать по другому?
 
Den_spbДата: Пятница, 02.12.2011, 17:46 | Сообщение # 923
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Без wait у тебя здоровье и не изменится. Ведь именно во время wait отрабатывают остальные скрипты и нескриптовые процессы exe.
Главное чтобы в скрипте был один wait.
 
ILYALIONДата: Пятница, 02.12.2011, 19:46 | Сообщение # 924
Группа: Проверенные
Сообщений: 325
Статус: Offline
Как можно проверить, есть ли у машины капот? (Т.е. оторван или нет).
 
walkДата: Пятница, 02.12.2011, 20:02 | Сообщение # 925
Группа: Проверенные
Сообщений: 96
Статус: Offline
Den_spb, ну тогда у меня текстуры будут моргать, а мне это ненужно.
 
Den_spbДата: Пятница, 02.12.2011, 20:30 | Сообщение # 926
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (ILYALION)
Как можно проверить, есть ли у машины капот? (Т.е. оторван или нет).
Попробуй так:
Code
08A7: car 34@ componentA 0 opened_or_not_present    
Капот - это компонент №0.

Quote (walk)
Den_spb, ну тогда у меня текстуры будут моргать, а мне это ненужно.
Не будет ничего моргать, если в скрипте будет выполняться один wait за цикл.
 
ILYALIONДата: Суббота, 03.12.2011, 09:16 | Сообщение # 927
Группа: Проверенные
Сообщений: 325
Статус: Offline
Я уже весь измучился с этим скриптом:
Code
{$CLEO .cs}

//-------------MAIN---------------
wait 0  

:NONAME_4
wait 0  
if  
    not Player.Defined($PLAYER_CHAR)
else_jump @NONAME_31  
jump @NONAME_4  

:NONAME_31
if and
    Actor.Driving($PLAYER_ACTOR)
    0AB0:   key_pressed 117  
else_jump @NONAME_31
   
03C0: 0@ = actor $PLAYER_ACTOR car
if
     056E:   car 0@ defined  
then   
     Car.Health(0@) = 250
     if and
         Actor.Driving($PLAYER_ACTOR)
         0AB0:   key_pressed 118
     then
         0227: 1@ = car 0@ health
         000E: 1@ -= 1
         Car.Health(0@) = 1@
         01E5: text_1number_highpriority 'NUMBER' 1@ 5000 ms 1
     end
end  
Но ошибка в одном и том же опкоде: 0045. Подскажите пожалуйста рабочий вариант
 
DK22PacДата: Суббота, 03.12.2011, 12:03 | Сообщение # 928
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
Начнем с того, что ты забыл wait после NONAME_31.
 
Den_spbДата: Суббота, 03.12.2011, 12:18 | Сообщение # 929
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
Quote (DK22Pac)
Начнем с того, что ты забыл wait после NONAME_31.
Лучше заменить второй else_jump @NONAME_31 на else_jump @NONAME_4.
Проверка 056E и вторая проверка Actor.Driving($PLAYER_ACTOR) - лишние.
0227 всё время будет возвращать 250.
В конце кода нужен jump @NONAME_4.
 
walkДата: Суббота, 03.12.2011, 14:02 | Сообщение # 930
Группа: Проверенные
Сообщений: 96
Статус: Offline
Den_spb, нет, ты не понимаешь, я делал так:

actor.health = 1@
wait 100
actor. health = 2@
1@ <> 2@

И текстура моргает. Вот про это я и говорил
 
Форум » Игры серии ГТА » Скриптинг » Вопросы по созданию КЛЕО-скриптов (Вопросы по опкодам, кодингу и др.)
Поиск: