на главную
об игре
Grand Theft Auto: San Andreas 26.10.2004

Скриптинг в GTA SA. Вопросы и ответы ч.2 [x]

Комментарии: 307
Тема закрыта. Публикация новых комментариев отключена.

FAQ по скриптингу

Что такое скриптинг?
От слова script – сценарий, то есть последовательность каких-либо действий. А скриптинг – процесс создания этой последовательности. Для GTA это значит: писать миссии либо более простые вещи (например, давать игроку новые возможности). Тех, кто пишет скрипты, называют скриптерами. Основа любого скрипта – это опкоды (операционные коды), а они сами базируются на переменных, в которые записываются нужные для правильной работы скрипта значения (цифровые, то есть числа целые 1, 2, -1, -2… либо дробные, обязательно с точкой 1.2, -2.3; или аналоговые, то есть люди, авто, объекты). Могут иметь вид 0@, 1@, 2@…33@ или $0, $1, $2… или $"текст на латинице без пробелов и кавычек". Разница между @ и $ такая: первые переменные действуют лишь в рамках одного скрипта (или потока), а вторые можно спокойно использовать на всём протяжении main.scm (наглядный пример: $PLAYER_CHAR).

Как записать значение в переменную?
2@ = 0 // в переменную 2@ записан нуль
00BF: $1 = current_time_hours, $2 = current_time_minutes // в переменные $1, $2 записано текущее игровое время (часы, минуты соответственно).
009A: 2@ = create_actor_pedtype 4 model #MALE01 at 0.0 0.0 0.0 // в переменную 2@ записан актёр
00A5: 0@ = create_car #PONY at 0.0 0.0 0.0 // в переменную 0@ записана машина
Переменную, в которую записывают актёра или авто, принято называть именем. Т.е. в примерах выше 2@ – имя актёра, 0@ – имя транспорта.

Как открыть main.scm?
Самая удобная программа – Sanny Builder. Свежую версию можно найти на sannybuilder.com, и там же на форуме задать интересующий вопрос. Полезные советы: 1) если курсор стоит на модели (она отличается символом # в начале), то в нижней панели слева появляется ID; 2) в современном SB есть много ключевых слов, набрав которые и поставив точку, можно получить список доступных действий, например: Actor, Car, Model; 3) нажатие Сtrl+Alt+1 вызовет Редактор координат, где при запущенной игре будет отображаться текущее положение игрока, а также его можно использовать как телепорт; 4) нажатие Сtrl+Alt+2 вызовет список опкодов; 5) если компиляция скрипта выдала ошибку, не спеши кликать ОК, если не знаешь причину бага, а нажми для начала Помощь; 6) при первом запуске программы нажми F10 или зайди в Сервис > Настройки и выбери себе язык и обязательно укажи папку GTA SA.

Как писать миссии?
Подробная справка прилагается к SB. Вызвать можно нажатием F12 или Справка > Помощь.

Как припарковать транспорт и поставить пикап?
Проще через IPL, но некоторым не нравится, что там иногда угол поворота машины бывает не тот, который нужен. И главное: для этих опкодов модель загружать не нужно.
09E2: 0@ = parked_car_generator_w_numberplate #BF400 -1 -1 0 alarm 0 door_lock 0 0 10000 plate "HOMEP_69" at X Y Z angle 0.0 // или...
014B: 0@ = init_parked_car_generator #BF400 -1 -1 1 alarm 0 door_lock 0 0 10000 at X Y Z angle 0.0 // 0@ – имя автогенератора, #BF400 – модель авто (можно писать ID, т.е. в данном случае 581), 2 цифры далее – цвет, X Y Z – координаты, 0.0 – угол; plate – номерной знак (в кавычках, не больше 8 латинских символов)
014C: set_parked_car_generator 0@ cars_to_generate_to 101 // это включает генератор, если вместо 101 написать 0, машина появляться не будет
Для пикапа:
0213: $0 = create_pickup #INFO type 3 at X Y Z // обычный пикап-значок
032B: $0 = create_weapon_pickup #teargas type 15 ammo 15 at X Y Z // оружие
$0 – имя пикапа, #INFO и #teargas – модель (оружие или значок, можно ID); type – тип (3 – одноразовый, 15 – многоразовый); ammo – количество боеприпасов; X Y Z – координаты

Как изменить оружие банд и число гангстеров в определённом районе?
0237: set_gang 0 weapons_to 23 32 1 // 0 – ID банды (0 == Ballas, 1 == Grove Street Families, 2 == Los Santos Vagos, 3 == San Fierro Rifa, 4 == Da Nang Boys, 5 == Mafia, 6 == Mountain Cloud Triad, 7 == Varrio Los Aztecas); 23 32 1 – это оружие (0 – кулaки, 1 – кастет, 2 – клюшка для гольфа, 3 – дубинка для копов, 4 – ножик, 5 – бита, 6 – лопата, 7 – кий, 8 – кaтaнa, 9 – пила, с 10 до 14 – дилдо и цветы, 15 – трость, 16 – гранаты, 17 – слезоточивый газ, 18 – мoлoтoвы, 22 – пистолет, 23 – с глушаком, 24 – Desert Eagle, 25 – дробоган, 26 – обрез, 27 – мощный дробоган, 28 – Mac 10, 29 – MP5, 30 – AK47, 31 – M4, 32 – Tec9, 33 – винтовка, 34 – снайперка, 35 – РПУ, 36 – ракетница с самонаводкой, 37 – огнемёт, 38 – старый добрый Mиниган, 41 – баллончик с краской, 42 – огнетушитель)
076C: set_zone 'SUN1' gang 1 density_to 30 // SUN1 – имя района (см. в Справке SB: Документация по SCM > GTA SA > Типы зон); 1 – знакомый ID; 30 – плотность (в процентах от населения этого района)

Какие есть особые опкоды?
015D: set_gamespeed 0.0 // скорость игры (1.0 – обычная; этот опкод используется в режиме Bullet Time)
01EB: set_traffic_density_multiplier_to 0.0 // отключает движение на дорогах
0110: clear_player $PLAYER_CHAR wanted_level // очистить уровень розыска
01F7: set_player $PLAYER_CHAR ignored_by_cops 1 // копы игнорируют
02AB: set_actor $PLAYER_ACTOR immunities BP 1 FP 1 EP 1 CP 1 MP 1 // установить иммунитет
0330: set_player $PLAYER_CHAR infinite_run 1 // бесконечный спринт
0331: set_player $PLAYER_CHAR fast_reload 1 // быстрая перезарядка оружия (не у всех видов)
0335: enable_free_respray 1 // халявные перекраски
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1 // все игнорируют
03DE: set_pedestrians_density_multiplier_to 0.0 // отключает людской поток на улицах
055D: make_player $PLAYER_CHAR fireproof 1 // огнеупорность
0572: enable_taxi_nitros 1 // все такси с азотоускорением
0629: change_integer_stat 181 to 4 // можно свободно гулять по SA без звёзд розыска
0631: put_actor 0@ in_group $PLAYER_GROUP // актёр будет следовать за игроком
0632: release_group $PLAYER_GROUP // отпустить актёров из группы
06C8: enable_riot 1 // включает бунт (только в LS)
06D0: enable_emergency_traffic 0 // отключает спецслужбы
07A7: put_jetpack_on_actor $PLAYER_ACTOR // джетпак
0879: enable_gang_wars 1 // включает войну за территории
08C6: set_actor $PLAYER_ACTOR stay_on_bike 1 // игрок не падает с байка
08FD: enable_heat_visuals 1 // включение (0 – выключение) эффекта «жарка» при высокой температуре окружающей среды
09C7: change_player $PLAYER_CHAR model_to #MODEL // замена своей модели (сначала надо загрузить новую)
09E6: set_burglary_houses_accessible 1 // доступ в жилые дома
09E9: car 3@ add_single_nitro // одноразовый нитроазот
0A24: enable_military_zones_wanted_level 1 // отключение охраны на военных зонах
0A3D: enable_prostitutes_pay_you 1 // шлюхи платят тебе

Как убрать эффект NFS MW в моде Night Crimes?
1) открыть в SB файл data/script/main.scm
2) найти строку create_thread @Noname_9 (Сtrl+F)
3) удалить либо закомментировать (Сtrl+Q), чтобы игра игнорировала поток Noname_9
4) компилировать (F6) и запутить игру (F8)
P.S. Для проверки, тот ли это поток, найди Noname_9, там должно быть написано
02E3: 12@ = car $11883 speed
if
12@ >= 30.0
else_jump @Noname_9


Как изменить количество денег
0109: player $PLAYER_CHAR money += X // X – положительное или отрицательное целое число, в зависимости от которого денег прибавят или отнимут

Как сделать, чтобы актёр или автомобиль шёл по определённому пути?
05D6: clear_scmpath
05D7: add_point_to_scmpath X Y Z // X Y Z – координаты добавляемой точки в маршруте
05D8: AS_assign_scmpath to_actor $PLAYER_ACTOR flags 4 0 // для актёра: 4 – скорость (до 7)
06BB: set_actor -1 drive_car 1@ speed 10.0 along_SCM_path // для машины: 10.0 – скорость
Как выбрать случайного пешехода?
:Noname
wait 0
if and
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0 // радиус
Player.Defined($PLAYER_CHAR)
else_jump @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
else_jump @Noname


Как сделать чтобы банды не приставали?
0746: set_acquaintance 1 of_actors_pedtype 7 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 8 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 9 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 10 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 11 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 12 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 13 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 14 to_actors_pedtype 0


Как сделать актёра другом или врагом?
077A: set_actor $Actor acquaintance 4 to_actors_pedtype 0 // acquaintance бывают такие: 1 – уважение, 2 – симпатия, 3 – неприязнь, 4 – вражда

Что такое CLEO?
Все вопросы по CLEO найдут свой ответ здесь. Если у тебя нет папки cleo, значит эта фишка у тебя не стоит. При установке эта папка создаётся автоматически. Это интересно: CLEO можно поставить и через SB. Посмотри внимательно в нижней панели справа рядом с опцией выбора игр.

PS. В прошлой теме много интересного. Особенно следует отметить пост CraZZZy-GameRRR 18.08.09 20:11, и вообще, у кого есть вопросы, рекомендую почитать старый топик.

2

Второго гаража не существует, эта дверь – просто текстура.

1

расскажите пожалуста, как можно заскриптовать движение камеры?

1

Reply to Преступник:
Извини что не сразу ответил. Держи готовый скрипт:

:Label1
wait 0
if
Actor.Defined($PLAYER_ACTOR)
jf @Label1
04C4: store_coords_to 10@ 11@ 12@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 1 pass_deads 1
jf @Label3

:Label2
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
jf @Label1
0AEA: 0@ = actor_struct 0@ handle
if and
Actor.Defined(0@)
Actor.Defined(1@)
jf @Label1
if
02D8: actor 1@ current_weapon == 0
then
01B2: give_actor 1@ weapon 32 ammo 99999
end
05E2: AS_actor 1@ kill 0@
jump @Label1

:Label3
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 0 pass_deads 1
jf @Label1
jump @Label2

Всё как ты и просил.
Маленькое примечание: будет работать только с CLEO 4.

0

Спасибо CraZZZy-GameRRR! Но появились глюки когда еду на территории банд вылетает,когда нет опкода 0000:NOP
два CJ-я.Проверь у себя.У меня cleo4.

0

CraZZZy-GameRRR, с каких это времён структура получается через 089f?

0

Помогите! А почему нельзя выбрать случайного прохожего?

0

Reply to Пресутпник:
Прошу прощения. Немного напутал. Теперь будет правильно работать:

0000: NOP

:Label1
wait 0
if
Actor.Defined($PLAYER_ACTOR)
jf @Label1
04C4: store_coords_to 10@ 11@ 12@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 1 pass_deads 1
jf @Label3

:Label2
if
031D: actor 1@ hit_by_weapon 57
jf @Label1
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
jf @Label1
0A96: 0@ = actor 1@ struct
0@ += 0x764
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
if
0@ > 0
jf @Label1
0AEA: 0@ = actor_struct 0@ handle
if
02D8: actor 1@ current_weapon == 0
then
01B2: give_actor 1@ weapon 32 ammo 99999
end
05E2: AS_actor 1@ kill 0@
jump @Label1

:Label3
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 0 pass_deads 1
jf @Label1
jump @Label2

0

Спасибо! Вопрос, а можно сделать что если он в банде чтобы все они атаковали.
И ещё когда чел стреляет, он странно глючит, начинает руку поднимать. Можно это исправить?

0

Как определить группу, в которую входит актёр, как это делает опкод 07AF только не для игрока, а для актёра?

Преступник wrote:
а можно сделать что если он в банде чтобы все они атаковали.
Можно. Вот ответят мне на вопрос, тогда сделаю.

Преступник wrote:
когда чел стреляет, он странно глючит
Почему это происходит, точно сказать не могу, но попробую что-нибудь сделать.

0

Я пробовал поставить опкод 05E2 рядом с опкодом 01B2 и чел переставал глючить, но и не всегда начал реагировать на атаки.

0

Так лучше?

0000: NOP

:Label1
wait 0
if
Actor.Defined($PLAYER_ACTOR)
jf @Label1
04C4: store_coords_to 10@ 11@ 12@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 1 pass_deads 1
jf @Label3

:Label2
if
031D: actor 1@ hit_by_weapon 57
jf @Label1
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
jf @Label1
0A96: 0@ = actor 1@ struct
0@ += 0x764
0A8D: 2@ = read_memory 0@ size 4 virtual_protect 0
if
2@ > 0
jf @Label1
0A8C: write_memory 0@ size 4 value 0 virtual_protect 0
0AEA: 2@ = actor_struct 2@ handle
if
02D8: actor 1@ current_weapon == 0
then
01B2: give_actor 1@ weapon 32 ammo 99999
end
05E2: AS_actor 1@ kill 2@
jump @Label1

:Label3
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 0 pass_deads 1
jf @Label1
jump @Label2

0

Да! Вот щас не глючит.А нельзя чтобы если он в банде, чтобы все они атаковали?

0

Конечно можно. Немного мудрёно получилось, по проще по-моему никак не сделать.

0000: NOP

:Gang1
wait 0
if
Actor.Defined($PLAYER_ACTOR)
jf @Gang1
04C4: store_coords_to 10@ 11@ 12@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 1 pass_deads 1
jf @Gang3

:Gang2
if
031D: actor 1@ hit_by_weapon 57
jf @Gang1
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
jf @Gang1
0A96: 0@ = actor 1@ struct
0@ += 0x764
0A8D: 2@ = read_memory 0@ size 4 virtual_protect 0
if
2@ > 0
jf @Gang1
0A8C: write_memory 0@ size 4 value 0 virtual_protect 0
0AEA: 2@ = actor_struct 2@ handle
04C4: store_coords_to 10@ 11@ 12@ from_actor 1@ with_offset 0.0 0.0 0.0
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 7.0 find_next 0 pass_deads 1
jf @Gang1
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
then
gosub @GiveWeaponAndKill
end
while 0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 7.0 find_next 1 pass_deads 1
089F: get_actor 1@ pedtype_to 0@
if and
0@ >= 7
0@ <= 16
then
gosub @GiveWeaponAndKill
end
end
jump @Gang1

:Gang3
if
0AE1: 1@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 0 pass_deads 1
jf @Gang1
jump @Gang2

:GiveWeaponAndKill
if
02D8: actor 1@ current_weapon == 0
then
01B2: give_actor 1@ weapon 32 ammo 99999
end
05E2: AS_actor 1@ kill 2@
return

0

Странно. У меня работает. А в какой момент вылетает, при каких обстоятельствах?

0

Я ещё раз проверил.Все равно вылетает.Когда бью чела в банде.Проверь может ты скопировал неправильно.

0

Нет, скопировал правильно. Проблема в чём-то другом...

0

Есть ешё какие-либо другие скрипты, связанные с бандами или педами? Может с ними конфликтует. Куда вставляешь скрипт - в main.scm или cs-фаил?

0

Не знаю что за бред! Удалил все скрипты, всёравно! Не знаю! Кидаю скрипт в папку cleo.

0

Гм.. Даже не знаю, чем могу помочь. Попробуй на SB-форуме спросить, там народ умный (даже слишком :)) - 99% помогут решить любую проблему.

0

Я хочу спросить,а как сделать чтобы например бомж идёт с бутылкой в руке и имеет анимацию drunkman,другой
идёт с бутылкой в руке и пьёт оттуда а другой как обычно.

0

народ, посоветуйте как определить, был ли введён определённый чит?
(комбинация из 3х букв последовавтельно) это нужно типо как защитный код =))

и не удивляйтесь, я тоже скрипты пишу

0

Да не кричи ты, здесь я. :))

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

0000: NOP
var
1@: Integer
2@: Integer
end

const
PedPointer = 0@
LastNumOfPeds = 1@
CurrentNumOfPeds = 2@
PedHandle = 3@
PedModel = 4@
Rnd = 5@
Counter = 6@
Bottle = 7@
end

while true
wait 300
PedPointer = 0xB7CD98
0A8D: PedPointer = read_memory PedPointer size 4 virtual_protect 0

CurrentNumOfPeds = 0xB74490
0A8D: CurrentNumOfPeds = read_memory CurrentNumOfPeds size 4 virtual_protect 0
CurrentNumOfPeds += 12
0A8D: CurrentNumOfPeds = read_memory CurrentNumOfPeds size 4 virtual_protect 0

if
CurrentNumOfPeds > LastNumOfPeds
then
for Counter = LastNumOfPeds to CurrentNumOfPeds
if and
Actor.Defined(PedHandle)
not Actor.Dead(PedHandle)
then
0665: get_actor PedHandle model_to PedModel
if
PedModel == 79
then
0209: Rnd = random_int_in_ranges 0 2
if
Rnd 0
then
Model.Load(1484)
038B: load_requested_models

:Label_1
wait 0
if
Model.Available(1484)
jf @Label_1
Bottle = Object.Create(1484, 0.0, 0.0, 0.0)
070A: unknown_action_sequence PedHandle Bottle 0.0 0.0 0.0 6 16 "NULL" "NULL" -1
if
Rnd == 1
then
04ED: load_animation "GANGS"

:Label_2
wait 0
if
04EE: animation "GANGS" loaded
jf @Label_2
0605: actor PedHandle perform_animation_sequence "DRNKBR_PRTL" from_file "GANGS" 4.0 loop 1 0 0 1 -1 ms
else
04ED: load_animation "PED"
:Label_3
wait 0
if
04EE: animation "PED" loaded
jf @Label_3
0605: actor PedHandle perform_animation_sequence "WALK_DRUNK" from_file "PED" 4.0 loop 1 0 0 1 -1 ms
end
Object.Destroy(Bottle)
end
end
end
PedPointer += 0x7C4
end
LastNumOfPeds = CurrentNumOfPeds
end
end

0

Пардон.Да не маленький вариант.Ты чела через память высчитываешь.

0

Преступник wrote:
Ты чела через память высчитываешь.

Ну да. А ты как предлагаешь?

0

Как убрать ограничение по максимальной скорости в игре, не в машине ( на тачке сколько не ставиш она всеравно до определенной скорости разгоняется и едет на максимальной и дальше никак).

0

Iron Roker, скорее всего это никак нельзя убрать, поскольку максимальная скорость должна устанавливаться. Может быть я ошибаюсь.

0

Ладно оставь! Я пробовал сделать скрипт,чтобы военные ходили в доках лос-сантоса и ездили на патриоте.И ещё чтобы у них был colt45.Только у меня не выходило.При этом оружие они чтобы не в руке держали, а при себе.Если прохожий атакует военного чтобы он достал пистолет и начал стрелять в него.Также если прохожий атакует автомобиль военного чтобы тот
выходил и стрелял в него.Можешь лучше такой скрипт сделать?

0

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

А не проще это через пути сделать?

0

Лучше покажи то, что ты сделал, и тебе обьяснят твои ошибки.

0

Я сделал так:взял из архива army.dff и army.txd.Далее переименовал их в army1.dff и army1.txd.Добавил в архив,сделал тип и статус и затем в pedgrp.dat сделал чтобы он встречался в доках.Можно в main.scm сделать внешний скрипт и привязать к армейцу,чтобы у него был при себе colt45.Если его атаковали, то чтобы он достал пистолет и убил нападающего.И чтобы он в доках катался на патриоте.Если автомобиль атаковал прохожий,то чтобы армеец взял в руки пистолет и убил его.Но как сделать?

0

в pedgrp.dat сделал чтобы он встречался в доках

Можно по-подробней?

0

Ну там где строки,напечатал название ARMY1.А как ещё?

0

Помогите пожалуйста! Я создал стартёр для внешнего скрипта, но он не работает.Что неправильно?
:INT
thread 'INT'
if and
$ONMISSION == 0
Player.Defined($PLAYER_CHAR)
else_jump @INT_109
0@ = Actor.Health($PLAYER_ACTOR)
if
not 0@ == 0
else_jump @INT_120
0926: $SCRIPT_STATUS = external_script_status 12 (AMMU)
if
$SCRIPT_STATUS == 0
else_jump @INT_109
08A9: load_external_script 12 (AMMU)
if
08AB: external_script 12 (AMMU) loaded
else_jump @INT_109
0913: run_external_script 12 (AMMU)

:INT_109
wait 0
jump @INT

:INT_120
090F: end_external_script 12 (AMMU)
wait 0
jump @INT

0

:INT
thread 'INT'

:INT_102
if and
$ONMISSION == 0
Player.Defined($PLAYER_CHAR)
else_jump @INT_109
0@ = Actor.Health($PLAYER_ACTOR)
if
not 0@ == 0
else_jump @INT_120
0926: $SCRIPT_STATUS = external_script_status 12 (AMMU)
if
$SCRIPT_STATUS == 0
else_jump @INT_109
08A9: load_external_script 12 (AMMU)
if
08AB: external_script 12 (AMMU) loaded
else_jump @INT_109
0913: run_external_script 12 (AMMU)

:INT_109
wait 0
jump @INT_102

:INT_120
090F: end_external_script 12 (AMMU)
wait 0
jump @INT_102

0

ILdar07! Я поставил скрипт,но он не работает.Загрузил игру появляется CJ и вылетает.Что делать?

0

:INT
thread 'INT'

:INT_102
if and
$ONMISSION == 0
Player.Defined($PLAYER_CHAR)
else_jump @INT_109
0@ = Actor.Health($PLAYER_ACTOR)
if
not 0@ == 0
else_jump @INT_120
0926: $SCRIPT_STATUS = external_script_status 12 (AMMU)
if
$SCRIPT_STATUS == 0
else_jump @INT_109
08A9: load_external_script 12 (AMMU)
if
08AB: external_script 12 (AMMU) loaded
else_jump @INT_109
0913: run_external_script 12 (AMMU)
$SCRIPT_STATUS = 1

:INT_109
wait 0
jump @INT_102

:INT_120
090F: end_external_script 12 (AMMU)
$SCRIPT_STATUS = 0
wait 0
jump @INT_102

0

Ах ты ёжкин кот! Ну что ты будешь делать!

0

Слушай Может посмотришь main.txt,может я что-то напутал,что там что-то не сходится.
http://rapidshare.com/files/427290320/main.txt

0

Странно! А почему когда стартёр добавил в main.scm вылетает?
Я скачал у тебя main.scm, теперь не вылетает,ты что-то исправил?

0

Спасибо огромное! Стартёр не вылетает на этот раз,но почему-то он не работает.
Кстати оригинал стартёр,только он работает.Просто скажу тебе.

0

Можешь сделать мне скрипт,чтобы военный в доках имел при себе пистолет.Если его атаковали чтобы он достал пистолет и убил нападавшего.Потом через опкод привязать скрипт к челу.
Я армейца добавил в доки Los Santos.Назвал его army1.

0

народ я скачал один мод и он глючный, короче вот этот скрипт он работает с архивом skin.img в котором модели для игрока, это скрипт при нажатии
[tab]+[поворот_колёсика_мыши]
меняет модели игрока из этого архива.

Но игра вылетает нафик от этого скрипта, sannybuilder пишет неизвестный опкод, может кто-то разберется?

Декомпилируйте плиз или выясните причину ошибки почему ЭТО ГАВНО вылетает.....


вот ссылка на ошибку скриптера....(кстати у друга тоже не работает.. и у еще двух тоже.... короч у 4 человек на 5 компах не работает этот скрипт)

http://www.onlinedisk.ru/file/540474/



могу дать 3голоса ВКонтакте тому кто Реально сделает так чтобы всё работало....

0

преступник, ты хочеш только одного военного? Я прописал army1 в peds.ide как гангстера, в pedgrp.dat поставил группу Gang 9, в cargrp.dat для Gang 9 указал pаtriot, в vehicles.ide для pаtriot изменил параметры ignore, 2 на normal, 10 и скриптом задал территорию и оружие:
076C: set_zone 'LDOC1a' gang 8 density_to 90
076C: set_zone 'LDOC1b' gang 8 density_to 90
076C: set_zone 'LDOC2' gang 8 density_to 90
076C: set_zone 'LDOC3a' gang 8 density_to 90
076C: set_zone 'LDOC3b' gang 8 density_to 90
076C: set_zone 'LDOC3c' gang 8 density_to 90
076C: set_zone 'LDOC4' gang 8 density_to 90
0237: set_gang 8 weapons_to 22 22 22

После всех этих операций у меня в доках LS начали гулять и кататься армия с пистолетами.

0

У меня все гангстеры заняты.Лучше скрипт.

0

Только через скрипт новую банду несоздашь.

0

to Бузаров Дима

Лучше к автору скрипта обратиться. Скрипт большой и сложный, без исходника разобраться в нём практически нереально.

0

Подскажите как сделать вид от первого лица (((( незнаю как его поставить где куда как и где прописывать и как фпс???? жду ответов...

0

to CraZZZy-GameRRR

А ТЫ ЕГО СМОГ ДЕКОМПИЛИРОВАТЬ??!!!

КИНЬ МНЕ!!!!
я как-то с фонаря штук 6 скриптов исправил =))

тупо не разбираясь что к чему =))
может что выйдет ?)


кинь исходник скрипта!!

в ЛС или на имейл. плиз!!!

0

Вовсе этот скрипт не глючный, просто там что-то записано в HEX-END конструкции, SB ошибочно принимает это за опкоды и пишет ошибку. Включи в консоли опцию Ignore Unknoun и затем декомпилируй.

0

А может быть, там использованы новые опкоды, и чтобы SB их распознал, нужен sascm.ini автора. Но он врядли его даст, потому что кто захочет, чтоб чужие копались в его творении.
Такая же бодяга с main.scm от Anderius.

0

ILdar07! Можно сделать внешний скрипт для army1, там всё так сделать чтобы у армейца был пистолет и если его атакует прохожий или игрок чтобы он достал оружие и убил его.Ну например скрипт диллера там тоже, даётся оружие и анимации, потом привязывается скрипт через опкод к персонажу.Я имею ввиду так сделать.

0

Ну раз можно, почему не напишешь.

0

Скачал с интернэта скрипт 2 pleyer, но не 2 players missions beta а просто клео скрипт. У меня вопрос, экран там вверху, а можно зделать так чтобы экран делился на две части?

0

Что не правильно в скрипте?
0000: NOP
var
1@: Integer
2@: Integer
end

const
PedPointer = 0@
LastNumOfPeds = 1@
CurrentNumOfPeds = 2@
PedHandle = 3@
PedModel = 4@
Rnd = 5@
Counter = 6@
Bottle = 7@
end

while true
wait 300
PedPointer = 0xB7CD98
0A8D: PedPointer = read_memory PedPointer size 4 virtual_protect 0

CurrentNumOfPeds = 0xB74490
0A8D: CurrentNumOfPeds = read_memory CurrentNumOfPeds size 4 virtual_protect 0
CurrentNumOfPeds += 12
0A8D: CurrentNumOfPeds = read_memory CurrentNumOfPeds size 4 virtual_protect 0

if
CurrentNumOfPeds > LastNumOfPeds
then
for Counter = LastNumOfPeds to CurrentNumOfPeds
if and
Actor.Defined(PedHandle)
not Actor.Dead(PedHandle)
then
0665: get_actor PedHandle model_to PedModel
if
PedModel == 79
then
0209: Rnd = random_int_in_ranges 0 2
if
Rnd 0
then
Model.Load(1484)
038B: load_requested_models

:Label_1
wait 0
if
Model.Available(1484)
jf @Label_1
Bottle = Object.Create(1484, 0.0, 0.0, 0.0)
070A: unknown_action_sequence PedHandle Bottle 0.0 0.0 0.0 6 16 "NULL" "NULL" -1
if
Rnd == 1
then
04ED: load_animation "GANGS"

:Label_2
wait 0
if
04EE: animation "GANGS" loaded
jf @Label_2
0605: actor PedHandle perform_animation_sequence "DRNKBR_PRTL" from_file "GANGS" 4.0 loop 1 0 0 1 -1 ms
else
04ED: load_animation "PED"
:Label_3
wait 0
if
04EE: animation "PED" loaded
jf @Label_3
0605: actor PedHandle perform_animation_sequence "WALK_DRUNK" from_file "PED" 4.0 loop 1 0 0 1 -1 ms
end
Object.Destroy(Bottle)
end
end
end
PedPointer += 0x7C4
end
LastNumOfPeds = CurrentNumOfPeds
end
end

0

Извини, преступник, моя ошибка. В середине вместо ... if Rnd 0 then ... должно быть Rnd == 0.

У меня (а может быть и не только) глюк такой: пишу в посте скрипт, отправляю, а в нём часть текста куда-то исчезает. Вот и тут также.

0

Это из-за того, что сообщение обрабатывается как обычный текст, а не как скрипт-код.

0

Как сделать скрипт, чтобы при уровне розыска, когда фбр гоняется, чтобы за игроком летал вертолёт и оттуда по канату фбр десантировался?

0

ILdar07! Помоги пожалуйста! Мне пришлось заново main.scm делать.У меня опять глюк, зависает входя в дом из-за стартёра.
Помоги! Пожалуйста!

0

Ничем помочь немогу. Купи новый стартёр.

0

А что ты исправлял? Ну помнишь я тебе давал main.txt. Ты глюк исправил.Что конкретно?

0

Удалил ссылку на поток глюкавый.

0

ILdar07! Я игру переустановил, добавил свой main.scm, но забыл script.img.Пробывал через консоль пропуск неизвесных опкодов не вышло.Помоги! Не могу открыть.

0

Crank[Adrenalin]
Спроси у автора.

преступник
Придётся писать по-новой. В твоей плохой памяти никто невиноват.

0

Какой скрипт отвечает за копов в гараже?

0

Я твой скрипт не понимаю! Ошибок море! Что ты хочешь от скрипта?

0

Неужели до сих пор непоняли, что некоторые опкоды здесь на форуме корежатся? Кидайте в ЛС или на мыло или ещё как-то, я незнаю.
Crank[Adrenalin]
Когда сообщается о недостаточности параметров, курсор сам автоматом перемещается на строчку с опкодом. Введи его в Поиск опкодов (Ctrl+Alt+2) и внимательно изучи. А потом добавь недостающее число.
ID узнать просто. Кликни на #AK47 (к примеру), внизу слева появится строчка #AK47 = 355. Это и есть ID.
преступник
Извини, но копаться в чужих ошибках (если их даже нет) у меня нет ни времени, ни желания.

0

Да просто удали этот глюковатый поток.Больше я с main.scm не пристану.Пожалуйста!

0

1. Машину, записанную в переменную 0@, перемещают в координаты 2112.69, -2439.955, 14.0.
2. В переменные 2@, 4@…7@ записывают нуль и дробные числа.
3. Изменение значений, присвоенных переменным 2@…7@. В данном конкретном случае: прибавление определённых чисел.

0

В смысле, как? Число + @ (локальные: 0@, 1@, 2@…) или $ (глобальные: $0, $1, $2… $actor1). Читай Справку (F12).
Может быть, интересует как записывать в переменные?
2@ = 0 // записано число
009A: 2@ = create_actor_pedtype 4 model #MALE01 at 0.0 0.0 0.0 // записан актёр
00A5: 0@ = create_car #PONY at 0.0 0.0 0.0 // записано транспортное средство

0

Улучшение управляемости для транспорта на дробное значение.

0

00A0: store_actor 0@ position_to $1 $2 $3 // в переменные $1, $2, $3 записываются дробные значения координат педа 0@

0

У меня вопрос.Как в Sanny Builderе,когда пишешь новый скрипт,сделать так чтобы в банду можно было нанимать НЕОГРАНИЧЕННОЕ число людей

0

ILdar07! Помоги разобраться, я хочу, чела сделать по координатам позицию сделал.Указал координаты, приехал и вижу, что чел появляется бесконечно.Их кучами становится, а мне нужно, чтобы один был.Как сделать?

0

Не надо после создания прыгать на эту метку. Покажи скрипт.

0

Вот:
:TEST
wait 0
Model.Load(#BMYST)
Model.Load(#COLT45)
038B: load_requested_models

:TEST_2
wait 0
if
Model.Available(#BMYST)
Model.Available(#COLT45)
jf @TEST_2
wait 5000
009A: 1@ = create_actor_pedtype 20 model #BMYST at 2285.2 -2280.7 13.2
01B2: give_actor 1@ weapon 22 ammo 744 // Load the weapon model before using this
джамп @TEST_2

:TEST_4
wait 0
if
actor.Dead(1@)
jf @TEST_4
Model.Destroy(#BMYST)
Model.Destroy(#COLT45)
джамп @TEST_2

0

Нy и зачем нужен джамп @TEST_2? Логически подумай и удали его. И не надо Model.Destroy, лучше 01C2, всё-равно модель ведь понадобится.

0

Понял! Всё работает.Спасибо! У меня ещё вопрос, как правильно сделать, чтобы в инкассаторе были два wmysgrd?Они должны быть вооружены пистолетом.И ещё вопрос, что это за опкод 07DD: ?

0

0129: 1@ = create_actor_pedtype 6 model #wmysgrd in_car 0@ driverseat // водитель
01C8: 2@ = create_actor_pedtype 6 model #wmysgrd in_car 0@ passenger_seat 0 // пассажир
01B2: give_actor 1@ weapon 22 ammo 60
01B2: give_actor 2@ weapon 22 ammo 60
Опкод
07DD: set_actor 0@ temper_to 80
фактически означает длину очереди (100 – в очередь весь магазин).
Так что при 07DD: set_actor 0@ temper_to 100 обстрел почти непрерывный.

© sannybuilder.com/forums/viewtopic.php?pid=2899

0

Опкод 07DD: даёт статус? Я хочу челу статус сделать criminal.

0

Он даёт мощность обстрела. Статус criminal можно поставить во время создания:
009A: 2@ = create_actor_pedtype 20 model #MALE01 at 0.0 0.0 0.0 // pedtype 20 – криминал

0

Это pedtype! Статус stat.Я это имею ввиду.А почему в опкоде 07DD: SEE PEDSTATS.DAT? Этот файл за статус отвечает.

0

Тогда изменяй его. Скриптинг тут нипричём.

0

люди помогите мне.я хочу открыть вход в дом свита пока что.дайте пож-ста мне опкод.я его потом в СБ скопирую и скомпилирую

0

Входы открываются не через опкоды, а через IPL.

http://gta.ru/forums/gta_san_andreas/modding/203697/

0

Аа.Но ведь другие скрипты как то работают!вот например есть скрипт в дом райдера и там ни единого ipl-полностью файл cs

0

Ааа, ну всё понятно. Используется метод телепорта. Создаётся сфера и проверка. Если игрок на точке, перемещается в интерьер. Там тоже сфера с проверкой (выход). Много буков и писанины, а в IPL всего две строчки.
PS. Координаты Свита: 2524.01 -1679.53 1014.5. Номер интерьера: 1. Замени цифры в скрипте и готово.

0

ILdar07! В CLEO 4 есть опкоды новые, которые могут вычислить автомобиль через память.Ты не знаешь?

0

PS. Координаты Свита: 2524.01 -1679.53 1014.5. Номер интерьера: 1. Замени цифры в скрипте и готово.
это ты имеешь ввиду вставить эти данные в скрипте про дом райдера?

0

вот если надо всё чисто заново делать, то все строки в оригинальном main.scm удалять и писать новые?

0

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

0

$PLAYER_CHAR = Player.Create(#NULL, 0.0, 0.0, 0.0)
Про одежду читай в Справке (раздел Документация по SCM > GTA SA).

0

(#NULL, 0.0, 0.0, 0.0) - это я так понял координаты?

а где эту справку найти?

0

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

0

и ещё как сделать чтоб поставить вход в сейвхаус в другом месте и чтоб в него можно было зайти и там был интерьер?

0

Повторяю ещё раз: через IPL. Скриптинг здесь нипричём.

0

тогда попроще: как поставить точку сохранения?

0

ILdar07 как это?я ведь тебе показывал пример входа в дом райдера где нет ipl,а полностью скрипт

0

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

$PLAYER_CHAR = Player.Create(#NULL, 2473.5979,-1287.0814,29.8343)
Player.SetClothes($PLAYER_CHAR, "worktrkhaki", "worktr", 2)
Player.SetClothes($PLAYER_CHAR, "sneakerheatwht", "sneaker", 3)
Player.SetClothes($PLAYER_CHAR, "capgangback", "capback", 16)
Player.SetClothes($PLAYER_CHAR, "shirtbgang", "shirtb", 0)
Player.Build($PLAYER_CHAR)

ПС: как правильно вычислять координаты? я вычислял через самп командой /save

0

Прочти внимательно всю предыдущую тему, может быть найдёшь для себя что-то полезное.
Travego
Я, к примеру, делаю вход через IPL. И разработчики так делали. А кто не умеет, пусть парится с опкодами.
Сравни ради интереса вход через красный маркер и через жёлтый. Какой лучше выглядит?

0

Всем привет, народ.
У меня есть скрипт который скины из архива меняет, и из-зи него иногда (60-75%случаев) вылетает игра.

Вылетает когда отпускаешь [tab].
Смысл - при нажатии [tab] + [след. оружие] или [пред. оружие] он меняет скин игрока из архива skin.img.(архив в gta.dat я прописал.)

Можете сказать почему вылетает и желательно исправить?

просто я в таких не разбираюсь, я всего 3 месяц толком пишу и ещё не весь самоучитель прошел =((.


P.S. скрипт тут: http://my-screens.at.ua/skin.rar

0

ILdar07 конечно через жёлтый!а то через красный как то не смотрится.я бы сделал бы сам себе эти жёлтые маркеры в дома Катти,Свита,Вузи,Аэропорт Либерти Сити и т.д.Увы...Не получается у меня.Видимо не даёт мне судьба такого счастья

0

Я новичек в скриптинге, хочу создать скрипт, когда при нажатии клавиши N сзади машины пошел бы дым, что-то вроде дыма от дрифта. Но у меня вылетает игра, что неправильно?
:1
wait 100
if and
00E1: key_pressed 0 10
jf @DR
wait 100
064B: $PaLe = create_particle "VENT" at 0.0 0.0 0.0 1
066C: $PaLe = attach_particle "VENT" to_vehicle $Buffalo offset 0.0 -4.4 0.0 rotation 0.0 1.0 0.0 1
064C: make_particle $PaLe visible

Также написал "create_thread @1"

0

if and
00E1: key_pressed 0 10
00DF: actor $PLAYER_ACTOR driving
jf @DR
03C0: $Buffalo = actor $PLAYER_ACTOR car
wait 100
066C: $PaLe = attach_particle "VENT" to_vehicle $Buffalo offset 0.0 -4.4 0.0 rotation 0.0 1.0 0.0 1

0

Какой опкод даёт возможность носить два пистолета в руках?

0

народ, а как создать обьект, и потом двигать его?

ну я хочу сделать дом с лифтом, воротами....

и как сделать неубиваемого чувака с базукой??
чтоб он палил (ЭТО РАЗНЫЕ УВАКИ БУДУТ, ПАЛИТЬ ПО РАЗНЫМ ЛЮДЯМ!!! будут в разных местах!!):
1. копы
2. CJ
3. ballas-vagos
4. грув + cj
5.ВСЕ!!! + тачки
6. цивильные граждане
7. спецслужбы (пожар, мент, спецназ, фбр....)
8. токо самолёты
9. вертолёты
10. только транспорт

наишите тоже по цифрам...

0

Хай народ! Мне надо сделать , чтобы люди и тачки ездили по тем дорогам которые создал я. Подскажите как сделать?

0

как создать обьект
0107: $0 = create_object #AD_FLATDOOR at 0.0 0.0 0.0

двигать его
:METKA
if
834E: not move_object $0 to 10.0 0.0 0.0 speed 0.0 0.0 0.5 flag 0
jf @METKA2
wait 0
джамп @METKA

:METKA2

как сделать неубиваемого чувака с базукой
009A: 2@ = create_actor_pedtype 4 model #MALE01 at 0.0 0.0 0.0
02AB: set_actor 2@ immunities 1 1 1 1 1
01B2: give_actor 2@ weapon 36 ammo 60 // Не забудь загрузить модель

копы
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 6

CJ
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0

ballas-vagos
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 7
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 9

грув + cj
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 8
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0

ВСЕ!!!
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 22
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 20
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 19
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 18
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 17
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 14
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 13
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 12
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 11
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 10
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 9
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 8
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 7
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 6
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 5
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 4
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0

граждане
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 4
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 5

спецслужбы
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 6
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 18
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 19

К транспорту так не сделаешь, он будет стрелять только в тот, где сидит враг.
Цифры тут: Справка > Документация по SCM > GTA SA > Типы пешеходов

Eltezar86
Загляни в тему про пути.

0

Красный?
03BC: 1@ = create_sphere_at 0.0 0.0 0.0 radius 1.0

0

И ещё, как проверить вошёл ли игрок в маркер?

0

00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 0.0 0.0 0.0 radius 1.0 1.0 1.0

0

слушайте такой вопрос ко всем тут есть люди кто может соорудить модельку девятиэтажного панельного дома?

0

да кстати меня оттуда к вам прислали

Сообщение отредактировал модератор
написание нескольких сообщений подряд запрещено, прошу ознакомиться с правилами форума

0

как уничтожить всё что находиться на расстоянии 4@ от точки с координатами 1@ 2@ 3@ ?

я написал скрипт взрыва, точнее кучи взрывов, но от них тачки !тупо! улетают в воздух. а мне надо чтоб они не тупо улетели УЖЕ ВЗОРВАНЫЕ!
взрываются тачки где-то после 8-9 взрыва. несмотря на падение с высоты....

и какой взрыв мощнее? в плане разрушений 6 и 10 я делаю "для эффекта" что для разрушений...


№2: каким опкодом можно "записать" в переменную 10@ ближайшую тачку или находящуюся где-то на определенном расстоянии?
что потом разогнать выполнять с ней действия... ну мне скорость поменять надо...

0

как уничтожить…
0395: clear_area 1 at 1@ 2@ 3@ radius 4@

Почитай раздел Взрывы в Справке (Документация > GTA SA).

:METKA
wait 0
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 10@ closest_ped_to -1
if
not 10@ == -1
jf @METKA

0

про взрывы я читал, про убойную силу нету ничего... токо размер.... а за опкод 0395 СПС!

и обьясни плз что тут что обозначает:
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 10@ closest_ped_to -1
что такое -1 ?

ну актёр и переменная 10@ - я понял

0

-1 значит null. Что это такое – спроси у программиста.

0

я сам программирую 2 года.

0395: clear_area ... не работает!!!

я радиус 20 поставил, ВСЁ целое!!

0

Потому что не выгрузил из памяти.

0

он что тупо всё убирает????

мне нужен опкод, который взрывает тачки а не заставляет их исчезнуть!!!

0

народ кто знает где найти дороги русские для города можно?

0

яндекс, гугл а хрен что. Все обыскал, ничего нет подходящего

0

077A: set_actor 2@ acquaintance 4 to_actors_pedtype 22
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 20
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 19
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 18
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 17
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 14
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 13
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 12
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 11
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 10
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 9
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 8
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 7
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 6
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 5
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 4
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0


Немного облегчённый вариант записи
for 0@ = 0 to 22
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0@
end

0

Немного облегчённый вариант записи
for 0@ = 0 to 22
077A: set_actor 2@ acquaintance 4 to_actors_pedtype 0@
end


циклом всегда проще

P.S.
а как кроме map editor'а узнать id/название обьекта? при чем мне надо видеть его в 3D как в мап эдиторе

0

С дымом я, наконец, разобрался. У меня несколько вопросов:
1.Можно ли увеличивать/уменьшать particle эффекты?
2.Какой опкод написать, чтобы при нажатии клавиши убирался эффект?
3.Где узнать номер клавиши, при нажатии которой выполнялось что-либо.

0

Бузаров Дима не как, существует для этого мапик, через него только можно узнать айди объекта. а 3D как обычно в помощь 3D макс

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

0

-NeLegaL-
1. В опкоде 016F есть параметр size. Побалуйся с ним.
2. 064E, 0650 либо 0976.
3. Справка > Помощь > Документация по SCM > GTA SA > Номера клавиш.

0

Привет всем, как задействовать в одном CLEO скрипте для GTA SA несколько клавиш?
например набираешь hesoyam - тебе даётся ХП,АП,$$$
p.s. очень надо, помогите;(

0

Тебе нужен опкод 0AB0. О нём написано в Справке, раздел CLEO 3 Code Library > CLEO3: опкоды.

Travego
Думаю, тебя заинтересует опкод 08F4.

0

Привет всем . Кто знает есть ли какой нибудь скрипт или что то типо кар спавна что бы машина спавнились и например когда едешь не повторялись . а то у меня почти все машины заменены и например если зажусь в какую нибудь редкую машину например пулю то по городу каждая 5 машина это пулля %( . подскажи те пожалусто есть ли скрипт или кар спавнер каторый решил бы эту проблему ?

0

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

подкиньте как мне сделать чтоб взрывы типа 0, идя спиралью от центра, сделали подобие взрывной волны.

мне даже мощности взрыва 10 не хватает. надо чтоб этот взрыв был диаметром где-то 100 метров!!!!
и при этом быстро распространялся.

цикл в цикле - у меня квадрат, а надо круг


///////
подскажите как посадить игрока в машину, и сделать машину прозрачную и неосязаемую?

как определить касается ли объект поверхности (любой)?

0

Чем больше диаметр/радиус взрыва, тем меньше его сила и видимость.
как определить касается ли объект поверхности (любой)?
04DA: has_object 0@ collided

0

dk22 vG
И как у тебя квадрат получился?

for 1@ = -50.0 to 50.0 step 2.0
wait 0
for 2@ = -50.0 to 50.0 step 2.0
wait 0
store coords from ___ __________ to 7@ 8@ 9@ with offset 1@ 2@ 0.5
create exlosion type 0 at 7@ 8@ 9@
end
end

вот так получается квадрат!


а мне надо КРУГ!!

0

Ну так в чём проблема... Функция круга - ПиЭр^2, можно ещё сделать через синус и косинус... 10.0 - коэффициент радиуса.

for 0@ = 0.0 to 360.0 step 6.0
wait 300
if
not player.Defined(0)
then
break
end
02F7: 1@ = cosine 0@
02F6: 2@ = sinus 0@
mul(1@, 10.0)
mul(2@, 10.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $player_actor with_offset 1@ 2@ -1.0
020C: create exlosion type 12 at 1@ 2@ 3@
end

0

Должно работать.

Спойлер

{$CLEO}
wait 0
while 8ab0: 85 // Для активации нажать U
wait 0
end
for 0@ = 0.0 to 360.0 step 6.0
wait 300
if
not player.Defined(0)
then
break
end
02F7: 1@ = cosine 0@
02F6: 2@ = sinus 0@
mul(1@, 10.0)
mul(2@, 10.0)
04C4: store_coords_to 1@ 2@ 3@ from_actor $player_actor with_offset 1@ 2@ -1.0
020C: create exlosion type 12 at 1@ 2@ 3@
end
0A93:

PS 300 - перерыв между каждым взрывом, step 6.0 - отвечает за кол-во взрывов (360/6=60, значит, будет 60 взрывов).

0

и ещё вопрос: а как радиус менять или это он и будет спиралью идти от центра и дальше?

сорри я всего в 8 класс хожу, мы такого "02F7: 1@ = cosine 0@ - 02F6: 2@ = sinus 0@" не проходили...


и ещё: можно ли машине(любой модели) присвоить характеристики самолёта или лодки?
короче другого типа транспорта?
мне надо чтоб игрок вроде как был в самолёте, а модель отображалась машины!

0

и ещё вопрос: а как радиус менять или это он и будет спиралью идти от центра и дальше?
Ты просил сделать по кругу.
Для того, чтобы менять радиус от меньшего до большего, можно сделать так:
var
1@: float
2@: float
0@: float
4@: float
end
4@ = 0@
mul(4@, 20.0) // 20 - максимальный радиус
div(4@, 360.0)
02F7: 1@ = cosine 0@
02F6: 2@ = sinus 0@
mul(1@, 4@)
mul(2@, 4@)

0

main.scm, ошибка перехода на нулевой оффсет, помогите пожалуйста разобраться (построение миссий из мануала Alexander'а потом уберу)
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
DEFINE OBJECTS 1
DEFINE OBJECT SANNY BUILDER 3.04

DEFINE MISSIONS 1
DEFINE MISSION 0 AT @NT

DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script

DEFINE UNKNOWN_EMPTY_SEGMENT 0

DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0027}

//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 1 minutes_to 0
04E4: unknown_refresh_game_renderer_at -96.4322 -317.9449
Camera.SetAtPos(-96.4322, -317.9449, 31.3738)
$PLAYER_CHAR = Player.Create(#NULL, -96.4322, -317.9449, 31.3738)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "BEARD", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "WORKTRKHAKI", "WORKTR", Legs)
Player.SetClothes($PLAYER_CHAR, "CHUCKSBLACK", "CHUCKS", Shoes)
Player.SetClothes($PLAYER_CHAR, "LEATHER", "LEATHER", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 0 1000
select_interior 0
0629: change_integer_stat 181 to 4
016C: restart_if_wasted_at 2027.77 -1420.52 15.99 angle 137.0 town_number 0
016D: restart_if_busted_at 1550.68 -1675.49 14.51 angle 90.0 town_number 0
0180: set_on_mission_flag_to $ONMISSION // Note: your missions have to use the variable defined here
$DEFAULT_WAIT_TIME = 250
03E6: remove_text_box
create_thread @NT
end_thread

:MAIN_295
wait $DEFAULT_WAIT_TIME
00BF: $TIME_HOURS = current_time_hours, $TIME_MINS = current_time_minutes
джамп @MAIN_295

:NT
thread "NT"
wait 0
1@ = Marker.CreateIconAndSphere(15, -96.4322, -317.9449, 31.3738)

:NT2
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -96.4322 -317.9449 31.3738 radius 1.0 1.0 2.0 sphere 0 stopped_on_foot
jf @NT2
start_mission 0
$ONMISSION = 1
end_thread

//-------------Mission 0---------------

:INT1
gosub @BEGIN
if
wasted_or_busted
Jf @PROPUSK
gosub @FAIL

:PROPUSK
gosub @UDALENIE_KODA
end_thread

:BEGIN
increment_mission_attempts
$ONMISSION = 1
02a3: enable_widescreen 1
player.CanMove($PLAYER_CHAR) = False
0110: clear_player $PLAYER_CHAR wanted_level
054C: use_GXT_table 'INTRO1'
wait 0
Model.Load(#COMET)
Model.Load(#SILENCED)
Model.Load(#CIGAR)
Model.Load(#COLT45)
Model.Load(#STRATUM)
023C: request_special_actor 'CLAUDE' as 1
023C: request_special_actor 'KILLER' as 2
023C: request_special_actor 'YAK1' as 3
023C: request_special_actor 'JAMES' as 4
023C: request_special_actor 'NIKO' as 5
038B: load_requested_models
04ED: load_animation "SMOKING"
04ED: load_animation "BOMBER"
04ED: load_animation "GANGS"

:1
wait 0
if and
Model.Available(#COMET)
Model.Available(#SILENCED)
023D: special_actor 1 loaded
023D: special_actor 2 loaded
023D: special_actor 3 loaded
023D: special_actor 4 loaded
jf @1
wait 0
if and
04EE: animation "SMOKING" loaded
04EE: animation "PED" loaded
model.Available(#CIGAR)
jf @1
actor.create(1@,mission1, #special01,-97.7241, -334.5231, 31.7169)
actor.create(2@,mission1, #special02,-97.286, -337.673, 31.7669)
actor.create(3@,mission1, #special03,-97.7426, -331.8013, 31.6632)
actor.create(4@,mission1, #special04,-96.3846, -347.6894, 31.9196)
car.Create(5@,#COMET,-93.4138, -338.6435, 31.7823)
Car.Angle(5@) = 90.0
0229: set_car 5@ color_to 61 0
01B2: give_actor 2@ weapon 23 ammo 2000 // Load the weapon model before using this
6@ = Object.Create(#CIGAR, 0.0, 0.0, 0.0)
070A: unknown_action_sequence 3@ 6@ 0.04 0.1 -0.02 5 16 "NULL" "NULL" -1
0605: actor 3@ perform_animation_sequence "M_SMKSTND_LOOP" from_file "SMOKING" 4.0 loop 1 1 1 0 -1 ms
033F: set_text_draw_letter_size 0.8 1.8
0342: enable_text_draw_centered 1
0343: set_text_draw_linewidth 600.0
060D: draw_text_shadow 0 color_RGBA 0 0 0 255
033E: set_draw_text_position 320.0 180.0 GXT 'LOAD_01' // VPEHCNC NHTEPHEWHL. A3POZOPT,
033F: set_text_draw_letter_size 0.8 1.8
0342: enable_text_draw_centered 1
0343: set_text_draw_linewidth 600.0
060D: draw_text_shadow 0 color_RGBA 0 0 0 255
033E: set_draw_text_position 320.0 200.0 GXT 'LOAD_03' // LN6EPTN CNTN,
033F: set_text_draw_letter_size 0.8 1.8
0342: enable_text_draw_centered 1
0343: set_text_draw_linewidth 600.0
060D: draw_text_shadow 0 color_RGBA 0 0 0 255
033E: set_draw_text_position 320.0 220.0 GXT 'LOAD_04' // 1992.
wait 5000
03F0: enable_text_draw 0
00BE: text_clear_all
04E4: unknown_refresh_game_renderer_at -87.1431 -336.2323
fade 1 1000
Camera.SetPosition(-87.1431, -336.2323, 31.5956, 0.0, 0.0, 0.0)
Camera.PointAt(-94.4527, -336.4663, 31.7478,2)
05D3: AS_actor 1@ goto_point -92.9996 -337.3279 31.613 mode 4 10000 ms // versionA
0812: AS_actor 1@ perform_animation "FACGUM" IFP_file "PED" 4.0 loopA 1 lockX 0 lockY 0 lockF 0 time -1 // versionB
wait 5000
07A5: AS_actor 2@ attack_actor 1@ -1 ms
wait 5000
05D3: AS_actor 2@ goto_point -95.77 -343.0706 31.8526 mode 4 10000 ms // versionA
Camera.SetPosition(-95.5571, -350.4363, 31.9498, 0.0, 0.0, 0.0)
Camera.PointAt(-95.6045, -348.8628, 31.9325,2)
wait 3000
07A5: AS_actor 4@ attack_actor 2@ -1 ms
джамп @UDACHNO

:UDACHNO // ------- Сюда надо делать переход(джамп) , если миссия удалась --------
wait 0
camera.Restore_WithджампCut
02a3: enable_widescreen 0
player.CanMove($PLAYER_CHAR) = True
01E3: text_1number_styled 'M_PASS' 25000 5000 ms 4
Player.Money($PLAYER_CHAR) += 25000
0110: clear_player $PLAYER_CHAR wanted_level
0394: play_music 1
gosub @PROPUSK
return

:FAIL // ------- Сюда надо делать переход(джамп) , если миссия провалена --------
camera.Restore_WithджампCut
02a3: enable_widescreen 0
player.CanMove($PLAYER_CHAR) = True
00BA: text_styled 'M_FAIL' 5000 ms 1
$ONMISSION = 0
mission_cleanup
create_thread @NT
return

:UDALENIE_KODA
$ONMISSION = 0
mission_cleanup
return

0

04EE: animation "PED" loaded
Это зачем? ped.ifp загружать не надо, и надо проверять другие анимации.
В сообщении об ошибке всегда есть кнопка Помощь.
Ты перепутал две метки: триггера и миссии. Надо было написать:
DEFINE MISSION 0 AT @INT1
У меня скомпилировалось.

0

Ты перепутал две метки: триггера и миссии. Надо было написать:
DEFINE MISSION 0 AT @INT1

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

0

Какой опкод даёт текст? Например, если вошёл в маркер, чтобы текст появился.

0

00BC: show_text_highpriority GXT 'MTIME3' time 1000 flag 1 // ~s~Come back between 9:00 and 17:00.
Обычный текст, как диалог.
00BA: show_text_styled GXT 'BEEFY' time 1000 style 2 // Beefy Baron
Текст, как название миссии.
Вообще там куча опкодов, еще текст с переменными, разными стилями и т.д. Посмотри справку и поиск опкодов, если этого недостаточно.

0

PED загружать не надо, только проверять
Зачем проверять, если не загружать? Он всегда доступен, всё разумное население SA использует его всегда и повсеместно.
преступник
Справка > Статьи > Введение в скриптинг > Текст.

0

073E: get_car_in_sphere 1@ 2@ 3@ radius 8@ model -1 handle_as 21@
что обзначает и как действует этот опкод?

потом с машиной 21@ можно будет выполнять какие-либо действия?

0

В переменную 21@ записывается любой транспорт (-1) из точки с координатами 1@ 2@ 3@ в радиусе 8@. Если указать model (к примеру, #TOPFUN), то будет записан лишь такая машина. И потом с ней можно оперировать, как с любой другой обычной.

0

Всем привет=)) Расскажите пожалуйста подробнее как выводить текст на экран через клео скрипт...Буду очень благодарен=)

0

Справка SB ->> Статьи ->> Введение в скриптинг ->> Текст

0

TRomario, не думаю, что здесь надо какие-то подробности. Текст, в основном, выводится одним опкодом.
Например:
0ACB: show_styled_text "Grand Theft Auto" time 5000
style 1

0

dk22 vG компилятор пишет что "Неизвестный опкод 0ACB."
У меня вот ещё вопрос: Я написал скрипт, чтобы машина подъезжала ко мне, и над машиной маркер...Так вот, можете подсказать как поставить не маркер над машиной, а чтобы на радаре было видно передвижение машины (например квадратик)

0

Всех с днём программиста=)) Слушайте, кто-нибудь знает опкод для взрыва машины?

0

Опкод 0АСВ - из библиотеки CLEO4. Советую её использовать.
Для взрыва авто:
020b: explode_car 0@

0

Надо создать маркер как обычно и задать ему такие параметры:
018B: set_marker $1 radar_mode 2

0

ILdar07 спасибо!!=)
dk22 vG опкодом 020b: explode_car $ZR350 не взрывается=(

0

Попробуй
08CB: explode_car 0@ shake 0 effect 0 sound 0

0

ILdar07 спасибо =)) Ты можешь ещё написать какие могут быть значение кроме нуля: shake 0 effect 0
и что значит shake 0?

0

1 включает колебание камеры (shake), спецэффект (effect) и звук (sound). Хотя, может быть, просто что-то меняет. Попробуй 2, 3, 4 и т.д. Что интересно, такой взрыв не причиняет вреда окружающей среде.

0

ILdar07 Спасибо, уже опробовал) Вред причиняет- это пожар, после взрыва))

0

Ааа. Ну, это ведь от огня, а не от взрыва.

0

Подскажите как включить мотор машины?
Выключить: unknown_turn_off_car $ZR350 engine

0

0ABF: set_vehicle 0@ engine_state_to 1
0 - выключить, 1 - включить.

0

Всем привет. Есть вот такой скрипт на дроп оружия.

// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
wait 0
thread 'VIKIN'

:VIKIN_15
wait 0
if
Player.Defined($PLAYER_CHAR)
else_jum.p @VIKIN_15
if
$ONMISSION == 0
else_jum.p @VIKIN_15
if and
80E1: not player 0 pressed_key 6
not Actor.Driving($PLAYER_ACTOR)
else_jum.p @VIKIN_15
if
00E1: player 0 pressed_key 8
else_jum.p @VIKIN_15
if
82D8: not actor $PLAYER_ACTOR current_weapon == 0
else_jum.p @VIKIN_15
04C4: store_coords_to $12453 $12454 $12455 from_actor $PLAYER_ACTOR with_offset 0.0 2.0 0.0
0470: $AMMU_SELECTED_WEAPON = actor $PLAYER_ACTOR current_weapon
041A: $12456 = actor $PLAYER_ACTOR weapon $AMMU_SELECTED_WEAPON ammo
0781: get_weapon_with_ID $AMMU_SELECTED_WEAPON model_to $AMMU_SELECTED_WEAPON_MODEL
0555: remove_weapon $AMMU_SELECTED_WEAPON from_actor $PLAYER_ACTOR
032B: $12457 = create_weapon_pickup $AMMU_SELECTED_WEAPON_MODEL group 3 ammo $12456 at $12453 $12454 $12455
wait 650
jum.p @VIKIN_15

Сообщение не давало отправить "jum.p" - поэтому поставил точки!

Как сделать, чтобы оно выбрасывалось не на кнопку "G", а на кнопку "H" (Англ).
Но чтобы было как и с кнопкой "G", то есть, если поставить "Н" через 0AB0, то оружие выбрасывается, даже если пишешь что-то в чат с буквой "р". Мне так не надо. Я не хочу писать в чат, а потом ходить собирать пухи (-_-)

Заранее благодарен.

0

Если нехочеш, могу предложить как вариант любой редко юзаемый символ. Выбери его в разделе Справка SB > CLEO 3 Code Library > Список значений кнопок.

0

Решение нашел. Кому надо:
00E1: player 0 pressed_key 8 - 8 клавиша в данном опкоде означает "Группа вперед" в настройках игры. Если поставить не 8, а 9, будет "Группа назад". Какую кнопку в игре выберете - та и будет исполняемой. Всего таких кнопок 19, двенадцатая не работает.
========---========

Теперь следующий вопрос.
Скачал скрипт - sylar-gta.net.ru/load/0-0-0-946-20

Но в нем мне не нужны некоторые функции. Я исправляю pressed_key на 0.
НО при компиляции выдаёт ошибку, что "Неправильный символ в идентификаторе $PLAYER_ACTOR_52", и во всех остальных $PLAYER_ACTOR_[id].
Хотя там всё правильно!! Если скинуть какой есть в cleo - все работает отлично.
И автор скрипта же как-то сделал его. Совсем не понимаю.
Если убрать из thread символ "$" и из всех $PLAYER_ACTOR_[id], тогда скрипт компилируется, НО не работают обозначения в игре. Точнее заместо правильных названий, показываются "левые".

Если кто может обьясните мне, или уберите из него сочитания клавиш H+J, H+K, Ctrl+1.

С меня печенька ^_^

0

Неужели безвыходно ?...Кстати всех с праздником!!)))

0

Гостям запрещено просматривать данную страницу, пожалуйста войдите на сайт как пользователь.

Ну и как тебе помочь? Обратись к автору. Что за печенька, кстати?

0

dump.ru/file/5089312

Вот залил. Я просто не понимаю как он его так написать смог...
В общем все что мне надо - убрать из него сочитания клавиш H+J, H+K, Ctrl+1 и чтобы отображались нормальные названия.
(Нормальные - это вот такие: gogogo.ucoz.ua/_ld/9/08062920.jpg).

---
П.С Печенька - это образное выражение. Подробнее: ru.wikipedia.org/wiki/Шаблон:Печенька

0

У меня вопрос. Как вывести на экран переменную типа float, чтобы было нормальное отображение (а не например 1,9432164541....). То есть, есть ли команда (типо той что в Паскале), чтобы можно было показать определенное кол-во дробных знаков.

0

Воспользуйся форматированным текстом:
0AD0: show_formatted_text_lowpriority "Number = %.4f" time 2000 1@

4 - кол-во знаков после запятой

0

Всем привет=) У меня вопрос про GXT_Editor, у меня русская версия ГТА СА...В самоучители по СБ написано, что надо найти некий "Переводчик", но его я не где не нашёл..Подскажите где его можно найти? Я прост хочу выводить текст в игре, но ск-ко раз пробовал опкодами, не чего не выходило...Зарание спс=)

0

CraZZZy-GameRRR спасибо=) У меня вот ещё вопросик: Как сделать скриптик, чтобы при нажатии какой-нибудь клавиши из машины выдвигалась например ракетница или пулемёт, что-нибудь такое? Какие нужны опкоды?

0

Иногда при выходе из тачки игра вылетает. Стоят CLEO скрипты, пробовал разные exeшники. А еще игра иногда вылетает когда ходишь по городу. Что делать?

0

Попробуй скрипты по-одиночке позапускать, чтоб понять в каком ошибка. Если не помогло, переустанови игру.

0

Да, знакомая проблема...
Попробуй скрипты по-одиночке позапускать - самый верный способ найти корявый скрипт.
А еще игра иногда вылетает когда ходишь по городу - у меня та же долбаная ошибка из-за скрипта bigfoot. Я без понятия, что это, но ОНО бродит где-то в лесу, и поэтому при приближении к лесу игра вылетает/зависает.
Иногда при выходе из тачки игра вылетает - а у меня при входе...

0

У меня снова вопрос о выводе текста. Короче, я скачал GXT редактор, открыл файл american.gxt. Потов создал новую таблицу ZMAIN, и в ней новую запись ZMAIN12. Я хотел сделать, чтобы в игре выводился текст "Дверь закрыта!". Скачал переводчик, ввёл в 1 строку текст "Дверь закрыта!" нажал на кнопочку транслейт то са, и во второй строке появился текст "DBEPJ 3AKPSTA!". Потом я его вписал в GXT редактор. Сохранил всё, и в самой игре у меня это же и вывелось, т.е. "DBEPJ 3AKPSTA!" на английском. И вы можете подсказать, как сделать так, чтобы надпись по-русски выводилась, я смотрел в GXT редакторе, там в записях какие-то закарючки написаны..Если у кого-нибудь есть расшифровка этих закарючек, то напишите их тут, пожалуйста=)

0

Поставь русификатор. Ну и в GXT должно быть написано DBEPJ 3AKPSTA!

Кто делал туррет подскажите, у меня проблемка.
перед этим сцена в интерьере
На улице игрок и актер нормально болтают а после телепорта в машину тачка висит в воздухе и падает а игроку не дается оружие! Но эти опкоды были там прописаны и я специально поставил тачку на нужное место

:NOX4
wait 0
if and
Actor.Dead(6@)
Actor.Dead(7@)
Actor.Dead(8@)
jf @NOX4
fade 0 1000
wait 1000
select_interior 0
0860: link_actor $PLAYER_ACTOR to_interior 0
0860: link_actor 3@ to_interior 0
Actor.PutAt($PLAYER_ACTOR,2351.9202, -1484.297, 24.0)
Actor.PutAt(3@,2351.2258, -1487.9111, 24.0)
wait 1000
fade 1 1000
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
067C: put_camera_on_actor 3@ with_offset 2.0 1.5 0.8 rotation 0.0 0.0 0.5 0.0 2
0967: actor 3@ move_mouth 3000 ms
0605: actor 3@ perform_animation_sequence "XPRESSSCRATCH" IFP_file "PED" 4.0 loop 1 1 1 0 time 3000 // versionA
00BC: show_text_highpriority GXT 'ST_CL2' time 3000 flag 1
wait 3000
0968: actor 3@ stop_mouth
067C: put_camera_on_actor $PLAYER_ACTOR with_offset 2.0 1.5 0.8 rotation 0.0 0.0 0.5 0.0 2
0967: actor $PLAYER_ACTOR move_mouth 5000 ms
00BC: show_text_highpriority GXT 'ST_KL2' time 5000 flag 1
wait 3000
04EB: AS_actor $PLAYER_ACTOR crouch 1
wait 2000
0968: actor $PLAYER_ACTOR stop_mouth
04EB: AS_actor $PLAYER_ACTOR crouch 0
fade 0 1000
wait 1000
072A: put_actor 3@ into_car 1@ driverseat
039E: set_actor 3@ locked 1 while_in_car
0526: set_actor 3@ stay_in_car 1
0430: put_actor $PLAYER_ACTOR into_car 1@ passenger_seat 0
039E: set_actor $PLAYER_ACTOR locked 1 while_in_car
0526: set_actor $PLAYER_ACTOR stay_in_car 1
car.Create(15@,#SULTAN,2347.4658, -1472.1797, 23.8281)
Car.Angle(15@) = 270.0
0229: set_car 15@ color_to 4 26
car.Create(16@,#ELEGY,2337.647, -1468.5758, 23.8264)
Car.Angle(16@) = 270.0
0229: set_car 16@ color_to 30 11
0129: 17@ = create_actor_pedtype 27 model #BMYST in_car 15@ driverseat
0129: 18@ = create_actor_pedtype 27 model #HMYST in_car 16@ driverseat
01C8: 19@ = create_actor_pedtype 27 model #BMYPIMP in_car 15@ passenger_seat 0
01C8: 20@ = create_actor_pedtype 27 model #BMYST in_car 16@ passenger_seat 0
01B2: give_actor 19@ weapon 29 ammo 2000 // Load the weapon model before using this
01B2: give_actor 20@ weapon 29 ammo 2000 // Load the weapon model before using this
wait 1000
fade 1 1000
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
0615: define_AS_pack_begin 30@
05D1: AS_actor 3@ drive_car 1@ to 2346.229 -1730.524 13.3828 speed 25.0 0 model #GREENWOO 2
05D1: AS_actor 3@ drive_car 1@ to 2478.366 -1729.022 13.3828 speed 30.0 0 model #GREENWOO 2
05D1: AS_actor 3@ drive_car 1@ to 2482.731 -1674.627 13.3406 speed 40.0 0 model #GREENWOO 2
0618: assign_actor 3@ to_AS_pack 30@
0616: define_AS_pack_end 30@
Car.SetDriverBehaviour(3@, FollowRoad)
Car.SetImmunities(1@, 0, 0, 1, 1, 1)
Car.Health(1@) = 5000
053F: set_car 1@ tires_vulnerability 0
0615: define_AS_pack_begin 31@
05D1: AS_actor 17@ drive_car 15@ to 2346.229 -1730.524 13.3828 speed 25.0 0 model #SULTAN 2
05D1: AS_actor 17@ drive_car 15@ to 2478.366 -1729.022 13.3828 speed 30.0 0 model #SULTAN 2
05D1: AS_actor 17@ drive_car 15@ to 2482.731 -1674.627 13.3406 speed 40.0 0 model #SULTAN 2
0618: assign_actor 17@ to_AS_pack 31@
0616: define_AS_pack_end 31@
Car.SetDriverBehaviour(15@, FollowRoad)
0615: define_AS_pack_begin 32@
05D1: AS_actor 18@ drive_car 16@ to 2346.229 -1730.524 13.3828 speed 25.0 0 model #ELEGY 2
05D1: AS_actor 18@ drive_car 16@ to 2478.366 -1729.022 13.3828 speed 30.0 0 model #ELEGY 2
05D1: AS_actor 18@ drive_car 16@ to 2482.731 -1674.627 13.3406 speed 40.0 0 model #ELEGY 2
0618: assign_actor 18@ to_AS_pack 32@
0616: define_AS_pack_end 32@
Car.SetDriverBehaviour(15@, FollowRoad)
067A: put_camera_on_car 1@ with_offset 15.0 15.0 10.0 point_to_car 15@ tilt 15.0 2
01B2: give_actor $PLAYER_ACTOR weapon 29 ammo 2000 // Load the weapon model before using this
01B9: set_actor $PLAYER_ACTOR armed_weapon_to 29
0992: set_player $PLAYER_CHAR weapons_scrollable 0
00BC: show_text_highpriority GXT 'ST_CL3' time 3000 flag 1
wait 3000
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
02A3: enable_widescreen 0
0713: actor $player_actor driveby_actor -1 car -1 point 952.92 -1102.99 22.85 radius 100.0 4 1 firing_rate 90
0713: actor 19@ driveby_actor $player_actor car 1@ point 952.92 -1102.99 22.85 radius 100.0 4 1 firing_rate 90
0713: actor 20@ driveby_actor $player_actor car 1@ point 952.92 -1102.99 22.85 radius 100.0 4 1 firing_rate 90
00BC: show_text_highpriority GXT 'ST_CL4' time 3000 flag 1
Marker.CreateAboveCar(21@,15@)
Marker.CreateAboveCar(22@,16@)

0

0615: define_AS_pack_begin 30@
05D1: AS_actor 3@ drive_car 1@ to 2346.229 -1730.524 13.3828 speed 25.0 0 model #GREENWOO 2
05D1: AS_actor 3@ drive_car 1@ to 2478.366 -1729.022 13.3828 speed 30.0 0 model #GREENWOO 2
05D1: AS_actor 3@ drive_car 1@ to 2482.731 -1674.627 13.3406 speed 40.0 0 model #GREENWOO 2
0618: assign_actor 3@ to_AS_pack 30@
0616: define_AS_pack_end 30@

В таких конструкциях убирай внутри переменную актера (3@) и ставь -1, а то порядок действий не будет работать.
Насчет стрельбы из машины:
попробуй так опкод написать
0713: actor $PLAYER_ACTOR driveby_actor -1 car -1 point 0.0 0.0 0.0 radius 300.0 8 1 firing_rate 100
У меня так работало, когда я был в машине и уезжал от копов. Я был на переднем сиденье (возле водилы). Впрочем, не заморачивайся по поводу сидений, попробуй пока таким образом.

0

Кстати, сначала надо завершать AS, потом только назначать её актёру. Т.е. сначала 0616, потом 0618. И выгружать из памяти.

0

Как сделать скритп гетто территорий банд /capture для захвата гетто территории как на samp-rp если кто играл

0

такой вопрос, как можно отследить точку в которую целится игрок? делаю скрипт компаньона, хочу сделать чтобы по нажатию на кнопку он стрелял в точку которую указывает игрок
в теории должен работать 068E: get_camera_target_point_to 13@ 14@ 15@, однако он почему-то отслеживает координаты в которых висит камера, а не куда она целится

/эдит: и существует ли опкод на отслеживание акторов стреляющих по игроку\машине? хочу сделать чтобы компаньон отстреливал агрессоров во время стрельбы, а не после того как они попадут в цель

0

068E возвращает координаты цели, на которую камера направлена опкодом 0158: camera_on_car 34@ 18 2 или 0159: camera_on_ped 215@ 15 2. Если цель не задана (как у Вас), будет просто выдавать координаты камеры.

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

1@ = 0
while true
  04C4: store_coords_to 10@ 11@ 12@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
  0AE1: 2@ = random_actor_near_point 10@ 11@ 12@ in_radius 25.0 find_next 1@ pass_deads 1

  if
    2@ == 0
  then
    1@ = 0
  jump continue
  end

  if
    1@ == 0
  then
    1@ = 1
  end

  if
    0457: player $PLAYER_CHAR aiming_at_actor 2@
  then
    //В 2@ хэндл того, в кого целится CJ
    //Здесь пишите, что с ним надо сделать
    break
  end
end

- и существует ли опкод на отслеживание акторов стреляющих по игроку\машине?
Нет, зато для игрока это можно узнать через память:

if
  031D: actor $PLAYER_ACTOR hit_by_weapon 57
then
  0A8D: 0@ = read_memory 0xB6F5F0 size 4 virtual_protect 0
  0@ += 0x764
  0A8D: 1@ = read_memory 0@ size 4 virtual_protect 0
  if
    1@ > 0
  then
    0AEA: 1@ = actor_struct 1@ handle
    // 1@ - нападающий на игрока
    // ......
  end
end

0

Всем привет. У меня вопрос, можно ли как то увеличить прочность машин от пуль, ну чтоб была уязвима к оружию, но выдерживала большее кол-во повреждений? Если да то подскажите прогу, ато ни спрятаться за машиной нельзя ни пострелять с нее, пару выстрелов и горит уже(

0

\\Хэндл педа, в которого целится игрок, можно получить таким способом
несовсем понял: для чего так длинно, если есть 0AD2: 12@ = player $PLAYER_CHAR targeted_actor

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

0

- несовсем понял: для чего так длинно, если есть 0AD2: 12@ = player $PLAYER_CHAR targeted_actor
Если честно, не знал этогого опкода, своим способом всегда делал.

- можно ли сделать так, чтобы алгоритм срабатывал если игрок ударен любым оружием?
Так он именно так и работает. Параметр 57 в первом опкоде обозначает любое оружие.

0

Если цель не задана (как у Вас), будет просто выдавать координаты камеры.
068E возвращает координаты target'a камеры. Эти координаты находятся недалеко от позиции камеры. Если продолжить вектор позиция-таргет, то получим координаты точки, которая находится перед игроком.

0

ПЛЗ, кто нить скажите куда именно в main.scm мне нужно это пихнуть: 0237: set_gang 1 weapons_to 31 27 29, а то я через сб открыл непонимаю куда потом надо вписывать :(((

0

можно ли написать клео скрипт позволяющий задать ограничение скорости автомобиля игрока?

0

while true
  if
    Actor.Driving($PLAYER_ACTOR)
  then
    03C0: 0@ = actor $PLAYER_ACTOR car
    02E3: 1@ = car 0@ speed
    if
      1@ > 10.0
    then
      04BA: set_car 0@ speed_to 10.0
    end
  end
end

0

Как при редактировании кат-сцены заменить модель игрока? Замена происходит только тогда, когда у моделей одинаковое кол-во букв в названии. Допустим, мне надо заменить Карла на Би-Дапа. Файл Карла - csplay. Файл Би-Дапа - csbdup. Кол-во букв одинаковое, однако при редактировании .cut файла, у меня вместо Карла пустота. Редактирую в WordPad, остальные модели заменяются.
UPD
Ой, это я просто тупанул. Забыл отредактировать .IFP файл в HEX Workshop'е, и заменить там csplay на csbdup. Все работает.

0

а что обозначает while true в начале?

Это бесконечный цикл. Всё, что стоит между while true и end будет выполняться бесконечное кол-во раз, точно так же как если сделать так:
:Label
...
jump @Label

Более подробно см. в справке SB.

0

Возможно ли сделать так что бы в определенном районе, находились герои игры...Например у дома райдера стоял сам райдер, и его возможно было бы "нанять", или у гаража, находился цезарь с сестрой.. (к тому же при их смерти они бы через некоторое время появлялись бы снова.)

И не только эти герои...

0

а есть какие нибудь решения...как это сделать?

0

1) Загрузить нужных актёров.
2) Проверить на доступность.
3) Заспаунить каждого где надо. Если хочешь нанимать, тип пешехода ставишь как у OGF.
4) Для интереса можно задать анимацию.
5) Если умер, выгружаем актёра из памяти, ставим задержку (день, к примеру) и прыгаем на лейбл создания актёра.

0

спасибо, буду тогда в листинге разбираться...как это написать.)

0

У меня вопрос:
Есть ли такой скрипт,чтоб машины по городу тюнингованые ездели.Т.е. Например:Вот едет блиста у нее колеса Ахаб,спойлер и гидравлика.А вот Саванна,полный лоурайдерский тюнинг.
А то надоело,что стоковые машины по городу снуют

0

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

Например с темой про то что бы СДжей мог ездить как пассажир в авто?

0

Найди строку create_thread и пропиши в новой строке создание твоего потока:
create_thread @thread
Найди //-------------Mission 0--------------- и перед ней вставь свой поток.
Если ничего не понял, читай Справку SB.

0

Можно ли сделать cleo скрипт, чтобы можно было смотреть телек?

0

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

0

такой вопрос: как в начале игры разблокировать все города?
(0627: update_integer_stat 181 to 4 не работает)

0

Народ помогите мне изменить место появления CJ на карте при включении новой игры!

Может есть какие такие программы ??????

0

Скрипт есть для сохранения в любом месте.
http://www.libertycity.ru/files/file1570.html

0

Подскажите, почему педы у меня стоят столбами? Должны следовать за гг, если к ним подойти.
:DINOS
thread 'DINOS'
Model.Load(#BMYST)
Model.Load(#HMYST)
Model.Load(#WMYST)
Model.Load(#BMOST)
Model.Load(#HMOST)
wait 1000
6@ = Actor.Create(CivMale, #BMYST, -2574.9, -952.3, 6.9)
Actor.Angle(6@) = 90.0
7@ = Actor.Create(CivMale, #HMYST, -2404.08, -755.7924, 26.2)
Actor.Angle(7@) = 90.0
8@ = Actor.Create(CivMale, #WMYST, -2164.4, 259.5, 15.6)
Actor.Angle(8@) = 90.0
9@ = Actor.Create(CivMale, #BMOST, -1722.6, -71.5, 6.9)
Actor.Angle(9@) = 90.0
10@ = Actor.Create(CivMale, #HMOST, -1611.3, -915.6, 16.5)
Actor.Angle(10@) = 90.0
1@ = Marker.CreateAboveActor(6@)
2@ = Marker.CreateAboveActor(7@)
3@ = Marker.CreateAboveActor(8@)
4@ = Marker.CreateAboveActor(9@)
5@ = Marker.CreateAboveActor(10@)
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -2574.9 -952.3 6.9 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_306
0631: put_actor 6@ in_group $PLAYER_GROUP

:DINOS_306
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -2404.08 -755.7924 26.2 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_366
0631: put_actor 7@ in_group $PLAYER_GROUP

:DINOS_366
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -2164.4 259.5 15.6 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_426
0631: put_actor 8@ in_group $PLAYER_GROUP

:DINOS_426
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -1722.6 -71.5 6.9 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_486
0631: put_actor 9@ in_group $PLAYER_GROUP

:DINOS_486
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -1611.3 -915.6 16.5 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_486
0631: put_actor 10@ in_group $PLAYER_GROUP
018A: 20@ = create_checkpoint_at -2321.4 -716.5 6.4

:DINOS_566
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere -2321.4 -716.5 6.4 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_566
01E3: show_text_1number_styled GXT 'M_PASSD' number 0 time 5000 style 1
0394: play_music 1
end_thread

0

После создания маркеров перед wait 0 поставьте метку и после последней проверки, что игрок остановился рядом с педом, в else_jump прыгайте на неё.

0

Что-то не получается, можно попродробнее?

0

Ну как-то так же:
[…]
5@ = Marker.CreateAboveActor(10@)

:DINOS_69
wait 0
[…]
0102: actor $PLAYER_ACTOR in_sphere -1611.3 -915.6 16.5 radius 3.0 3.0 3.0 sphere 0 stopped_on_foot
else_jump @DINOS_69
0631: put_actor 10@ in_group $PLAYER_GROUP
[…]

Все стоят столбами? Странно, как минимум один должен был ожить.

0

А как прописать нужную анимацию ГГ в геймплее? У меня играет не пойми какая, а я хочу оригинальную - Walk_player и тп... как это сделать?

0

SB > Справка > Помощь > Статьи > Введение в скриптинг > Анимации для актеров

0

Напишите пожалуста простой скрипт чекпоинта.

0

Посмотрите здесь: http://yelmi.com/modules/myarticles/article.php?storyid=3&storypage=2

0

Подскажите пожалуйста как устанавливать объекты на машины, например оружия. Заранее спасибо!

0

0681: attach_object 71@ to_car 60@ with_offset 0.5 0.3 0.3 rotation 0.0 0.0 0.0

0

Объясните пожалуйста как действует следующий код:

0407: store_coords_to 22@ 23@ 24@ from_car 0@ with_offset 0.0 0.0 -0.5
1@ = Object.Create(#SPL_B_MAB_M, 22@, 23@, 24@)
08D2: object 1@ scale_model 2.5
0681: attach_object 1@ to_car 0@ with_offset 0.0 0.0 -0.5 rotation 0.0 0.0 0.0
0407: store_coords_to 22@ 23@ 24@ from_car 0@ with_offset 1.6 -0.7 0.1
2@ = Object.Create(#MINIGUN, 22@, 23@, 24@)
08D2: object 2@ scale_model 2.0
0681: attach_object 2@ to_car 0@ with_offset 1.7 -1.0 0.1 rotation 0.0 30.0 95.0
0407: store_coords_to 22@ 23@ 24@ from_car 0@ with_offset -1.6 -0.7 0.1
3@ = Object.Create(#MINIGUN, 22@, 23@, 24@)
08D2: object 3@ scale_model 2.0
0681: attach_object 3@ to_car 0@ with_offset -1.4 -1.0 0.1 rotation 0.0 30.0 95.0
0407: store_coords_to 22@ 23@ 24@ from_car 0@ with_offset 2.1 0.0 -0.1
4@ = Object.Create(#HEATSEEK, 22@, 23@, 24@)
08D2: object 4@ scale_model 2.0
0681: attach_object 4@ to_car 0@ with_offset 2.1 0.0 -0.1 rotation 0.0 180.0 270.0
0407: store_coords_to 22@ 23@ 24@ from_car 0@ with_offset -2.1 0.0 -0.1
5@ = Object.Create(#HEATSEEK, 22@, 23@, 24@)
08D2: object 5@ scale_model 2.0
0681: attach_object 5@ to_car 0@ with_offset -2.3 0.0 -0.1 rotation 0.0 180.0 270.0


И что значит эти строки: 0681: attach_object 5@ to_car 0@ with_offset -2.3 0.0 -0.1 rotation 0.0 180.0 270.0

Объясните каждую строчку как действует. Буду очень благодарен за помощь!

0

03C0: 0@ = actor $PLAYER_ACTOR car // записываем в переменную машину игрока
2@ = Object.Create(#MINIGUN, 0.0, 0.0, 0.0) // создаём объект оружия
08D2: object 2@ scale_model 2.0 // немного увеличиваем его в размере
0681: attach_object 2@ to_car 0@ with_offset 1.7 -1.0 0.1 rotation 0.0 30.0 95.0 // и прикрепляем к машине

цифры with_offset 1.7 -1.0 0.1 обозначают координаты объекта относительно машины, а rotation 0.0 30.0 95.0 - углы поворота вокруг осей X, Y и Z

0

Всем привет. Есть скрипт Score System подскажите как сделать ограничение вводимого пароля?

0

ребят вообщем создал скрипт в sanny builder 3 скомпилировал и сохранил как файл xxx.scm засунул в папку cleo загрузка игры и вылет.... почему???

0

Cleo-скрипты надо компилировать с расширением *.cs. В самом начале скрипта поставьте {$CLEO .cs}.

0

create_thread @FirstScript

:FirstScript
wait 0
$Car1 = init_parked_car_generator #HOTRINA 8 8 0 alarm 0 door_lock 0 0 40000 at 2457.98 -1671.6 13.49 angle 120.0

set_parked_car_generator $Car1 cars_to_generate_to 101
$Car2 = init_parked_car_generator #INFERNUS 8 8 0 alarm 50 door_lock 0 0 40000 at 2520.33 -1632.08 14.0 angle 120.0

set_parked_car_generator $Car2 cars_to_generate_to 101
end_thread

ЧТО НЕ ТАК????Прост я как пользаваться непонял вот и изменил пример!!!Так что если что киньте тоже самое но исправленое плиииииз

0

Существует два способа создания скриптов. Первый - вставка скрипта в основной скриптовый файл игры main.scm. (Именно этот способ описан в учебнике.) Второй более удобный вариант - написание скриптов в виде отдельных файлов с расширением .cs с сохранением их в папку CLEO. (Рекомендую использовать его.) В таком случае в Вашем скрипте нужно сделать некоторые изменения: убрать create_thread, поставить на его место {$CLEO .cs} и вместо end_thread в конце использовать 0A93: end_custom_thread, т.е. будет вот так:

{$CLEO .cs}

:FirstScript
wait 0
$Car1 = init_parked_car_generator #HOTRINA 8 8 0 alarm 0 door_lock 0 0 40000 at 2457.98 -1671.6 13.49 angle 120.0

set_parked_car_generator $Car1 cars_to_generate_to 101
$Car2 = init_parked_car_generator #INFERNUS 8 8 0 alarm 50 door_lock 0 0 40000 at 2520.33 -1632.08 14.0 angle 120.0

set_parked_car_generator $Car2 cars_to_generate_to 101
0A93: end_custom_thread

PS: Только не забудьте ваш xxx.scm, иначе не заработает.

0

CraZZZy-GameRRR Спасибо большое ,а можешь прописать пример с лодками,авиа транспортом,оружием

0

С самолётами и прочими транспортными средствами всё тоже самое что и с машинами. Теперь два примера с оружием.
1) Выдача оружия игроку:

{$CLEO .cs}
0000: NOP
:Weapon
wait 100
if
Actor.Defined($PLAYER_ACTOR)
jf @Weapon

01B2: give_actor $PLAYER_ACTOR weapon 32 ammo 99999
// 32 - номер оружия
// 99999 - кол-во патронов
0A93: end_custom_thread

2) Создание пикапа оружия перед домом CJ-ея:

{$CLEO .cs}

:WeaponPickup_1
Model.Load(#micro_uzi)
038B: load_requested_models

:WeaponPickup_2
wait 100
if
Model.Available(#micro_uzi)
jf @WeaponPickup_2

032B: 0@ = create_weapon_pickup #micro_uzi type 2 ammo 999999 at 2494.1911 -1682.5386 13.3383
0A93: end_custom_thread

0

СПС!! и вот что ещё можно ли через крипт иконки Сейвов делать???

0

Конечно можно.

{$CLEO .cs}
wait 7000
:SaveGame_1
Model.Load(1277)
038B: load_requested_models

:SaveGame_2
wait 100
if
Model.Available(1277)
jf @SaveGame_2
Pickup.Create(0@, 1277, 2, 2494.1911, -1682.5386, 13.3383)

:SaveGame_3
wait 250
if
00EF: actor $PLAYER_ACTOR 0 near_point 2494.1911 -1682.5386 13.3383 radius 0.7 0.7 stopped
jf @SaveGame_3
03D8: show_save_screen
wait 30000
jump @SaveGame_3

0

как будут выглядеть скрипты:
1 скрипт.координаты машин
Rhino 1995,22888183594 -792,107482910156 133,687973022461 стандарт
Hotrina(car) 2457,98876953125 -1671,65612792969 13,4998931884766 стандарт
Infernus(car) 2520,33081054688 -1632,08984375 14,0753564834595 чёрный
Maverick(car) 1654,35620117188 -1635,75537109375 83,78125 стандарт
Raindance(car) 2491,58520507813 -1720,82543945313 18,5820655822754 стандарт
Sentinel(car) 1940,00695800781 -2090,40234375 13,434139251709 белый
Club(car) 2594,47924804688 -1492,87170410156 16,2852725982666 чёрный

2 скрипт.координаты оружия:
rocketlaer(wpn) 2738,4267578125 -1760,37915039063 44,1304779052734 30шт
Grenade(wpn) 2668,28466796875 -2073,21459960938 26,59375 50шт
shotgspa(wpn) 772,223510742188 -1511,56860351563 17,0859375 100шт
M4(wpn) 2155,24584960938 -1926,84191894531 16,0837593078613 500шт
heatseek (wpn) 2316,685546875 -1273,05969238281 23,957160949707 25шт
Satchel(wpn) 863,731689453125 -979,913635253906 37,1875 30шт
Irgoggles(wpn) 2509,0810546875 -1653,88122558594 13,638204574585 1шт
Minigun(wpn) 2842,28930664063 -2363,51635742188 31,0039405822754 1000шт

3.Иконки сохранения
№ x y z
1 1543,30615234375 -1369,49658203125 329,453460693359
2 951,845642089844 -987,058898925781 38,8315048217773
3 2425,5703125 -1241,50061035156 24,0644035339355
4 1025,90087890625 -1347,36535644531 13,5610437393188
5 1736,47192382813 -1610,90222167969 20,04421043396

4.Восстановление жизни и брони
Жизнь:2523,0205078125 -1659,86865234375 15,4935474395752
Броня: 2515,40307617188 -1658,39465332031 14,652063369751

0

А в чём собственно трудности? Примеры я уже привёл, остаётся только числа подставить. В учебник по скриптингу настоятельно советую заглянуть, там всё это подробно объясняется.

0

трудности в том что пишу нажимаю компилировать а там...дуля с маслом(((пишет Недостаточно параметров. Ожидалось 13 параметров.

0

вот смотри...что не так?
{$CLEO .cs}
create_thread @Car

:Car
wait 0
014B: $Car1 = init_parked_car_generator #HOTRINA 7 94 0 alarm 0 door_lock 0 0 40000 at 2457,98 -1671,65 13.49 angle 120.0

014C: set_parked_car_generator $Car1 cars_to_generate_to 101
014B: $Car2 = init_parked_car_generator #INFERNUS 8 8 0 alarm 50 door_lock 0 0 40000 at 2520,33 -1632,08 14.07 angle 120.0

014C: set_parked_car_generator $Car2 cars_to_generate_to 101
014B: $Car3 = init_parked_car_generator #MAVERICK 26 14 0 alarm 0 door_lock 0 0 40000 at 1654,35 -1635,75 83,78 angle 120.0

014C: set_parked_car_generator $Car3 cars_to_generate_to 101
014B: $Car4 = init_parked_car_generator #RAINDANC 1 6 0 alarm 0 door_lock 0 0 40000 at 2491,58 -1720,82 18,58 angle 120.0

014C: set_parked_car_generator $Car4 cars_to_generate_to 101
014B: $Car5 = init_parked_car_generator #SENTINEL 91 1 0 alarm 0 door_lock 0 0 40000 at 1940,00 -2090,40 13,43 angle 120.0

014C: set_parked_car_generator $Car5 cars_to_generate_to 101
014B: $Car6 = init_parked_car_generator #NRG500 3 3 0 alarm 0 door_lock 0 0 40000 at 2594,47 -1492,87 16,28 angle 120.0

014C: set_parked_car_generator $Car6 cars_to_generate_to 101
014B: $Car7 = init_parked_car_generator #RHINO 43 0 0 alarm 0 door_lock 0 0 40000 at 1995,22 -792,10 133,68 angle 120.0

014C: set_parked_car_generator $Car7 cars_to_generate_to 101
end_custom_thread

0

Тут что не так???


{$CLEO .cs}
wait 7000
:SaveGame_1
Model.Load(1277)
038B: load_requested_models

:SaveGame_2
wait 100
if
Model.Available(1277)
jf @SaveGame_2
Pickup.Create(0@, 1543,3061, -1369,4965, 329,4534)

:SaveGame_3
wait 250
if
00EF: actor $PLAYER_ACTOR 0 near_point 1543,3061 -1369,4965 radius 329,4534 0.7 stopped
jf @SaveGame_3
03D8: show_save_screen
wait 30000
jump @SaveGame_3




поменял только
Pickup.Create(0@, 1543,3061, -1369,4965, 329,4534) - в скобках новые координаты потавил
00EF: actor $PLAYER_ACTOR 0 near_point 1543,3061 -1369,4965 radius 329,4534 0.7 stopped тоже изменил координаты

0

В дробных числах ставь точку, а не запятую.

0

ILdar07 спасибо большое за подсказку
CraZZZy-GameRRR за примеры

0

вы не против если я укажу вас как полу-авторов???

0

Ильдар слишком скромен, чтобы быть против.

0

здесь в одном скрипте баг(((исправить как?
Weapon.cs
// 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---------------
0000: NOP
wait 100
032B: $WEAP = create_weapon_pickup #TEARGAS group 15 ammo 40 at 1325.438 -1376.61 13.385
032B: $5 = create_weapon_pickup #MOLOTOV group 15 ammo 30 at 2513.922 -1683.95 13.384
032B: $6 = create_weapon_pickup #DESERT_EAGLE group 15 ammo 150 at 2520.947 -1832.9 6.5
032B: $7 = create_weapon_pickup #SAWNOFF group 15 ammo 400 at 1772.237 -1654.7 41.176
032B: $8 = create_weapon_pickup #MICRO_UZI group 15 ammo 135 at 1564.548 -1358.94 329.911
032B: $9 = create_weapon_pickup #AK47 group 15 ammo 250 at 1010.67 -1055.76 30.94
032B: $10 = create_weapon_pickup #M4 group 15 ammo 3000 at -2409.107 -1628.64 522.281
032B: $PLAYER_GROUP = create_weapon_pickup #SNIPER group 15 ammo 100 at 1897.395 -1635.61 31.804
032B: $12 = create_weapon_pickup #HEATSEEK group 15 ammo 50 at 2429.233 -1321.91 32.083
032B: $13 = create_weapon_pickup #MINIGUN group 15 ammo 2000 at 2838.659 -2520.66 21.211
032B: $DEFAULT_WAIT_TIME = create_weapon_pickup #NVGOGGLES group 15 ammo 1 at 2489.491 -1646.57 14.07
032B: $PHONE_RINGING_FLAG = create_weapon_pickup #FLAME group 15 ammo 300 at 367.3771 -1556.18 32.933
0A93: end_custom_thread

подхожу к маркеру миссии вхожу туда а ничего не вылеазет
Weapon.scm

// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007
DEFINE OBJECTS 1
DEFINE OBJECT SANNY BUILDER 3.03

DEFINE MISSIONS 0

DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script

DEFINE UNKNOWN_EMPTY_SEGMENT 0

DEFINE UNKNOWN_THREADS_MEMORY 0

{$VERSION 3.1.0027}

//-------------MAIN---------------
wait 0
Model.Load(#TEARGAS)
Model.Load(#MOLOTOV)
Model.Load(#DESERT_EAGLE)
Model.Load(#SAWNOFF)
Model.Load(#MICRO_UZI)
Model.Load(#AK47)
Model.Load(#M4)
Model.Load(#SNIPER)
Model.Load(#HEATSEEK)
Model.Load(#FLAME)
Model.Load(#MINIGUN)
Model.Load(#NVGOGGLES)
038B: load_requested_models

:NONAME_66
wait 0
if and
Model.Available(#TEARGAS)
Model.Available(#MOLOTOV)
Model.Available(#DESERT_EAGLE)
Model.Available(#SAWNOFF)
Model.Available(#MICRO_UZI)
Model.Available(#AK47)
Model.Available(#M4)
else_jump @NONAME_66
if and
Model.Available(#SNIPER)
Model.Available(#HEATSEEK)
Model.Available(#FLAME)
Model.Available(#MINIGUN)
Model.Available(#NVGOGGLES)
else_jump @NONAME_66
032B: $WEAP = create_weapon_pickup #TEARGAS group 15 ammo 40 at 1325.438 -1376.61 13.385
032B: $5 = create_weapon_pickup #MOLOTOV group 15 ammo 30 at 2513.922 -1683.95 13.384
032B: $6 = create_weapon_pickup #DESERT_EAGLE group 15 ammo 150 at 2520.947 -1832.9 6.5
032B: $7 = create_weapon_pickup #SAWNOFF group 15 ammo 400 at 1772.237 -1654.7 41.176
032B: $8 = create_weapon_pickup #MICRO_UZI group 15 ammo 135 at 1564.548 -1358.94 329.911
032B: $9 = create_weapon_pickup #AK47 group 15 ammo 250 at 1010.67 -1055.76 30.94
032B: $10 = create_weapon_pickup #M4 group 15 ammo 3000 at -2409.107 -1628.64 522.281
032B: $PLAYER_GROUP = create_weapon_pickup #SNIPER group 15 ammo 100 at 1897.395 -1635.61 31.804
032B: $12 = create_weapon_pickup #HEATSEEK group 15 ammo 50 at 2429.233 -1321.91 32.083
032B: $13 = create_weapon_pickup #MINIGUN group 15 ammo 2000 at 2838.659 -2520.66 21.211
032B: $DEFAULT_WAIT_TIME = create_weapon_pickup #NVGOGGLES group 15 ammo 1 at 2489.491 -1646.57 14.07
032B: $PHONE_RINGING_FLAG = create_weapon_pickup #FLAME group 15 ammo 300 at 367.3771 -1556.18 32.933
wait 100
Model.Destroy(#TEARGAS)
Model.Destroy(#MOLOTOV)
Model.Destroy(#DESERT_EAGLE)
Model.Destroy(#SAWNOFF)
Model.Destroy(#MICRO_UZI)
Model.Destroy(#AK47)
Model.Destroy(#M4)
Model.Destroy(#SNIPER)
Model.Destroy(#HEATSEEK)
Model.Destroy(#MINIGUN)
Model.Destroy(#NVGOGGLES)
Model.Destroy(#FLAME)
end_thread

при этом игра работат

0

и ещё иногда при компиляции появляется scripts.img ЭТО что???и с чем есть???

0

R1.pwn(46257) : warning 203: symbol is never used: "GunPrice"
R1.pwn(46257) : warning 203: symbol is never used: "JoinPedf"
R1.pwn(46257) : warning 203: symbol is never used: "MissionInfo"
R1.pwn(46257) : warning 203: symbol is never used: "PlayMission"
R1.pwn(46257) : warning 203: symbol is never used: "TurfInfo"
R1.pwn(46257) : warning 203: symbol is never used: "Turfs"
R1.pwn(46257) : warning 203: symbol is never used: "ballasfura"
R1.pwn(46257) : warning 203: symbol is never used: "gMedicSpawns"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
8 Warnings.
Нашел в нете мод в общем когда пытаюсь сделать амх выдает варны... кто знает что нужно дописать чтобы исправить?

0

Гривус, здесь вообще-то скриптинг, а это что? Если это павно, то я точно не знаю, если бы ты привел код скрипта хотя бы. И если бы код был из СБ.

0

Парни , оч прошу вас оказать мне содействие в одной операции! Блин Ребят ну пжлста помогите! Ну уделите внимание одному бомжу (мне)
В Общем есть 2 скрипта - вид из кабины от первого лица , Адин вы знаете - za_rulem.cs (3.0v) ну и второй пока что нонейм. Вот такая гадость тут , нонейм включается по (сори ) уебански - сложно! Это надо жать аж "," что б его включить , а уж что б выключить приходиться включать другой скрипт который выключает двигатель у авто. т.е. жать "." Ну а скрипт "за рулем 3.0" - все простенько и удобно - ctrl + v. ну так я бы уочень сильно хотел бы сделать так что б эти скрипты объединились.
Уважаемые Знатоки! Возможно ли Проведение данной операции? как нибудь добавить с одного скрипта (информации) в другой с редактированием? файлы дам.
прошу вас! Товарищи! поясните Нубу про это все!

0

ну или в общем были бы 2 скрипта так же, но что бы ХотКей`и были не далеки от друг друга. наверное "ctrl + v" один скрипт , ctrl + c , - второй скрипт. а так по любому надо два скрипта.они так прекрасно друг друга дополняют.

0

а какой опкод нужен для бесконечного принимания людей в группу игрока

0

Конечно, не работает. Этот опкод лишь помещает созданного актёра в группу игрока. А количество рекрутов определяет 08F4: set_max_group_members 0, где 0 – максимальное число людей в группе игрока.

0

Ребят вот что нашел...Battlefield:Bad Company 2 всего за 7$ вот тут

0

Люди, кто хочет поскриптить за 5000? Обращайтесь пожалуйста в личку.

0

Можно ли сделать, чтобы, когда выходишь из любого здания, не стояло 6 ментов и в тебя стреляли?

0

Edgar967
Не помню как, там вроде в строке нужно поменять значение на 0.

0
pix.PlayGround.ru
pix.PlayGround.ru
pix.PlayGround.ru
pix.PlayGround.ru

Люди,извините,если это вопрос-боян,но все же тут очень геморойно все коментарии рассматривать.Вот смотрите:значит мне в Tempenny stories надо выйти из полицейского участка и обойти пол круга,что-бы попасть в гараж,я решил скоротать этот поход и создать телепорт тут







что-бы меня перебросило сюда







я вот написал этот скрипт:



{$CLEO .cs}



//----------------------------MAIN-----------------------



:int_ppol_6

0A40: 1@ = create_entrance_marker_at 246.2987 87.9137 1003.6406 color 14

0001: wait 0

00D6: if

0102: actor $PLAYER_ACTOR in_sphere 246.2987 87.9137 1003.6406 radius 1.5 1.5 10.0 sphere 0 stopped_on_foot

004D: jump_if_false @interior_0

04BB: select_interior 0

0860: link_actor $PLAYER_ACTOR to 0

00A1: put_actor $PLAYER_ACTOR at 1568.7256 -1690.5554 5.8906

016A: fade 1 time 13

0001: wait 2000

0002: jump @interior_0



Что мне надо написать правильно?

0

:int_ppol_6
0A40: 1@ = create_entrance_marker_at 246.2987 87.9137 1003.6406 color 14
:interior_0
0001: wait 0
00D6: if
0102: actor $PLAYER_ACTOR in_sphere 246.2987 87.9137 1003.6406 radius 1.5 1.5 10.0 sphere 0 stopped_on_foot
004D: jump_if_false @interior_0
04BB: select_interior 0
0860: link_actor $PLAYER_ACTOR to 0
00A1: put_actor $PLAYER_ACTOR at 1568.7256 -1690.5554 5.8906
016A: fade 1 time 13
0001: wait 2000
0002: jump @interior_0

0

ILdar07
А если этот гараж немного переделать в 3ds max что-бы можно было заезжать во второй гараж и потом назад поставить этот гараж только их будет два, так можно?

0

ILdar07
Блин.Извини за тупой вопрос,но куда мне надо это написать и еще 1 вопрос: надо ли вообще писать что это "Цлео Кьюстом Скрипт"?

0

box12125
Можно попробовать.

igor from 1992 aka. Нет_имени
Напиши в чистый файл (не забудь {$CLEO .cs} прописать в первой строке) и компилируй. Получится клео-скрипт.

0

тьфу ты черт!По наляпал недоскрипт с паршивым учебником из ЛибертиСити.ру и не понимаю,ни что мне надо писать,ни где это оставлять.

0

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

0

ПRoSto_GonShik
Тебе нужны опкоды типа
0730: car 280@ damage_component 1
073C: car 280@ damage_component 0


D.U.S.T.
Эта тема раскрыта в Справке по Sanny Builder (Статьи > Введение в скриптинг > Видео и аудио).

0

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

0

XAKEP 8
наверно придёться весь движок игры перепсывать

0

// 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---------------
0000: NOP
004F: create_thread @cars

:cars
0001: wait 0 ms
014B: 0@ = init_parked_car_generator #JESTER color 8 8 0 alarm 0 door_lock 0 0 200000 at 2516.301 -1711.969 12.9706 angle 89.9091
014C: set_parked_car_generator 0@ cars_to_generate_to 101
014B: 1@ = init_parked_car_generator #SANCHEZ color 8 8 0 alarm 0 door_lock 0 0 25000 at 2500.322 -1630.688 13.4008 angle 91.9569
014C: set_parked_car_generator 1@ cars_to_generate_to 101
004E: end_thread
почему у мя гг не может ходить тоусть нажимаю w а он стоит и камеране вертится

0

004F: create_thread @cars
Эта строка не нужна.

0

Может ктонибудь напишет простенький клео-скрипт по отключению обоих прицелов (обычного и от PS2), а заодно и по отключению треугольника над головой обозначающего жизни? Ну очень надо. ОЧЕНЬ! Прошу вас.

0

Можно вас попросить сделать ENEX маркер входа и выхода для Gta San Andreas ??
только чтобы предворительно ничего устанавливать не надо было, тоесть чтобы без всяких CLEO и DYOM. Чисто через блокнот.

Маркер (точка входа)
X - -777.3004
Y - 505,.0202
Z - 1376.5890
Чтобы перелетел сюда (точка выхода)
X - -795.0208
Y - 489.7058
Z - 1376.1953
и обратно

Пояснение по координатам : Маркер (обе точки входа и выхода) находится в Liberty City

Координаты для того чтобы попасть в Liberty City
X - 1416.107000
Y - 0.268620
Z - 1000.926000

Чтобы было вот так
http://s001.radikal.ru/i196/1212/1d/43c47bcf33cb.jpg

0

ENEX только для входа в помещение подойдёт. Можно через скрипт сделать. А чтобы без CLEO было, "вшить" его в main.scm

0

CraZZZy-GameRRR
ENEX только для входа в помещение подойдёт. Можно через скрипт сделать. А чтобы без CLEO было, "вшить" его в main.scm
или хотя бы так, пожлуйста сделайте кто нибудь

0
ЗАГРУЗИТЬ ВСЕ КОММЕНТАРИИ