PlayGround.ru
Ropnet
GTA.ru

Главная

GTA V

Аккаунт

GTA: Vice City Stories

GTA IV

GTA: Liberty City Stories

GTA: San Andreas

GTA: Vice City

GTA: Chinatown Wars

GTA 3

GTA 2

GTA

Форумы

Сервер

О проекте

Реклама

Новости




GTA.ru Race #2
[0/]

статистика
GTA LEAGUE t/cw | 1 | gta.ru vk.com/gtaleague
[0/30]

GTA LEAGUE t/cw | 2 | gta.ru vk.com/gtaleague
[0/30]

GTA.ru Sniper Madness
[0/30]

GTA.Ru | Map Editor gta.ru:22002
[0/64]

GTA.Ru MTA TГјrkiye вњ– GГњL GAMД°NG FREEROAM вњ– [Roleplay/Askeri/Drift/Drop/Turkey/Tr]
[0/200]

Veni Vidi Vici Team {vVv} Official Public Server
[0/32]

GTA.Ru | Stealth Public Server (w/ Stats System)
[0/32]

GTA.Ru | Race Server
[0/32]

[1ck] tactics | gta.ru vk.com/one_click_kill
[0/64]

GTA.ru Freeroam LU Server
[0/64]

GTA.ru TDM Server
[0/30]


Голосовой чат: 0


GTA.ru > Форумы > GTA: San Andreas > Моддинг и скриптинг > Скриптинг в Gta SA. Вопросы и ответы [x]

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

DakiLLa_   20 июля 2007 в 22:12

Скриптинг в GTA: San Andreas


Скриптинг,FAQ по нему и все что к этому относится.

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

Ma4eteGT   20 июля 2007 в 23:06

Как сделать так, чтобы какая нить тачка постоянно стояла в одном месте?

DakiLLa_   20 июля 2007 в 23:21

Открывешь main.txt, ищешь там строчку "create_thread", и вставляешь свой поток, например "create_thread @car1" (Без кавычек)
Затем ищешь строку --mission 0--, и НАД этой строкой пишешь название своего потока, вот как это выглядит:

:Car
<а здесь пишешь опкоды и команды>

---mission 0---

Чтобы поставить машину в опр. место, используй опкод:
014B: $217 = init_parked_car_generator #BF400 -1 -1 1 alarm 0 door_lock 0 0 10000 at 209.3484 321.1553 12.434 angle 178.0476
014C: set_parked_car_generator $217 cars_to_generate_to 30

А теперь разберем что и как :
014B-опкод
$217-переменная в которую заносится информация(может быть любое слово или число)
#BF400-модель машины
-1 -1 1-цвет(оставьте значение -1 -1 1 и цет машины будет всегда разный)
209.3484 321.1553 12.434-координаты, по которым будет установлена машина
angle 178.0476-угол поворота авто относительно Севера

014C-опять же опкод
set_parked_car_generator $217 cars_to_generate_to 30 - команда для появления машины, число 30 - процент успеха того, что она появится

Вот вроде вкратце объяснил..

Toreno   21 июля 2007 в 01:50

Кто может подробно объяснить, как делать гаражи перекраски и тюнинга..? плиз! очень надо!
а ты глянь в моде player selection, на www.gta.ru есть.
Там вроде только тюнинг оставили.

Ma4eteGT   22 июля 2007 в 16:48

2 Flu

Не нахожу я этот main.txt

ILdar07   22 июля 2007 в 18:05

тебе прога нужна. она и делает этот файл в той же папке data => script

DakiLLa_   22 июля 2007 в 20:09

В папке script может не быть main.txt, за то там по любому есть main.SCM, который ты можешь отрыть Sanny Builder'oм..

lord_Frank[забил на ПГ]   22 июля 2007 в 20:14

C.J

постучи в асю.481-463-027

wtf_kamikadze   24 июля 2007 в 22:05

можно сделать чтобы на место пасажира садится?

ILdar07   25 июля 2007 в 00:36

чтобы покатать cj'я в качестве пассажира, следует создать такой поток:
:PASSEHG
03A4: name_thread 'PASSEHG'

:PASSEHG_11
060A: unknown_create_entity 0 $12249
01C3: remove_references_to_car $11248
01C2: remove_references_to_actor $12246
01C2: remove_references_to_actor $12247
01C2: remove_references_to_actor $12248

:PASSEHG_38
0001: wait 50 ms
00D6: if and
810F: not player $2 wanted_level > 3
8449: not actor $3 in_a_car
00E1: key_pressed 0 11
0038: $409 == 0 // integer values
004D: jump_if_false @PASSEHG_38
04C4: create_coordinate $11247 $11246 $11245 from_actor $3 offset 3.75 3.75 0.0
04C4: create_coordinate $11244 $11243 $11245 from_actor $3 offset -3.7499 -3.7499 0.0
053E: $11248 = get_random_car_with_actors -1 in_area $11247 $11246 $11244 $11243
00D6: if
056E: carcass_of_car $11248 valid
004D: jump_if_false @PASSEHG_38
046C: $12246 = car $11248 driver
00D6: if
056D: carcass_of_actor $12246 valid
004D: jump_if_false @PASSEHG_11
00D6: if
056C: actor $12246 driving_police_vehicle
004D: jump_if_false @PASSEHG_245
01C0: $12244 = player $2 wanted_level
0008: $12244 += 1 // integer values
010D: set_player $2 wanted_level_to $12244
0001: wait 50 ms
0002: jump @PASSEHG_11

:PASSEHG_245
00D6: if and
8137: not car $11248 id == #BMX
8137: not car $11248 id == #BIKE
8137: not car $11248 id == #MTBIKE
84C8: not actor $3 driving_flying_vehicle
84A9: not actor $3 driving_helicopter
84A7: not actor $3 driving_boat
89AE: not actor $3 driving_train
004D: jump_if_false @PASSEHG_11
00A9: set_car $11248 to_normal_driver
060B: unknown_actor_use_entity $12246 $12249
0224: set_car $11248 health_to 1750
00AE: unknown_set_car $11248 to_ignore_traffic_lights 2
0004: $12250 = 0 // integer values
00D6: if
8431: not car $11248 car_passenger_seat_free 0
004D: jump_if_false @PASSEHG_493
00D6: if
0431: car $11248 car_passenger_seat_free 1
004D: jump_if_false @PASSEHG_418
0004: $12250 = 1 // integer values
0519: lock_vehicle $11248 in_current_position 1
0002: jump @PASSEHG_468

:PASSEHG_418
00D6: if
0431: car $11248 car_passenger_seat_free 2
004D: jump_if_false @PASSEHG_11
0004: $12250 = 2 // integer values
0519: lock_vehicle $11248 in_current_position 1
0432: $12247 = get_actor_handle_from_car $11248 passenger 1
060B: unknown_actor_use_entity $12247 $12249

:PASSEHG_468
0432: $12248 = get_actor_handle_from_car $11248 passenger 0
060B: unknown_actor_use_entity $12248 $12249
0002: jump @PASSEHG_500

:PASSEHG_493
0519: lock_vehicle $11248 in_current_position 1

:PASSEHG_500
05CA: AS_actor $3 enter_car $11248 passenger_seat $12250 -1 ms
0001: wait 50 ms
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_592

:PASSEHG_534
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 5000 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11

:PASSEHG_592
00D6: if or
0118: actor $3 dead
0741: (unknown) $3
004D: jump_if_false @PASSEHG_650
06C9: remove_actor $12246 from_group
05D2: unknown_action_sequence $12246 $11248 20.0 0
0002: jump @PASSEHG_11

:PASSEHG_650
00D6: if
01C1: car $11248 stopped
004D: jump_if_false @PASSEHG_534
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_500
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2

:PASSEHG_736
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_11
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_954
00D6: if
847A: not actor $3 driving_a_motorbike
004D: jump_if_false @PASSEHG_954
00D6: if
0038: $12250 == 0 // integer values
004D: jump_if_false @PASSEHG_954

:PASSEHG_815
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_870
0622: AS_unknown_remove_actor $12246 from_car $11248
00D6: if
8448: not actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_815

:PASSEHG_870
0676: AS_actor $3 in_car $11248 move_from_passengerseat_to_driverseat
0001: wait 50 ms
00D6: if
00DF: actor $3 driving
004D: jump_if_false @PASSEHG_870
05CB: AS_actor $3 enter_car_as_driver $11248 -1 ms
05C0: AS_actor $12246 look_at_car $11248 -1 ms
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
0002: jump @PASSEHG_11

:PASSEHG_954
00D6: if
00E1: key_pressed 0 15
004D: jump_if_false @PASSEHG_736

:PASSEHG_971
0622: AS_unknown_remove_actor $3 from_car $11248
0001: wait 50 ms
00D6: if
8448: not actor $3 in_car $11248
004D: jump_if_false @PASSEHG_971
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 17.5 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 7500 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
end_thread

поясняю: $2 и $3 - сам cj как написано в начале main'a; $11248 - сама тачка; $12246, $12247 и $12248 - сам водила и потенциальные попутчики cj'я; если сядем в коповозку - дадут звезду на память; так что тачку выбирай с умом - о всяких летающих биглях и великах забудь.
как использовать: подходи к тачке с хотя бы одним свободным местом, жми "Беседа - да" (по умолчанию Y). Чувак залезет в тачку. Шоб вылезти - Entеr, выкинуть водилу - "Беседа - нет" (обычно N).
насчёт курить - тоже просто. также создаёш поток, назначаеш определённой анимации клавиши - и вперёд. клавы и анимации можно поизучать по оригинальному скрипту и учебникам. сигару оружием сделать? думаю лишнее. и так видно же)) невозможного ничего нет.

ILdar07   25 июля 2007 в 13:15

Метка "SMOKE" переобьявлена - это значит, что у тебя есть 2 потока с одинаковыми именами. а у каждого потока должен быть свой уникальный нейм (name). поищи ctrl + F похожий SMOKE и переименуй (прим. SMOKE_1).
:Smoke_1
thread 'Smoke'
04ED: load_animation "SMOKING"
038B: load_requested_models

:Smoke_2
wait 0
if and
04EE: animation "SMOKING" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 16
Model.Available(#CIGAR)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
Jf @Smoke_2
model.Load(#CIGAR)
038B: load_requested_models
wait 0
$Cigar = Object.Create(#CIGAR, 0.0, 0.0, 0.0)
070A: unknown_action_sequence $PLAYER_ACTOR $Cigar 0.0 0.1 0.08 6 16 "NULL" "NULL" 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_in" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 3000

:Smoke_3
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_loop" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 16
Jf @Smoke_4
if
80E1: not key_pressed 0 13
Jf @Smoke_5
jump @Smoke_3

:Smoke_4
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_drag" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 4000
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_tap" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 13
Jf @Smoke_5
Jump @Smoke_3

:Smoke_5
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_out" from_file "SMOKING" 4.0 loop 0 0 0 0 -1 ms
wait 3000
Object.Destroy($Cigar)
Object.RemoveReferences($Cigar)
04EF: release_animation "SMOKING"
JUMP @Smoke_1
0459: end_thread_named 'Smoke'
end_thread

ILdar07   25 июля 2007 в 14:11

это значит, что есть строка с переходом на часть потока с таким именем ENTEXT_218, но её нет. так что тут 2 выхода: либо удалить этот переход, либо переименовать ENTEXT_218 в ENTEXT_214 (прим.) или подходящий нейм на ENTEXT_218. ты, видно, используеш оригинальный скрипт с миссиями, а это хреново. если учиться - учись на "голом" скрипте, где нет миссий, EXTERNAL_SCRIPTS и проч.

lord_Frank[забил на ПГ]   25 июля 2007 в 14:36

EL Amigo

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

ILdar07   25 июля 2007 в 14:36

ррррр, что значит "где"?! ctrl+F ищеш строку с ENTEXT_218. и удаляеш её. там должно быть что-то вроде "jump to ENTEXT_218".

wtf_kamikadze   25 июля 2007 в 20:20

Ильдар куда все это пихать?

ILdar07   25 июля 2007 в 20:54

ты о чём, хелл? сначала создаёш поток строкой create_thread [name] (прим. create_thread Smoke_1) в соответствующем месте, это в начале мэйна. потом после main идут следующие потоки, тебе нужно между ними вставить, но строго до миссий (поток миссий начинается со строки "mission 0"). помни: end_thread значит конец потока, после него можа ставить своё чудо.

wtf_kamikadze   25 июля 2007 в 22:03

Ильдар у меня нифига ниче не прет. Можешь main.csm скинуть с этим скриптом?

ILdar07   25 июля 2007 в 22:25

EL Amigo, Hellkiller & все-все-все - ссылка выше.

ILdar07   26 июля 2007 в 14:55

хм, может и есть, не знаю. но смотри сам: разве игра пойдёт с этими ошибками? насчёт ссылки: см. мой пост от 25.07.07 11:49. что касается чистого скрипта, то любой может замутить его самостоятельно :) просто выделяеш всё с конца и до где-то чуть ниже начала main'a и удаляеш нафик. сам я работаю с таким скриптом:
DEFINE OBJECTS 0
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.0000}

thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 0 0
04E4: unknown_refresh_game_renderer_at 2507.6943 -1872.7836
Camera.SetAtPos(2507.6943, -1872.7836, 22.7734)
062A: change_stat 165 to 1000.0 // float
062A: change_stat 23 to 400.0 // float
062A: change_stat 21 to 200.0 // float
0629: change_stat 164 to 200.0 // integer
062A: change_stat 25 to 300.0 // float
062A: change_stat 24 to 1000.0 // float
062A: change_stat 22 to 700.0 // float
0629: change_stat 181 to 4 // integer
$5 = Player.Create(#NULL, 2507.6943, -1872.7836, 22.7734)
$6 = Actor.EmulateFromPlayer($5)
Camera.SetBehindPlayer
0180: set_on_mission_flag_to $11942
wait 0
Player.SetClothes($5, "bbjersey", "sleevt", Torso)
Player.SetClothes($5, "tracktrgang", "tracktr", Legs)
Player.SetClothes($5, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($5, "neckls", "neck", 13)
Player.SetClothes($5, "watchpro2", "watch", 14)
Player.SetClothes($5, "glasses03", "glasses03", 15)
Player.SetClothes($5, "skullygrn", "skullycap", 16)
Player.SetClothes($5, "groovecut", "groovecut", Head)
Player.SetClothes($5, "4spider", "4SPIDER", 4)
Player.SetClothes($5, "7cross3", "7CROSS3", 7)
Player.Build($5)
Player.CanMove($5) = True
fade 1 0
select_interior 0
016C: restart_if_wasted at -2187.4958 2416.4795 5.1636 angle 137.0 unknown 0
016D: restart_if_busted at -1485.1198 2625.6848 58.7812 angle 86.7199 unknown 0
end_thread

VDZD   26 июля 2007 в 16:17

можете подсказать, где достать main.scm с полностью открытыми возможностями 100% прохождения?(убранными миссиями но оставленными скриптами типа перекрасок, парикмахерских, минимиссий(копов, медиков, гонки и т.п.) и доступными pick-up), но без добавленных скриптов

ILdar07   26 июля 2007 в 17:05

это можно сделать самому.

VDZD   26 июля 2007 в 17:57

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

ILdar07   26 июля 2007 в 18:27

в скрипте это по-моему Mission 2. там есть такие строки:
02E4: load_cutscene_data 'PROLOG3'

:INTRO_117
00D6: if 0
86B9: NOT cutscene_data_loaded
004D: jump_if_false @INTRO_122
0001: wait 0 ms
0002: jump @INTRO_117

:INTRO_122
0247: request_model #GWFORUM1_LAE

:INTRO_123
00D6: if 0
8248: NOT model #GWFORUM1_LAE available
004D: jump_if_false @INTRO_128
0001: wait 0 ms
0002: jump @INTRO_123

:INTRO_128
0A0B: 2493.362 -1734.295 12.3828 258.7583
0395: clear_area 1 at 2482.582 -1729.642 12.3906 range 500.0
02E7: start_cutscene
016A: fade 1 (back) 1000 ms

:INTRO_132
00D6: if 0
82E9: NOT cutscene_reached_end
004D: jump_if_false @INTRO_138
их надо удалить.

XeaToH   5 августа 2007 в 12:41

как мне в гта свои картинки зафигачить? например чтобы на плакате была фотка там)) еси кто знает дайте сайт по модостроению))

AdriAN[R.S.M]   5 августа 2007 в 16:52

XeaToH, что касается фоток на плакатах - это дело текстур и совершенно не касается скриптерста. Если хочешь подробно узнать как и какую текстуру заменить, иди в соответствующую тему "Глобальная модификация текстур" или постучись ко мне в асю (в профиле указана).

AmerikaneZz   9 августа 2007 в 14:33

Люди!!! Скиньте плиз сцылу на какой-нить учебник по скриптингу. Я вот хочу научиться...

ILdar07   10 августа 2007 в 00:17

американез - посмотри мой пост за 25.07.07 11:49. и вместо MB cоветую пользоваться SВ - имхо удобней.

AmerikaneZz   10 августа 2007 в 17:13

2ildar07:
Я вот нашел учебник от Игромании там все расписано, но у меня вот в чем трабл:
В самом начале как я загружаю main.scm то он у меня на 37 % виснет и все...
Подскажи че да как тут сделать или может у мя че то с main.scm??

ILdar07   10 августа 2007 в 21:15

вполне. возьми оригинал, а лучше чистый (26.07.07 14:55). его сделать просто: сохранил в блокноте, открыл в sb и компилируй.

AmerikaneZz   10 августа 2007 в 21:24

Млин.. я нигде не могу найти SB ну просто за@%ался его искать!!! Кто-нить может скинуть ссылку??

Orto Dogge   10 августа 2007 в 21:24

Как изменить оружие банд и как увеличить плотность какой-то банды в определенном районе?

ILdar07   10 августа 2007 в 22:41

американезз - ну ведь давал уже ссылку-то!
0237: set_gang 0 weapons_to 23 32 1
где 0 - идентификатор банды
(Gang0 == Ballas
Gang1 == Grove Street Families
Gang2 == Los Santos Vagos
Gang3 == San Fierro Rifa
Gang4 == Da Nang Boys
Gang5 == Mafia
Gang6 == Mountain Cloud Triad
Gang7 == Varrio Los Aztecas)

23 32 1 - это оружие
(0 - кулaки
1 - Кастет
2 - клюшка для гольфа
3 - дубинка для копов
4 - ножик
5 - бита
6 - лопата
7 - кий
8 - Kaтaнa
9 - пила
с 10 до 14 - дилдо и цветочки для извращенцев :)
15 - трость
16 - гранаты
17 - Слезоточивый газ
18 - Moлoтoвы
22 - пистолет
23 - то же, но с глушаком
24 - Desert Eagle (пустынник)
25 - дробоган
26 - обрез
27 - мощный дробоган 8)
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 - имя района. их много. 1 - знакомый идентификатор. 30 - плотность.

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

AmerikaneZz   11 августа 2007 в 19:59

Народ у меня проблема!!!! Срочно }{елпмиплиз!! я с missions.gtamaps.net/news.php скачал CLEO 3 вместе с СБ м поставил cs файл "Улучшеная прорисовка" а когда в СА новую игру (или сохранялку) загружаю он меня выкидывает после окончания загрузки...

ILdar07   11 августа 2007 в 21:25

а если только stream.ini поменять - всё тип-топ. да ну этот файл BestVideoQuality.cs - глюканут видимо.

AmerikaneZz   14 августа 2007 в 09:22

Фуф... Все теперь все О.К.!! Я удалил СБ нах вместе с CLEO3 и установил заново..

NiteLite   29 августа 2007 в 18:15

Кто-нибудь создавал интересные миссии в San Andreas при помощи каких - нибудь редакторов? Если да то скиньте скрины и кратко обьясните сюжет.

888Razor888   29 августа 2007 в 20:19

Эх....Сколько таких как ты тут было =S !.Если хочешь научится,учись сам,а редактор Sanny Builder или BW Mission Builder.

ILdar07   8 сентября 2007 в 21:54

Gekn - что это? вроде как мейн для васи. при чём тут саня?

gtalegend   8 сентября 2007 в 22:27

0350: toggle_actor 62@ maintain_position_when_attacked 1
0770: unknown_actor 62@ flag 1
077A: set_actor 62@ default_action 4 to_actors_pedtype 0
кто знает значение этих опкодов?

просто мне любопытно - на саннибилдер ом на мапсе не ответили пока ) вот у вас решил спросить

ILdar07   8 сентября 2007 в 23:03

0350: актёр 62@ удерживает позицию при атаке
0770: включает флаг актёру 62@
077A: устанавливает актёру 62@ действие 4 по отношению к актёрам из группы 0

p.s. что-то типа вроде этого :)

gtalegend   8 сентября 2007 в 23:39

пасиба а про флаг я знал - чо то не заметил что сюда копировал

gtalegend   9 сентября 2007 в 00:37

по названию - отношение групп педов к актёру
077A: set_actor 62@ default_action 4 to_actors_pedtype 0
так сказал капюшон - знаешь такого?

ILdar07   9 сентября 2007 в 10:11

знаю как деталь одежды :D
вполне возможно. я не профи, так, любитель.

Menson   9 сентября 2007 в 13:54

а кто знает как сделать ограничитель скорости, чтоб по нажатии кнопки он врубался? Гдето я такое видел и было очень просто, но не работало...

gtalegend   9 сентября 2007 в 15:59

знаю как деталь одежды :D
вполне возможно. я не профи, так, любитель.

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

Menson   14 сентября 2007 в 16:06

скачал прогу GTA: SA Race-Mission Creator не пойму одново после того как все параметры задал, нажимаю построить, выходит окно со скриптом, так вот че с ним делать? ясно что в майн писать только куда? даже если его я вставляю в майн то при сборке скрипта выдает ошибку "Локальная переменная 452 вне допустимых границ. В потоках макс. значение - 33@."
PS на сайте программы ничего не нашол

gtalegend   14 сентября 2007 в 20:25

missions.gtamaps.net/news.php заходи сюды тут тусуется довольно часто автор программы nikitos -один из авторов

ILdar07   14 сентября 2007 в 20:54

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

gtalegend   15 сентября 2007 в 22:51

:F4
wait 0
thread 'F4'
1@ = 304497

:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models

:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4
неплохая команда дял захвата территорий f4 лучше нажать 2 раза их буит 12 человек

ILdar07   16 сентября 2007 в 00:40

хо-хо-хо. дружок, а ведь у тебя ошибочка - нельзя давать разным частям потока одинаковые имена. у тебя 2 одноименной метки F4_88 - это плохо. следует вторую переименовать. или первую. ну короче разные имена должны быть. и соответственно else_jump @F4_88 тоже измениться может.
во второй части проверка if and не нужна - это просто загрузка моделей. и опечатка есть: вместо Model.Available(#FAM1) надо Model.Load(#FAM1).
и вообще - сам писал? что-то подозрительно лёгкий скрипт...

gtalegend   16 сентября 2007 в 01:02

это я скопировал криво)сорри в оригинале все норм я торопился
if and - это проверка на выполнение всех следуюших за ней условий
if or хотябы одного из следующих за ней условия
if - проверка дял одиночного условия
в данном случае я использовал проверку на то что загружены все модели

PS а почему не сам .
толкьо вот этот опкод я спрашивал у одного чувака 05DE: AS_actor $G6 walk_around_ped_path - того же капюшона кстати)

0209: $M3 = random_int_in_ranges 106 108 а рандом спрашивал у serjinio37 - сначала я не мог допереть как сделать чтобы включался рандом между всеми тремя моделями фамилисов
оказалось что он рандомизитует две первые модели - минут 10 думал как сделать сделал такую конструкцию - да скрипт легкий написан за 20 минут

:F4
wait 0
thread 'F4'
1@ = 304497

:F4_25
wait 0
if
&0(1@,1i) == 16711680
else_jump @F4_25
Model.Load(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models

:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4

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

gtalegend   16 сентября 2007 в 01:04

кстати по идее model.availeble здесь можно вообще не использовать
а вот никто не знат как оформить клео 3 скрипт - у мня вылетает при директиве CLEO

gtalegend   16 сентября 2007 в 16:27

я вставляю перед -Mission 0-
сразу пиши create_trhread
: свой поток

gtalegend   18 сентября 2007 в 10:20

кто знает как помирить две банды- скриптами только

ILdar07   18 сентября 2007 в 16:51

зачем скриптами? проще через ped.dat

gtalegend   18 сентября 2007 в 17:34

при редактировании ped.dat ничего не происхоидло
0746: set_default_action 1 for_actors_pedtype 7 to_actors_pedtype 8
вот я нашел способ

Ma4eteGT   29 сентября 2007 в 10:34

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

ILdar07   29 сентября 2007 в 18:12

вот. и ещё. плюс ссылка выше.

Ma4eteGT   30 сентября 2007 в 18:20

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

gtalegend   30 сентября 2007 в 18:48

есть но это не программа а ее часть :технология CLEO3
www.sannybuilder.com/ - зайди сюда это сайт автора этой технологии , для того чтобы ее использовать тебе нужно будет выбросить в помойку Миссион билдер )) и скачать sanny builder 3.01 с того сайта а там в самой программе когда поставишь он попросит установить эту библиотеку а дальше в самой прогрмме нажмешь F12 и там подробно описано как работать с этой технологией

Ma4eteGT   30 сентября 2007 в 19:33

Прога то на русском?

gtalegend   30 сентября 2007 в 19:56

канеш - создатель же русский - ну если хочешь англ версию поставь)

COM.bat   3 октября 2007 в 15:10

А каак свою банду с собой на разборки брать, иногда оч надо

.final   9 ноября 2007 в 11:21

Это не скриптами

Целишся на бандита и жмёшь "G"

Умберто   24 ноября 2007 в 03:57

Есть такая идейка. С помощью заданной клавиши Карл достает мобильник и включается радио или сразу слежка игрока. Круто же музон так послушать!

ILdar07   28 ноября 2007 в 21:10

эта идейка уже воплощена в жизнь. правда, не через мобилу, а по-другому.

зарегистрирован здесь   21 декабря 2007 в 21:56

подскажите пожалуйста как очистить оригинальный мейн от миссий

-Arsenal-   21 декабря 2007 в 22:02

А за что отвечает vagon.IPL???я хочу его куданить впизать а куда

зарегистрирован здесь   21 декабря 2007 в 22:45

просто хочу удалить некоторые миссии.

Xоттабыч   22 декабря 2007 в 23:57

Кому чистый мейн нужен:

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

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.0023}

//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 8 minutes_to 0
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84
Camera.SetAtPos(2488.56, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 1 0
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

:MAIN_297
wait $DEFAULT_WAIT_TIME
00BF: $Time_Hours = current_time_hours, $Time_Mins = current_time_minutes
jump @MAIN_297

Y2К   23 декабря 2007 в 11:13

Я делаю мод и мне нужен скриптер, умеющий создавать(писать) пути педов и авто, чтобы заселить участки карты. Обращайтесь на мой сайт или по Y2Kos@ya.ru

Xоттабыч   29 декабря 2007 в 11:31

Вопрос. Написал скрипт

{$CLEO}

:PickUps
wait 100
model.load(#teargas)
model.load(#heatseek)
model.load(#jetpack)
model.load(#GUN_PARA)
model.load(#HEALTH)
model.load(#BODYARMOUR)
038B: load_requested_models
:PickUps_2
wait 0
if and
model.Available(#teargas)
model.Available(#heatseek)
model.available(#jetpack)
model.available(#GUN_PARA)
model.available(#HEALTH)
model.available(#BODYARMOUR)
jf @PickUps_2

:PickUps_3
032B: $Weap = create_weapon_pickup #teargas type 2 ammo 15 at 2441.220000 -1692.829000 13.804690
032B: $Weap = create_weapon_pickup #heatseek type 2 ammo 25 at 2485.464000 -1637.079000 25.109380

$Weap = Pickup.Create(#jetpack, 2, 2502.311000, -1700.051000, 13.562080)
$Weap = Pickup.Create(#GUN_PARA, 2, 2533.375000, -1664.891000, 15.166840)
$Weap = Pickup.Create(#HEALTH, 2, 2497.911000, -1698.747000, 1014.742000)
$Weap = Pickup.Create(#BODYARMOUR, 2, 2497.874000, -1702.849000, 1014.742000)

marker.CreateIconWithoutSphere($CJHOUSE,0,2495.0,-1690.0,14.7656)

04A6: $Money = create_asset_money_pickup_at 2518.753000 -1723.105000 18.582070 money 10000 10000
04A6: $MoneyLC = create_asset_money_pickup_at -822.472200 513.493700 1359.593000 money 99999 99999
wait 500
Model.Destroy(#teargas)
Model.Destroy(#heatseek)
model.destroy(#jetpack)
model.destroy(#GUN_PARA)
model.destroy(#HEALTH)
model.destroy(#BODYARMOUR)
end_thread


А в доме Карла появляются вместо брони и сердечка инфо-значёк и карточка. И сохранение невозможно, беру пикап савки, и ничего не происходит.

Xоттабыч   29 декабря 2007 в 11:54

А вместо ментовской звезды дверь какая-то

maikl-djordon_   29 декабря 2007 в 15:46

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

Xоттабыч   29 декабря 2007 в 19:53

Чё, никто не ответил? жаль

ILdar07   29 декабря 2007 в 21:34

Хитрый Кот, ты это самое, растраиваца не спеши. скрипт вроде ничево, креативный. но вот что меня смущает: 1) пустые строки внутри потока. их лучше ставить между частями, перед :PickUps_2 например. 2) для пикапов с моделями возица не обязон. просто пиши 032B: $3241 = create_weapon_pickup #MINIGUN group 15 ammo 200 at 244.98 1859.185 14.08 где 032B - опкод, $3241 - переменная для пикапа (у тя, кстати, пикапов несколько, а переменная одна - нехорошо-с), create_weapon_pickup - ну, понятно... #MINIGUN - сам пикап, group 15 - тип пикапа (15 - обычный, в оригинальном мейне все пикапы такого типа, 3 - одноразовый, в миссиях, у тя 2 стоит. хм. попробуй поставить 15) ammo 200 - число патронов, дальше координаты.
а чтоб сейвиться, нада прописывать это дело. в оригинмейне это поток PSAVE1.
maikl-djordon, мод отстой. смерть балласам! гроув стрит король!

Новая волна   29 декабря 2007 в 22:39

fjodorsoft меня попросил выложить свой 2 трайлер кстати я тоже за баллов

Xоттабыч   30 декабря 2007 в 12:25

Ildar 07. Ничего не помогает. (( а группа 2 регенерация за полчаса, 15 за 6 часов. С подключенным модом сохранить невозможно без мода всё ок.

WAK1991   30 декабря 2007 в 12:47

Дайте номер стата граффити

Новая волна   30 декабря 2007 в 14:07

точно непомню но чото вроде 1900-2800

ILdar07   30 декабря 2007 в 14:10

Хитрый Кот - что за мод? убери его и сейвись на здоровье!
Emelia - 322.
suckapolis - уже отмечаешь? :D поздравляю.

WAK1991   30 декабря 2007 в 16:04

ILdar07 322 не подходит

Новая волна   30 декабря 2007 в 17:12

все объекты с 700 каковата тупица

ILdar07   30 декабря 2007 в 18:36

а те чё надо-то, Emelia? пишешь 0627: change_stat 322 to 100 и усё.

WAK1991   31 декабря 2007 в 12:26

Блин, я так и пишу. А статистина не изменяется

ILdar07   31 декабря 2007 в 12:33

прикинь, у мя тож :) а с подковами, фото, устрицами всё намально ... странно,,, правда?
короч, иди чесно закрашивай вражеские графити :D уважение гроув нада заслужить делом ...

Новая волна   31 декабря 2007 в 13:20

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

ILdar07   31 декабря 2007 в 13:29

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

NiteLite   31 декабря 2007 в 13:34

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

ILdar07   31 декабря 2007 в 13:50

car.Create(35@,машина,за углом)
0129: 40@ = create_actor_pedtype 7 model #BALLAS1 in_car 35@ driverseat
01C8: 41@ = create_actor_pedtype 7 model #BALLAS2 in_car 35@ passenger_seat 0
01C8: 42@ = create_actor_pedtype 7 model #BALLAS3 in_car 35@ passenger_seat 1
01B2: give_actor 40@ weapon 30 ammo 6000

не забудь загрузить модель калаша: Model.Load(#AK47)

Новая волна   31 декабря 2007 в 13:51

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

WAK1991   31 декабря 2007 в 16:14

ILdar07 322, так я всю игру на 100% прощёл. Это для мода мне надо.

WAK1991   2 января 2008 в 17:08

ILdar07 ты можешь один скрипт посмотреть, а то никак ошибку не могу найти.

ILdar07   2 января 2008 в 19:31

могу.

p.s. и тишина...

WAK1991   2 января 2008 в 20:53

я те на мыло вышлю

Hаpugа   2 января 2008 в 23:58

хех... когдато маялся этой ерундой... даже с Занозой работать умел... и еще... .ах да, му маппером. ща ниче непомню. но помню а городе такие американские горки намутил, шо ппц.

DoDLeZ   5 января 2008 в 20:27

Всем привет!Я буду очень вам признателен если ктонибудь подскажет как сделать в ГТАСА чтобы не падать с мотоцикла.Вообсче!Не при каких условиях!
Заранее спасибо!

ILdar07   5 января 2008 в 20:34

вставь куда-нить в мейн после $PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR) строку 08C6: set_actor $PLAYER_ACTOR stay_on_bike 1 - где $PLAYER_ACTOR это ты и есть, а 1 - вкл. (0 - выкл.)

DoDLeZ   5 января 2008 в 21:09

Большое спасибо.Однако чем мне открыть мейн??я пробывал блокнотам однако тщетно

ILdar07   5 января 2008 в 21:31

ну естесно... www.sannybuilder.com тебе в помощь.

DoDLeZ   5 января 2008 в 21:38

Спасибо.Попробуем.

DoDLeZ   5 января 2008 в 22:37

Я зашёл в эту программу.В поиске набрал $PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR) и добавил set_actor $PLAYER_ACTOR stay_on_bike 1 под ту строчку.Захожу в игру,загружаю сейв.Пробую...Всё как было так и есть...

ILdar07   5 января 2008 в 23:02

1) ты компилировал?
2) скрипт оригинальный или чистый?

DoDLeZ   5 января 2008 в 23:06

1) Я вас не понел..Что это значит?
2)Я вас опять не понел...Я могу сказать точно только одно, то что этот main.scm я не трогал до этого момента.Тоесть не какие моды не ставил

ILdar07   6 января 2008 в 11:04

1) почитай мануал (справка -> помощь или жми F12)
2) ну понятно. с байка ты не сможешь упасть лишь в том случае, если твой навык байкера соответствующий. из твоих слов понятно, что скрипт оригинальный, а там в начале этот навык поставлен на 0, чтоб ты его прокачивал постепенно. вот. 062A: change_stat 229 to 1000.0 попробуй эту команду.
p.s. повторюсь: учиться скриптингу лучше на чистом мейне. а просто изменять оригинальный - много хлопот.

DoDLeZ   6 января 2008 в 14:42

Я добавил эту команду но всёравно я падаю..Я бы мог кинуть вам мой main.scm и вы бы сделали всё как надо

ILdar07   6 января 2008 в 15:06

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

DoDLeZ   6 января 2008 в 17:12

Если можно на ты =] я отправил тебе на мыло!

DoDLeZ   6 января 2008 в 20:15

Мой меэн готов? =ъ

ILdar07   6 января 2008 в 20:33

ага. только не открывается :=/ script.img нужен.

DoDLeZ   7 января 2008 в 13:22

Увы Don't Send :((((

ILdar07   23 января 2008 в 16:19

нашёл секретную сценку :-) правда, в ней никого нет :-( но всё равно прикольненько. вот сам поток:

create_thread @IMPEXPM

:IMPEXPM
thread 'IMPEXPM'
wait 0
select_interior 0
02E4: load_cutscene_data 'cuttest'

:MANSIO1_150
wait 0
if
86B9: not cutscene_data_loaded
jf @MANSIO1_174
wait 0
jump @MANSIO1_150

:MANSIO1_174
wait 0
02E7: start_cutscene
fade 1 1000

:MANSIO1_183
wait 0
if
82E9: not cutscene_reached_end
jf @MANSIO1_207
wait 0
jump @MANSIO1_183

:MANSIO1_207
wait 0
02EA: end_cutscene
fade 1 1000
select_interior 0
end_thread

Dаrius   23 января 2008 в 18:20

Народ раскажите плиз как правильно тачку заспаунить (всмысле прописать на карте) пробовал несколько прог но эффекта 0 =(

VanSant   23 января 2008 в 18:49

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

Dаrius   23 января 2008 в 19:30

ILdar07,если ты про то что сверху с самого то я смотрел но для меня это темный лес :D
Вобщем Car adder уверяет что можно заспаунить машину через ipl он мне туда сунул пару строчек:
cars
-1971.878, 101.0924, 27.53666, 90, 463, -1, -1, 0, -1, 0, -1, -1
-2047.04, 146.215, 28.5078, 270, 525, 7, 1, 0, 1, 0, -1, -1
end

ну и конешно нечего не вышло =(

VanSant   23 января 2008 в 19:43

походу у него шанс появления установлен на 0% если я не ошибаюсь

Dаrius   23 января 2008 в 20:36

Попробовал поставить и на 100 и на 1 тоже нету =(

ILdar07   23 января 2008 в 21:12

а куда конкретно он сунул? т.е. в какой файл? судя по координатам, нужен SFse.IPL.
VanSant, вот тебе как вариант:
01EB: set_traffic_density_multiplier_to 0.0
06C8: enable_riot 1

Dаrius   23 января 2008 в 21:37

да,он его сунул в SFse.ipl вернее не он а я,он просто код сгенирил :)
Юзал проги
Car adder
ipl helper
Собсно вопрос появился...а куда сами разрабы засунули параметры спауна тачек ?

ILdar07   23 января 2008 в 22:17

в main.scm
в ipl-файлах я вообще не видел их.

VanSant   23 января 2008 в 22:42

ILdar07
а куда это тыкать? =) я типа ваще нубас

ILdar07   23 января 2008 в 22:58

тыкай в main.scm через sb.

VanSant   23 января 2008 в 23:58

Я так понял это мне менять уже имеющиеся строчки или добавлять?
Кстати это вырубает трафик и агрит жителей или только вырубает трафик?
зы: понимаю что уже задрал, но полицейские, пожарка и скорая будут функционировать или нет? Мне нужно чтобы не функционировали)

ILdar07   24 января 2008 в 16:50

попробуй изменить, если такие уже есть.
только вырубает трафик.
да. для спецслужб такая команда: 06D0: enable_emergency_traffic 0 (0 - выкл., 1 - вкл.) если не ошибаюсь, по-моему её в оригинальном мейне нету.

VanSant   24 января 2008 в 17:41

оки ну и последний вопрос: в какой раздел там тыкать?
кстати в 01EB: set_traffic_density_multiplier_to 0.0 напрягло multiplier, ето ведь не для самп? хотя глупый вопрос, в самп ваще ботов нету)

VanSant   24 января 2008 в 18:19

такой косяк: в том файле 01EB: set_traffic_density_multiplier_to 0.0 уже со значением 0.0 :/

ILdar07   24 января 2008 в 19:18

ха, ну надо же. интересный файл, однако.
p.s. multiplier и multiplayer - разные вещи )

Dаrius   25 января 2008 в 13:28

Вот такой вопросик,вобщем ставлю маркер который нас перемещает с улицы в интерьер поставил значит один на улице и другой тоже на улице тока подальше с самого начала не одного маркера не видно,методом тыка нашел всетаки тот маркер (нащупал) сначало он меня перебросил в интерьер кафе а потом в интерьер гаража сиджея (там маркер было видно) в СФ сосбно куда и надо было только в интерьер =) вобщем вопросы такие почему так произошло ? и может телепорт по улицам можно както по другому реализовать а этот для таких целей не подходит ?

ILdar07   25 января 2008 в 13:47

почему - возможно, дело в ipl-файле, где расписаны входы для интерьеров. конечно, можно по-другому. допустим, открой SFse.ipl. видишь строки
enex
-2027.73, -40.5488, 37.8263, 0, 3, 3, 8, -2027.83, -44.0454, 37.0263, 4139.7, 0, 4, "SVSFBG", 0, 2, 0, 24
-2242.69, -88.2558, 34.3578, 0, 1.6, 1.6, 8, -2245.38, -88.2558, 34.3578, 3691.82, 0, 4, "BAR2", 0, 2, 0, 24
end

это входы в бар и бургер-шот, по-моему. и вообще, что-то мы от скриптинга ушли вроде... :-[
p.s. btw, те две тачки у меня работают :) одна - харлей, другая - буксир, так?

Dаrius   25 января 2008 в 20:23

Ну ябы сказал это к скриптингу косвенно но относится =)
Да я именно туда под "enex" ставил опятьже мож кривой ipl или ещё хуже игра =(
Ага харлей и тягачь, а у мну не пашет =( скинь плиз свой ipl мож просто мой кривой =)или ты както по другому их ставил ?

ILdar07   26 января 2008 в 15:50

скинул, парень. ставил как обычно, между секциями pick и jump.

Dаrius   26 января 2008 в 18:35

Вобщем такой касяк....поставил я всетаки машину на карту но она появляеться под углом в 0 градусов хотя я ставлю 270 что это может быть
П.С.: вот это уже к скриптингу почти не относится такчто сори за оффтоп =)


Щас так по внимательней посмотрел и появилось такое ощущение что у машины только три позиции 90,180,270 под другими она не встает =(

ILdar07   27 января 2008 в 16:40

и мой ipl тоже не рулит?

Dаrius   28 января 2008 в 00:12

Я пока ещё не проверял,щас замарочелся со звуками машин =)

User 276818   28 января 2008 в 08:24

Я вот в инете скриптик нашел. Хотел поставить в КЛЕО, но при компиляци он пишет "Неизвестная команда $PLAYER_CHAR.Defined."
Вот скриптик:
{$CLEO}

:BUY_ZONE
thread 'zones'
var
1@ : float
2@ : float
3@ : float
4@ : integer
5@ : integer
6@ : integer
s$cur_zon : string
end
alloc(s$cur_zon,15)

:buy_zone_1
wait 0
if
$PLAYER_CHAR.Defined
jf @buy_zone_1
if
010A: player $PLAYER_CHAR money > 50000
jf @buy_zone_1
if
not $PLAYER_ACTOR.Driving
jf @buy_zone_1
if and
00E1: player 0 pressed_key 4
00E1: player 0 pressed_key 19
jf @buy_zone_1
04C4: store_coords 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
08F1: get_zone_at 1@ 2@ 3@ nameB_to s$cur_zon // 8-byte string
if and
not s$cur_zon == 'san_and'
not s$cur_zon == 'la'
not s$cur_zon == 'sf'
not s$cur_zon == 've'
jf @buy_zone_1
076D: get_zone s$cur_zon gang 1 density_to 4@
076D: get_zone s$cur_zon gang 0 density_to 5@
076D: get_zone s$cur_zon gang 2 density_to 6@
if
8029: not 4@ >= 39
jf @buy_zone_1
if or
0029: 5@ >= 1
0029: 6@ >= 1
jf @buy_zone_1
0879: toggle_gang_wars 0
076C: set_zone s$cur_zon gang 1 density_to 40
076C: set_zone s$cur_zon gang 0 density_to 0
076C: set_zone s$cur_zon gang 2 density_to 0
0879: toggle_gang_wars 1
0109: player $PLAYER_CHAR money += -50000
jump @buy_zone_1
end_thread

WAK1991   28 января 2008 в 14:52

Ildar ты скрип пассажира писал? И ещё. Есть скрип что бы из окна высовываться и стрелять?

WAK1991   28 января 2008 в 14:58

man from san fierro
попробуй так

:BUY_ZONE
thread 'zones'
var
1@ : float
2@ : float
3@ : float
4@ : integer
5@ : integer
6@ : integer
s$cur_zon : string
end
alloc(s$cur_zon,15)

:buy_zone_1
wait 0
if
Player.Defined($PLAYER_CAHR)
jf @buy_zone_1
if
010A: player $PLAYER_CHAR money > 50000
jf @buy_zone_1
if
not actor.Driving($PLAYER_ACTOR)
jf @buy_zone_1
if and
00E1: player 0 pressed_key 4
00E1: player 0 pressed_key 19
jf @buy_zone_1
04C4: store_coords 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
08F1: get_zone_at 1@ 2@ 3@ nameB_to s$cur_zon // 8-byte string
if and
not s$cur_zon == 'san_and'
not s$cur_zon == 'la'
not s$cur_zon == 'sf'
not s$cur_zon == 've'
jf @buy_zone_1
076D: get_zone s$cur_zon gang 1 density_to 4@
076D: get_zone s$cur_zon gang 0 density_to 5@
076D: get_zone s$cur_zon gang 2 density_to 6@
if
8029: not 4@ >= 39
jf @buy_zone_1
if or
0029: 5@ >= 1
0029: 6@ >= 1
jf @buy_zone_1
0879: toggle_gang_wars 0
076C: set_zone s$cur_zon gang 1 density_to 40
076C: set_zone s$cur_zon gang 0 density_to 0
076C: set_zone s$cur_zon gang 2 density_to 0
0879: toggle_gang_wars 1
0109: player $PLAYER_CHAR money += -50000
jump @buy_zone_1
end_thread

User 276818   28 января 2008 в 17:13

СПС!!!
Да и еще:
Установил в папку cleo pas.cs и driveby.cs. первые 10-20 минут все ок, но потом игра ошибку выдет!!!
Еще пробовал писсинг поставить, но после загрузки сейва он новую игру начинает(((((((
В чем беда? Мож CLEO переустановить?
Заранее благодарен!!!!!!!!!

WAK1991   28 января 2008 в 17:35

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

ILdar07   29 января 2008 в 00:42

Emelia
скрипт пассажира см. выше. а для драйв-бая я пользуюсь таким потоком:

create_thread @INTROSH_15551

:INTROSH_15551
wait 50
03C0: 0@ = actor $PLAYER_ACTOR car
wait 50
if
Actor.InCar($PLAYER_ACTOR, 0@)
jf @INTROSH_15551
046C: 1@ = car 0@ driver
if
8043: not 1@ == $PLAYER_ACTOR
jf @INTROSH_15551
if
80E1: not player 0 pressed_key 18
jf @INTROSH_15717
jump @INTROSH_15551

:INTROSH_15717
Car.SetImmunities(0@, 1, 1, 1, 1, 1)
0713: actor $PLAYER_ACTOR driveby_actor -1 car -1 point 0.0 0.0 0.0 radius -2 -1 -1 firing_rate 100
wait 500

:INTROSH_15769
wait 50
0470: 2@ = actor $PLAYER_ACTOR current_weapon
041A: 3@ = actor $PLAYER_ACTOR weapon 2@ ammo
if
not 1 > 3@
jf @INTROSH_15853
if
Actor.InCar($PLAYER_ACTOR, 0@)
jf @INTROSH_15551
if
80E1: not player 0 pressed_key 18
jf @INTROSH_15853
jump @INTROSH_15769

:INTROSH_15853
0812: AS_actor $PLAYER_ACTOR perform_animation "OFF_SIT_IDLE_LOOP" IFP_file "INT_OFFICE" 0.0 loopA 0 lockX 0 lockY 0 lockF 0 time 0
Camera.Restore_WithJumpCut
Car.SetImmunities(0@, 0, 0, 0, 0, 0)
wait 500
jump @INTROSH_15551


где $PLAYER_ACTOR - СиДжей, 1@ - водила, 18 - клавиша гудка, 2@ - оружие, 3@ - число патронов. стрелять можно НЕ только из узи и т.п. но и из пистолета, автомата и т.д. хоть минигана :) во время самого драйв-бая авто становится неуязвимым (если не нравится, просто убери команды Car.SetImmunities(0@, 1, 1, 1, 1, 1) и Car.SetImmunities(0@, 0, 0, 0, 0, 0))

User 276818   29 января 2008 в 10:58

2 Ildar07
спс!!! попробую вставит
2 Emelia
ну переустановил. теперь сейв с этими скриптами ваще не загружается!!!((( без клео работает. мож это всё изза того что у меня однодисковая пиратка без радио и танцев?

User 276818   29 января 2008 в 11:12

объясните мне плиз как в скрипте клавишу определять???????

:Smoke_1
thread 'Smoke'
04ED: load_animation "SMOKING"
038B: load_requested_models

:Smoke_2
wait 0
if and
04EE: animation "SMOKING" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 16
Model.Available(#CIGAR)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
Jf @Smoke_2
model.Load(#CIGAR)
038B: load_requested_models
wait 0
$Cigar = Object.Create(#CIGAR, 0.0, 0.0, 0.0)
070A: unknown_action_sequence $PLAYER_ACTOR $Cigar 0.0 0.1 0.08 6 16 "NULL" "NULL" 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_in" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 3000

:Smoke_3
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_loop" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 16
Jf @Smoke_4
if
80E1: not key_pressed 0 13
Jf @Smoke_5
jump @Smoke_3

:Smoke_4
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_drag" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 4000
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_tap" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 13
Jf @Smoke_5
Jump @Smoke_3

:Smoke_5
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_out" from_file "SMOKING" 4.0 loop 0 0 0 0 -1 ms
wait 3000
Object.Destroy($Cigar)
Object.RemoveReferences($Cigar)
04EF: release_animation "SMOKING"
JUMP @Smoke_1
0459: end_thread_named 'Smoke'
end_thread

вот в этом скрипте есть такие опкоды.
00E1: key_pressed 0 18
00E1: key_pressed 0 16
как понять какие это кнопки?

WAK1991   29 января 2008 в 14:24

man from san fierro
пользуйся на здоровье

Номер Пешком В транспортном средстве
-----------------------------------------------------------------------
0 | влево/вправо влево/вправо
1 | вперёд/назад наклон вертолёта(самолёта) вверх/вниз
2 | особый CTRL влево/вправо особый CTRL влево/вправо
3 | особый CTRL вперёд/назад особый CTRL вперёд/назад
4 | действие вторичная атака
5 | предыдущее оружее/цель смотреть влево
6 | прицел ручной тормоз
7 | следущее оружее/цель смотреть вправо
8 | группа вперёд следующая радио станйия
9 | группа назад предыдущая радио станйия
10 | ответ-нет ответ-нет
11 | ответ-да пропустить слежку
12 | не существует не существует
13 | изменить камеру изменить камеру
14 | прыжок тормоз/задний ход
15 | войти в машину выход из машины
16 | быстрый бег газ
17 | огонь огонь
18 | присесть гудок
19 | смотреть назад подмиссия

WAK1991   29 января 2008 в 14:29

Ildar СПС за скрипты. Ты их оба написал сам или нет, а то ж в своём моде надо написать благодарность.

WAK1991   29 января 2008 в 17:51

Помогите. Маркер не появляется. Но когда на то место становишся где его ставил, то
всё происходит что задавал.

User 276818   29 января 2008 в 19:47

2 Emelia
Большое спасибо те!!! А то никак понять этого не мог. Да, и где вы все этому научились?
2 Ildar
вставил. почему то не пашет. ни сохранка, ни новая игра. ошибку выдает((((

User 276818   29 января 2008 в 19:52

З.Ы.
Как называется анимация когда педы загорают на пляже?
Хочу попробовать написать скрипт чтоб эту анимацию игра проигрывала нажатием на кнопку.

User 276818   29 января 2008 в 20:16

Ну вот написал какойто примитивный скриптик. Не судите строго - это мой первый скрипт. Но вот проблема - когда сохранка загрузилась, всё работало норм, но тока ни камера, ни сиджей не сдвинулись(((( почему?
Вот скрипт
{$CLEO}

:Crack
thread 'Crack'
04ED: load_animation "CRACK"

:Crack_1
wait 100
if and
04EE: animation "CRACK" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 9
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
0459: end_thread_named 'Crack'
end_thread
Заранее спс!!!

WAK1991   29 января 2008 в 23:19

man from san fierro
не вижу смысла в твоём скрипте.

Crack
thread 'Crack'
загр аним

Crack_1
wait 100
проверка
аним загружена
клвиш нажата
клавиш нажата
игрок жив
игрок не за рулём
.........


а где сам код скрипта, что именно ты хотел написать?????

Короч вот тебе ссылка на учебник которым я пользуюсь:

missions.gtamaps.net/downloads.php?cat_id=10&..

Качай!Учись!Удачи!

User 276818   30 января 2008 в 09:14

Я хотел чтоб при нажатии на присесть+группа назад проигрывалась анимация crack. Если помниш в самой последней миссии когда танком стену проломил там люди лежат и трясутся. Вот эта и есть та анимация. А за ссылочку спасибо!!!

WAK1991   30 января 2008 в 16:19

Ну тебе надо чела создать, а потом задать ему эту анимацию.

ILdar07   30 января 2008 в 18:37

не, он хочет чтоб это СиДжей валялся, так что просто надо добавить пару строчек, типа:

{$VERSION 3.1.0027}
{$CLEO .cs}

:Crack
thread 'Crack'
04ED: load_animation "CRACK"

:Crack_1
wait 100
if and
04EE: animation "CRACK" loaded
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
jf @Crack_1
if and
00E1: key_pressed 0 18
00E1: key_pressed 0 9
jf @Crack_1
0605: actor $PLAYER_ACTOR perform_animation_sequence "CRCKIDLE4" IFP_file "CRACK" 1000.0 loop 1 0 0 1 time -1

:Crack_2
wait 30
if
00E1: key_pressed 0 15
jf @Crack_2
04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
00A1: put_actor $PLAYER_ACTOR at $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3
04EF: release_animation "CRACK"
jump @Crack_1

note: чтобы вернуться в исходное положение, жми Enter (или F).

вставил. почему то не пашет. ни сохранка, ни новая игра. ошибку выдает
вполне возможно, в твоём скрипте Карл "назван" по-другому. проверь строку Player.Create. здесь объявляется player - значит, везде где упоминается player, надо использовать эту переменную. так же и с Actor. допустим, у меня так:
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)

следовательно, мой player - это $PLAYER_CHAR, а actor - $PLAYER_ACTOR. в принципе, это один Карл, но есть команды, применимые лишь к игроку (player) или только к актёру (actor). у тебя может быть по-другому:
$2 = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$3 = Actor.EmulateFromPlayer($2)
, например. значит, мой скрипт где актёр для Карла = $PLAYER_ACTOR, а игрок = $PLAYER_CHAR, у тебя не пойдёт. но ничего страшного. просто поменяй $PLAYER_ACTOR и $PLAYER_CHAR на свои переменные.
хе, много букв. но у меня нет сестры по имени Краткость :-)

Emelia писал: "Ты их оба написал сам или нет..."
уважаю за честность. но в принципе, не думаю что будет такой уж смертельной ошибкой никого не благодарить. код-то один, и авторские права на потоки предъявлять не очень умно. ведь любой чувак может прочитать туториал ака мануал по скриптингу и написать любой из потоков, указанных выше. я так думаю.

man from san fierro писал: "Как называется анимация когда педы загорают на пляже?"
0605: actor $PLAYER_ACTOR perform_animation_sequence "Lay_Bac_Loop" IFP_file "beACh" 1000.0 loop 1 0 0 1 time -1

User 276818   31 января 2008 в 12:25

Огромное спасибо!!!!!!
То есть всё замерло изза того что скрипт не был закончен?

User 276818   31 января 2008 в 12:53

Почему через некоторое время анимацыя не проигрываится?
Сколько бы я не жал H+C ничего не происходит. Если загрузить сэйв всё ОК.

User 276818   31 января 2008 в 12:58

Вот скрипт для загара. Я списал его с крэка. Всё работает.

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
thread 'LEJI'
04ED: load_animation "BEACH"

:LEJI_20
wait 100
if and
04EE: animation "BEACH" loaded
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
else_jump @LEJI_20
if and
00E1: player 0 pressed_key 18
00E1: player 0 pressed_key 19
jf @LEJI_20
0605: actor $PLAYER_ACTOR perform_animation_sequence "LAY_BAC_LOOP" IFP_file "BEACH" 1000.0 loop 1 0 0 1 time -1 // versionA

:LEJI_118
wait 30
if
00E1: player 0 pressed_key 15
else_jump @LEJI_118
04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
Actor.PutAt($PLAYER_ACTOR, $TEMPVAR_FLOAT_1, $TEMPVAR_FLOAT_2, $TEMPVAR_FLOAT_3)
04EF: release_animation "BEACH"
jump @LEJI_20

User 276818   31 января 2008 в 16:23

Вот попробовал задать актёру анимацию. Получилось ДВА СиДжея. Загрузил игру, но началась новая, хотя все было по старому. Тока СиДжей худой и начальной одежде.

{$CLEO}

:ACTOR
thread 'ACTOR'
model.load(#SFR2)
04ED: load_animation "BEACH"
038B: load_requested_models

:ACTOR_1
wait 100
if and
04EE: animation "BEACH" loaded
Model.Available(#SFR2)
jf @ACTOR_1
actor.create($Actor,6,#SFR2,-2400.0,500.8,24.2)
Actor.Angle($Actor) = 250.24
Actor.Health($Actor) = 1000
Actor.Armour($Actor) = 500
03FE: set actor $Actor money 150000
0605: actor $Actor perform_animation_sequence "Lay_Bac_Loop" IFP_file "beACh" 1000.0 loop 1 0 0 1 time -1
Model.Destroy(#SFR2)
jump @ACTOR

ILdar07   31 января 2008 в 21:35

ну дык смысл-то в чём? ты создал актёра, задал ему анимацию и тут же уничтожил его модель. попробуй actor.RemoveReferences($Actor) - имхо лучше.
ещё анимация будет грузить память игры, так что тормоза обеспечены.
и вообще, скверный скрипт. игра будет создавать актёра, пока не вылетит. либо не создаст. ибо задержка маленькая (wait 100), а перед jump @ACTOR вообще нету. кстати, раз модель загрузил - больше не надо - прыгай сразу на ACTOR_1, лишняя нагрузка на движок.

RYXAH_HAXYЯ   11 февраля 2008 в 21:27

помогите пожалуйста.
поставил автомобиль в определёное место, он стоит. но я хочу поставить на нехо особый номер. использовал код 0674, тока он чёто не работает. использую чистый МАИН.

0674: set_car_model #W221S500 numberplate "nomer"
014B: $s500s = init_parked_car_generator #W221S500 0 0 1 alarm 0 door_lock 0 0 40000 at 2488.74 -1670.0 13.34 angle 120.0
014C: set_parked_car_generator $s500s cars_to_generate_to 101

ApertureMichael   24 февраля 2008 в 12:13

Всем привет! Я хотел в сане билдере сделать миссию поприкольнее шоб она на карте новенькой работала. Правда карта далеко в облаках и координаты из Map Editor v.0.1b нефига не правильные что делать? подскажите, заранее благодарен!

ILdar07   27 февраля 2008 в 19:06

RYXAH_HAXYЯ
09E2: $PARKED_CAR = parked_car_generator_w_numberplate #EUROS -1 -1 0 alarm 50 door_lock 0 0 10000 plate "HOMEP_69" at 0.0 0.0 0.0 angle 180.0 // $PARKED_CAR - переменная, #EUROS - модель тачилы, -1 и -1 - цвет авто (случайный, можно поставить от 0 до 126), alarm - сигналка (0 - нет, 100 - есть всегда), door_lock - замок на двери (0 - нет, 100 - есть всегда), 10000 - цена машины, HOMEP_69 - номер (максимум 8 латинских букв/цифр), 0.0 0.0 0.0 - координаты, angle - угол

Белов Михаил
Запусти игру и SB. Сверни SA (Alt+Tab), ПКМ в SB -> Вставить -> Координаты игрока либо Shift+Ctrl+C. Прога вставит текущие кординаты игрока.

RYXAH_HAXYЯ   15 марта 2008 в 23:25

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

gtalegend   17 марта 2008 в 01:07

скриптинг в гта сан жив!!!!!!! как я вижу)))))))))

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

{$CLEO}

:POI
0000:

:F4_2
wait 0
thread 'F4'
1@ = 304499

:F4_27
wait 0
if
&0(1@,1i) == 0x00FF0000
jf @F4_2

вот тут напишите текст скрипта)
пожалуста) я бы сам сделал но я опкодов не знаю- а поиск санни билдера мне не помог

еще как вариант если не трудно можно сделать ,чтобы я нажимал F8 и тут же территория моя атаковалась балласами или вагосами

если не хотите делать я могу и сам только с опкодами помогите

если не понятно - то то что я там вставил это проверка на нажатие ф8

iPower.   5 апреля 2008 в 21:26

Я создаю сервер для SAMP, мне нежуен скрипт который позволяет выбрать точку респы!
Зарание спасибо.

ApertureMichael   27 апреля 2008 в 12:18

Написал маленький скриптик для Сани запускаю всё идёт не так как нужно.


DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 at @MyMission
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

// --------------------
// THE STRIPPED MAIN THREAD
// contains initial info
// --------------------
thread 'Main'
var
$PLAYER_CHAR: Player
end // var
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 8 0
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0
wait 0 ms
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0 ms
select_interior 0
0629: change_stat 181 (islands unlocked) to 4
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0
0180: set_on_mission_flag_to $ONMISSION
// put your create_thread commands here

create_thread @MyTrigger
end_thread

// put your mission mods here

:MyTrigger
thread "MyTrigger"
$TrigMarker = Marker.CreateIconAndSphere(15, 2489.0591, -1682.2808, 13.3358)
while $MyMission_Passed == 0
wait 250
if Player.Defined($PLAYER_CHAR)
then
if $ONMISSION == 0 // integer values
then
if 00FF: actor $PLAYER_ACTOR 0 2489.0591 -1682.2808 13.3358 radius 1.0 1.0 2.0
then
if Player.Controllable($PLAYER_CHAR)
then
$ONMISSION = 1 // integer values
00BA: text_styled 'INTRO_1' 1000 ms 2 // Big Smoke
Marker.Disable($TrigMarker)
start_mission MyMission
end // if1
end // if2
end // if3
end // if4
end // while
end_thread



// 01E3: text_1number_styled 'M_PASSD' 0 5000 ms 1 // MISSION PASSED!
// $MyMission_Passed = 1
// 0214: pickup $name picked_up

:MyMission
thread "MyMission"
gosub @MissionStart
if
wasted_or_busted
then
gosub @MissionFailed
end
gosub @MissionCleanup
end_thread

:MissionStart
gosub @MissionPassed
return

:MissionPassed
jump @MyMission1a
return

:MissionFailed
00BA: text_styled 'M_FAIL' 5000 ms 1 // ~r~MISSION FAILED!
return

:MissionCleanup
$ONMISSION = 0 // integer values
mission_cleanup
return


:MyMission1a
wait 0
wait 100
fade 0 500
marker.CreateIconWithoutSphere($cluckin,0,2397.48, -1895.4307, 13.0761)

:MyMission2a
wait 0
fade 1 500
if and
0102: actor $PLAYER_ACTOR in_sphere 2397.48 -1895.4307 13.0761 radius 4.0 4.0 6.0 sphere 0 stopped_on_foot
jf @MyMission2a
wait 1000
marker.Disable($cluckin)


:MyMission3a
wait 0
023c: request_special_actor 'sweet' as 1
023c: request_special_actor 'smokev' as 2
023c: request_special_actor 'ryder' as 3
model.Load(#GREENWOO)
038B: load_requested_models

:MyMission3b
wait 0
if and
023d: special_actor 1 loaded
023d: special_actor 2 loaded
023d: special_actor 3 loaded
model.Available(#GREENWOO)
jf @MyMission3b
wait 1000
actor.Create($sweet,mission1,#special01,2370.98, -1939.5011, 13.5469)
actor.Angle($sweet) = 90.0
actor.Create($smoke,mission1,#special02,2369.2217, -1939.5011, 13.5469)
actor.Angle($smoke) = 270.0
car.Create($sweets_car,#greenwoo,2374.1851, -1928.1123, 12.9911)
car.Angle($sweets_car) = 179.7874

:ANIMATIONS
wait 0
04ED: load_animation "GANGS"

:ANIMATIONS_CHECK
wait 0
if and
04EE: animation "GANGS" loaded
jf @ANIMATIONS_CHECK
wait 150
0605: actor $sweet perform_animation_sequence "PRTIAL_GNGTLKA" from_file "GANGS" 4.0 loop 1 0 0 1 8000 ms

:MARKERS
wait 0
if and
0102: actor $PLAYER_ACTOR in_sphere 2372.7339 -1934.6133 13.5469 radius 1.0 1.0 2.0 sphere 0 stopped_on_foot
jf @MARKERS
wait 0
02A3: enable_widescreen 1
fade 0 500
car.Create($sweets_car_homie,#greenwoo,2411.1055, -1910.7717, 13.3828)
car.Angle($sweets_car_homie) = 180.0
wait 1000
036A: put_actor $PLAYER_ACTOR in_car $sweets_car
05CA: AS_actor $sweet enter_car $sweets_car_homie passenger_seat 0 10000 ms
marker.CreateIconAndSphere($sweets_home,0,2401.4014, -1726.8274, 13.5556)
fade 1 500
02A3: enable_widescreen 0


:CHEKCING_MARKERS
wait 0
if and
0103: actor $PLAYER_ACTOR in_sphere 2401.4014 -1726.8274 13.5556 radius 1.0 1.0 5.0 sphere 0 stopped_in_car
jf @CHEKCING_MARKERS
wait 100
05CD: AS_actor $sweet exit_car $sweets_car_homie
05CD: AS_actor $sweet exit_car $sweets_car_homie
fade 0 500

:ENDING
wait 0
// я не знаю чо далбше писать!
// vspomnil!
actor.DestroyInstantly($sweet)
01E3: text_1number_styled 'M_PASSD' 0 5000 ms 1 // MISSION PASSED!
$MyMission_Passed = 1
0394: play_music 3
fade 1 500
05BA: AS_actor $PLAYER_ACTOR move_mouth 8000 ms
end_thread

Где здесь есть ошибка?

крутой леонид   28 апреля 2008 в 09:39

я создал свой мод на San-Andreas,установил и.......
этот мод что-то типо ufo radar,но я его установил и в том помещении пусто.прошу помощи,дорогие форумчане.за помощь буду благодарен

Hrum   30 мая 2008 в 23:26

Доброе время суток!!!! Здрасте!!!! Люди, помогите!!!! Кароч, я умею немного делать модели, в легкую что-то изменять и т.д. Но вопрос стоит в том: Я сделал домик скромный (замок) для СД, и внешне и внутренне, все текстуры сделал..... во, теперь подскажите, как мне заходить, выходить из дома (желтый указатель)??? как сделать, чтоб я этот домик смог купить???? И как сделать в доме сохранение игры??? Просто я хочу сначала поставить этот дом в определенное место, сделать там гараж, сделать сохр. в доме, поставить пару машин возле дома?!?!?!? Заранее благодарен!!! Ответьте плиз!!!

MaroderSDK   31 мая 2008 в 12:26

Мне надо написать такой скрипт чтобы в самолёте "Андром" который используется в двух миссиях когда надо на моцыки залететь в его богажное отделение.Вот я хочу чтобы можно было туда заходить и без миссии.Кто нить напишите такой скрипт я буду очень очень блогодарен!!!

MaroderSDK   31 мая 2008 в 12:39

или хотябы напишите сам скрипт а я его через клео вставлю.

User 276818   31 мая 2008 в 12:50

Если так хочешь туда поасть, с мап едитором выложи его на карту и телепортнись туда с прогой телепортом. А скриптом можно телепорт устроить в виде красного маркера

MaroderSDK   31 мая 2008 в 13:13

так дайте мне скрипт красного маркера

User 276818   31 мая 2008 в 16:55

Значит написал скрипт чтоб машина появилась у автосалона 2 города, для клео есессно, но при компиляции пишет следующие:

Недостаточно параметров. Ожидалось 13 параметров

Скрипт такой:

{$CLEO}

create_thread @Car

:Car
wait 100
014B: $Jigul = init_parked_car_generator #CADRONA 8 8 0 alarm 50 door_lock 0 1 1000 at -1990,1318 288,7363 34,1493 angle 180.0
014C: set_parked_car_generator $Jigul cars_to_generate_to 101
end_thread

Пользуюсь учебником Александера для Санни Билдера версия 2.0
Может быть для КЛЕО нужно писать что то особенное ? Они отличаюстя от простых скриптов ?

зы
Хочу еще сделать пикап сохранения в доме полковника из миссии ограбления с Райдером. В дом могу спойкойно входить\выходить с помощь мода Enterable Buildings

Hrum
Юзай прогу ИПЛ хелпер, желтый маркер не к скриптам относится а к маппингу. С пикапом сохранения сам мучаюсь как видишь

User 276818   31 мая 2008 в 17:04

MaroderSDK
Можешь похимичить с желтый стрелкой, но это уже с маппингом связано.
А вообще посмотри вот здесь. Сайт Александера, автора общеизвестного Сейвола, который у меня вылетает при загрузке своего же сейва.
Найди еще SB Manual 2. Мануал по скриптингу.
Удачи !

MaroderSDK   1 июня 2008 в 09:32

Мне надо написать такой скрипт чтобы в самолёте "Андром" который используется в двух миссиях когда надо на моцыки залететь в его богажное отделение.Вот я хочу чтобы можно было туда заходить и без миссии.Кто нить напишите такой скрипт я буду очень очень блогодарен!!!

SKELsup   2 июня 2008 в 19:07

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

0@ = #PICKUPSAVE
0@ *= -7
0@ += -4982
0084: $modelID = &0(0@,1i)

ILdar07   7 июня 2008 в 21:29

нужно загрузить пикап сэйва
пикапы не знадо загружать. сразу пишешь 0213: $PICKUP = create_pickup #PICKUPSAVE type 14 at 2027.77 -1420.52 16.49

Dark Archer aka man from san fierro[FT] отдыхает 31.05.08 16:55
Может быть для КЛЕО нужно писать что то особенное ? Они отличаюстя от простых скриптов ?
нифига подобного. всё также. просто обрати внимание на свои координаты: -1990,1318 288,7363 34,1493 - с запятыми. это недопутимо. надо с точками. вот так: -1990.1318 288.7363 34.1493. btw я знаю этот глюк в SB просто надо перезагрузить файл )

Alien193   12 июня 2008 в 12:24

Плиз помогите мне ктонибуть!!!
У меня есть скрипт чтобы когда в тачку садишься то она у тя тюнингуется!!
Но я его хочу изменить чтобы когда пишешь команду /tune она тюнинговалась!!!
Вот код:
#include
#if defined FILTERSCRIPT
public OnFilterScriptInit(){
print("\n--------------------------------------");
print(" tuning all cars by kRiS");
print("--------------------------------------\n");
return 1;}
main(){
print("\n----------------------------------");
print(" tuning all cars by kRiS");
print("----------------------------------\n");}
#endif
public OnPlayerEnterVehicle (playerid, vehicleid){
SetVehicleHealth(vehicleid, 1000);
new modelid;
modelid = GetVehicleModel(vehicleid);
switch(modelid){
case 400:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1013);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1086);}
case 401:{
AddVehicleComponent(vehicleid,1086);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1012);
AddVehicleComponent(vehicleid,1013);
AddVehicleComponent(vehicleid,1042);
AddVehicleComponent(vehicleid,1043);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1006);
AddVehicleComponent(vehicleid,1007);
AddVehicleComponent(vehicleid,1017);}
case 406:{
AddVehicleComponent(vehicleid,1081);}
case 444:{
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1087);}
case 407:{
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1010);}
case 578,579,580,582,583,584,585,587,588,589,596,597,
598,599,600,601,602,603,604,605,609,568,572,574,402,
403,404,405,408,409,410,411,412,413,414,415,416,418,
419,421,422,423,424,426,427,428,429,431,432,433,434,
436,437,438,439,440,441,442,443,445,451,455,456,
457,458,459,466,467,470,474,475,477,478,479,480,482,
483,485,486,489,492,494,495,496,498,499,500,502,503,
504,505,506,507,508,514,515,516,517,518,524,525,526,
527,528,529,530,531,532,533,540,541,542,543,566,544,
545,546,547,549,550,551,552,554,555:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);}
case 420:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1139);}
case 534:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1180);
AddVehicleComponent(vehicleid,1185);
AddVehicleComponent(vehicleid,1100);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1127);
AddVehicleComponent(vehicleid,1101);
AddVehicleComponent(vehicleid,1122);
AddVehicleComponent(vehicleid,1087);}
case 535:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1109);
AddVehicleComponent(vehicleid,1115);
AddVehicleComponent(vehicleid,1117);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1114);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1119);
AddVehicleComponent(vehicleid,1121);}
case 536:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1183);
AddVehicleComponent(vehicleid,1181);
AddVehicleComponent(vehicleid,1107);
AddVehicleComponent(vehicleid,1104);
AddVehicleComponent(vehicleid,1108);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);}
case 556,557:{
AddVehicleComponent(vehicleid,1010);}
case 558:{
AddVehicleComponent(vehicleid,1092);
AddVehicleComponent(vehicleid,1166);
AddVehicleComponent(vehicleid,1165);
AddVehicleComponent(vehicleid,1090);
AddVehicleComponent(vehicleid,1094);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1163);
AddVehicleComponent(vehicleid,1091);
ChangeVehiclePaintjob(vehicleid,2);}
case 559:{
AddVehicleComponent(vehicleid,1070);
AddVehicleComponent(vehicleid,1066);
AddVehicleComponent(vehicleid,1072);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1147);
AddVehicleComponent(vehicleid,1068);
AddVehicleComponent(vehicleid,1173);
AddVehicleComponent(vehicleid,1161);
ChangeVehiclePaintjob(vehicleid,1);}
case 560:{
AddVehicleComponent(vehicleid,1028);
AddVehicleComponent(vehicleid,1140);
AddVehicleComponent(vehicleid,1170);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1033);
AddVehicleComponent(vehicleid,1031);
AddVehicleComponent(vehicleid,1030);
ChangeVehiclePaintjob(vehicleid,1);
}case 561:{
AddVehicleComponent(vehicleid,1056);
AddVehicleComponent(vehicleid,1156);
AddVehicleComponent(vehicleid,1157);
AddVehicleComponent(vehicleid,1062);
AddVehicleComponent(vehicleid,1059);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1146);
AddVehicleComponent(vehicleid,1061);
ChangeVehiclePaintjob(vehicleid,2);}
case 562:{
ChangeVehiclePaintjob(vehicleid,1);
AddVehicleComponent(vehicleid,1037);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1035);
AddVehicleComponent(vehicleid,1039);
AddVehicleComponent(vehicleid,1041);
AddVehicleComponent(vehicleid,1086);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1147);
AddVehicleComponent(vehicleid,1148);
AddVehicleComponent(vehicleid,1172);}
case 565:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1046);
AddVehicleComponent(vehicleid,1151);
AddVehicleComponent(vehicleid,1152);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1053);
AddVehicleComponent(vehicleid,1047);
AddVehicleComponent(vehicleid,1051);}
case 567:{
AddVehicleComponent(vehicleid,1188);
AddVehicleComponent(vehicleid,1186);
AddVehicleComponent(vehicleid,1102);
AddVehicleComponent(vehicleid,1133);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1081);}
case 575:{
ChangeVehiclePaintjob(vehicleid,1);
AddVehicleComponent(vehicleid,1175);
AddVehicleComponent(vehicleid,1177);
AddVehicleComponent(vehicleid,1043);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1042);
AddVehicleComponent(vehicleid,1099);
AddVehicleComponent(vehicleid,1087);}
case 576:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1191);
AddVehicleComponent(vehicleid,1193);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1134);
AddVehicleComponent(vehicleid,1137);}}
switch(modelid)
{case 407,578,579,580,582,583,584,585,587,588,589,596,
597,400,401,420,534,535,536,556,557,558,559,560,561,
598,599,600,601,602,603,604,605,609,568,572,574,402,
403,404,405,408,409,410,411,412,413,414,415,416,418,
419,421,422,423,424,426,427,428,429,431,432,433,434,
436,437,438,439,440,441,442,443,444,445,451,455,456,
457,458,459,466,467,470,474,475,477,478,479,480,482,
483,485,486,489,492,494,495,496,498,499,500,502,503,
504,505,506,507,508,514,515,516,517,518,524,525,526,
527,528,529,530,531,532,533,540,541,542,543,566,544,
545,546,547,549,550,551,552,554,555562,565,567,575,
576:{
AddVehicleComponent(vehicleid,1010);}}
return 1;}
Помогите переделать его!!!

User 276818   14 июня 2008 в 11:27

нифига подобного. всё также. просто обрати внимание на свои координаты: -1990,1318 288,7363 34,1493 - с запятыми. это недопутимо. надо с точками. вот так: -1990.1318 288.7363 34.1493. btw я знаю этот глюк в SB просто надо перезагрузить файл )
спс !

А не знаете ли вы где находится вся инфа о бандах в игре ? Например, какая захватываемая, какая нет, где указаны цвета на карте и т.д.
Заранее спс !

H-tray   19 июня 2008 в 22:26

MaroderSDK
:telepor_1
0001: wait 0 ms
04CE: $1 = create_icon_marker_without_sphere 18 at 0.0 0.0 0.0
03BC: $2 = create_sphere 0.0 0.0 0.0 1.0
00D6: if 0
00F0: actor $PLAYER_ACTOR stopped 0 ()near_point_on_foot 0.0 0.0 0.0 radius 3.0 3.0 004D: jump_if_false ЈЈtelepor_1
0002: jump ЈЈteleport_2

:teleport_2
0001: wait 0 ms
00A1: put_actor $PLAYER_ACTOR at 0.0 0.0 0.0
03BD: destroy_sphere $2
0164: disable_marker $1
0001: wait 3000 ms
0002: jump ЈЈteleport_1

вместо нулей напиши свои координаты, в первом блоке где будет находиться телепорт, а во втором куда тебе нужно телепортироваться, а ваще если что пиши мне на ящик h-tray.92@mail.ru

ILdar07   24 июня 2008 в 19:30

А не знаете ли вы где находится вся инфа о бандах в игре ? Например, какая захватываемая, какая нет, где указаны цвета на карте и т.д.
всю инфу о бандах можно найти в файлах ped.dat, pedgrp.dat, peds.ide и pedstats.dat. ну ещё есть main.scm :-) там эти банды расставлены опкодом 076C: set_zone 'ELCO1' gang 2 density_to 40 и им даётся оружие 0237: set_gang 1 weapons_to 24 29 4 можно включить войны за кварталы 0879: enable_gang_wars 1 после этого районы вагосов, баласов и OGS окрашиваются в свои цвета и можно идти захватывать... территории других банд, кроме LSV и RHB, захватывать нельзя :-(

H-tray, а как же выбор интерьера 04BB: select_interior 0 и вставка в него актёра 0860: link_actor $PLAYER_ACTOR to_interior 6? без этого по-моему интерьера видно не будет.

User 276818   30 июня 2008 в 16:58

территории других банд, кроме LSV и RHB, захватывать нельзя :-(
очень жаль ((( про ped.dat, pedgrp.dat, peds.ide и pedstats.dat я оооочень давно знал, про мэйн узнал месяц - полтора назад

ВотЪ написал скрипт на бронировку тачек. Но когда скрип в игре немогу в в подменюшках выбирать пробелом ! это если в конце jump, а если end_thread то в тюне маркер пропадает, равно как и в парикмахерских и т.д. !

ILdar07   1 июля 2008 в 17:14

check it, pal ;-) усё работаит

thread 'BRONIROVKA'

:BRONIROVKA_19
wait 0
1@ = Marker.CreateIconAndSphere(55, 1680.035, 2339.63, 9.792)

:BRONIROVKA_45
wait 0
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
0101: actor $PLAYER_ACTOR in_sphere 1680.035 2339.63 9.792 radius 3.0 3.0 10.0 sphere 0 stopped
//Player.CanMove($PLAYER_CHAR) = True - нах ты это сюды всунул непонятно ваще
jf @BRONIROVKA_45
wait 2000
03C0: 2@ = actor $PLAYER_ACTOR car
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Player.Money($PLAYER_CHAR) += -50000
Marker.Disable(1@)
jump @BRONIROVKA_19

User 276818   1 июля 2008 в 17:54

да я уже разобралсо, но сё равно спс ) еще раз пересмотриел скрипт, у плеер.кэнмув удалил. зря я его туда пихнул )

а вот если скрипт из удалить в сейве остаюстя иконку & маркеры. как с этим разобраться ?

ILdar07   1 июля 2008 в 18:21

если скрипт удалить сейв не запустится .

User 276818   3 июля 2008 в 11:15

а у меня запускается !

ILdar07   3 июля 2008 в 21:07

отлично !
P.S. вот скрипт (посвящается тем кому надоел CJ, а точнее его модель)
нажми одновременно кнопки "оглянуться" и "ответ - да" у меня к примеру это CКМ (колесико мышки) и Y
:test
wait 30
if and
00E1: player 0 pressed_key 19 // look behind
00E1: player 0 pressed_key 11 // conversation - yes
else_jump @test
fade 0 1000
0209: 27@ = random_int_in_ranges 9 288
if
07DE: not model 27@ exists // versionB
else_jump @test
model.load(27@) // загружается случайная модель (см. PEDS.IDE)
038b: load requested models

:check
wait 1000
if
model.available(27@)
jf @check
actor.Create(1@,20,27@,0.0,0.0,0.0)
0665: get_actor 1@ model_to 9@
09C7: change_player $PLAYER_CHAR model_to 9@
wait 1000
model.destroy(27@)
fade 1 1000
wait 1000
jump @test

если не хочешь чтобы твой новый герой "звучал" как Карл юзай команду 0489: set_actor $PLAYER_ACTOR muted 1

Antoxa.   6 июля 2008 в 18:26

Как отключить в GTA SA эффект NFS MW, т.е. когда превысишь скорость на авто, то камера плавно (оч. медлено) переходит на копа котрорый меня "спалил" - ну как в NFS MW. Как вот это убрать, а то уже надоело.

ILdar07   6 июля 2008 в 20:09

дай угадаю: у тебя стоит мод Night Crimes? мне этот эфект тож мало нравица, так что если не знаешь скриптинг замени main.scm и script.img из data/script на оригинальные или другие какие есть.

Antoxa.   7 июля 2008 в 06:02

Да, мод Night Crimes. К сожелению оригинала и других нету версий игры...

ILdar07   7 июля 2008 в 09:10

скажу по секрету чтоб отключит этот эфект достаточно удалить одну строчку
1) открываеш в SB файл main.scm
2) ищеш строку create_thread @Noname_9
3) удаляеш либо коментируеш (Сtrl+Q) чтоб игра игнорировала поток Noname_9
4) компилируеш F6 и запускаеш игру F8
p.s. чтоб проверить тот ли это поток найди Noname_9 (Сtrl+F) там д\б написано
02E3: 12@ = car $11883 speed
if
12@ >= 30.0
else_jump @Noname_9

ILdar07   10 июля 2008 в 16:30

вот демо версия мишн-пака (Mission Pack) из GTA III
всего 9 миссий: коп, 4 гонки (по чекпоинтам), 4 от М.Чонкса
1 внеш/скрипт: тюнинг
доступные интерьеры
и проч. НЕ ЗАБЫВАЙ ДЕЛАТЬ БЭКАПЫ
буду рад почитать комментарии: что добавить, что убрать и т.д.
p.s. далее добавлю другие миссии и обновлю пост

gtalegend   11 июля 2008 в 11:12

клео 3 юзаем?

Antoxa.   11 июля 2008 в 13:34

Спасибо ILdar07! Теперь хоть нормально поиграю ;)

ILdar07   11 июля 2008 в 14:13

клео 3 юзаем

базариш чувак. я к прримеру юзаю bonus.cs (бонусный пикап) RealTrains.cs (реальные поезда) MultiSave.cs (сейв везде)

Antoxa.
рад стараться :-D

Jarro   11 июля 2008 в 18:28

Как так? Да ну не может он запуститься без Main'а... А какие тюнинг детали сущ.?
#Model и прицепить можно одной командой все компоненты?

ILdar07   11 июля 2008 в 20:31

Да ну не может он запуститься без Main'а
кто не может? клео? дык ясен хер. и игра не может.
тюнинг:
06E9: load_car_component #WHEEL_OR1 - грузим деталь
06EA: car_component $10415 available - проверка наличия
06E7: 276@ = add_car_component #WHEEL_OR1 to_car 47@ - ставим на тачу
06EB: release_car_component #WHEEL_OR1 - выгружаем из памяти

gtalegend   12 июля 2008 в 11:40

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

ILdar07   12 июля 2008 в 19:14

ну дык я тож знаеш лазаю по сайтам ловлю идеи потом через SB мучаю скрипт и он становится почти совсем другим :) тот же bonus.cs я изменил как и RealTrains.cs а нассчёт пассажира я этот скрипт ПОЛНОСТЬЮ выклал в этой теме на 1-й странице добавляешь
{$VERSION 3.1.0027}
{$CLEO .cs}
и компилируй правда у мну всё халява никаких денег не дерут и обрати вниманье как там обозначен игрок и его актёр

Jarro   14 июля 2008 в 00:32

Player.Money($PLAYER_CHAR) += -50000 А зачем минус ?

ILdar07   14 июля 2008 в 10:57

чтобы бабло отнималось а не прибавлялось.
где ты такое нашёл? можно писать и Player.Money($PLAYER_CHAR) -= 50000.
p.s. в тюне такое есть.

ILdar07   21 июля 2008 в 21:09

Да Здравствует Скриптинг!!!
вот полная версия моего мищн-пака (см. пост от 10.07.08 16:30) файлы нестандартного формата. так что не для новичков.
и еще вопрос. кто-нибудь слышал о моде Things To Do In San Andreas? а может даже видел его и … даже играл??? О:-0
edit 19:42 2008-07-24 demo v.2

Nowsan   25 июля 2008 в 09:14

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

ILdar07   25 июля 2008 в 10:08

или мона то как - опкодами.
быстро бегал - 0330: set_player $PLAYER_CHAR infinite_run 1
останавливал время - 015D: set_gamespeed 0.0
уварачиволся от пуль - жми "присесть", потом "прицел"+"влево/вправо"

Antoxa.   25 июля 2008 в 11:05

Как отключить эффект NFS MW, т.е. когда превысишь скорость на авто, то камера плавно (оч. медлено) переходит на копа котрорый меня "спалил" - ну как в NFS MW. Как вот это убрать, а то уже надоело. И еще убрать такое же замедление когда жмешь на ручной тормаз. Все это в GTA-SA forsage3 (GTA-SA Тройной форсаж токийский дрифт). И скал через SB так и ненашел :( где она там?

rapperokek   25 июля 2008 в 11:25

Nowsan , оно то наверно можно , но ты хоть чуть-чуть понимаешь в скриптах ?

ILdar07   25 июля 2008 в 15:38

Antoxa.
замедление ставится опкодом 015D:
удали строку с ним и всё!
p.s. нормальное время 015D: set_gamespeed 1.0 чем меньше 1.0 тем медленее время.

Antoxa.   25 июля 2008 в 19:37

когда ставлю везде 015D: set_gamespeed 1.0 то он выдает ашибку при компилировании: "Метка "DDRUNK" не найдена." что делать?

ILdar07   25 июля 2008 в 21:07

:-D
у меня такая же феня. даже не знаю, почему так. толи SB мудрит, толи хз чо…
короче ищешь thread 'DDRUNK' над ним добавь :DDRUNK
метка не найдена - значит нету потока с таким именем либо начало этого потока съел SB мать его :-) и соединил с предыдущим. в нашем случае так и произошло. поток DDRUNK слился с MOB_GF (или какой там у тя)

Daeman.cs   1 августа 2008 в 18:02

Я разархивировал Sanny Builder 2.9 на рабочий стол, включаю его, выбираю (папка Сани)\data\main.scm, пытаюсь открыть, а он пишет: Set game folder first. Чё делать??? Подскажите плиз!

ILdar07   1 августа 2008 в 18:10

Сервис -> Настройки. Видишь надпись "Папка GTA SA"? Жми квадратик рядом с ней и ищи папку своей игры.
Не забудь потом кликнуть ОК ;-D
Стоп - SB y меня на русском. Ну может тебе удобнее на английском. Там же в настройках можешь язык поменять.
И вообще - SB v3.03 - не слышал о таком? Имхо лучше!

Daeman.cs   1 августа 2008 в 18:29

Спасибо, помог!

Daeman.cs   2 августа 2008 в 06:42

Вот, блин: я редактировал main.scm как мне надо, сохраняю и вижу, что мною изменённый main рядом с оригиналом лежит, да ещё в формате txt. :( Как его обратно в формат scm переделать? Ответьте плиз. Зарание спс!

ILdar07   2 августа 2008 в 12:13

SB при декомпиляции создаёт текстовый файл main.txt который ты и видишь в окне программы. при компиляции же main.scm переписывается (если конечно ты отметил в Настройках «Перезапись выходного файла»). так что не суетись - SB всё делает чётко! компилируй (F6) и запускай (F8)

Jarro   6 августа 2008 в 16:55

А какие есть комп. тюнинга? А то в хелпе и в инете не нашел (#model)

ILdar07   7 августа 2008 в 14:58

data\maps\veh_mods\veh_mods.ide
data\carmods.dat

=>Зaдние нaвороты: bbb_lr_slv1, bbb_lr_slv2
=>Рeшётки на капот (вентиляция): bntl_b_ov, bntl_b_sq, bntr_b_ov, bntr_b_sq
=>Капoт: bnt_b_sc_l, bnt_b_sc_m, bnt_b_sc_p_l, bnt_b_sc_p_m, bnt_lr_slv1, bnt_lr_slv2
=>Глушители: exh_a_f, exh_a_j, exh_a_l, exh_a_s, exh_a_st, exh_a_u, exh_b_l, exh_b_m, exh_b_s, exh_b_t, exh_b_ts, exh_c_f, exh_c_j, exh_c_l, exh_c_s, exh_c_st, exh_c_u, exh_lr_bl1, exh_lr_bl2, exh_lr_br1, exh_lr_br2, exh_lr_rem1, exh_lr_rem2, exh_lr_slv1, exh_lr_slv2, exh_lr_sv1, exh_lr_sv2, exh_lr_t1, exh_lr_t2
=>Передние нaвороты: fbb_lr_slv1, fbb_lr_slv2
=>Передний Бампeр: fbmp_a_f, fbmp_a_j, fbmp_a_l, fbmp_a_s, fbmp_a_st, fbmp_a_u, fbmp_c_f, fbmp_c_j, fbmp_c_l, fbmp_c_s, fbmp_c_st, fbmp_c_u, fbmp_lr_bl1, fbmp_lr_bl2, fbmp_lr_br1, fbmp_lr_br2, fbmp_lr_rem1, fbmp_lr_rem2, fbmp_lr_slv1, fbmp_lr_sv1, fbmp_lr_sv2, fbmp_lr_t1, fbmp_lr_t2
=>Фары: lgt_b_rspt, lgt_b_sspt
=>Разное: misc_c_lr_rem1, misc_c_lr_rem2, misc_c_lr_rem3
=>Нитрo (Азот): nto_b_l, nto_b_s, nto_b_tw
=>Зaдний Бампeр: rbmp_a_f, rbmp_a_j, rbmp_a_l, rbmp_a_s, rbmp_a_st, rbmp_a_u, rbmp_c_f, rbmp_c_j, rbmp_c_l, rbmp_c_s, rbmp_c_st, rbmp_c_u, rbmp_lr_bl1, rbmp_lr_bl2, rbmp_lr_br1, rbmp_lr_br2, rbmp_lr_rem1, rbmp_lr_rem2, rbmp_lr_sv1, rbmp_lr_sv2, rbmp_lr_t1, rbmp_lr_t2
=>Крыша: rf_a_f, rf_a_j, rf_a_l, rf_a_s, rf_a_st, rf_a_u, rf_b_sc_r, rf_c_f, rf_c_j, rf_c_l, rf_c_s, rf_c_st, rf_c_u, rf_lr_bl1, rf_lr_bl2, rf_lr_sv1, rf_lr_sv2
=>Спoйлeра: spl_a_f_r, spl_a_j_b, spl_a_l_b, spl_a_st_r, spl_a_s_b, spl_a_u_b, spl_b_bab_m, spl_b_bar_l, spl_b_bar_m, spl_b_bbb_m, spl_b_bbr_l, spl_b_bbr_m, spl_b_mab_m, spl_b_mar_m, spl_c_f_r, spl_c_j_b, spl_c_l_b, spl_c_st_r, spl_c_s_b, spl_c_u_b
=>Боковыe Юбки: wg_l_a_f, wg_l_a_j, wg_l_a_l, wg_l_a_s, wg_l_a_st, wg_l_a_u, wg_l_b_ssk, wg_l_c_f, wg_l_c_j, wg_l_c_l, wg_l_c_s, wg_l_c_st, wg_l_c_u, wg_l_lr_bl1, wg_l_lr_br1, wg_l_lr_rem1, wg_l_lr_rem2, wg_l_lr_slv1, wg_l_lr_slv2, wg_l_lr_sv, wg_l_lr_t1, wg_r_a_f, wg_r_a_j, wg_r_a_l, wg_r_a_s, wg_r_a_st, wg_r_a_u, wg_r_b_ssk, wg_r_c_f, wg_r_c_j, wg_r_c_l, wg_r_c_s, wg_r_c_st, wg_r_c_u, wg_r_lr_bl1, wg_r_lr_br1, wg_r_lr_rem1, wg_r_lr_rem2, wg_r_lr_slv1, wg_r_lr_slv2, wg_r_lr_sv, wg_r_lr_t1
=>Колeса: wheel_gn1, wheel_gn2, wheel_gn3, wheel_gn4, wheel_gn5, wheel_lr1, wheel_lr2, wheel_lr3, wheel_lr4, wheel_lr5, wheel_or1, wheel_sr1, wheel_sr2, wheel_sr3, wheel_sr4, wheel_sr5, wheel_sr6

Daeman.cs   8 августа 2008 в 07:26

Чё это за скрипт, и с чем его едят???
:F4
wait 0
thread 'F4'
1@ = 304497

:F4_25
wait 0
if
&0(1@,1i) == 16711680
else_jump @F4_25
Model.Load(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models

:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models

:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4

Daeman.cs   8 августа 2008 в 08:01

Сделайте ктонить, пожалуйста, скрипт для клео, чтобы можно было людей оживлять, как это делают медики.

Daeman.cs   8 августа 2008 в 11:21

Как называется модель сигареты??? Не cigara и не cigarette точно (во всяком случае у меня). Помогите плиз!

ILdar07   8 августа 2008 в 11:51

CIGAR
скрипт медика здесь.

Daeman.cs   8 августа 2008 в 15:49

НЕ, я хочу чттоб с оживлением; но например если оживил, у воскрешённого процентов 60 жизней делалось, а не все 100; ещё чтоб оживлять каждого чела можно было только 1 раз (а то начнут членов банды по 10 раз оживлять) и чтоб оживил, а он за это тебе до штуки баблосов давал (смотря какого статуса человек); если девушка -- целует СиДжи, 25 HP у ГГ прибавляется и sexy + 2%; ну а если мужик -- дружеское рукопожатие и respect +5%. Вот так было бы очень прикольно!

Daeman.cs   9 августа 2008 в 07:13

Я пишу для клео:
// 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---------------
0000: NOP

:WEAPON
wait 0
thread 'WEAPON'
032B: $1 = create_weapon_pickup #HEATSEEK group 15 ammo 10 at 847.6262 -1701.4424 13.5469
032B: $2 = Pickup.Create(#HEALTH, 3, 847.6262, -1701.4424, 13.5469)
032B: $3 = Pickup.Create(#BODYARMOUR, 3, 974.6646, -1657.7264, 13.4697)
032B: $4 = create_weapon_pickup #M4 group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $5 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $6 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $7 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
jump @WEAPON

Нажимаю "компилировать", а он мне говорит: "Недостаточно параметров, ожидалось 7."
ЧЁ ДЕЛАТЬ???

Aidarkhan   9 августа 2008 в 09:49

помогите выташить отсюда параметры отвечаюцие только за бензин (вообще идет со спидометром. но мне надо только бензин). please
// 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---------------
0000: NOP

:NONAME_2
wait 0
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2
if and
Actor.Driving($PLAYER_ACTOR)
$ONMISSION == 0
else_jump @NONAME_2
if and
84A7: not actor $PLAYER_ACTOR driving_boat
84A9: not actor $PLAYER_ACTOR driving_heli
not Actor.DrivingPlane($PLAYER_ACTOR)
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
89AE: not actor $PLAYER_ACTOR driving_train
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BMX)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BIKE)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #MTBIKE)
else_jump @NONAME_2584
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_2
03C0: 8@ = actor $PLAYER_ACTOR car
046C: 26@ = car 8@ driver
if
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_2
0391: release_txd_dictionary
0390: load_txd_dictionary "GASOLINE"
038F: load_texture "SCALEF" as 1 // Load dictionary with 0390 first
038F: load_texture "SCALEE" as 2 // Load dictionary with 0390 first
038F: load_texture "ARROW" as 3 // Load dictionary with 0390 first
038F: load_texture "LOCK" as 4 // Load dictionary with 0390 first
038F: load_texture "SPEEDOM" as 5 // Load dictionary with 0390 first
038F: load_texture "STRELK" as 6 // Load dictionary with 0390 first
038F: load_texture "ARROWN" as 7 // Load dictionary with 0390 first
038F: load_texture "NITRO" as 8 // Load dictionary with 0390 first
wait 250
0AB3: var 2 = 0
0A92: create_custom_thread "asset_radar.ard"
gosub @NONAME_1965
if
88B7: not test 12@ bit 1
else_jump @NONAME_357
0099: 10@ = random_int_in_ranges_0_to_32767
08BD: set 12@ bit 1
0A8C: write_memory 11@ size 1 value 12@ virtual_protect 0
jump @NONAME_384

:NONAME_357
0A97: 22@ = car 8@ struct
22@ += 5
0A8D: 10@ = read_memory 22@ size 4 virtual_protect 0

:NONAME_384
wait 0
0A8D: 28@ = read_memory 11989093 size 1 virtual_protect 0
if
not 28@ == 1
else_jump @NONAME_1730
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_1829
if
$ONMISSION == 0
else_jump @NONAME_1829
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_1730
gosub @NONAME_1994
if
10@ > 0
else_jump @NONAME_1858
02E3: 9@ = car 8@ speed
if
9@ == 0.0
else_jump @NONAME_541
jump @NONAME_1730

:NONAME_541
0AB4: 30@ = var 0
if
30@ == 0
else_jump @NONAME_783
if and
20.0 > 9@
9@ > 1.0
else_jump @NONAME_604
10@ -= 1

:NONAME_604
if
81F3: not car 8@ in_air
else_jump @NONAME_776
if and
9@ > 20.0
35.0 > 9@
else_jump @NONAME_658
10@ -= 2

:NONAME_658
if and
9@ > 35.0
50.0 > 9@
else_jump @NONAME_696
10@ -= 3

:NONAME_696
if and
9@ > 50.0
60.0 > 9@
else_jump @NONAME_741
10@ -= 5
jump @NONAME_783

:NONAME_741
if
9@ > 60.0
else_jump @NONAME_783
10@ -= 10
jump @NONAME_783

:NONAME_776
10@ -= 1

:NONAME_783
if and
8100: not actor $PLAYER_ACTOR in_sphere 1944.852 -1769.554 13.0125 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2209.816 2481.934 10.8203 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 604.8804 1705.273 6.541 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -2414.49 982.081 45.2969 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -2244.623 -2561.828 31.9219 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1327.512 2678.107 50.0625 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -95.1488 -1174.303 1.9281 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1679.982 408.9051 7.2365 radius 1.5 1.5 3.0 sphere 0 in_car
else_jump @NONAME_1404
if and
8100: not actor $PLAYER_ACTOR in_sphere 652.03 -571.34 16.34 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1605.897 -2714.252 48.5335 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1471.48 1864.31 32.64 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 1596.5 2199.1 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2145.9 2748.16 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2642.11 1106.53 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2117.42 920.42 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 1381.68 456.26 19.91 radius 1.5 1.5 3.0 sphere 0 in_car
else_jump @NONAME_1404
jump @NONAME_1730

:NONAME_1404
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_1829
if
$ONMISSION == 0
else_jump @NONAME_1829
if
29000 > 10@
else_jump @NONAME_1730
if
Player.Money($PLAYER_CHAR) > 0
else_jump @NONAME_1942
31@ = Player.Money($PLAYER_CHAR)
wait 150
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1
07CC: set_player $PLAYER_CHAR button_15 0
24@ = 0
Car.LockInCurrentPosition(8@) = True
Player.CanMove($PLAYER_CHAR) = False

:NONAME_1530
wait 0
31@ = Player.Money($PLAYER_CHAR)
0062: 31@ -= 24@ // (int)
if
not 1 > 31@
else_jump @NONAME_1919
if
29700 >= 10@
else_jump @NONAME_1673
if
$ONMISSION == 0
else_jump @NONAME_1829
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_1829
gosub @NONAME_1994
10@ += 300
097A: play_audio_at 0.0 0.0 0.0 event 1133
24@ += 1
jump @NONAME_1530

:NONAME_1673
24@ *= -1
Player.Money($PLAYER_CHAR) += 24@
036A: put_actor $PLAYER_ACTOR in_car 8@
Car.LockInCurrentPosition(8@) = False
Player.CanMove($PLAYER_CHAR) = True
07CC: set_player $PLAYER_CHAR button_15 1
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0
0AB3: var 0 = 0

:NONAME_1730
if or
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(8@)
else_jump @NONAME_1765
08C3: clear 12@ bit 1
jump @NONAME_1833

:NONAME_1765
0A97: 22@ = car 8@ struct
22@ += 5
0A8C: write_memory 22@ size 4 value 10@ virtual_protect 0
if
$ONMISSION == 0
else_jump @NONAME_1829
if
not Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_384

:NONAME_1829
wait 0

:NONAME_1833
0AB3: var 2 = 1
08C3: clear 12@ bit 1
wait 1250
jump @NONAME_2

:NONAME_1858
10@ = 0
if
047A: actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_1899
02D4: car 8@ turn_off_engine
0AB3: var 0 = 1
jump @NONAME_783

:NONAME_1899
0918: unknown_car 8@ driver_flag 0
0AB3: var 0 = 1
jump @NONAME_783

:NONAME_1919
00BC: show_text_highpriority GXT 'GA_3' time 3000 flag 1 // HNKAKON XALRBS~n~$100 HE 6YDET!
jump @NONAME_1673

:NONAME_1942
00BC: show_text_highpriority GXT 'NOMONEY' time 3000 flag 1 // ~s~TE6E HYGHO 6OLJWE DEHEF!
jump @NONAME_1730

:NONAME_1965
0A97: 11@ = car 8@ struct
11@ += 4
0A8D: 12@ = read_memory 11@ size 1 virtual_protect 0
return

:NONAME_1994
0AB4: 3@ = var 3
0AB4: 4@ = var 4
if
4@ > 0
else_jump @NONAME_2159
0093: 5@ = integer 4@ to_float
5@ += 108.6
03F0: enable_text_draw 1
033F: set_text_draw_letter_size 0.3 1.0
045A: draw_text_1number 209.05 356.333 GXT 'NUMBER' number 3@ // ~1~
038D: draw_texture 8 position 213.5 339.0 size 128.0 111.0 RGBA 255 255 255 255
074B: draw_texture 7 position 213.5 339.0 scale 128.0 128.0 angle 5@ color_RGBA 255 255 255 255

:NONAME_2159
02E3: 23@ = car 8@ speed
23@ *= 3.56
0092: 27@ = float 23@ to_integer
23@ += 62.0
03E3: set_texture_to_be_drawn_antialiased 1
033F: set_text_draw_letter_size 0.6 2.0
045A: draw_text_1number 31.75 424.4 GXT 'NUMBER' number 27@ // ~1~
038D: draw_texture 5 position 126.5 385.0 size 262.5 226.0 RGBA 255 255 255 255
074B: draw_texture 6 position 90.5 385.0 scale 262.5 226.0 angle 23@ color_RGBA 255 255 255 255
if
10@ > 15000
else_jump @NONAME_2376
03F0: enable_text_draw 1
038D: draw_texture 1 position 195.5 417.2 size 31.8 26.8 RGBA 255 255 255 255
jump @NONAME_2435

:NONAME_2376
if
5000 > 10@
else_jump @NONAME_2435
03F0: enable_text_draw 1
038D: draw_texture 2 position 195.5 417.2 size 31.8 26.8 RGBA 255 255 255 255

:NONAME_2435
0093: 25@ = integer 10@ to_float
25@ /= 500.0
25@ *= 2.3
25@ += 108.6
03F0: enable_text_draw 1
074B: draw_texture 3 position 213.5 412.0 scale 128.0 128.0 angle 25@ color_RGBA 255 255 255 255
09B3: get_car 8@ door_status 21@
if
not 21@ == 1
else_jump @NONAME_2582
03F0: enable_text_draw 1
038D: draw_texture 4 position 169.0 432.3 size 24.0 24.0 RGBA 255 255 255 255

:NONAME_2582
return

:NONAME_2584
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_2
if and
Actor.Driving($PLAYER_ACTOR)
$ONMISSION == 0
else_jump @NONAME_2
03C0: 8@ = actor $PLAYER_ACTOR car
046C: 26@ = car 8@ driver
if
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_2
0391: release_txd_dictionary
0390: load_txd_dictionary "GASOLINE"
038F: load_texture "SPEEDOM" as 1 // Load dictionary with 0390 first
038F: load_texture "STRELK" as 2 // Load dictionary with 0390 first

:NONAME_2708
wait 0
0A8D: 28@ = read_memory 11989093 size 1 virtual_protect 0
if
not 28@ == 1
else_jump @NONAME_2973
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_3038
if
$ONMISSION == 0
else_jump @NONAME_3038
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_3038
03F0: enable_text_draw 1
02E3: 23@ = car 8@ speed
23@ *= 3.56
0092: 27@ = float 23@ to_integer
23@ += 68.0
0340: set_text_draw_RGBA 180 180 180 255
033F: set_text_draw_letter_size 0.6 2.4
045A: draw_text_1number 32.75 424.333 GXT 'NUMBER' number 27@ // ~1~
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 126.5 385.0 size 262.5 226.0 RGBA 255 255 255 255
074B: draw_texture 2 position 90.5 385.0 scale 262.5 226.0 angle 23@ color_RGBA 255 255 255 255

:NONAME_2973
if or
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(8@)
else_jump @NONAME_3001
jump @NONAME_3038

:NONAME_3001
if
$ONMISSION == 0
else_jump @NONAME_3038
if
not Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_2708

:NONAME_3038
wait 1250
jump @NONAME_2

ILdar07   9 августа 2008 в 10:16

зачем выташить? на missions.gtamaps.net куча скриптов для бензинУ

sentinel 77   22 августа 2008 в 11:32

Народ подскажите! Я вот пробовал расставлять транспорт,но ничего не получается! я не понял,где писать поток и т.д.!?

KroSSS   24 августа 2008 в 01:59

Мужики, мы собираемся сделать мод для GTA VICE CITY мы хотим вставить новые миссии и нам для этого нужен скриптёр парни ПОМОГИТЕ!

[DiZet]   24 августа 2008 в 17:12

Народ. Я в скриптинге нуб зеленый. Скажите, плз, как задать педу оружие? Ну я хочу сделать, что б банды ходили не с девятками и ТЭК-ами, а с катанами. Заранее спс.

ILdar07   26 августа 2008 в 20:34

sentinel 77
forums.playground.ru/gta_san_andreas/modding/164..

KroSSS
forums.playground.ru/gta_vice_city/

DZ [RAD]
оружие педам вообще даётся так:
01B2: give_actor 2@ weapon 28 ammo 60
2@ твой актёр
28 оружие (см. мануал проги, где скриптишь)
60 число патронов

оружие бандам
forums.playground.ru/gta_san_andreas/modding/164..

AlexTatarGTA   28 августа 2008 в 01:59

народ! кто может помочь мне или просто толком расказать как зделать так что б тачка всегда респилась в одном месте. к примеру как возле дома свита всегда гринвуд стоит. я делал так как в начале написано и нефига не выходит :(
и с помощю IPL Helper'a пытался респить но оно мне выдаёт строку которую надо кудато вписать а я хз куда. помогите

ILdar07   11 сентября 2008 в 13:39

я делал так как в начале написано и нефига не выходит :(
очень странно. всего два опкода:
09E2: 0@ = parked_car_generator_w_numberplate #GREENWOO 59 34 0 alarm 0 door_lock 0 0 10000 plate "GROVE4L_" at 0.0 0.0 0.0 angle 0.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101

может, ты вместо десятичных 0.0 писал целые числа? это тоже важно.

лично я расставляю через IPL. но для этого нужен MEd. ищешь тот кусок карты, где ставится авто, смотришь название файла и пишешь там ту строку, которую оно тебе выдаёт, типа:
cars
1253.4237, 249.2511, 19.5547, -1, -1, -1, -1, 0, 0, 0, -1, -1
end

Daeman.cs   27 сентября 2008 в 14:29

А у меня вот такой вопрос: как через SB добавлять не только огнестрельное, но и холодное оружие, броню и жизни? Огнестрельное пишу так: 032B: $1 = create_weapon_pickup #AK47 group 15 ammo 30 at 0.0 0.0 0.0; а ближнего боя так: 032B: $1 = create_weapon_pickup #FLOWERA group 15 ammo 1 at 0.0 0.0 0.0? Меня интересует, что писать про патроны (ammo), ведь у ББ оружия нет патронов!??? ОТВЕТЬТЕ ПЛИЗ!

ILdar07   27 сентября 2008 в 19:20

пиши любое число от 1 до плюс бесконечности. для неогнестрельного оружия количество патронов не имеет значения, факт?
p.s. можно не мучаться с этим, просто напиши
0213: @1 = create_pickup #INFO type 3 at 2027.77 -1420.52 16.49
и будет пикап. огнестрельный - с магазином по умолчанию.

Daeman.cs   29 сентября 2008 в 16:52

Спасибо тебе, ILdar07, как настоящий друг! А вот я делаю мод (для САМПА по большей мере), чтоб когда кнопо4ку жмёшь, становишься SWAT'ом те дают Дигл, СМГ, М4, Снайперку, SPAS 12 и гранаты. Всё перечисленное работает, я захотел добавить ПНВ (Прибор Ночного Видения) или ПТВ (Прибор Термо-Видения), а в мануле (с инета скачал) не написано про парашют, ПНВ, ПТВ, фотоаппарат. Подскажи, пожалуйста, какой у ПНВ, ПТВ, парашюта и фотоаппарата ID номер (например ID 31 -- M4, ID 29 -- MP5, ID 4 -- нож и т. д.). И ещё один вопросик: как в СБ сделать так, что бы какой-нить скрипт можно было использовать не чаще, например, чем в 5 минут или в две? Ответь пожалуйста, будь другом!
P.S. Модели как называются, я знаю: ПНВ -- NVGOGGLES, ПТВ -- IRGOGGLES, фотик -- CAMERA, парашют -- GUN_PARA.
З.Ы. Заранее спасибо!

ILdar07   29 сентября 2008 в 20:32

Странно, что это за мануал у тебя? Я вот открыл АLЕХАNDЕR'S SАNNY BUILDЕR MАNUАL и сразу нашёл.
#camera___________43
#nvgoggles_________44
#irgoggles__________45
#GUN_PARA________46


2-й вопрос: Поставь в конце скрипта wait 300000 или wait 120000 перед прыжком в начало :.)

Daeman.cs   1 октября 2008 в 18:20

Подскажи, плиз, каким опкодом у плеер-актёра деньги отнимать? Таким: Player.Money($PLAYER_CHAR) -= 50000?

ILdar07   1 октября 2008 в 20:00

неа, не прокатит :-) я тоже над этим тужился. всё что нужно - знать основы арифметики!
х - число, которое надо отнять. SB принимает лишь
Player.Money($PLAYER_CHAR) += х
значит, чтоб отнялось, надо это число сделать отрицательным (логично? блин, я это в одном скрипте увидел… а сам не додумался). вот и всё!
х *= -1
Player.Money($PLAYER_CHAR) += х

Daeman.cs   3 октября 2008 в 09:36

Вот так чтоли: Player.Money($PLAYER_CHAR) += -500?
Кстати, я пробовал дать игроку ПНВ, ПТВ, фотик или парашют, но не получилось! Я всё сделал как и с другими оружиями:

БЛА БЛА
Model.Load(#IRGOGGLES)
БЛА БЛА
Model.Available(#IRGOGGLES)
БЛА БЛА
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 1 // Load the weapon model before using this
БЛА БЛА, ЗАТЕМ:
Model.Destroy(#IRGOGGLES)
БЛА БЛА, А ПОТОМ:
:XXX
wait 300000
Model.Available(#IRGOGGLES)
jf @YYY
Model.Destroy(#IRGOGGLES)
БЛА БЛА
SB скомпилировал, запускаю Саню, жму на нужную кнопо4ку (для скрипта) -- БРЫКС, вылет!
Открываю SB'ом txt файл, проверяю: запись правильная, порядок правильный, ID правильный, вся запись правильная.
О5 включаю игру, нажимаю на определённую клавишу (для скрипта) -- ОПС, снова крэшится!
Чё за фигня? Может для ПНВ, ПТВ, фотика или парашюта как то по другому надо писать? Ответь, пожалуйста, если сможешь/не лень
P.S. Заранее благодарен!

ILdar07   3 октября 2008 в 09:45

интересно девки пляшут…
вот мой скрипт - всё работает.
Model.Load(#IRGOGGLES)

:Noname_1
if
not Model.Available(#IRGOGGLES)
jf @Noname_2
wait 0
jump @Noname_1

:Noname_2
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 666
Model.Destroy(#IRGOGGLES)

Daeman.cs   3 октября 2008 в 17:18

А почему not?
:Noname_1
if
not Model.Available(#IRGOGGLES)
jf @Noname_2
wait 0
jump @Noname_1

:Noname_2
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 666
Model.Destroy(#IRGOGGLES)
Говорю же, другие оружия по такой с хеме работают, а чё для ПТВ, ПНВ, фотика или парашюта надо именно так писать??? Мне не понятно почему not? Разъясни плиз.

ILdar07   6 октября 2008 в 15:21

именно так. это особое оборудование. не стреляет, не убивает, факт?
почему? почему, почему… если модель не загружена, скрипт дальше не идёт, а прыгает на Noname_1 и снова проверяет. в противном случае скрипт идёт дальше.
отмечу, что эта с хема юзается в оригин/мэйне от R*. хотя наверно можно и так писать:
:Noname_1
wait 0
if
Model.Available(#IRGOGGLES)
jf @Noname_1

но ты гляди на различие - это не отдельный кусок скрипта: проверка модели и далее.
R* же всегда её (проверку) отдельно оформляет, с not. Думаю, это надо для стабильности.

Daeman.cs   7 октября 2008 в 11:15

А! Я понял! Но тогда почему для холодного оружия (ББ) подходит схема, как к огнестрельному, ведь у ББ оружия патронов нет? Или это от датафайла зависит? Мну кажетца, шо для норм игры без вылетов, надо чтоб все скрипты (по крайней мере сложные) были с проверкой. Тогда и глючить не будет!

__L.Z.__   1 ноября 2008 в 16:12

В общем есть вопрос. Каким опкодом делается покупка оружия (собственно пик-ап), как например это было в ГТА3 или в Вайс Сити на свалке однорукого - чтобы моделька оружия крутилось как обычно когда его можно подобрать, а над ним цена. По ходу в СА такая фича не используется, как быть? Я в своем моде добавляю все фалосы в сэкс-шопе, и чтоб сделать культурно, хочу чтоб они были покупаемыми.

Daeman.cs   6 ноября 2008 в 09:19

Пикап покупки, можно применять к чему угодно:
0518: $Buy = create_available_asset_pickup 'PROP_3' at $X $Y $Z price $Count
$Buy - имя пикапа
$X $Y $Z - координаты пикапа, как их определить написано в первой главе
$Count - деньги, которые мы платим за покупку,а вот что покупать, это уже надо самим писать.
Ток я сам недопонял где писать, что покупаешь?

ILdar07   13 ноября 2008 в 16:11

__L.Z.__ 01.11.08
как быть?

Написать скрипт. Можно взять за основу Амму-Нацию (с таблицами), можно тупо отнимать бабло, но здесь цену нельзя посмотреть. Я бы создал маленькую сферу (красный кружок… ммм… в мануалах пишется "сфера", а это цилиндр… ну неважно). CJ заходит в неё, появляется таблица: товар - цена… ну короче, как в Амму-Нации.

Аttский Дем0n aka Daeman
Автор мануала не совсем точно выразился. Ты ставишь пикап покупки перед домом, к примеру, так? Значит, и ежу понятно, что ты будешь покупать этот дом, а не бордель за углом. Да, в GXT-файле можно написать типа "шоб заиметь эту хату гони стока-то бабок" (как в VC). Этот текст - 'PROP_3' (код можно узнать в help\GXT Strings\GTASA.text SB).

Daeman.cs   14 ноября 2008 в 14:06

Я долго ломал голову над этим вопросом... ILdar07, ты не знаешь как актёру приписать маркер, ток не такой как в мануале СБ, (со стрелкой над актёром, и в легенде карты обозначается коряво) а такой, как, например, когда в СА члена банды вербуешь, или как в миссии?
Раз пошла такая "пьянка" подскажи, пожалуйста, как в одном клео файле (.cs) несколько клавишь задействовать? Ток не игровых клавишь (например "00E1: key_pressed 0 19"), а любых. Там ещё пишется сначала локальная переменная (например, "0@ = 304527") а потом сама проверка (допустим, "&0(0@,1i) == 0xFF"). По идее, чтобы использовать разные клавиши таким макаром в одном скрипте надо изменить переменную (0@) на другую, а потом написать проверку нажатия. Пробовал, игра вылетает. Приходится пока в разные файлы писать

ILdar07   14 ноября 2008 в 14:42

Маркеры
они везде одинаковые - и когда в СА члена банды вербуешь, и в миссии. всё зависит от свойств: размер (0168:), цвет (0165:) и режим показа (их 3, без маркера на миникарте, ТОЛЬКО на миникарте и там и там; 018B:).

Клавиши
я юзаю 0AB0: всё чики пуки

Daeman.cs   14 ноября 2008 в 16:22

Спасибо большое! Без тя бы, наверное, не справился бы! А как "0AB0" пользоваться? Там в примере этого опкода "0AB0: key_pressed 0x73", (т.к. 0x73) это значит кнопка с буквой "I"? В том смысле, что в мануале СБ таблица "virtual_key_codes", ей пользоваться для оперделения кнопки? Иещё плиз, где посмотреть/определить размер и цвет маркера? С помощью чего?
P.S. Посмотри личку.

ILdar07   14 ноября 2008 в 16:58

как "0AB0" пользоваться
читай мануал. CLEO 3 Code Library => Список значений кнопок для 0AB0 цифра из первой колонки.

посмотреть размер и цвет маркера
в игре, ясен пень. а чтобы не перегружать свою память, пиши Сleo-скрипт, где создай маркер и задавай ему свойства через параметры. типа нажимаешь одну кнопку - изменяется размер, цвет. для удобства можно выводить число свойства. потом сворачиваешь игру, записываешь данные куда-нить, в тот же мануал можно. я это уже делал - проверено :-) в размерах всё просто - чем выше число, тем больше размер. 1 - самый малый, 50 - на всю миникарту.

определить размер и цвет маркера
в скрипте, ясен пень. вот попробуй:

{$VERSION 3.1.0027}
{$CLEO .cs}

wait 0
29@ = -2

:Noname_9
wait 10
if
00E1: player 0 pressed_key 11
jf @Noname_19
000A: 29@ += 1 // @ = any
gosub @Noname_1837
jump @Noname_1795

:Noname_19
wait 10
if
00E1: player 0 pressed_key 10
jf @Noname_29
000e: 29@ -= 1 // @ = any
gosub @Noname_1837
jump @Noname_1795

:Noname_29
wait 10
if
00E1: player 0 pressed_key 6
jf @Noname_9
gosub @Noname_1837
jump @Noname_1795

:Noname_1795
wait 10
jump @Noname_9

:Noname_1837
wait 0
04C4: create_coordinate $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR offset 100.0 100.0 1.0
0167: $Mark = create_marker_at $X_1 $Y_1 $Z_1 flags 0 2
//Marker.SetIconSize($Mark, 29@)
07E0: set_marker $Mark type_to 29@
0513: show_text_box_1number 'NUMBER' number 29@
:Noname_1889
wait 2500
Marker.Disable($Mark)
return


29@ - параметр, нажимаешь кнопки, он изменяет свойства, всё просто.
psps^ кстате у тя SB 3.04? обнови еси чо.

Daeman.cs   15 ноября 2008 в 15:56

гыгыгы! Ну эт понятно, что в скрипте! Я думал, может, какая-нить таблица есть с номерами цветов или чё-то в этом роде! А за скрипт спс! Дай ссылочку на обновление СБ плиз! Из предложенного скрипта я понял, что при нажатии "ответ ДА" маркер увеличится на один размер; при нажатии "ответ НЕТ" маркер уменьшиться на один размер. Вот ток "000e: 29@ -= 1" будет работать ли? Надо написать (так уж работать точно будет) "Dec(29@)", и поставить макс. число переменной на 50 (ты сам говорил, что 50 - максимум) по идее, если больше 50-ти -- вылетет. И ещё, я несовсем понял, на ком создаётся маркер? На любом педе? "0167: $Mark = create_marker_at $X_1 $Y_1 $Z_1 flags 0 2" -- (тут написаны координаты относительно актёра), это, значит, что просто так маркер будет, ничейный? А зачем ":Noname_29"? он же, как я понял, ничего не значит! ВОТ:
:Noname_29 // Название label'а
wait 10 // Ожидать 1 мс (Во избежании непонятак, на всякий случай)
if // Простое условие для одного опкода
00E1: player 0 pressed_key 6 // Проверка на нажатость игровой кнопки№6 (прицел)
jf @Noname_9 // "jump_if_false" - по-русски говоря "прыжок, если неправда"
gosub @Noname_1837 // Условно -- начало (оттуда) повтора
jump @Noname_1795 // Прыжок

ILdar07   15 ноября 2008 в 16:04

если есть время и желание - сделать самому "какая-нить таблица ... с номерами цветов или чё-то в этом роде" нет проблем.

ссылочкa на обновление СБ

ILdar07   15 ноября 2008 в 17:11

будет работать ли
чувааак, я же писал - всё проверено. это сделано для самопроверки. посмотрел - запомнил - записал, потом проверяешь - правильно ли.

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

на ком создаётся маркер
похоже, у тебя узкое представление о маркерах. это не только указатель над актёром/машиной, но и чекпоинт (квадратик) или иконка (как для миссий). у меня создаётся простой чекпоинт (как я понимаю, маркер - более широкое понятие, ему флаги можно задать, а чекпоинт - просто квадратик, его можно создать [018A:] и задать тип [08FB:] - вот и всё).

зачем ":Noname_29"?
чтобы создать маркер сразу, без изменения 29@, ибо у него уже есть значение по умолчанию: 29@ = -2

а gosub - это, как мы знаем, переход к части скрипта, которая должна выполниться несколько раз и заканчивается return, потом автоматом переходит на строку после gosub.

Daeman.cs   15 ноября 2008 в 17:46

Ильдар, ты немног перепутал! Если ты хочешь сделать корону или чекпоинт, то надо написать для этого по-другому. ЧЕКПОИНТ: 018A: "1@ = create_checkpoint_at 1290.4906 -788.3314 95.4531" КОРОНУ: "024F: create_corona 0.2 2 0 with_color 255 0 0 at_point $X $Y $Z" А маркер, он объект помечает, стрелку делает. Вообщем корона, чекпоинт и маркер это разные вещи. Лучше сделать чела, а над ним маркер. Кароч, скрипт не работает, я пробовал.

ILdar07   15 ноября 2008 в 19:15

Ну ладно, пусть будет так.

dodlez519   16 ноября 2008 в 10:55

Всем привет.Насколько понял эта ветка по скриптам, поэтому и задаю вопрос.Крч имею вот этот мейн (yy.lv/download.php?f=188156)
Он полностью оригинальный, не считая прописанной строки 08C6: set_actor $PLAYER_ACTOR stay_on_bike 1, чтобы игрок не мог упасть с мотоцикла.Ну так вот, когда я начинаю новую игру всё работает;его не возможно скинуть с байка, но как только я сохраняю игру, перезахожу в неё и загружаю этрт сейв, эта шифка не работает (((.Прошу помощи.Заранее благодарен

ILdar07   16 ноября 2008 в 13:50

юзай клео. в оригинальном мейне что-то менять/добавлять - гиблое дело.

Daeman.cs   16 ноября 2008 в 14:07

Просто пишешь внешний скрипт (для Cleo) с опкодом "08C6: set_actor $PLAYER_ACTOR stay_on_bike 1" и всё. Один опкод. Если слишком трудно, могу помочь! :)

dodlez519   16 ноября 2008 в 14:50

Attский Дем0н аka Daemon если не трудно сделай что ты сказал.И залей готовое на какой-нить файлхостинг.Буду очень благодарен

Daeman.cs   18 ноября 2008 в 05:24

А у тя библиотека Cleo установлена? Sanny Builder?

dodlez519   19 ноября 2008 в 17:57

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

dodlez519   28 ноября 2008 в 14:46

Видимо тут все вымерли...

solom   30 ноября 2008 в 14:42

Народ!я короч токо новичок и у меня одна проблема!
Когда я пишу эти скрипты
create_thread @NRG_500
end_thread

:NRG_500
wait 100
thread "NRG"
model.Load(#NRG500)
038B: load_requested_models

:NRG_510
Wait 100
If and
Model.Available(#NRG500)
jf @NRG_510
30@ = car.Create(#NRG500, 2510.2615, -1671.3036, 13.4114 )
Car.RemoveReferences(30@)
end_thread
Я их конвертирую,запускаю игру и выдаёт ошибку типо сан андреас не работает и будет закрыто и я нажимаю не отправлять (ну вы поняли )
В чём ошибка список скрипта как исправить чтобы сан андреас работал?

ILdar07   15 января 2009 в 19:57

:NRG_510
Wait 100
If and // попробуй удалить and, его пишут если в условии больше 1 пункта
Model.Available(#NRG500)
jf @NRG_510

FAXMANIAK_S   17 февраля 2009 в 21:21

solom
Ты паркованную машину чтоль создать хочешь? Тогда используй:
014B: $Car = init_parked_car_generator #модель 8 8 0 alarm 50 door_lock 0 0 40000 at X Y Z angle 0.0
014C: set_parked_car_generator $переменная_машины cars_to_generate_to 101.
Готовый скрипт:
:NRG_500
Model.Load(#NRG500)

:NRG_510
wait 0 ms
if
model.available(#NRG500)
jf @NRG_510
014B: 30@ = init_parked_car_generator #NRG500 8 8 0 alarm 50 door_lock 0 0 40000 at 2510.2615 -1671.3036 13.4114 angle 0.0
014C: set_parked_car_generator 30@ cars_to_generate_to 101
end_thread

ILdar07   17 февраля 2009 в 21:47

поправка: для генератора транспорта (как и для пикапов) модель загружать не надо. а если загрузил, то надо выгружать:
Model.Destroy(#STINGER)

типа бонус. подборка полезных опкодов:
0110: clear_player $PLAYER_CHAR wanted_level // очистить уровень розыска
01F7: set_player $PLAYER_CHAR ignored_by_cops 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 // все игнорируют
055D: make_player $PLAYER_CHAR fireproof 1 // огнеупорность
0572: enable_taxi_nitros 1 // все такси с азотоускорением
07A7: put_jetpack_on_actor $PLAYER_ACTOR // джетпак
0879: enable_gang_wars 1 // вкл. войны банд за территорию
09C7: change_player $PLAYER_CHAR model_to #SPECIAL01 // замена своей модели (сначала надо загрузить новую)
09E6: set_burglary_houses_accessible 1 // доступ в жилые дома
09E9: car 34@ add_single_nitro // одноразовый нитроазот
0A3D: enable_prostitutes_pay_you 1 // шлюхи платят тебе
...
список врядли полный.

.Blade.   2 марта 2009 в 20:20

Помогите в скриптинге:Хочу уметь скриптить я постояно вписую опкоды а онине действуют(, куда их писать я незнаю задолбалса уже искать везде подскажыте.Я вписывал все под Mission 0 а ефект нулевой.Помогите пл3

.Blade.   2 марта 2009 в 21:26

ПОмоГИте я незнаю куда ето пихать

Daeman.cs   7 марта 2009 в 10:11

ILdar07,а ты, случаем, не знаешь опкод на бесконечные патроны перезарязаряжает/не перезаряжает.

Myker   10 марта 2009 в 01:36

ПРИВЕТ!!!
Кто-нибудь может помочь...
У меня в моде GHOST RIDER после того как я слажу с байка у меня вылетает игра.
КАК ЭТО МОЖНО ИИССППРАВВИТТЬЬ??????
....ЗАРАНИЕ СПАСИБО!!....

ILdar07   11 марта 2009 в 19:08

NEO[в асе и на сервах Blade]
читай мануалы, туториалы и проч. а если не понимаешь, то ызначит, скриптинг не для тебя, чувак :)

про100 Daeman
0331 - этот? но знаешь, он работает только на винтовках, а допустим, у пистолетов и автоматов всё равно перезарядка будет, правда цифры количества патронов/магазинов меняются быстрее.
ещё глюк видел галимый. когда кончаешь игру (типа все миссии), аммо не кончается. например, у тебя RPG с 4-мя ракетами. стреляешь, стреляешь - и всегда 4. что за ёперный театр, непонятно.

Myker
Вопрос к автору этого мода.

Daeman.cs   19 марта 2009 в 03:45

Это не глюк. Это задумка разрабов. Кстати, не знаешь как они так сделали? Опкода подходящего в мейне СА я не нешёл!
И опкод 0331: set_player $PLAYER_CHAR fast_reload 1 не бездейственный. Он говорит сам за себя. Работу этого опкода можно явно заметить, стреляя из базуки или снайперки. Но он действует на все оружия.
Это можно зметить: когда в обойме кончились патроны, нужно выключить а затем, сразу включить прицел, и снова нажать "огонь".

Colt 8   26 марта 2009 в 10:20

Возможно ли в помещении (локация бара) поставить маркер на актера (бармэншу)?

Daeman.cs   27 марта 2009 в 20:07

Возможно. Вот только ты хочешь поставить маркер на тобою созданную barwooman или на уже существующюю?

Colt 8   29 марта 2009 в 20:44

Уже существующею.

Подскажите, я делаю мод чтоб CJ мог садиться в указаном месте.
И у меня зависает игра. Сказано что нужно делать проверку именно на этой анимации.
Подскажите пожалуйста как и куда её вставлять?
{$VERSION 3.1.0027}
{$CLEO .cs}

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

:NONAME_2
04ED: load_animation "PED"
038B: load_requested_models
jump @NONAME_18

:NONAME_18
wait 0
if
04EE: animation "PED" loaded
if and
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
Marker.Disable($MARK)
else_jump @NONAME_18
if
not Actor.Driving($PLAYER_ACTOR)
else_jump @NONAME_18
wait 600
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
else_jump @NONAME_18
wait 15000
jump @NONAME_2


И есть ли анимация, которая позволяет садиться на корточки?

BоPоH   31 марта 2009 в 10:31

Конечно игра зависнет, сказано что надо делать проверку, а загружать 'PED' НЕЛЬЗЯ! Он сам загружается при запуске игры......тока проверку надо оставить.....и ещё, зачем ты удаляешь какой-то маркер? (он вообще существует?)

:NONAME_18
wait 0
if
04EE: animation "PED" loaded
if and
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
Marker.Disable($MARK)

Зачем ставить проверку на нахождения игрока в машине, если у тебя стоит проверка
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
тут же написано stopped_on_foot - остановился пешим (на ногах), тоесть проверка на нахождение в машине НЕ НУЖНА!

Зачем ты ставишь
else_jump @NONAME_18
после опкода
Marker.Disable($MARK)
и
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
else_jump ставится ТОЛЬКО ПОСЛЕ ПРОВЕРОК!!!!!!
после простых опкодов else_jump НЕ СТАВИТСЯ НИКОГДА!!!!!

Короче тут ещё много ошибок..........


Конечный скрипт будет выглядеть так:

:NONAME_18
wait 0
if and
04EE: animation "PED" loaded
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
wait 600
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
wait 15000
jump @NONAME_18

Если ты действительно хочешь делать мод - сначала научись писать скрипты)))))

P.S. Если ты не понял что за проверку надо ставить на эту аниму - ты её уже поставил: 04EE: animation "PED" loaded
а файл 'PED' загружать нельзя, он загружен с самого начала игры......
Если чё - ася в анкете.....

BоPоH   31 марта 2009 в 10:45

Ах да, забыл, тут вместо использования анимации мона использовать опкод
04EB: AS_actor 65@ crouch 1

Вот скрипт:

:NONAME_2
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_2
wait 600
04EB: AS_actor $PLAYER_ACTOR crouch 1
wait 15000
04EB: AS_actor $PLAYER_ACTOR crouch 0
jump @NONAME_2

Вот и всё......

Fred Gladiator   5 апреля 2009 в 21:57

Санни Билдер нормальная программа токо я не могу понять как создать мощную миссию... ПОМОГИТЕ!!!!!

Fred Gladiator   5 апреля 2009 в 21:58

У меня русская версия 3.0

VitalRus   11 апреля 2009 в 21:02

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

:Mymission
wait 0
if and
not actor.Driving($PLAYER_ACTOR)
0102: actor $PLAYER_ACTOR near_pt 2374.85 -1642.29 13.5543 radius 3.0 3.0 3.0 sphere 0
00E1: key_pressed 0 4
jf @Mymission
jump to @Mission1

:Mission1
model.Load(#CELLPHONE)
model.Load(#MALE01)
model.Load(#M4)
model.Load(#TEC9)
038B: load_requested_models

:Mission1_2
if
model.Available(#CELLPHONE)
model.Available(#MALE01)
model.Available(#M4)
model.Available(#TEC9)
jf @Mission1_2
01B4: set_player $PLAYER_CHAR can_move 0
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
03E5: show_text_box 'MISSION1' //Male 01 is very dangerous for us. You need to kill him. There is Tec9 under the telephone. 03E5
wait 7000
01B4: set_player $PLAYER_CHAR can_move 1
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 32 ammo 600
wait 10
actor.Create($Act,CivMale,#MALE01,2354.18,-1357.16,23.7734)
wait 10
marker.CreateIconWithoutSphere($ICON,18,2354.18,-1357.16,23.7734)
wait 10
marker.CreateAboveActor($Actmark,$Act)
wait 10
actor.Health($Act)=1000
wait 10
01B2: give_actor $Act weapon 31 ammo 600
wait 10
jump to @Mission1_3

:Mission1_3
wait 10
if
actor.Dead($Act)
jf @Mission1_3
marker.Disable($ICON)
marker.Disable($Actmark)
player.Money($PLAYER_CHAR) +=2500
0110: clear_player $PLAYER_CHAR wanted_level
wait 5000
actor.DestroyInstantly($Act)
wait 10000
jump to @Mymission
end_thread

VitalRus   11 апреля 2009 в 21:03

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

:Mymission
wait 0
if and
not actor.Driving($PLAYER_ACTOR)
0102: actor $PLAYER_ACTOR near_pt 2374.85 -1642.29 13.5543 radius 3.0 3.0 3.0 sphere 0
00E1: key_pressed 0 4
jf @Mymission
jump to @Mission1

:Mission1
model.Load(#CELLPHONE)
model.Load(#MALE01)
model.Load(#M4)
model.Load(#TEC9)
038B: load_requested_models

:Mission1_2
if
model.Available(#CELLPHONE)
model.Available(#MALE01)
model.Available(#M4)
model.Available(#TEC9)
jf @Mission1_2
01B4: set_player $PLAYER_CHAR can_move 0
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
03E5: show_text_box 'MISSION1' //Male 01 is very dangerous for us. You need to kill him. There is Tec9 under the telephone. 03E5
wait 7000
01B4: set_player $PLAYER_CHAR can_move 1
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 32 ammo 600
wait 10
actor.Create($Act,CivMale,#MALE01,2354.18,-1357.16,23.7734)
wait 10
marker.CreateIconWithoutSphere($ICON,18,2354.18,-1357.16,23.7734)
wait 10
marker.CreateAboveActor($Actmark,$Act)
wait 10
actor.Health($Act)=1000
wait 10
01B2: give_actor $Act weapon 31 ammo 600
wait 10
jump to @Mission1_3

:Mission1_3
wait 10
if
actor.Dead($Act)
jf @Mission1_3
marker.Disable($ICON)
marker.Disable($Actmark)
player.Money($PLAYER_CHAR) +=2500
0110: clear_player $PLAYER_CHAR wanted_level
wait 5000
actor.DestroyInstantly($Act)
wait 10000
jump to @Mymission
end_thread

Reqwiem123321   20 апреля 2009 в 20:23

Привет ВСЕМ Я не так давно начал закидывать скрипты CLEO но закинул клео скрипт и игра начала вылетать после загрузки такой скрипт там еще заглушить движок можно вкл/выкл фары вроде клео скрипт3 называется

nik gtаsа[Zorb]   23 апреля 2009 в 21:48

А как у банды оружие менять?

Gta 47   3 мая 2009 в 16:39

как зделать клео скрипт Back to the future,

R-JAY   7 мая 2009 в 23:08

Плиз подсожите чё не так :URANUS
wait 100
thread "URANUS"
Model.Load(#URANUS)
038B: load_requested_models
:URANUS_1

Wait 100

If and

Model.Available(#URANUS)

jf @URANUS

30@ = Car.Create(#URANUS, 2510.2615, -1671.3036, 13.4114 )

Car.RemoveReferences(30@)
end_thread


я хочу чтоб эта тачка стояла возле дома cj захожу в игру и фиг

ILdar07   8 мая 2009 в 23:57

Gta 47
в SB.

R-JAY
If and замени на If. и тачка пропадёт, если этот поток запускается только 1 раз. спаун-поинты для авто обсуждались в са-а-амом начале темы.

nik gtаsа[Zorb]   10 мая 2009 в 10:36

Помогите. как конвертировать из скажем U2 в SA?

nik gtаsа[Zorb]   10 мая 2009 в 10:36

И как оружие у банды менять? Я не понял.

R-JAY   10 мая 2009 в 21:32

и ещё влпрос.Куда встовлять поток???еслт можно поточнее

BlackJ88   12 мая 2009 в 12:13

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

nik gtаsа[Zorb]   12 мая 2009 в 16:29

Скачай аффекты новые. Может поможет с густостью

BlackJ88   12 мая 2009 в 17:16

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

R-JAY   15 мая 2009 в 23:41

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

Reni Wassulmaier   17 мая 2009 в 17:52

Слушате, у меня тут такая ситуация. Мне дали GTA SA Criminal Russia поиграть, я скачал санни билдер и хочу открыть main.scm, а мне пишут, что я не имею права. Что мне сделать, чтоб его открыть?

Enndryal   26 мая 2009 в 14:00

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

ребенков алексей   29 мая 2009 в 10:55

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

BоPоH   4 июня 2009 в 17:13

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

Немного непонял про дым из под колёс, поподробней опиши что ты хочешь сделать.

I raspy61 I   4 июня 2009 в 23:21

ребенков алексей
редактировать нужно water.dat и water1.dat, с помощью той проги которой сказал alexvor295

I raspy61 I   6 июня 2009 в 22:33

думешь все так просто?? XD
ты знаеш тогда сколько было бы самопальных мультиплееров?

BоPоH   7 июня 2009 в 00:31

Чёт я несовсем понял тебя! Ты хочешь играть на одном компе вдвоём, или тебе уже SA-MP'а мало?

I raspy61 I   7 июня 2009 в 12:03

аа, так для двух человек на одном компе уже есть......

BоPоH   8 июня 2009 в 11:58

Да, может: 0A9D: readfile $hFILE size 2 to $150
0A9E: writefile $hFILE size 128 from 0@

MarPH   19 июня 2009 в 12:41

Напишите тут скрипт на доп. территории вражеских банд по всему штату, давно ищу или скиньте готовый мне на мыло xzibid2006@yandex.ru Заранее спасибо!

BоPоH   22 июня 2009 в 14:42

Где-то видал, но искать впадлу...

MarPH   22 июня 2009 в 17:21

вообщем написал пробный скрипт на доп территории банд
{$CLEO .cs}

:Band
0001: wait 90 ms
0879: toggle_gang_wars 1
0767: 'MARKST' 14
076C: set_zone 'MARKST' controlled_by_gang 0 density 30
0767: 'SUN1' 2
076C: set_zone 'SUN1' controlled_by_gang 1 density 30
0767: 'COM1A' 9
076C: set_zone 'COM1A' controlled_by_gang 2 density 40
004E: end_thread

территории добавились, а вот SJ стоит на месте, и двигаться нельзя, кто объяснит в чём тут ошибка?

BоPоH   24 июня 2009 в 15:24

Гыы, в клео скриптах нельзя писать end_thread!!! Тут надо вот такой опкод писать:
0A93: end_custom_thread

nik gtаsа[Zorb]   26 июня 2009 в 00:24

ТАК КАК РЕДАКТИРОВАТЬ ОРУЖИЕ У БАНД?!

BоPоH   26 июня 2009 в 12:25

Всмысле, РЕДАКТИРОВАТЬ????????

Правый Адекват   26 июня 2009 в 18:36

Какие скрипты отвечают за длину работы нитры и за время ее регенерации? И как это все изменить?

MaKA47   26 июня 2009 в 20:47

где могу найти скрипт для открития всех 3 штатов с начала игры ?????????????????

BоPоH   26 июня 2009 в 21:48

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

BоPоH   26 июня 2009 в 23:14

А, не, забыл, тут тока можно сделать так чтобы не давали 4 звезды при входе на запрещённую территорию...

MaKA47   27 июня 2009 в 10:08

это можно и чит кодом сделать!!!!!!!!

BоPоH   27 июня 2009 в 11:33

Я к тому же....клео скриптами эт не делается...надо глобал моды качать...

MaKA47   27 июня 2009 в 13:50

ок..спосибо!!!!!!!!

BоPоH   27 июня 2009 в 14:10

Было бы за что))

Daeman.cs   30 июня 2009 в 06:41

Little Jacob[nik gtasa]
Делается это вот таким опкодом: 0237: set_gang 1 weapons_to 24 29 4
Где:
1 - номер банды
24 29 4 номера оружия банды.
P.S. Значение можно посмотреть в мануале SB (F12).

Daeman.cs   30 июня 2009 в 06:57

4 Carl Johnson aka CJ
Простыми скриптами и опкодами этого ты не изменишь. Здесь уже идёт работа с памятью. А это уже другой разговор. Если и вправду заинтересовался, пиши в форум Санни Билдера, там сидят глубоко изучившие это, в том числе Alexander, Seeman, Listener, Kapushon, JerneiL и другие, довольно знающие и разбирающиеся в памяти и exe'шнике игры дяди.

Daeman.cs   30 июня 2009 в 07:23

Уважаемый alexvor295!))
Вы несовсем правы. Чтобы открыть весь штат сначала (ну или в любое другое время) игры, или же наоборот - закрыть, можно изменить определённый стат до нужного значения (со значением можно поэкспериментировать или посмотреть в мэйне игры). А за неразыскиваемость в military zones (военных зонах) и закрытых зонах отвечает этот опкод:
0A24: enable_military_zones_wanted_level 1 // давать(1)/не давать(0) уровень разыскиваемости игроку при вхождении в военные зоны. CLEO-скриптами как раз это сделать возможно и никакие глобал моды искать ненадо. :)

Daeman.cs   30 июня 2009 в 07:53

Ну и плюсики справа уже-таки можете поставить, по-моему - помог. :)
______/\^/\ _\m/
2 Admins and Moders_//
и другим правящим коалициям
Сорри за оффтоп и триплпостинг, а если считать и этот пост то и вообще квадраплпостинг.
Что насчёт триплпостинга - не соединяйте их, пожалуйста, это 3 разные темы, хоть и одного человека - меня.
P.S. Что насчёт этого поста - его можете удалить, он адресован именно вам и не требует прочтения больше одного раза. Или же наоборот, оставить и любоваться, но лучше скопировать в какой-нибудь word'ик и удалить, чтобы не захламлять форум такого вида постами да и вообще - весь РУнет. :)

BоPоH   30 июня 2009 в 11:06

Уважаемый Daeman.cs!))))
Это вы не правы!!! Если вы считаете что клео скриптом с опкодом 0629: change_integer_stat 181 to 4 (если вы говорили про этот опкод), то доношу до вашего сведения, что уже много раз пытался это сделать!!!!! Все заслонки так и остаются, а 4 звезды не дают! Вероятней всего заслонки создаются в майне как объекты, или же этот опкод действует только в мэйне. Можно спросить на форумах Санни Билдер, думаю там ответят...
И пожалуйста, зайди в асю или ещё куда нибудь, надо поговорить)))

ILdar07   30 июня 2009 в 17:22

ааааааа чуваки alexvor295 и Daeman.cs жжоте пишите ещё :D
насчёт заслонок
есть волшебные опкоды
0776: create_objects_in_object_group "CARTER" создаёт набор объектов. где определены координаты и сами объекты, пока не знаю.
0777: delete_objects_in_object_group "CARTER" удаляет набор/группу объектов
0778: recreate_objects_in_object_group "TRUTHSFARM" пересоздаёт. например, после провала миссии
"CARTER" это какбэ внешний интерьер крепости БС. холл. в оригинале он создаётся в последней миссии, поэтому если можно было бы убрать стену (которую мы ломаем и которая имеет иммунитеты до этого), то увидели бы "подземелья" СА.
"CRACK" завод крэка в СФ
"FUKDCRAK" факнутый завод крэка в СФ
"BARRIERS1" "BARRIERS2" вот они заслоны. первые не пускают в СФ, вторые в ЛВ
"TRUTHSFARM" ну понятно, конопля Правды
в оригинале юзаются такие наборы. может есть другие, не знаю.

Daeman.cs   30 июня 2009 в 20:17

2 alexvor295.
Я имел виду "открыть весь штат" в переносном смысле, то есть очистить карту от "белых пятен" и чтоб не давали разыскиваемость. Насчёт так называемых "заслонок" - это, конечно же, объекты я их даже где-то находил, когда в объектах копался, рылся и всё перелопачивал. :)

Shkun   11 июля 2009 в 16:29

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

BоPоH   13 июля 2009 в 12:43

Знаю только одно - в папке data есть файл AudioEvents.txt, последний номер звука обозначает последний звук в последнем Bank'е аудио-файла SCRIPT. Если бы я делал озвучку своей миссии, я бы начал с конца заменять...))

Shkun   13 июля 2009 в 16:55

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



DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 at @MISSION
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0

thread 'MAIN'
var
$PLAYER_CHAR : Player
end
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 8 0
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
Player.Money($10) += 333
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0
wait 0
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0 ms
select_interior 0
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0
0180: set_on_mission_flag_to $ONMISSION
create_thread @NRG_500
create_thread @Start
create_thread @MaxHealth
end_thread

:MaxHealth
wait 1000
062A: change_stat 24 to 1000.0
wait 500
actor.Health($PLAYER_ACTOR)=1000
end_thread

:NRG_500
wait 100
thread "NRG"
Model.Load(#NRG500)
038B: load_requested_models

:NRG_510
wait 100
if and
Model.Available(#NRG500)
jf @NRG_510
30@ = Car.Create(#NRG500, 2510.2615, -1671.3036, 13.4114 )
Car.RemoveReferences(30@)
end_thread

:Start
thread 'START'
wait 0
02A7: 1@ = create_icon_marker_and_sphere 13 at 2486.4475 -1650.9244 13.482 //Создаем сферу и иконку

:Start_37
wait 250
if and
Player.Defined($PLAYER_CHAR) //Игрок жив
0102: actor $PLAYER_ACTOR stopped_near_point_on_foot 2486.4475 -1650.9244 13.482 radius 1.2 1.2 3.0 sphere 1
not wasted_or_busted
Jf @start_37
Marker.Disable(1@)
00BA: text_styled 'SWE1_BG' 3000 ms 2
fade 0 500
wait 500
start_mission MISSION
end_thread

:MISSION
THREAD 'MISSION'
gosub @KOD_MISS
if
wasted_or_busted
Jf @PROPUSK_KOD
gosub @KOD_PROVAL

:PROPUSK_KOD
gosub @UDALENIE
end_thread

:KOD_MISS
increment_mission_attempts
$ONMISSION = 1
0110: clear_player $PLAYER_CHAR wanted_level

//---------------------------- Тут пишется сама миссия --------------------

:Firstlabel
wait 100
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
jf @Firstlabel
wait 500
fade 1 500
02A3: toggle_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
04E4: unknown_refresh_game_renderer_at 2487.3972 -1648.2908 //Прорисовываем местность
03CB: set_camera 2487.3972 -1648.2908 14.0703 //Тоже самое, но для камер

:createactor
wait 0
023c: request_special_actor 'cesar' as 1 // объявляем специального актёра , как 1
038b: load requested models

:Firstlabel_2
wait 0
if
023d: special_actor 1 loaded //специальный актёр 1 загружен
jf @Firstlabel_2
actor.create(6@,mission1, #special01, 2486.5762, -1646.9595, 14.0703)
wait 50
06A9: AS_actor 6@ look_at 2486.4475 -1650.9244 13.482 25000
015F: set_camera_position 2496.1287 -1656.0859 13.3704 0.0 0.0 0.0 //Установить позицию камеры
Camera.PointAt(2486.8562, -1651.9855, 13.4854, 1)


:Firstlabel_77
wait 0
04ED: load_animation "GANGS"
038B: load_requested_models

:Firstlabel_888
wait 0
if
04EE: animation "GANGS" loaded
jf @Firstlabel_888

:Firstlabel_347
wait 0
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 10000 ms
00BC: text_highpriority 'MJET_1P' 10000 ms 7
wait 10000
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'RYDER_2' 3000 ms 7
wait 3000
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_1' 4000 ms 7
wait 4000

:Firstlabel_4
wait 0
if AND
8965:not actor $PLAYER_ACTOR swimming_in_water
jf @FirsTlabel_4
02A3: toggle_widescreen 0
Player.CanMove($PLAYER_CHAR) = True //То размораживаем его
0373: set_camera_directly_behind_player //Ставим обычную игровую камеру
02EB: restore_camera_with_jumpcut

:Createcar
wait 0
Model.Load(#SULTAN) //Загружаем модель автомобиля
038B: load_requested_models

:Createcar_3
wait 100
if
Model.Available(#SULTAN) //Если загружена, то..
jf @Createcar_3
$9 = Car.Create(#SULTAN, 2488.917, -1658.0735, 13.3549)
0229: set_car $9 color_to 31 0
marker.CreateAboveCar($mash,$9)
marker.SetColor($mash,1)
00BC: text_highpriority 'MOREREP' 1500 ms 7 //сядь в тачку!

:Create_car_888
wait 0
if
0448: actor $PLAYER_ACTOR in_car $9
jf @Create_car_888
marker.Disable($mash)
00BC: text_highpriority 'CRASH_1' 3000 ms 7 //едь в тюнинг-центр!
marker.CreateIconAndSphere($net,27,1042.0457, -1028.5052, 32.1016)

:createcar_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 1042.0458 -1028.5057 32.1015 radius 3.0 3.0 10.0 sphere 1
jf @createcar_9990
jump @LabelMis1_1

:createcar_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @createcar_99999

:LabelMis1_1
wait 0
model.Load(#BFYBE)
model.Load(#BMYBE)
model.Load(#HFYBE)
model.Load(#BAT)
038B: load_requested_models

:LabelMis1_2
wait 0
if and
model.Available(#BFYBE)
model.Available(#BMYBE)
model.Available(#HFYBE)
model.Available(#BAT)
Jf @LabelMis1_2
marker.Disable($net)
actor.Create(55@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(66@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(77@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(88@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(99@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(100@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(101@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(102@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(103@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
01B2: give_actor 55@ weapon 5 ammo 999999
01B2: give_actor 66@ weapon 5 ammo 999999
01B2: give_actor 77@ weapon 5 ammo 999999
01B2: give_actor 88@ weapon 5 ammo 999999
01B2: give_actor 99@ weapon 5 ammo 999999
01B2: give_actor 100@ weapon 5 ammo 999999
01B2: give_actor 101@ weapon 5 ammo 999999
01B2: give_actor 102@ weapon 5 ammo 999999
01B2: give_actor 103@ weapon 5 ammo 999999
00BC: text_highpriority 'CRASH_3' 6000 ms 7 //подожди немного вдруг заметишь что-нибудь...
wait 500
05E2: AS_actor 55@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 66@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 77@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 88@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 99@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 100@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 101@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 102@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 103@ kill_actor $PLAYER_ACTOR
wait 5000
00BC: text_highpriority 'RYDER_1' 2000 ms 7 //убей их!!!
marker.CreateAboveActor($M,55@)
marker.CreateAboveActor($Ma,66@)
marker.CreateAboveActor($Mar,77@)
marker.CreateAboveActor($a,88@)
marker.CreateAboveActor($s,99@)
marker.CreateAboveActor($d,100@)
marker.CreateAboveActor($f,101@)
marker.CreateAboveActor($g,102@)
marker.CreateAboveActor($h,103@)
if
wasted_or_busted
01F4: car $9 flipped
0119: car $9 wrecked
02BF: car $9 sunk
jf @LabelMis1_4
jump @KOD_PROVAL

:LabelMis1_4
wait 0
if and
actor.Dead(55@)
actor.Dead(66@)
actor.Dead(77@)
actor.Dead(88@)
actor.Dead(99@)
actor.Dead(100@)
actor.Dead(101@)
jf @LabelMis1_4
if and
actor.Dead(102@)
actor.Dead(103@)
jf @LabelMis1_4
marker.Disable($M)
marker.Disable($Ma)
marker.Disable($Mar)
marker.Disable($a)
marker.Disable($s)
marker.Disable($d)
marker.Disable($f)
marker.Disable($g)
marker.Disable($h)

:DOMOI
wait 0
marker.CreateIconAndSphere($marker,23,2477.2422, -1652.0599, 13.0972)
00BC: text_highpriority 'RYDER_3' 4000 ms 7 //едь домой и расскажи цезарю обо всем что ты видел!

:proverka_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2477.2425 -1652.0596 13.0977 radius 3.0 3.0 10.0 sphere 1
jf @proverka_9990
jump @doma

:proverka_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @proverka_99999

:doma
wait 0
02A7: $marker = create_icon_marker_and_sphere 13 at 2490.5535 -1646.1421 14.0772
marker.Disable(5@)

:doma_2
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2496.5535 -1646.1425 14.0773 radius 3.0 3.0 10.0 sphere 1
jf @doma_2

:konec
wait 0
Player.CanMove($PLAYER_CHAR) = False
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
04E4: unknown_refresh_game_renderer_at 2490.5535 -1646.1421 //Прорисовываем местность
03CB: set_camera 2490.5535 -1646.1421 14.0772

:konec_2
wait 0
015F: set_camera_position 2492.0989 -1650.9307 13.5082 0.0 0.0 0.0 //Устанавливаем камеру
0160: point_camera 2488.1511 -1646.0101 14.0703 2 //И её поинт
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 2000 ms
00BC: text_highpriority 'SMOKE_2' 2000 ms 7 //ты видел там что-нибудь интересное?
wait 2000 //Опытным скриптерам удобнее делать проверки времени, но новичков для начала устроит пауза
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_3' 6000 ms 7 //на меня там напали какие-то сумасшедшие пляжники! ну я их всех перемочил и все!
0936: set_camera 2492.0989 -1650.9307 13.5082 position_to 2485.3611 -1652.261 13.4741 6000 ms unknown 1
0920: point_camera 2488.1511 -1646.0101 14.0703 transverse_to 2488.1511 -1646.0101 14.0703 6000 ms unknown 1
wait 6000
015F: set_camera_position 2485.3611 -1652.261 13.4741 0.0 0.0 0.0
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'STRAP_2' 3000 ms 7 //отлично! я так и думал!
wait 3000
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 1000 ms
00BC: text_highpriority 'STRAP_1' 1000 ms 7 //но что это было?
wait 6000 //Ждем 6 секунд, за это время камера передвинется
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'SMOKE_4' 1500 ms 7 //потом узнаешь!
wait 1500
jump @UDACHN

:createmis
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
0101: actor $PLAYER_ACTOR stopped_near_point 2486.4475 -1650.9244 13.482 radius 3.0 3.0 10.0 sphere 1
0448: actor $PLAYER_ACTOR in_car $9
jf @createmis
jump @UDACHN


:UDACHN // ------- Сюда надо делать переход(Jump), если миссия удалась ---
wait 0
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 4
Player.Money($PLAYER_CHAR) += 1000
0110: clear_player $PLAYER_CHAR wanted_level
0394: play_music 1
marker.Disable(9@)
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
Actor.RemoveReferences(6@)
gosub @PROPUSK_KOD
return

:KOD_PROVAL //--- Сюда надо делать переход(Jump), если миссия провалена --
00BA: text_styled 'M_FAIL' 5000 ms 1
marker.Disable(9@)
$ONMISSION = 0
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
Actor.RemoveReferences(6@)
mission_cleanup
create_thread @Start
return

:UDALENIE
$ONMISSION = 0
mission_cleanup
return

BоPоH   13 июля 2009 в 18:13

Хммм....я сам оч удивлён))) Странно..надо в оригинальном майне посмотреть...

ILdar07   16 июля 2009 в 22:10

лучше перед проверками wait ставить

BоPоH   17 июля 2009 в 12:39

Дело не в этом, просто маркеры появляются после миссии.....)))Причём тут проверки?))

Shkun   17 июля 2009 в 16:44

вот и я о том же
кстати глюк появился после того как я добавил эти строки:

:createcar_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 1042.0458 -1028.5057 32.1015 radius 3.0 3.0 10.0 sphere 1
jf @createcar_9990
jump @LabelMis1_1

:createcar_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @createcar_99999

в первой части миссии и этих:

:proverka_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2477.2425 -1652.0596 13.0977 radius 3.0 3.0 10.0 sphere 1
jf @proverka_9990
jump @doma

:proverka_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @proverka_99999

во второй части миссии

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

BоPоH   17 июля 2009 в 23:24

Незнаю, завтра пересмотрю всё...и убери плз проверку 81F4: not car $9 flipped, а то стоит на бок встать....МИССИЯ ПРОВАЛЕНА!!!!)))))

slavikhahol   17 июля 2009 в 23:50

est zdes htoto hto umejet delat cleo scripti?
mne nuzna pomow s etoj animacij



spasibo za vnimanije

Shkun   18 июля 2009 в 18:22

все я разобрался, миссия готова, если интересно посмотреть что я сделал - вот миссия:


:Firstlabel
wait 100
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
jf @Firstlabel
wait 500
fade 1 500
02A3: toggle_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
04E4: unknown_refresh_game_renderer_at 2487.3972 -1648.2908 //Прорисовываем местность
03CB: set_camera 2487.3972 -1648.2908 14.0703 //Тоже самое, но для камер

:createactor
wait 0
023c: request_special_actor 'cesar' as 1 // объявляем специального актёра , как 1
038b: load requested models

:Firstlabel_2
wait 0
if
023d: special_actor 1 loaded //специальный актёр 1 загружен
jf @Firstlabel_2
actor.create(6@,mission1, #special01, 2486.5762, -1646.9595, 14.0703)
wait 50
06A9: AS_actor 6@ look_at 2486.4475 -1650.9244 13.482 25000
015F: set_camera_position 2496.1287 -1656.0859 13.3704 0.0 0.0 0.0 //Установить позицию камеры
Camera.PointAt(2486.8562, -1651.9855, 13.4854, 1)


:Firstlabel_77
wait 0
04ED: load_animation "GANGS"
038B: load_requested_models

:Firstlabel_888
wait 0
if
04EE: animation "GANGS" loaded
jf @Firstlabel_888
03CF: load_wav 45255 as 1

:Firstlabel_347
wait 0
if and
03D0: wav 1 loaded //проверяем загрузку звука
jf @Firstlabel_347
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 12000 ms
00BC: text_highpriority 'MJET_1P' 10000 ms 7
03D1: play_wav 1
wait 10000

:sounds_669
wait 0
if
03D2: wav 1 ended
jf @sounds_669
040D: unload_wav 1

:sounds_99999
wait 0
03CF: load_wav 45254 as 1

:sound
wait 0
if
03D0: wav 1 loaded
jf @sound
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'RYDER_2' 3000 ms 7
03D1: play_wav 1
wait 3000

:sounds_2
wait 0
if
03D2: wav 1 ended
jf @sounds_2
040D: unload_wav 1

:sounds_3
wait 0
03CF: load_wav 45253 as 1

:sounds_4
wait 0
if and
03D0: wav 1 loaded //проверяем загрузку звука
jf @sounds_4
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_1' 4000 ms 7
03D1: play_wav 1
wait 4000

:sounds_000
wait 0
if
03D2: wav 1 ended
jf @sounds_000
040D: unload_wav 1

:Firstlabel_4
wait 0
if AND
8965:not actor $PLAYER_ACTOR swimming_in_water
jf @FirsTlabel_4
02A3: toggle_widescreen 0
Player.CanMove($PLAYER_CHAR) = True //То размораживаем его
0373: set_camera_directly_behind_player //Ставим обычную игровую камеру
02EB: restore_camera_with_jumpcut

:Createcar
wait 0
Model.Load(#SULTAN) //Загружаем модель автомобиля
038B: load_requested_models

:car_3
wait 100
if
Model.Available(#SULTAN) //Если загружена, то..
jf @car_3
$9 = Car.Create(#SULTAN, 2488.917, -1658.0735, 13.3549)
0229: set_car $9 color_to 31 0

:CAR_4
WAIT 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'MOREREP' 2500 ms 7 //сядь в тачку!
jump @M8_8025

:car_5
wait 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'STRAP_4' 4500 ms 7 //сядь в машину, идиот!!!
0164: disable_marker 111@
03BD: destroy_sphere 112@

:M8_8025
00D6: if
80DB: not actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @M8_8075
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
0002: jump @M8_8025

:M8_8075
0164: disable_marker $carr
03BC: 112@ = create_sphere_at 1042.0457 -1028.5052 32.1016 radius 3.0
018A: 111@ = create_checkpoint_at 1042.0457 -1028.5052 32.1016
00BC: text_highpriority 'CRASH_1' 3000 ms 7 //едь в тюнинг-центр!

:M8_8125
0001: wait 0 ms
00D6: if
00DB: actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @CAR_5
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
00D6: if
8100: not actor $PLAYER_ACTOR in_sphere 1042.0457 -1028.5052 32.1016 radius 4.0 4.0 4.0 sphere 1 in_car
004D: jump_if_false @LabelMis1_1
0002: jump @M8_8125

:LabelMis1_1
wait 0
model.Load(#BFYBE)
model.Load(#BMYBE)
model.Load(#HFYBE)
model.Load(#BAT)
038B: load_requested_models

:LabelMis1_2
wait 0
if and
model.Available(#BFYBE)
model.Available(#BMYBE)
model.Available(#HFYBE)
model.Available(#BAT)
Jf @LabelMis1_2
marker.Disable(111@)
03BD: destroy_sphere 112@
actor.Create(55@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(66@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(77@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(88@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(99@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(100@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(101@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(102@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(103@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
01B2: give_actor 55@ weapon 5 ammo 999999
01B2: give_actor 66@ weapon 5 ammo 999999
01B2: give_actor 77@ weapon 5 ammo 999999
01B2: give_actor 88@ weapon 5 ammo 999999
01B2: give_actor 99@ weapon 5 ammo 999999
01B2: give_actor 100@ weapon 5 ammo 999999
01B2: give_actor 101@ weapon 5 ammo 999999
01B2: give_actor 102@ weapon 5 ammo 999999
01B2: give_actor 103@ weapon 5 ammo 999999
00BC: text_highpriority 'CRASH_3' 6000 ms 7 //подожди немного вдруг заметишь что-нибудь...
wait 500
05E2: AS_actor 55@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 66@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 77@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 88@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 99@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 100@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 101@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 102@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 103@ kill_actor $PLAYER_ACTOR
wait 5000
00BC: text_highpriority 'RYDER_1' 2000 ms 7 //убей их!!!
marker.CreateAboveActor($M,55@)
marker.CreateAboveActor($Ma,66@)
marker.CreateAboveActor($Mar,77@)
marker.CreateAboveActor($a,88@)
marker.CreateAboveActor($s,99@)
marker.CreateAboveActor($d,100@)
marker.CreateAboveActor($f,101@)
marker.CreateAboveActor($g,102@)
marker.CreateAboveActor($h,103@)
if
wasted_or_busted
01F4: car $9 flipped
0119: car $9 wrecked
02BF: car $9 sunk
jf @LabelMis1_4
jump @KOD_PROVAL

:LabelMis1_4
wait 0
if and
actor.Dead(55@)
actor.Dead(66@)
actor.Dead(77@)
actor.Dead(88@)
actor.Dead(99@)
actor.Dead(100@)
actor.Dead(101@)
jf @LabelMis1_4
if and
actor.Dead(102@)
actor.Dead(103@)
jf @LabelMis1_4
marker.Disable($M)
marker.Disable($Ma)
marker.Disable($Mar)
marker.Disable($a)
marker.Disable($s)
marker.Disable($d)
marker.Disable($f)
marker.Disable($g)
marker.Disable($h)

:car_55
wait 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'STRAP_4' 4500 ms 7 //сядь в машину, идиот!!!
0164: disable_marker $k
03BD: destroy_sphere $ka

:M8_80255
00D6: if
80DB: not actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @M8_80755
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
0002: jump @M8_80255

:M8_80755
0164: disable_marker $carr
03BC: $ka = create_sphere_at 2477.2422 -1652.0599 13.0972 radius 3.0
018A: $k = create_checkpoint_at 2477.2422 -1652.0599 13.0972
00BC: text_highpriority 'RYDER_3' 4000 ms 7 //едь домой и расскажи цезарю обо всем что ты видел!

:M8_81255
0001: wait 0 ms
00D6: if
00DB: actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @CAR_55
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
00D6: if
8100: not actor $PLAYER_ACTOR in_sphere 2477.2422 -1652.0599 13.0972 radius 4.0 4.0 4.0 sphere 1 in_car
004D: jump_if_false @doma
0002: jump @M8_81255

:doma
wait 0
018A: $marke = create_checkpoint_at 2490.5535 -1646.1421 14.0772
03BC: $marke2 = create_sphere_at 2490.5535 -1646.1421 14.0772 radius 1.0
marker.Disable($k)
03BD: destroy_sphere $ka

:doma_2
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2490.5798 -1645.9238 14.0772 radius 3.0 3.0 10.0 sphere 1
jf @doma_2
marker.Disable($marke)
03BD: destroy_sphere $marke2
02A3: toggle_widescreen 1


:konec
wait 0
Player.CanMove($PLAYER_CHAR) = False
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
04E4: unknown_refresh_game_renderer_at 2490.5535 -1646.1421 //Прорисовываем местность
03CB: set_camera 2490.5535 -1646.1421 14.0772

:konec_2
wait 0
015F: set_camera_position 2492.0989 -1650.9307 13.5082 0.0 0.0 0.0 //Устанавливаем камеру
0160: point_camera 2488.1511 -1646.0101 14.0703 2 //И её поинт

:sounds_99996
wait 0
03CF: load_wav 45253 as 1

:sound_00
wait 0
if
03D0: wav 1 loaded
jf @sound_00
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 2000 ms
00BC: text_highpriority 'SMOKE_2' 2000 ms 7 //ты видел там что-нибудь интересное?
03D1: play_wav 1
wait 2000

:sounds_2_0
wait 0
if
03D2: wav 1 ended
jf @sounds_2_0
040D: unload_wav 1

:sounds_9994
wait 0
03CF: load_wav 45252 as 1

:sound_01
wait 0
if
03D0: wav 1 loaded
jf @sound_01
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_3' 6000 ms 7 //на меня там напали какие-то сумасшедшие пляжники! ну я их всех перемочил и все!
0936: set_camera 2492.0989 -1650.9307 13.5082 position_to 2485.3611 -1652.261 13.4741 6000 ms unknown 1
0920: point_camera 2488.1511 -1646.0101 14.0703 transverse_to 2488.1511 -1646.0101 14.0703 6000 ms unknown 1
03D1: play_wav 1
wait 6000

:sounds_2_1
wait 0
if
03D2: wav 1 ended
jf @sounds_2_1
040D: unload_wav 1

:sounds_9993
wait 0
03CF: load_wav 45251 as 1

:sound_03
wait 0
if
03D0: wav 1 loaded
jf @sound_03
015F: set_camera_position 2485.3611 -1652.261 13.4741 0.0 0.0 0.0
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'STRAP_2' 3000 ms 7 //отлично! я так и думал!
03D1: play_wav 1
wait 3000

:sounds_2_2
wait 0
if
03D2: wav 1 ended
jf @sounds_2_2
040D: unload_wav 1

:sounds_9992
wait 0
03CF: load_wav 45250 as 1

:sound_04
wait 0
if
03D0: wav 1 loaded
jf @sound_04
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 1000 ms
00BC: text_highpriority 'STRAP_1' 1000 ms 7 //но что это было?
03D1: play_wav 1
wait 3000

:sounds_2_3
wait 0
if
03D2: wav 1 ended
jf @sounds_2_3
040D: unload_wav 1

:sounds_9991
wait 0
03CF: load_wav 45249 as 1

:sound_05
wait 0
if
03D0: wav 1 loaded
jf @sound_05
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'SMOKE_4' 1500 ms 7 //потом узнаешь!
03D1: play_wav 1
wait 1500
02A3: toggle_widescreen 0

:sounds_2_4
wait 0
if
03D2: wav 1 ended
jf @sounds_2_4
040D: unload_wav 1
jump @UDACHN

:createmis
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
0101: actor $PLAYER_ACTOR stopped_near_point 2486.4475 -1650.9244 13.482 radius 3.0 3.0 10.0 sphere 1
0448: actor $PLAYER_ACTOR in_car $9
jf @createmis
jump @UDACHN


:UDACHN // ------- Сюда надо делать переход(Jump), если миссия удалась ---
wait 0
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 4
Player.Money($PLAYER_CHAR) += 1000
0110: clear_player $PLAYER_CHAR wanted_level
0394: play_music 1
marker.Disable($marke)
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
actor.DestroyInstantly(6@)
Actor.RemoveReferences(6@)
gosub @PROPUSK_KOD
return

:KOD_PROVAL //--- Сюда надо делать переход(Jump), если миссия провалена --
00BA: text_styled 'M_FAIL' 5000 ms 1
marker.Disable(9@)
$ONMISSION = 0
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
actor.DestroyInstantly(6@)
Actor.RemoveReferences(6@)

:kod_1
wait 0
if
075C: marker 111@ enabled
jf @kod_2
Marker.Disable(111@)
03BD: destroy_sphere 112@

:kod_2
wait 0
if
075C: marker $k enabled
jf @kod_3
Marker.Disable($k)
03BD: destroy_sphere $ka

:kod_3
wait 0
if
075C: marker $marke enable
jf @kod_4
Marker.Disable($marke)
03BD: destroy_sphere $marke2

:kod_4
wait 0
mission_cleanup
create_thread @Start
return

:UDALENIE
$ONMISSION = 0
mission_cleanup
return

Shkun   18 июля 2009 в 18:24

кстати учел твоё пожелание по поводу переворота тачки!

BоPоH   19 июля 2009 в 16:11

Эт не просто моё пожелание)))), просто так нужно...

Shkun   19 июля 2009 в 23:44

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

BоPоH   20 июля 2009 в 14:21

Ну хорошо, раз всё ОК))) А озвучиваешь сам?))

Shkun   20 июля 2009 в 23:44

да сам и друзей, и родителей подключил! :)

BоPоH   21 июля 2009 в 12:17

Ну у тя и родители)) Мои если б узнали в какую игру я тута играю....(мама не любит всякие убивалки и т.д., кста SA по идее только для совершеннолетних)))

Shkun   21 июля 2009 в 21:14

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

1. а как сделать чтоб актер шел по определенному пути? причем несколько актеров одновременно по разным путям

2. еще как заставить актера чтоб если я сяду в тачку садился со мной, а если я вышел то чтоб выходил как и я?

3. как еще заставить актера сесть за вод. сиденье и чтоб ехал по нужному мне пути?

с последним я думаю раберусь а вот первые два чего-то не получается...

Никита Айвазович   21 июля 2009 в 22:07

тут есть люди которые разбираются в main ???

Shkun   21 июля 2009 в 23:33

main- это очень большой набор скриптов! если ты хочешь спросить разбираемся ли мы в скриптинге- ответ -да! правда кто больше, кто меньше!

ILdar07   22 июля 2009 в 09:07

как сделать чтоб актер шел по определенному пути
создать последовательность действий, к примеру:
0615: define_AS_pack_begin 0@
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
0616: define_AS_pack_end 0@
0618: assign_actor $PLAYER_ACTOR to_AS_pack 0@
061B: remove_references_to_AS_pack 0@

AS_actor обязательно -1, goto_point координаты, mode скорость (4-7), ms время (если оно пройдёт, а актёр ещё не дошёл, то его телепортирует).
есть много опкодов про ходьбу. нажми Ctrl+Alt+2 в SB и введи walk или go. самый интересный, по-моему, 0804.
актёр будет всегда и везде следовать за тобой, если сунуть его в свою группу:
0631: put_actor 0@ in_group $PLAYER_GROUP
0632 обратное действие.

BоPоH   22 июля 2009 в 09:55

Чтобы поставить актёра на определённый путь:

05D6: clear_scmpath
05D7: add_point_to_scmpath 0.0 0.0 0.0 //точки которые будет проходить актёр
05D8: AS_assign_scmpath to_actor $PLAYER_ACTOR flags 6 0 // первая цифра это скорость, вторая, незнаю, но её менять не надо



Чтобы заставить актёра сесть за вод. сидение и ехать по пути:

05D6: clear_scmpath
05D7: add_point_to_scmpath 0.0 0.0 0.0 //точки которые будет проходить авто
0615: define_AS_pack_begin 0@
05CB: AS_actor $PLAYER_ACTOR enter_car 1@ as_driver -1 ms //актёр сядет в машину 1@, вместо -1 можно поставить любое другое значение, но по истечении этого времени если актёр не будет находиться в машине, то его телепортирует туда
06BB: set_actor -1 drive_car 1@ speed 10.0 along_SCM_path
0616: define_AS_pack_end 0@
0618: assign_actor $PLAYER_ACTOR to_AS_pack 0@
061B: remove_references_to_AS_pack 0@

ILdar07   22 июля 2009 в 18:15

в AS_pack нельзя писать конкретного актёра/машину, надо писать -1. посмотри как в оригинале:
0615: define_AS_pack_begin 121@
05D3: AS_actor -1 goto_point 47@ 69@ 91@ mode 6 -1 ms
0605: actor -1 perform_animation_sequence "IDLE_TIRED" IFP_file "PED" 4.0 loop 1 0 0 0 time -1
0616: define_AS_pack_end 121@
0618: assign_actor 35@ to_AS_pack 121@
061B: remove_references_to_AS_pack 121@

из миссии Running Dog.

Shkun   22 июля 2009 в 23:21

спасибо! разобрался!

BоPоH   23 июля 2009 в 10:52

Дадада....я просто писал на скорую руку)

bsstell   1 августа 2009 в 14:23

А что нужно сменить чтоб когда игра начиналась то играл не сиджеем а райдером?
Или кемто другим

ILdar07   1 августа 2009 в 22:24

09C7: change_player $PLAYER_CHAR model_to 0@
ps. простая модель

Shkun   2 августа 2009 в 15:59

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

ILdar07   2 августа 2009 в 17:26

if
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0
// 20.0 - радиус
jf @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
jf @Noname
if
not Actor.Dead(1@)
jf @Noname

потом пиши опкод со словом flee. их вроде три: 05DB, 05DD, 0751.

CraZZZy-GameRRR   2 августа 2009 в 23:45

Народ, а ни кто не знает, можно ли как-нибудь считать кол-во оборотов в минуту двигателя машины? И если да, то как?

Агент_47   3 августа 2009 в 01:22

CraZZZy-GameRRR, нет и врядли это кому надо, хотя если только вроде в клео3 или построением кода, но это трудно и бессмысленно

CraZZZy-GameRRR   3 августа 2009 в 02:38

врядли это кому надо - мне надо. Делаю спидометр для ГТА, хотел к нему ещё тахометр добавить.

Shkun   3 августа 2009 в 02:39

дайте кто нибудь код на сохранение игры для очищенного мэйна! пробовал пользоваться клео модами- но при загрузке сохранения игра вылетает!

Агент_47   3 августа 2009 в 03:53

CraZZZy-GameRRR, попробуй клео опкоды почитать, мож там где-нибудь найдешь, в принципе задумка неплохая, Удачи!!!

Агент_47   3 августа 2009 в 07:34

Actor.StorePos($PLAYER_ACTOR, 15@, 16@, 17@)
089E: get_actor_in_sphere 15@ 16@ 17@ radius 5.0 handle_as 1@ // versionB
if
1@ > -1
else_jump @SHOP_15
0470: 2@ = actor $PLAYER_ACTOR current_weapon
if
2@ > 0
else_jump @SHOP_533
074D: AS_actor 1@ turns_to_and_look_at_actor $PLAYER_ACTOR timelimit -1
0967: actor 1@ move_mouth -1 ms
00BE: text_clear_all

:SHOP_288
0209: 6@ = random_int_in_ranges 200 9000
01E3: show_text_1number_styled GXT 'IE30' number 6@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~

:SHOP_318
if
00E1: player 0 pressed_key 11
else_jump @SHOP_342
jump @SHOP_468

:SHOP_342
wait 0
if
00E1: player 0 pressed_key 10
else_jump @SHOP_370
jump @SHOP_533

:SHOP_533
wait 0
Actor.RemoveReferences(1@)
jump @SHOP_15

:SHOP_549
wait 0
21@ = 304489
if
80E1: not player 0 pressed_key 4
else_jump @TURRET
if
&0(21@,1i) == 16711680
else_jump @SHOP_15
03C0: 11@ = actor $PLAYER_ACTOR car
Actor.StorePos($PLAYER_ACTOR, 15@, 16@, 17@)
089E: get_actor_in_sphere 15@ 16@ 17@ radius 8.0 handle_as 1@ // versionB
if
1@ > -1
else_jump @SHOP_937
if
not Actor.Driving(1@)
else_jump @SHOP_937
0772: AS_actor 1@ run_to_car 11@ -1 ms stop_at_distance 5.0
20@ = Marker.CreateAboveActor(1@)
Marker.SetColor(20@, 4)
Marker.SetIconSize(20@, 2)
0209: 12@ = random_int_in_ranges 500 40000
01E3: show_text_1number_styled GXT 'IE30' number 12@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~

:SHOP_749
if
00E1: player 0 pressed_key 11
else_jump @SHOP_773
jump @SHOP_848

:SHOP_773
wait 0
if
00E1: player 0 pressed_key 10
else_jump @SHOP_806
05DE: AS_actor 1@ walk_around_ped_path
jump @SHOP_937

:SHOP_806
wait 0
if or
Car.Wrecked(11@)
0741: actor $PLAYER_ACTOR busted
Actor.Dead($PLAYER_ACTOR)
Actor.Dead(1@)
else_jump @SHOP_749
jump @SHOP_937

:SHOP_848
wait 0
01E3: show_text_1number_styled GXT 'IE30' number 12@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~
Player.Money($PLAYER_CHAR) += 12@
05CD: AS_actor $PLAYER_ACTOR exit_car 11@
05CB: AS_actor 1@ enter_car 11@ as_driver -1 ms
Car.SetDriverBehaviour(11@, FollowRoad)
Car.SetMaxSpeed(11@, 30.0)

:SHOP_914
wait 0
if
Actor.InCar(1@, 11@)
else_jump @SHOP_914

:SHOP_937
Marker.Disable(20@)
Car.RemoveReferences(11@)
Actor.RemoveReferences(1@)
jump @SHOP_15

Это мой код продажи оружия и машин прохожим
Все левые проверки и лишние переходы поудаляйте, там у меня было четыре кода в одном потоке, щас бошка плотхо соображает, так, что дерзайте

Агент_47   3 августа 2009 в 10:26

Shkun, вот бери, выдран из сайв алл

Player.CanMove($PLAYER_CHAR) = False
wait 400
03D8: show_save_screen

:SAVEALL_40
wait 0
if
03D9: save_done
else_jump @SAVEALL_40
Actor.Angle($PLAYER_ACTOR) = 0.0
Actor.Health($PLAYER_ACTOR) = 1500
Actor.Armour($PLAYER_ACTOR) = 0
Player.CanMove($PLAYER_CHAR) = True
Camera.SetBehindPlayer
Camera.Restore_WithJumpCut
jump @PANEL

Агент_47   3 августа 2009 в 10:32

Вот еще один мой код, действия такого, сидя в машине можно из багажника вытаскивать рс кары(присутствует все: машина, танк, самолет)
Для реалистичности можете поставить, чтоб кары были не вовсех машинах, а только в некоторых
вызываются по нажатии клавишь которые по правую сторону 1,2,3,4,6(пятая кнопка чет неработала)

:CAR_SET
thread 'CAR_SET'
wait 0
0@ = 304484
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @CAR_SET
if
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
else_jump @CAR_SET
if
8A4B: not controls_set_to_joystick
else_jump @CAR_SET_98
if
&0(0@,1i) == 255
else_jump @CAR_SET_255

:CAR_SET_98
03C0: $CAR[0] = actor $PLAYER_ACTOR car
067F: set_car $CAR[0] lights 2
wait 1000
067F: set_car $CAR[0] lights 0
Car.SetImmunities($CAR[0], 1, 1, 1, 1, 1)
Car.DoorStatus($CAR[0]) = 2
0508: car $CAR[0] close_all_doors
wait 2000

:CAR_SET_157
wait 0
09E9: car $CAR[0] add_single_nitro
if or
Actor.Dead($PLAYER_ACTOR)
0741: actor $PLAYER_ACTOR busted
not Actor.Driving($PLAYER_ACTOR)
&0(0@,1i) == 255
else_jump @CAR_SET_157
Car.DoorStatus($CAR[0]) = 0
Car.SetImmunities($CAR[0], 0, 0, 0, 0, 0)
Car.RemoveReferences($CAR[0])
wait 1000
jump @CAR_SET
Car.RemoveReferences($CAR[0])
jump @CAR_SET

:CAR_SET_255
$KEY_RC = 304484
if
&0($KEY_RC,1i) == 16711680
else_jump @CAR_SET_559
Model.Load(#RCTIGER)
038B: load_requested_models

:CAR_SET_297
wait 100
if
Model.Available(#RCTIGER)
else_jump @CAR_SET_297
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCTIGER, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCTIGER)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000

:CAR_SET_457
wait 0
if or
00E1: player 0 pressed_key 15
02BF: car 1@ sunk
02BF: car 2@ sunk
Car.Wrecked(1@)
Car.Wrecked(2@)
Actor.Dead($PLAYER_ACTOR)
else_jump @CAR_SET_457
04DB: exit_RC_mode // on foot version
0151: remove_status_text $HEALTH_CAR
Car.LockInCurrentPosition(2@) = False
03C0: 2@ = actor $PLAYER_ACTOR car
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET

:CAR_SET_559
$KEY_RC_1 = 304485
if
&0($KEY_RC_1,1i) == 255
else_jump @CAR_SET_848
Model.Load(#RCBARON)
038B: load_requested_models

:CAR_SET_599
wait 100
if
Model.Available(#RCBARON)
else_jump @CAR_SET_599
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCBARON, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCBARON)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000

:CAR_SET_759
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_759
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET

:CAR_SET_848
$KEY_RC_2 = 304485
if
&0($KEY_RC_2,1i) == 16711680
else_jump @CAR_SET_1131
Model.Load(#RCBANDIT)
038B: load_requested_models

:CAR_SET_890
wait 100
if
Model.Available(#RCBANDIT)
else_jump @CAR_SET_890
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCBANDIT, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCBANDIT)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
wait 1000

:CAR_SET_1042
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_1042
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET

:CAR_SET_1131
$KEY_RC_3 = 304486
if
&0($KEY_RC_3,1i) == 16711680
else_jump @CAR_SET
Model.Load(#RCRAIDER)
038B: load_requested_models

:CAR_SET_1173
wait 100
if
Model.Available(#RCRAIDER)
else_jump @CAR_SET_1173
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCRAIDER, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCRAIDER)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000

:CAR_SET_1333
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_1333
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET


Потом через таблицу зделаю

Shkun   4 августа 2009 в 00:19

mywalkman спасибо большое за скрипт сохрания! а что за сейволл и где его взять?

CraZZZy-GameRRR   4 августа 2009 в 13:13

У меня появился ещё один вопросик. За что отвечает переменная $ACTIVE_INTERIOR, а то частенько её в скриптах вижу и понять не могу.

Агент_47   4 августа 2009 в 13:19

CraZZZy-GameRRR, за активный интерьер, ну комната в доме, еще че-нить, а вот и сама команда 077E: get_active_interior_to $ACTIVE_INTERIOR - она и записывает номер интерьера в переменную

CraZZZy-GameRRR   4 августа 2009 в 13:37

mywalkman, спасибо, теперь понял.

Liinad   4 августа 2009 в 15:55

Как создавать cleo скрипты?

Агент_47   4 августа 2009 в 16:22

Даниил Лаврентьев, программу санни билдер качай, там есть кнопка справка, вот туды жмешь и читаешь, чего непоймеш пиши мне в личку помогу www.sannybuilder.com/ - официальный сайт

CraZZZy-GameRRR   6 августа 2009 в 18:16

Какой опкод проверяет включены или выключены фары и какое максимальное кол-во жизней авто?

ILdar07   6 августа 2009 в 19:38

Проверка фар вроде как нет. Есть
067F: set_car 0@ lights 2
0919: enable_car 0@ parking_lights 1

Жизнь авто обычно 100. Его можно менять
0224: set_car 0@ health_to 1000

Агент_47   7 августа 2009 в 07:35

CraZZZy-GameRRR, Проверок на фары не существует, можно проверить с помощью адресов в гта эксэ, но это очень сложно и бесмысленно, жизни машине можешь поставить хоть сколько, чем больше тем дольше ты её будешь гробить

CraZZZy-GameRRR   7 августа 2009 в 18:58

С жизнями всё понятно. Что касается фар, я всё-таки решил попробовать заняться этим вопросом, может что нибудь получиться.

Я скриптингом занимаюсь относительно недавно, так что простите за то, что задаю много вопросов. Что делает опкод NOP?

ILdar07   7 августа 2009 в 21:50

NOP = non-operational, то бишь этот опкод ничего не делает.

CraZZZy-GameRRR   7 августа 2009 в 22:19

А зафиг он тогда нужен?

ILdar07   8 августа 2009 в 10:26

Вопрос на пять баксов ;) Просто забей на него и всё.

Banzay-RUS   10 августа 2009 в 22:27

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

BоPоH   11 августа 2009 в 15:05

Не понял что ты хочешь, объясни подробней!

CraZZZy-GameRRR   12 августа 2009 в 20:02

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

Кому надо, берите ручку, записывайте:

03C0: 1@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 1@ struct
0@ += 1412
0A8D: 0@ = read_memory 0@ size 1 virtual_protect 0
if
08B7: test 0@ bit 0
then
//Фары включены
else
//Фары выключены
end


Всё! Не так уж "сложно и бесмысленно", как MYWALKMAN говорил.

Примечание: если фары разбиты, будет считать их выключенными.

CraZZZy-GameRRR   13 августа 2009 в 00:07

Небольшое уточнение к предыдущему посту, точнее скрипту.

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

Вот скрипт получше:

03C0: 5@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 5@ struct
0@ += 0x4A8
0A8D: 1@ = read_memory 0@ size 1 virtual_protect 0
0@ += 0xDC
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
if or
08B7: test 1@ bit 3
08B7: test 1@ bit 4
not 0@ == 0
then
//Фары горят
else
//Фары не горят
end


Данный скрипт выдаст TRUE, даже если фары должны гореть, но они разбиты.

Агент_47   13 августа 2009 в 10:19

CraZZZy-GameRRR, не знаю зачем тебе это понадобилось, но могу сказать одно "МОЛОДЕЦ"!!!

CraZZZy-GameRRR   13 августа 2009 в 19:23

Это мне для датчика фар для спидометра, который я создаю, нужно. Кстати, скоро он будет полностью готов и я его вам обязательно покажу. Осталось ждать немного.

Что касается фар, вот пара ссылок на информацию по теме:
sannybuilder.com/forums/viewtopic.php?pid=3729#p..
sannybuilder.com/forums/viewtopic.php?pid=7223#p..

Кому интересно, почитайте.

Daeman.cs   13 августа 2009 в 22:28

mywalkman [спец по скриптингу в GTA SA]
07.08.09 07:35
CraZZZy-GameRRR, Проверок на фары не существует, можно проверить с помощью адресов в гта эксэ, но это очень сложно и бесмысленно, жизни машине можешь поставить хоть сколько, чем больше тем дольше ты её будешь гробить

Жизни стандартной машины можно проверить записав в переменную рандом тачу от ГГ, затем записать её жизни в переменную, а после того высветить переменную в какой-нить GXT, например - NUMBER или DOLLAR.
Каждый по своему воспринимает, что для него бессмысленно, а что нет.
Насчёт "бессмысленного и сложного копания в гта эксэ" - давным-давно уже нашли эти адреса и теперь остаётся только заглядывать в такого рода таблицы, узнавать адрес и что к чему.

CraZZZy-GameRRR   15 августа 2009 в 23:27

А можно ли в игре добавить новую иконку на карту?

ILdar07   15 августа 2009 в 23:34

02A7: $0 = create_icon_marker_and_sphere $ICON at $X $Y $Z
04CE: $0 = create_icon_marker_without_sphere $ICON at 0.0 0.0 0.0
читай мануал (в SB F12).

CraZZZy-GameRRR   16 августа 2009 в 00:07

Не, я другое имел в виду. Можно ли в набор иконок добавить свою, новую? Я так понимаю, создаём в HUD.TXD новую текстуру иконки, а дальше не знаю.

CraZZZy-GameRRR   16 августа 2009 в 00:54

Это немного не совсем то. С запихиванием иконки в TXD файл у меня проблем нет. Лучше я на форуме SannyBuilder`а спрошу, там народ лучше в этом разбирается.

преступник   16 августа 2009 в 15:27

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

Banzay-RUS   16 августа 2009 в 19:54

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

Daeman.cs   17 августа 2009 в 16:40

08-03

16.08.09 15:27
Хочу спросить,как сделать так чтобы коп мог арестовать других людей?Например,своей дубиной бьёт нарушителя,тот падает и коп пистолет на него направляет,потом говорит чтобы тот встал,тот встаёт,поднимает руки вверх,коп нападает на него и валит,одевает наручники и сажает в полицейскую тачку.

Нужно создать своего рода скрипт, в котором коп делает с "арестованным" всё, что ты описал. Но это больше похоже на сценарий части миссии, нежели на "уличный" скрипт. Если ты имел в виду, чтоб у каждого прохожего был уровень преступности (разыскиваемости) как и у CPed'а (Игрока) - такое даже невообразимо в осуществлении. Даже если удастся - никакой процессор и движок не потянет.

преступник   17 августа 2009 в 17:28

Ну я воче имел ввиду что у них есть опрелённый уровень,не так как у игрока,не так что там заним гонялся спецназ,вояки и т.д.Ну если взять к примеру,когда в полицейскую машину врезается кто-то из людей,то я заметил что коп выходит и пуляет в него насмерть,но копы непереговариваются по рации,просто коп сам делает своё дело,т.е "реагирует",но все остальные копы его неразыскивают.Просто хотел сделать реалистично.

CraZZZy-GameRRR   17 августа 2009 в 18:51

Мой тебе совет:
Прочитай учебник по SB и попробуй сам такой скрипт создать.

Идея, впринципе, неплохая.

преступник   17 августа 2009 в 22:34

А где этот учебник можно найти?

CraZZZy-GameRRR   18 августа 2009 в 00:35

В самом Sanny Builder`е есть, в разделе справки.
Если информации, изложеной в нём,окажется мало, полазай по этим сайтам:
lond-riders.clan.su/publ/1-1-0-4
missions.gtamaps.net/articles.php
gtamodding.ru/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%B8%D0%BD%D0%B3

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

------------------------

Ура! Наконец-то создал свой CraZZZy Speedometr (как я его назвал по аналогии с моим ником). Правда, это событие произошло ещё в пятницу, 14-ого числа. Несколько дней ждал, пока мой скрипт добавят в список фалов на PlayGround`е. Сегодня выяснилось, что человека, отвечающего за выкладку модов на сайт, не было все выходные, а, следовательно, мой спидометр будет длбавлен в каталог не раньше чем через несколько дней. Вообщем выложил его пока только на GTA.ru.
Вот ссылка: gta.com.ua/file_sa_details.phtml?id=848
Просьба оценить спидометр и высказать свои замечания или предложения по его усовершенствованию. Спидометр получился довольно многофункциональным. Он включает в себя:
- понятное дело, сам спидометр (аналоговый)
- аналоговый тахометр
- индикатор передачи
- индикатор ручного тормоза
- индикатор фар
- индикатор повреждений
- цифровой одометр, сохраняющий своё значение при выходе из авто и при сохранении
Кстати, это мой первый скрипт, не считая, разве что, пары простеньких для себя.


Наконец на GTA.ru добавили - www.gta.ru/sanandreas/files/21489/

преступник   18 августа 2009 в 17:43

Я видел,прикольно!Только вот у меня проблемма,плохо понятны записи в скриптинге,-можешь помочь?-

CraZZZy-GameRRR   18 августа 2009 в 17:51

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

преступник   18 августа 2009 в 18:40

Знаки типо @ $ ACTOR = и т.п.Как например правильно при создании скриптинга,=+вести запись+=?Я ещё думал над одним недостатком в игре,это то что копы нереагируют на чужие выстрелы,а как можно этот недостаток исправить?
Я вот хочу исправить,но незнаю как правильно начать.

CraZZZy-GameRRR   18 августа 2009 в 20:11

Хорошо, постараюсь объяснить, что есть что.

В игре в папке "data" есть файл "main.scm". Это основной скриптовый файл в игре. Можно добавлять новые потоки в него, но лучше установить библиотеку CLEO 3 (надеюсь, ты знаешь, что это такое) и создавать потоки в отдельных CS-файлах.

Вобщем, открываем Sanny Builder. Рекомендую сразу же в настройках установить галочку рядом с "Перезапись выходного файла", чтобы избежать дублирования фалов при компиляции. Выбираем в меню "Создать". Вставляем, указанный ниже, код:

// 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---------------
0000: NOP

:MyThread_1
wait 0
if
00DF: actor $PLAYER_ACTOR driving
jf @MyThread_1
0@ = 0

:MyThread_2
if
00DF: actor $PLAYER_ACTOR driving
jf @MyThread_3
0@ += 1
wait 1000
jump @MyThread_2

:MyThread_3
01E4: show_text_1number_lowpriority GXT 'TIMEINC' number 0@ time 2000 flag 1
wait 2000
jump @MyThread_1



Что мы здесь видим?

Всё, что идёт до //-------------MAIN--------------- - служебная информация билдера, она нас не интересует.

0000: NOP - ничего не делающий опкод. Зачем нужен, объясню чуть позже.

Затем идёт сам поток.

:MyThread_1 - начало потока, т.е. нашего скрипта, где "MyThread" - название метки, которое может состоять из английских букв без использования пробелов и других спец-символов, типа кавычек, точек, запятых. "1" - номер метки, любое целое число, рекомендую нумеровать метки по порядку, чтоб не запутаться.

wait 0 - ждём 0 мс. Обязательно ставим в начале потока.

if
00DF: actor $PLAYER_ACTOR driving
- проверяем, управляет ли игрок каким-либо транспортным средством. Если да, выполнение потока переходит дальше, в противном случае переходим на метку "MyThread_1", тобишь скрипт начинает выполняться сначала.

0@ = 0 - создаём локальную (определённую только в данном потоке) переменную с номером 0. В потоке номер для локальных переменных может быть от нуля до 33-х и до 1024-х в миссиях. Глобальные переменных в своём названии могут содержать любые английские буквы или числа, например: $Var, $Var32, $32. После номера локальной переменной ставиться знак собаки ("@"), а перед названием глобальной - доллар ("$").

Затем процесс выполнения подходит ко второй метке, т.е. "MyThread_2".

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

0@ += 1 если условие истинно, увеличиваем значение переменной "0@" на единицу.

wait 1000 - затем ждём 1000 миллисекунд, т.е. одну секунду.

Команда jump @MyThread_2, переводит нас на метку номер 2, и часть скрипта, расположенная между второй и третьей меткой будет выполняться бесконечно, пока актёр не выйдет из машины, т.е. когда условие
if
00DF: actor $PLAYER_ACTOR driving

будет ложно, по команде jf @MyThread_3 будет выполнен переход на третью метку.

Затем опкод 01E4: show_text_1number_lowpriority GXT 'TIMEINC' number 0@ time 2000 flag 1 выведет на экран текст с заголовком "TIMEINC" из GXT-файла текста и значение переменной "0@" на две секунды. Ставлю сотню, что записи с таким заголовком нету в твоём GTX-файле. Тогда добавим запись в FXT-файл. Открываем папку с GTA, заходим в каталог "cleo", затем в "cleo_text". Если данной папки нет, убедись, что в папке "cleo" есть файл GxtHook.cleo. Если его нет, то скачай отсюда cleo.sannybuilder.com/plugins/gxthook.rar и распакуй в папку "cleo". Затем создай папку "cleo_text" в данной папке. После этого создай с помощью блокнота файл "text.fxt" и запиши в него эту строку "TIMEINC Time in car is ~1~" (без кавычек).

Вернёмся к нашему скрипту.

Через две секунды после вывода текста команда jump @MyThread_1 запустит скрипт сначала.

Как ты возможно догадался, при выходе из машины на экран выводится время, в течении которого ты был в ней. Если в самом конце команду jump @MyThread_1 заменит на end_thread (конец потока), скрипт выполнится только один раз, а, следовательно, информация о времени, проведённом в авто, появится только один раз при первом выходе из ТС.

Небольшое примечание:
Если в потоке какая-либо часть выполняется несколько или более раз подряд (в нашем скрипте части между 2-ой и 3-ей меткой и весь скрипт от начала до конца), обязательно должна быть пауза (опкод wait) (в нашем случае wait 1000 в конце второй и wait 2000 в конце третьей метки, и, понятное дело, wait 0 в самом начале), пусть даже со значением равным нулю.

Теперь вернёмся к опкоду 0000: NOP в самом начале. Как я уже говорил, он ничего не делает. Так зачем же он нужен? Дело в том, что если скрипт хоть раз переходит на начальную метку (в нашем случае jump @MyThread_1 в конце), то при запуске вместо сохранённой игры запустится новая. Если используешь Sanny Builder последней версии 3.04, то при компиляции билдер напомнит тебе об этом, выда сообщение "Переход на нулевой оффсет.". Так что в самом начале ставим хотя бы один какой-нибудь опкод: либо 0A95: enable_thread_saving (сохраняет процесс выполнения потока и его переменные вместе со своими значениями в сейв при сохранении игры), либо создаём переменную и присуждаем ей значение (пример - $DIST= 0.0), либо ставим опкод-пустышку 0000: NOP.

После того, как мы создали скрипт, его нужно сохранить. Нажми клавишу "F6". Выйдет диалог сохранения файла. Файл сохраняем в папку "cleo" в формате "CS", установив в "Типе файла" значение "Any files (*.*)".

Надеюсь, всё понятно? Если нет, могу ещё раз более подробно объяснить. Хочу заметить, что это очень простой, можно даже сказать наилегчайший, пример скрипта.

Banzay-RUS   18 августа 2009 в 21:53

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

преступник   19 августа 2009 в 13:56

У меня проблема,нет папки cleo.

CraZZZy-GameRRR   19 августа 2009 в 18:45

Daeman.cs, битая ссылка.

Вот рабочая: cleo.sannybuilder.com/cleo3.exe

И сюда тоже. ;-)

преступник   19 августа 2009 в 21:53

Я смотрел тему www.trainsforgta.net/print.php?type=F&thread.. добавлять тачки в gta, а не заменять,если честно-неполучилось.

преступник   19 августа 2009 в 22:02

О ё!Забыл сказать спасибо,CraZZZy-Gamerrr за ссылку!

CraZZZy-GameRRR   19 августа 2009 в 22:09

Всегда, пожалуйста!

преступник   19 августа 2009 в 22:20

Слушай,я написал твой скрипт,а что он даст в игре?

CraZZZy-GameRRR   19 августа 2009 в 22:36

В том посте написано. Ладно, повторю:

при выходе из машины на экран выводится время, в течении которого ты был в ней

Это пример скрипта, чтобы ты понял, так сказать, азы скриптинга. К тому скрипту, который нужен тебе, он, впрочем, не относится.

CraZZZy-GameRRR   20 августа 2009 в 00:43

Народ, что за глюк такой? При компиляции и последующей декомпиляции скрипта названия меток меняются на NONAME.

ILdar07   20 августа 2009 в 14:04

Это не глюк. Зайди в Настройки > Форматирование > Формат меток. У меня например выбрано второе (Имя потока+смещение от его начала).
SB называет поток NONAME в том случае, если он не определён опкодом 03A4.

Агент_47   20 августа 2009 в 15:44

:VZLOM_16
thread 'VZLOM' не проще ли сделать так?

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

Banzay-RUS   20 августа 2009 в 15:53

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

преступник   21 августа 2009 в 20:09

CraZZZy-GameRRR,помоги сделать скрипт для копов,чтобы они могли на выстрелы других людей реагировать.

CraZZZy-GameRRR   22 августа 2009 в 00:42

[b]mywalkman[/b] - Mersi!

[b]Banzay-RUS[/b] - По-моему в HANDLING.CFG какой-то параметр за это отвечает. Зайди на gta.com.ua/ , там в разделе программ для Сан Андреаса скачай редактор параметров авто (как прога точно называется не помню). Открой ею даный файл, там разберешься.

[b]08-03[/b] - Помогу, но только через пару дней - сейчас я вне дома, под рукой компа с ГТА и Санни Билдером к сожалению нету в инет выхожу через мобильник, причем за немалые деньги.

Агент_47   22 августа 2009 в 01:31

Banzay-RUS, точно не помню, но по моему через VEHICLES, что в папке дата, попробуй методом тыка, я как-то подымал высоко машину, но в каком файле менял параметры авто не помню

08-03, это трудно и совсем не к чему

Banzay-RUS   22 августа 2009 в 20:36

CraZZZy-GameRRR и mywalkman спасибо, я уже как-то сделал, но мля опять проблема теперь очень маленькие колеса, а у некоторых вообще пропали, у всех авто, которые я заменил, я знаю как исправить, но всё равно уже меня это за*бало мля сцука

Shkun   23 августа 2009 в 18:08

скажите а кто нибудь знает как закончить rrr путь? а то я сделал свой путь, а машина ездит по нему бесконечно!

WeedStoned   25 августа 2009 в 01:38

Мужики!!!!!!! Я тут новичёк в GTA SA и не знаю как устанавливать скрипты для неё, может ктонибуть поможет разобраться!!!!!! Помогите пожалуйста!!!!!!!!!!!!!!!!!!!!!

ILdar07   25 августа 2009 в 10:54

Обычные скрипты ставить в папку data/script, CLEO - в папку cleo.

CraZZZy-GameRRR   25 августа 2009 в 20:02

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

В скрипте имеется пара небольших багов, хотелось бы их исправить:

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

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

Исходный код скрипта:

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

:Health_1
thread 'Health'
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
84A7: not actor $PLAYER_ACTOR driving_boat
89AE: not actor $PLAYER_ACTOR driving_train
jf @Health_1
03C0: 0@ = actor $PLAYER_ACTOR car
0227: 1@ = car 0@ health

:Health_2
wait 100
if and
Actor.Driving($PLAYER_ACTOR)
actor.InCar($PLAYER_ACTOR, 0@)
jf @Health_1
if
8495: not car 0@ burning
jf @Health_3
0227: 2@ = car 0@ health
0085: 3@ = 1@
0063: 3@ -= 2@
0085: 1@ = 2@
0226: 4@ = actor $PLAYER_ACTOR health
0063: 4@ -= 3@
0223: set_actor $PLAYER_ACTOR health_to 4@
jump @Health_2

:Health_3
wait 50
if and
Actor.Driving($PLAYER_ACTOR)
actor.InCar($PLAYER_ACTOR, 0@)
jf @Health_1
if
0495: car 0@ burning
jf @Health_4
0226: 4@ = actor $PLAYER_ACTOR health
4@ -= 1
0223: set_actor $PLAYER_ACTOR health_to 4@
jump @Health_3

ILdar07   25 августа 2009 в 20:29

031E: car 0@ hit_by_weapon 38
А зачем анимация, когда можно запереть двери?

CraZZZy-GameRRR   25 августа 2009 в 23:23

ILdar07 wrote:
031E: car 0@ hit_by_weapon 38
Это проверка какого-то конкретного оружия, а мне вообще надо узнать стреляют или нет.

ILdar07 wrote:
А зачем анимация, когда можно запереть двери?
Увы, не работает. Всё равно вываливается.

ILdar07   25 августа 2009 в 23:33

Если вообще надо узнать стреляют или нет, то ставь вместо 38 другие цифры из мануала и будет проверка каждого оружия. Общего опкода нет.
А если заморозить актёра?

Агент_47   26 августа 2009 в 02:30

8686: not car 84@ attached точно не помню, но по моему эта проверка отвечает, за повреждения машины от всех ружий

020A: set_car 0@ door_status_to 4 - так поставь, проверь, вроде не должен вываливаться

Shkun   26 августа 2009 в 21:42

8686: not car 84@ attached - проверка присоединен car 84@ к чему либо или нет

BоPоH   26 августа 2009 в 22:33

031E: car 0@ hit_by_weapon 38
А вместо 38 не пробовал ставить -1?? По ходу будет от любого оружия... И ещё, можно от каждого оружия поставить свою уменьшаемость жизней, т.е. из пистолета по чуть чуть забирает, из M4 посильнее, из минига ещё сильней и т.д.

преступник   27 августа 2009 в 14:24

CraZZZy-GameRRR,ты незнаешь случайно как можно сделать так чтобы банды перестали курить,пить и вести себя по идиотски,-водить руками как обкуренные и т.п.Я пробовал программы,например ped editor,pedstats editor и т.п.,но не вышло,потом думаю,наверно надо скрипт сделать или что-то исправить в скрипте относящийся к ним,-поможешь?
Я хочу свой мод один создать, но при этом хочу исправить их поведение.

Banzay-RUS   27 августа 2009 в 20:02

Извиняюсь, что не по теме, но никто не знает где можно скачать прогу, чтобы с диска C на диск D с помощью её можно было память перекинуть, а то у меня на C уже 11 гигов всего, скажите, кто знает, очень надо

CraZZZy-GameRRR   27 августа 2009 в 22:20

Partiton Magic (ссылку на прогу, думаю, сам найдешь)

У меня тоже жёсткий диск не очень большой (50 ГБ), диск C по размерам на один с лишнем ГБ больше твоего.

преступник   28 августа 2009 в 22:19

Видно ответ неполучу.

Shkun   28 августа 2009 в 22:19

а у меня вообще диск с равен 7-ми гигам... выше крыши хватает...

Shkun   28 августа 2009 в 22:29

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

CraZZZy-GameRRR   28 августа 2009 в 22:33

08-03 wrote
Видно ответ неполучу.

Увы, помочь не могу - сам не в курсе, как это сделать.

WeedStoned   29 августа 2009 в 01:51

А программа для скриптов какая нужна???

CraZZZy-GameRRR   29 августа 2009 в 22:00

библиотека CLEO 3

Устанавливаем в каталог с игрой, CS-файлы кидаем в папку "CLEO".

WeedStoned   30 августа 2009 в 13:13

Благодарю!!! =)

преступник   30 августа 2009 в 17:45

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

CraZZZy-GameRRR   31 августа 2009 в 01:27

Тебе уже давно на похожий вопрос Daeman.cs ответил.

чтоб у каждого прохожего был уровень преступности (разыскиваемости) как и у CPed'а (Игрока) - такое даже невообразимо в осуществлении. Даже если удастся - никакой процессор и движок не потянет.

Хотя, в принципе, такое возможно сделать, только очень трудно. Считываем хэндлы людей вокруг СиДжея в массив на небольшом расстоянии (думаю, не более нескольких сотен метров), создаём другой массив, где будут записываться уровни розыска для каждого педа. Далее идут многочисленные проверки - не нарушил ли данный гражданин закон? Если да, количество звёздочек увеличивается на одну, и копы начинают гоняться за нарушителем, а он от них удирает. Как только догонит, запускается анимация ареста.

Саму идею я тебе подсказал, больше ничем помочь не могу. Я в таких типах скриптов не очень разбираюсь.

--------------------------------------------------

На одном форуме, посвящённом компьютерной графике, под названием Демиарт, решил продемонстрировать свой CraZZZy Speedometer. Предварительно я его немного изменил, разукрасил приделал некоторые надписы. По-моему, получилось СУПЕР!


УВЕЛИЧИТЬ

преступник   31 августа 2009 в 11:20

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

Shkun   31 августа 2009 в 22:33

значит сначала пиши простенькие скрипты из учебника к сани билдеру (ф12). потом поймешь. а у меня новая проблема:

я хочу сделать скрипт, чтоб при езде внизу появлялось колесико и когда машина едет то оно крутится. теперь вопрос: как можно изменить скорость его вращения? сейчас я его вращаю этим опкодом: 074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 0.1 RGBA 255 255 255 255 постоянно повторяя этот опкод. я пробовал изменять и angle и wait перед опкодом- все равно. вот мой код:

:TXD
thread 'MYTX'
var
$PLAYER_CHAR: Player
$PLAYER_ACTOR: Actor
1@: Float
end

:TXD_1
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
jf @txd_1
03C0: 1@ = actor $PLAYER_ACTOR car

:txd_2
wait 0
0390: load_txd_dictionary "wheels"
038F: request_texture "wheel_saloon64" as 1
03f0: enable_text_draw 1
while true
if and
$PLAYER_CHAR.Defined
$PLAYER_CHAR.Controllable
$PLAYER_ACTOR.Driving
then
03F0: enable_text_draw 1
while 01C1: car 1@ stopped
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 RGBA 255 255 255 255
wait 0
end
while 81C1: not car 1@ stopped
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 RGBA 255 255 255 255
jump @krug
wait 0
end
wait 0
end
0391: release_txd_dictionary
03F0: enable_text_draw 0
Car.RemoveReferences(1@)
jump @txd_1

:krug
wait 0
03E3: set_texture_to_be_drawn_antialiased 1
074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 0.1 RGBA 255 255 255 255
jump @txd_2
end_thread

преступник   1 сентября 2009 в 16:53

CraZZy-GameRRR, ты можешь мне ссылку кинуть файл cargrp.dat ,у меня после одних испытаний этот файл начал глючить.

CraZZZy-GameRRR   1 сентября 2009 в 20:23

Shkun
Какой-то у тебя скрипт глюченый. Колесо не крутится, а быстро мигает.
Короче, сам рабочий скрипт напишу.

//-------------MAIN---------------
0000: nop

:TXD_1
thread 'TXD'
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
jf @txd_1
03C0: 1@ = actor $PLAYER_ACTOR car
0390: load_txd_dictionary "wheels"
038F: request_texture "wheel_saloon64r" as 1
03f0: enable_text_draw 0
10@ = 0.0

:txd_2
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
00DB: actor $PLAYER_ACTOR in_car 1@
jf @txd_3
03F0: enable_text_draw 0
03E3: set_texture_to_be_drawn_antialiased 1
074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 10@ color_RGBA 255 255 255 255

10@ += 1.0 //Здесь 1.0 - коэффициент скорости вращения

//Если скорость вращения должна быть рассчитана
//исходя из скорости движения авто, расскоментируй
//всё это, а предыдущую строку удали.
//02E3: 11@ = car 1@ speed
//11@ *= 0.1 //Здесь 0.1 - коэффициент скорости вращения
//005b: 10@ += 11@

jump @txd_2

:TXD_3
wait 0
0391: release_txd_dictionary
03F0: enable_text_draw 0
Car.RemoveReferences(1@)
jump @TXD_3


08-03
narod.ru/disk/12689600000/cargrp.dat.html

mywalkman, загляни, пожалуйста, в личку!

преступник   2 сентября 2009 в 17:11

Спасибо за ссылку!Я тут долго думал как можно создать скрипт для копов,чтобы они на чужой выстрел реагировали.Взял короче педов CRIMINAL,обычные бандиты и решил попробовать создать скрипт,только я без помощи не могу,посколько только учусь,наверняка фигню написал,но стал вникать.
Помоги мне исправить ошибки и продолжить,чтобы я ещё лучше врубился.
// 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---------------
0000: NOP

:MyThread_1
wait 0
if
00DF:actor$criminal_ACTOR shooting
jf @MyThread_1
0@=0

:MyThread_2
if
00DF:actor$criminal_ACTOR shooting
jf @MyThread_3
0@+=1
wait 1000

CraZZZy-GameRRR   2 сентября 2009 в 20:09

Извини, но то что ты написал - полная чушь!
Ошибок море:
1) в опкоде 00DF пропущен пробел между actor и $criminal_ACTOR
2) не объявлена переменная $criminal_ACTOR
3) выполняется переход на несуществующую метку MyThread_3
4) в конце потока отсутствует end_thread или jump @метка
5) а главное - абсолютно неправильный скрипт

Ладно, постараюсь помочь тебе чем смогу, правда, сейчас я занят, постараюсь в свободное время заняться твоим скриптом.

преступник   2 сентября 2009 в 20:33

Ой!Я неправильно написал,забыл пробел поставить,блин как это у меня вышло???????? ЗАШИБИСЬ!!! В математике не силён,путаница,непраВильно понемаю и т.д Вот БЛИН!

Daeman.cs   3 сентября 2009 в 15:20

CraZZZy-GameRRR
Ошибки, конечно у 08-03 есть. Но, не стоит говорить, что он написал полную чушь, ерунду ахинею. Стоит только взглянуть на скрипт и понять, что порядок правильный. А это один из самых главных и неотъемлимых частей скриптинга.
08-03
Что конкретно насчёт ошибок - могу всё в точности объяснить и показать что к чему. А вообще, я примерно знаю, как реализовать такую идею. Только вот одна неурядица: спровоцировать педа атаковать, в данном случае - крайне возненавидеть до желания уничтожения или хотя бы нанесения увечий, Игрока способов не столь великое множества, учитывая, что игрок не влезет в "побоище" первым.

Shkun   4 сентября 2009 в 22:18

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

CraZZZy-GameRRR   4 сентября 2009 в 22:24

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

CraZZZy-GameRRR   5 сентября 2009 в 01:42

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

Banzay-RUS   5 сентября 2009 в 16:21

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

Агент_47   5 сентября 2009 в 17:55

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

Агент_47   5 сентября 2009 в 17:57

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

Shkun   5 сентября 2009 в 21:41

как у текстуры альфа канал кругом сделать?? никак не пойму...

CraZZZy-GameRRR   6 сентября 2009 в 00:21

Спасибо, Banzay-RUS и mywalkman! Вы мне очень помогли.

ПростоИгорь   6 сентября 2009 в 13:15

скиньте самоучитель по скриптингу!Заранее спасибо!!!

Shkun   6 сентября 2009 в 13:30

скиньте самоучитель по скриптингу!Заранее спасибо!!!

нажми на ф12 в санни билдере- лучший самоучитель!

Daeman.cs   6 сентября 2009 в 16:24

Отнюдь, Shkun. Самый лучший самоучитель - sannybuilder.com/forums . Ибо учиться заочно не всегда путь истинный

Агент_47   7 сентября 2009 в 12:08

Daeman.cs, не понял ничего из выше сказанного, но могу по теме сказать одно, качаешь санни билдэр справка-помощь и там читаешь, я понему и научился скрипты писать

CraZZZy-GameRRR   7 сентября 2009 в 20:15

Адрес памяти +0x75 содержит информация о типе двигателя автомобиля. При считывании информации из него, каждый раз получаю разные и непонятные значения (что-то вроде: 0, 48, 128 и т.д.). Один человек на форуме SannyBuilder`а сказал, что это массив флагов. Я пытался понять какой бит за что отвечает, но мне это так и не удалось.

Может кто знает, как тип двигателя узнать или может где-нибудь скрипты, в которых это есть, видел?

Агент_47   9 сентября 2009 в 01:07

Только через эксешник, по другому никак, яб помог, но я с игровой памятью никогда не работал

ПростоИгорь   9 сентября 2009 в 19:42

Daeman.cs
огромное спасибо за самоучитель!

CraZZZy-GameRRR   11 сентября 2009 в 19:54

Ребят, быть может, кто-нибудь знает, существует ли проверка ВЫХОДА актёра из машины? Сразу хочу сказать, что проверка 09DE: actor $PLAYER_ACTOR entering_car не подходит, т.к. она отвечает только за ВХОД (в чём я убедился на своём опыте). Сей вопрос также был задан мною на форуме SannyBuilder`а, но там, к моему большому разочарованию, мне никто так и не сумел помочь.

Агент_47   12 сентября 2009 в 03:03

А чем тебе не нравятся команды типа: 00DB: actor $PLAYER_ACTOR in_car 22@, 0449: actor 101@ in_a_car, 00DF: actor $PLAYER_ACTOR driving, а если тебе нужна именно проверка выхода, то делай через анимации Actor.Animation($PLAYER_ACTOR) == "BIKE_ELBOWL" - благо есть программа где все эти анимации расписаны

CraZZZy-GameRRR   12 сентября 2009 в 22:51

Эти проверки возвращают TRUE, даже при выходе (это я уже давно знаю). К тому же на форуме SannyBuilder`а наконец нашёлся человек, который мне помог.

0A96: 0@ = actor $PLAYER_ACTOR struct
inc(0@,0x530)
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
if
0@ == 0
then
// Актёр выходит из машины
else
// Актёр не выходит из машины
end


Но всё равно, спасибо, MyWalkman!

Shkun   13 сентября 2009 в 14:27

Скажите пожалуйста как проверить включена сирена на машине или нет? (Проверить установлена ли на этой машине сирена я могу сам, главное включена или нет) CraZZZy-GameRRR помнишь ты сделал проверку на фары? может получится сделать тоже самое с сиреной?

преступник   13 сентября 2009 в 19:47

ТАК!ВИЖУ что никто нехочет помоЧь мне в этом моде,сколько мне ещё ЖДАТЬ?! Сложно что ли???
УЛУЧЩЕНИЕ ДЛЯ ИГРЫ, ЕСЛИ ТАК СДЕЛАТЬ МОД, ТО ИГРЕ +++++++++++++++++++++++++++++++++++++ "БОЛЬШОЙ'
большой! """""""""""""""""""Кто-нибудь здесь есть?"""""""""""""""""""""""

CraZZZy-GameRRR   13 сентября 2009 в 21:54

Shkun wrote:
может получится сделать тоже самое с сиреной?

Конечно, почему бы и нет!
Через опкод:

03C0: 0@ = actor $PLAYER_ACTOR car
if
0ABD: vehicle 0@ siren_on
then
// Сирена включена
else
// Сирена выключена
end


и, если очень хочется, через память:

03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 0@ struct
0@ += 1069
0A8D: 0@ = read_memory 0@ size 1 virtual_protect 0
if
0@ == 208
then
// Сирена включена
else
// Сирена выключена
end


08-03 wrote:
Сложно что ли???

Если честно, то для меня да. Я вообще (как я уже говорил) в таких типах скриптов не силён. Рекомендую зайти на SannyBuilder`ский форум. Там много умных людей, думаю, там тебе 100% помогут.

keySTOER   14 сентября 2009 в 15:16

Как создать свою банду?

ILdar07   14 сентября 2009 в 17:54

0A69: create_new_gang :-P

Daeman.cs   16 сентября 2009 в 17:35

08-03
Объясни, пожалуйста, внятно, с чем тебе помочь. А то только орёшь сидишь и на всех грешишь.

преступник   16 сентября 2009 в 21:17

У меня идея!Лучще без ареста других педов,ладно sorry у меня плохое настроение было ,короче я придумал легче и иначе никакого уровня разыскиваемости ненадо.
Я хочу чтобы мне помогли создать такой мод,чтобы копы изначально реагировали на выстрелы нарушителя,если вопче пед приминяет любое оружие "кроме кулаков" чтобы копы стреляли в нарушителя,если пед использует кулаки,то коп применяет дубину,но не арестовывает его.

Daeman.cs   17 сентября 2009 в 16:14

Возможно. Тебе написать скрипт? Или только толкнуть в правильном направлении? :)

swerchok   22 сентября 2009 в 18:48

1 октября 2009 года открывается новый Sa-MP сервер "Nur-Bat-Liberti City"!
Нa сервер требуются персонал (это модераторы смотрящие за порядком,лагами,переводами),(скриптеры),что бы стать модератором на сервере необходимы знания PWN !

заявки в комментарии!
www.nur-bat.co.cc/

stf3689   24 сентября 2009 в 21:50

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

преступник   29 сентября 2009 в 21:18

CraZZZy-GameRRR, у меня возникла проблемма с cleo 3.Я заметил что у педов после установки программы,поменялось повидение в худшую сторону.Им лень меня бить,т.е. подерётся немного,потом встаёт как-будто меня потерял и всё.

Кстаки я тут думал как можно ошибку исправить одну,когда бьёш по тачке [например гангстера,рабочего и бандита],они сразу не реагируют на удар,а это элемент нереалестичности.
Типо:опкод проверяет бьёт ли игрок или какой-нибудь другой пед по тачке.
Если утверждение истинно, то тогда гангстер от первого удара реагирует,не ждёт ни секунды.
Значит wait 0, я так понимаю.
Можно УБИТЬСЯ,возмо скриптинг мне не под силу.

CraZZZy-GameRRR   30 сентября 2009 в 17:39

08-03 wrote:
у меня возникла проблемма с cleo 3

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

08-03 wrote:
я тут думал как можно ошибку исправить одну

Скрипт будет выглядеть примерно так:

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

:THREAD_1
wait 0
if
056D: actor $PLAYER_ACTOR defined
jf @THREAD_1

//Проверяем, существует ли игрок?
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 10.0 10.0 0.0
04C4: store_coords_to 21@ 22@ 23@ from_actor $PLAYER_ACTOR with_offset -10.0 -10.0 0.0
09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1

//Считываем хэндл случайной близстоящей машины.
if
056E: car 0@ defined
jf @THREAD_1

//Проверяем, существует ли авто 0@?
//Если нет, значит поблизости игрока нет ни одной машины

if
//Здесь должна быть проверка: атакует ли актёр $PLAYER_ACTOR машину 0@?
jf @THREAD_1
046C: 1@ = car 0@ driver

//Считываем хэндл водителя машины 0@.
if
056D: actor 1@ defined
jf @THREAD_1

//Проверяем, существует ли он?
//Если нет, значит машина без водителя.

07A5: AS_actor 1@ attack_actor $PLAYER_ACTOR 99999 ms
//Заставляем водителя атаковать СиДжея в течениии 99 сек.
wait 5000
//Небольшая пауза (пока водитель выходит из машины).
jump @THREAD_1

Народ, разрешите задать пару вопросов?
1) Что в опкоде 09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1 означает предпоследний параметр?
2) Какой опкод проверяет, атакует ли актёр машину?

08-03 wrote:
скриптинг мне не под силу.

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

ILdar07   30 сентября 2009 в 19:09

Что в опкоде 09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1 означает предпоследний параметр?
Высоту над уровнем моря.

Какой опкод проверяет, атакует ли актёр машину?
031E.

CraZZZy-GameRRR   30 сентября 2009 в 19:15

ILdar07 wrote:
Высоту над уровнем моря.

Спасибо!

ILdar07 wrote:
031E.

Меня интересует ударяет ли КОНКРЕТНЫЙ актёр КОНКРЕТНУЮ машину или нет? Из какого оружия, совершенно не важно.

ILdar07   30 сентября 2009 в 21:26

Нет такого опкода.

CraZZZy-GameRRR   3 октября 2009 в 23:47

Скорее всего на нижеуказанный вопрос получу отрицательный ответ, но всё же.

Кто-нибудь из присутсвующих здесь знает ассемблер и умеет писать, пусть даже простые, CLEO-плагины?

TheBlackDahliaMurder   10 октября 2009 в 06:24

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

ILdar07   10 октября 2009 в 17:48

Создай CLEO-скрипт и пиши там:
0000: NOP

:Noname_2
wait 250
if
Player.Defined($PLAYER_CHAR)
else_jump @Noname_75
08C6: set_actor $PLAYER_ActoR stay_on_bike 1

:Noname_75
jump @Noname_2

Winona   10 октября 2009 в 22:21

Нда.... видимо, я не в тему, но хоть КТО-НИБУДЬ вообще мне может объяснить что делать если cleo 3 не работает? Я уже всё сегодня испробовала... Версия у меня не та наверное, но у всех блин всё работает, а у меня нет.
Всё правильно делаю, в папку с игрой кладу все что надо, но скрипты не работают...

CraZZZy-GameRRR   10 октября 2009 в 22:39

1) Попробуй переустановить игру.
2) Скачай последнюю версию CLEO 3 ОТСЮДА и установи.

Winona   10 октября 2009 в 22:43

Я откуда только не качала клео - результата нет.

Winona   11 октября 2009 в 00:37

Всё, заработало, и переустанавливать ничего не надо было...

CraZZZy-GameRRR   11 октября 2009 в 00:52

А в чём заключалась причина неработоспособности CLEO, если не секрет? Что сделала?

60GEN   11 октября 2009 в 02:06

Здарова всем!....сам шарю в скриптинге(шушуть ХД)...но вот на днях нашёл клео скрипт....в нё у оружия можно переключать прицелы есть ещё фонарик и 4 типа подствольника.....но вот тема.....мне нада лазерный прицел(он там присутсвует).....скока я этот скрипт не полошил нифига выдрать его неполучилось.....это жесть....если кто может накатайте скрипт лазерного прицельчика....буду благодарен....

TheBlackDahliaMurder   11 октября 2009 в 11:53

ILdar07, в каком формате то он быть должен? через sb над создавать?

Winona   11 октября 2009 в 12:49

CraZZZy-GameRRR, я скачала с твоей ссылки клео, там при установке можно было выбрать другой файл cleo.asi, вот из за него не работало.

CraZZZy-GameRRR   11 октября 2009 в 15:07

TheBlackDahliaMurder wrote:
через sb над создавать?

А как же! (Правда, можно ещё через MB, но он более древний и вообще хуже.)

1) Скачиваем SB ОТСЮДА.
2) Устанавливаем в любую папку и указываем путь к директории с игрой.
3) Где-то должен спросить "Установить CLEO 3?" - отвечаем "Да!".
4) Запускаем SB.
5) Выбираем "Файл --> Создать" или нажимаем "ctrl + n".
6) Вставляем исходный код, который тебе дал ILdar07, добавив в самом начале строку:
//-------------MAIN---------------
(иначе будет глюк).
7) Затем нажимаем "F6" - появляется диалог сохранения файла.
8) В качестве папки устанавливаем "GTA San Andreas\CLEO\".
9) В типе фала выбираем "Any file (*.*)", пишем любое имя прибавив к нему расширение "cs", например: "MyScript.cs".
10) Запускаем игру, убеждаемся, что скрипт работает.

TheBlackDahliaMurder   11 октября 2009 в 15:37

CraZZZy-GameRRR, зависает после загрузки:\ cейва

EDenisD   11 октября 2009 в 15:46

Добрый день народ! Тема такая: Наша творческая организация "Мх студия" решила заняться моддингом GTA SA. Как новички, мы не знаем какие проги нам понадобятся. Если не влом, киньте ссылочки на нужные программки и желательно их описание!

CraZZZy-GameRRR   11 октября 2009 в 16:25

TheBlackDahliaMurder wrote:
зависает после загрузки:\ cейва

Прошу прощения, кое-что забыл сказать. Перед
//-------------MAIN---------------
ещё надо
{$CLEO .cs}
добавить, чтобы на выходе не SCM-, а CS-файл получился.

Вообщем удали из папки "CLEO" CS и SCM-файлы твоего скрипта, и скомпилируй его заново с учётом моей поправки.

TheBlackDahliaMurder   11 октября 2009 в 17:56

CraZZZy-GameRRR, теперь вылетает:\ вот так выглядит когда открываю:

// 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---------------
0000: NOP

:NONAME_2
wait 250
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_30
08C6: set_actor $PLAYER_ACTOR stay_on_bike 1

:NONAME_30
jump @NONAME_2

CraZZZy-GameRRR   11 октября 2009 в 23:48

Посмотри, в папке "CLEO" случайно нет твоего скрипта в формате SCM? Если есть - удали, а иначе, я не знаю.

TheBlackDahliaMurder   12 октября 2009 в 08:25

CraZZZy-GameRRR, 6л*:\ нету. это от мэйна не зависит? мод ставил на текстуры. или от того что это sa - copland..

CraZZZy-GameRRR   12 октября 2009 в 17:58

TheBlackDahliaMurder wrote:
от мэйна не зависит?
and
или от того что это sa - copland..

Нет.

преступник   12 октября 2009 в 21:58

CraZZZy-GameRRR, можешь написать скрипт который я даеману писал,а то он куда-то провалился.

TheBlackDahliaMurder   13 октября 2009 в 09:15

CraZZZy-GameRRR, :\ херово. а ты ставил скрипт этот всё намана?

TheBlackDahliaMurder   14 октября 2009 в 12:17

CraZZZy-GameRRR, балин.. может кинешь мне его? на всякий случай. вот аська 470559455

преступник   14 октября 2009 в 17:01

Как удалить старые миссии?

CraZZZy-GameRRR   14 октября 2009 в 19:18

TheBlackDahliaMurder wrote:
может кинешь мне его? вот аська

ICQ не имею, поэтому просто дам прямую ссылку на файл:
megabyte1024.narod.ru/Upload/StayOnBike.cs

08-03 wrote:
Как удалить старые миссии?

Способ №1:

Заменить файл "main.scm" из папки "GTA San Andreas\data\script" ЭТИМ. Из игры исчезнут все миссии, подмиссии, мини-игры и кое-что ещё (например: работа копом, таксистом, крановщиком и т.п., бильярд, игровые автоматы, тюнинг-ателье, авто-школа, всякие соревнования, а так же нельзя будет поесть (еда CJ`ю будет не нужна как в GTA Vice City) и подсадить к себе в машину девушку лёгкого поведения).

Внимание! Обязательно начни НОВУЮ игру. (В противном случае игра намертво зависнет.)

Способ №2:
Открыть "main.scm" и вручную удалить из него все ненужные тебе миссии, правда это более муторно.

преступник   15 октября 2009 в 18:24

Я заменил файл,но у меня гангстеры все пропали.

CraZZZy-GameRRR   15 октября 2009 в 18:32

Неудивительно. Как я уже говорил, из игры исчезнут не только миссии, но и кое-что ещё (в т.ч. и гангстеры).

преступник   16 октября 2009 в 19:51

Один вопрос.Я открыл main.scm и удалил миссию ограбление дяди сема.Миссия была в этом столбике:
DEFINE MISSION 11 AT @INTRO1 // Big Smoke
DEFINE MISSION 12 AT @INTRO2 // Ryder
DEFINE MISSION 13 AT @SWEET1 // Tagging Up Turf
DEFINE MISSION 14 AT @SWEET1B // Cleaning The Hood
DEFINE MISSION 15 AT @SWEET3 // Drive-Thru
DEFINE MISSION 16 AT @SWEET2 // Nines And AK's
DEFINE MISSION 17 AT @SWEET4 // Drive-By
Только отсюда надо удалять или ещё где-то?

CraZZZy-GameRRR   16 октября 2009 в 20:13

08-03 wrote:
Только отсюда надо удалять или ещё где-то?

А ты сам как думаешь? Здесь миссии только определяются и пронумеровываются. Сами исходные коды миссий расположены намного ниже (начиная со строки 22 441).

//-------------MISSION 0---------------
// Скрипт первой миссии

//-------------MISSION 1---------------
// Скрипт второй миссии


и т.д.

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

преступник   16 октября 2009 в 21:56

Чего-то я ни хрена не нашёл.Слушай если тебе не лень,можешь удалить эти миссии сам и кинуть scm файл.

CraZZZy-GameRRR   16 октября 2009 в 22:32

Ладно, попробую.

CraZZZy-GameRRR   19 октября 2009 в 23:53

Попробовал я удалить миссии, вроде всё правильно сделал, но при запуске игры появляется чёрный экран (причём игра не виснет). Попробую на форуме SannyBuilder`а у людей спросить, есть вероятность, что помогут.

ILdar07   20 октября 2009 в 15:19

простая команда 016A: fade 0 time 0
первый параметр: 0 - потемнение, 1 - просветление экрана
второй параметр: время

CraZZZy-GameRRR   20 октября 2009 в 19:24

Спасибо, ILdar07.

Радуйся, 08-03! Нашёл main, который тебе нужен - скачать файл. Убраны миссии и ничего кроме. Установка: скопируй файлы "main.scm" и "script.img" в папку "GTA San Andreas\data\script".

Гангстеры, кстати, присутствуют - сам лично проверил.

CraZZZy-GameRRR   20 октября 2009 в 20:04

Скрипт читает файл с помощью данного исходного кода:

0A99: chdir 0
if
0AAB: file_exists "CLEO\Settings.ini"
jf @THREAD_3
0A9A: 21@ = openfile "CLEO\Settings.ini" mode 0x72
0A9D: readfile 21@ size 3 to 20@
0A9B: closefile 21@


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

ПашОК7777777   23 октября 2009 в 15:20

А я чайник! Не могу ничё сделать. Чё не делаю все не получается уже пол года. Кто нибудь что то посоветует? А то мне никакие инструкции не помогают.

CraZZZy-GameRRR   23 октября 2009 в 18:22

А что тебе, собственно говоря, нужно?

преступник   23 октября 2009 в 19:35

Спасибо!А тот скрипт ты сможешь написать?

преступник   24 октября 2009 в 16:07

CraZZZy-GameRRR!Эти два файла main.scm и script.img просто пройденные миссии.Мне ненадо так я хочу чтобы просто были удалены миссии а не пройденные.

CraZZZy-GameRRR   25 октября 2009 в 00:59

Тогда чем тебя первый main.scm, который я тебе давал, не устраивает? Да и, если не секрет, зачем тебе это нужно?

08-03 wrote:
А тот скрипт ты сможешь написать?
Увы, нет.

GTAFanatik   25 октября 2009 в 14:15

Ребята объясните как писать гоночные скрипты?

преступник   25 октября 2009 в 19:00

Потому что я создаю свой мод!Я буду создавать новые миссии дюомом!Также карту буду переделывать,а миссии могут помешать,потому что из-за переделки со старыми миссиями будет вылет!
НАПРИМЕР:Ограбление дяди сема.Я переделывал порт там где происходит это событие но из-за нарушения параметров игра незагрузиться!
Скрипт который я daemanu писал,он мне неприслал,такое чувство что его в туалет засосало.

GTAFanatik   26 октября 2009 в 07:07

У меня проблема с гоночным скриптом. Когда я захожу на маркер гонки, то телепортируюсь к координатам старта игры (у меня чистый мэйн). И потом так как гонка делеко камера через пол города летит к старту, а на старте 4 машины вместо двух, причём две из них пустые, также клонируется CJ и сколько на старт не заходи столько сиджеев и появиться, а самое главное они всё делают сенхронно (тоесть ходят вместе с тобой по нажатию клавиш). Помогите решить эту проблему!! Плиз!

Вот скрипт:


:NONAME_2
$RACEMIS1STARTX = 1415.66
$RACEMIS1STARTY = -1327.78
$RACEMIS1STARTZ = 13.55
$11192 = Marker.CreateIconAndSphere(53, $RACEMIS1STARTX, $RACEMIS1STARTY, $RACEMIS1STARTZ)

:NONAME_2_46
wait 1
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2_46
if
0101: actor $PLAYER_ACTOR in_sphere $RACEMIS1STARTX $RACEMIS1STARTY $RACEMIS1STARTZ radius 3.0 3.0 3.0 sphere 0 stopped
else_jump @NONAME_2_46
if
Player.Controllable($PLAYER_CHAR)
else_jump @NONAME_2_46
if
$ONMISSION == 0
else_jump @NONAME_2_46
Marker.Disable($11192)
054C: use_GXT_table 'RACETOR'
00BA: show_text_styled GXT 'RACES_0' time 1 style 2 // FOHKN
0169: set_fade_color_RGB 0 0 0
fade 0 2500

:NONAME_2_188
wait 0
if
not fading
else_jump @NONAME_2_188
00BE: text_clear_all
03E6: remove_text_box
start_mission 1 // Initial 2
create_thread @RACEMS2
end_thread

:RACEMS2
thread 'RACEMS2'
gosub @RACEMS2_47
if
wasted_or_busted
else_jump @RACEMS2_38
gosub @RACEMS2_3278

:RACEMS2_38
gosub @RACEMS2_3477
end_thread

:RACEMS2_47
increment_mission_attempts
$ONMISSION = 1
set_weather 8
Player.ClearWantedLevel($PLAYER_CHAR)
00BE: text_clear_all
$A0 = 0
$A1 = 1
$A2 = 2
$A3 = 3
$A4 = 4
$A5 = 5
$A6 = 6
$A7 = 7
$A8 = 8
$A9 = 9
$A10 = 10
$A11 = 11
$A12 = 12
$A13 = 13
$A14 = 14
$A15 = 15
$A16 = 16
$MONEY = 2000
$TRAFF = 1.0
$A = 2
$AK = 1
$B = 8
$D = 0
$TIME = 0.0
$POS = 1
$POS2 = 1
$PAR = 1

:RACEMS2_263
$STAGE($PAR,6i) = 1
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_263
$POINTX($A1,16f) = 1377.91
$POINTY($A1,16f) = -1539.05
$POINTZ($A1,16f) = 8.67
$SPEED($A1,16f) = 16.0
$TYPE($A1,16i) = 1
$POINTX($A2,16f) = 1363.99
$POINTY($A2,16f) = -1705.34
$POINTZ($A2,16f) = 8.55
$SPEED($A2,16f) = 100.0
$TYPE($A2,16i) = 1
$POINTX($A3,16f) = 1389.91
$POINTY($A3,16f) = -1715.98
$POINTZ($A3,16f) = 8.47
$SPEED($A3,16f) = 100.0
$TYPE($A3,16i) = 1
$POINTX($A4,16f) = 1624.75
$POINTY($A4,16f) = -1764.64
$POINTZ($A4,16f) = 3.95
$SPEED($A4,16f) = 100.0
$TYPE($A4,16i) = 1
$POINTX($A5,16f) = 1964.76
$POINTY($A5,16f) = -1849.17
$POINTZ($A5,16f) = 4.01
$SPEED($A5,16f) = 100.0
$TYPE($A5,16i) = 1
$POINTX($A6,16f) = 2275.43
$POINTY($A6,16f) = -2164.38
$POINTZ($A6,16f) = 6.06
$SPEED($A6,16f) = 100.0
$TYPE($A6,16i) = 1
$POINTX($A7,16f) = 2261.22
$POINTY($A7,16f) = -2231.15
$POINTZ($A7,16f) = 13.31
$SPEED($A7,16f) = 100.0
$TYPE($A7,16i) = 1
$POINTX($A8,16f) = 2297.57
$POINTY($A8,16f) = -2266.45
$POINTZ($A8,16f) = 13.37
$SPEED($A8,16f) = 100.0
$TYPE($A8,16i) = 1
$CARX($A1,6f) = 1408.62
$CARY($A1,6f) = -1361.82
$CARZ($A1,6f) = 8.55
$ANGLE($A1,6f) = 0.0
$CARX($A2,6f) = 1413.19
$CARY($A2,6f) = -1363.15
$CARZ($A2,6f) = 8.55
$ANGLE($A2,6f) = 0.0
$MODEL($A1,6i) = 422
$MODEL($A2,6i) = 422
054C: use_GXT_table 'RACETOR'
$PAR = 1

:RACEMS2_986
Model.Load($MODEL($PAR,6i))
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_986
wait 1000

:RACEMS2_1022
wait 0
$PAR = 1

:RACEMS2_1033
if
Model.Available($MODEL($PAR,6i))
else_jump @RACEMS2_1022
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1033
01EB: set_traffic_density_multiplier_to 0.0
0395: clear_area 1 at $CARX($AK,6f) $CARY($AK,6f) $CARZ($AK,6f) radius 300.0
$PAR = 1

:RACEMS2_1119
$CAR($PAR,6i) = Car.Create($MODEL($PAR,6i), $CARX($PAR,6f), $CARY($PAR,6f), $CARZ($PAR,6f))
Car.Angle($CAR($PAR,6i)) = $ANGLE($PAR,6f)
07EE: car $CAR($PAR,6i) enable_tire_marks 1
Car.DoorStatus($CAR($PAR,6i)) = 2
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_1243
0560: create_random_actor_in_car $CAR($PAR,6i) handle_as $ACT($PAR,6i)
0423: set_car $CAR($PAR,6i) improved_handling_to 2.0 // (float)

:RACEMS2_1243
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1119
036A: put_actor $PLAYER_ACTOR in_car $CAR($AK,6i)
0407: store_coords_to $CAMX $CAMY $CAMZ from_car $CAR($AK,6i) with_offset 0.0 -23.7 14.1
Camera.SetPosition($CAMX, $CAMY, $CAMZ, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
Player.CanMove($PLAYER_CHAR) = False
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1
03F4: set_all_cars_apply_damage_rules 0
wait 2500
fade 1 1000
wait 1000
00BA: show_text_styled GXT 'RACES_4' time 1100 style 4 // 3
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
0407: store_coords_to $CAMX2 $CAMY2 $CAMZ2 from_car $CAR($AK,6i) with_offset 0.0 -13.7 7.1
Camera.SetPosition($CAMX2, $CAMY2, $CAMZ2, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
0460: set_camera_transverse_delay 0.0 time 2000
00BA: show_text_styled GXT 'RACES_5' time 1100 style 4 // 2
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
0407: store_coords_to $CAMX3 $CAMY3 $CAMZ3 from_car $CAR($AK,6i) with_offset 0.0 -6.7 3.1
Camera.SetPosition($CAMX3, $CAMY3, $CAMZ3, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
0460: set_camera_transverse_delay 0.0 time 2000
00BA: show_text_styled GXT 'RACES_6' time 1100 style 4 // 1
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
00BA: show_text_styled GXT 'RACES_7' time 800 style 4 // BZEPED!
097A: play_audio_at 0.0 0.0 0.0 event 1057
01BD: 11@ = current_time_in_ms
Player.CanMove($PLAYER_CHAR) = True
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0
03F4: set_all_cars_apply_damage_rules 1
01EB: set_traffic_density_multiplier_to $TRAFF
Camera.SetBehindPlayer
Camera.Restore
$PAR = 1

:RACEMS2_1746
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_1853
05D1: AS_actor $ACT($PAR,6i) drive_car -1 to $POINTX($A1,16f) $POINTY($A1,16f) $POINTZ($A1,16f) speed $SPEED($A1,16f) $TYPE($A1,16i) model #NULL 2
$MARK($PAR,6i) = Marker.CreateAboveCar($CAR($PAR,6i))
Marker.SetColor($MARK($PAR,6i), 2)
Marker.SetIconSize($MARK($PAR,6i), 2)

:RACEMS2_1853
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1746
03C3: set_timer_to $TIME type 0 GXT 'TIMER' // global_variable // BPEMR
$KAR = 1

:RACEMS2_1898
0084: $NAR = $KAR // (int)
$NAR += 1
018A: $CHEKP = create_checkpoint_at $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f)
Marker.SetIconSize($CHEKP, 4)
if
003A: $KAR == $B // (int)
else_jump @RACEMS2_1979
Marker.SetColor($CHEKP, 0)
$A0 = 1

:RACEMS2_1979
06D5: $RCHEKP = create_racing_checkpoint_at $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f) point_to $POINTX($NAR,16f) $POINTY($NAR,16f) $POINTZ($NAR,16f) type $A0 radius 6.0

:RACEMS2_2034
8100: not actor $PLAYER_ACTOR in_sphere $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f) radius 12.0 12.0 12.0 sphere 0 in_car
else_jump @RACEMS2_2365
gosub @RACEMS2_2424
03F0: enable_text_draw 0
0084: $POS2 = $POS // (int)
0340: set_text_draw_RGBA 134 155 184 255
0349: set_text_draw_font 1
033F: set_text_draw_letter_size 1.0 3.6
0341: unknown_text_draw_flag 3
0342: enable_text_draw_centered 1
0343: set_text_draw_linewidth 640.0
060D: draw_text_shadow 2 color_RGBA 0 0 0 180
038E: draw_box_position 570.7242 356.2812 size 68.2072 48.2072 RGBA 0 0 0 255
038E: draw_box_position 570.7242 356.2812 size 66.2072 46.2072 RGBA 134 155 184 255
038E: draw_box_position 570.7242 356.2812 size 62.2072 42.2072 RGBA 0 0 0 255
045A: draw_text_1number 570.0 339.0 GXT 'RACES44' number $POS2 // ~1~N
$POS = 1
if
not Actor.InCar($PLAYER_ACTOR, $CAR($AK,6i))
else_jump @RACEMS2_2318
jump @RACEMS2_3278

:RACEMS2_2318
if or
Car.Wrecked($CAR($AK,6i))
02BF: car $CAR($AK,6i) sunk
else_jump @RACEMS2_2354
jump @RACEMS2_3278

:RACEMS2_2354
wait 0
jump @RACEMS2_2034

:RACEMS2_2365
Marker.Disable($CHEKP)
06D6: disable_racing_checkpoint $RCHEKP
097A: play_audio_at 0.0 0.0 0.0 event 1058
$KAR += 1
001C: $KAR > $B // (int)
else_jump @RACEMS2_1898
jump @RACEMS2_2952

:RACEMS2_2424
$IND = 1

:RACEMS2_2431
if
803A: not $IND == $AK // (int)
else_jump @RACEMS2_2928
if
not $CAR($IND,6i) == -1
else_jump @RACEMS2_2928
if
801C: not $STAGE($IND,6i) > $B // (int)
else_jump @RACEMS2_2845
0084: $TAR = $STAGE($IND,6i) // (int)
if
0100: actor $ACT($IND,6i) in_sphere $POINTX($TAR,16f) $POINTY($TAR,16f) $POINTZ($TAR,16f) radius 12.0 12.0 12.0 sphere 0 in_car
else_jump @RACEMS2_2666
$STAGE($IND,6i) += 1
if
801C: not $STAGE($IND,6i) > $B // (int)
else_jump @RACEMS2_2666
0084: $TAR = $STAGE($IND,6i) // (int)
05D1: AS_actor $ACT($IND,6i) drive_car $CAR($IND,6i) to $POINTX($TAR,16f) $POINTY($TAR,16f) $POINTZ($TAR,16f) speed $SPEED($TAR,16f) $TYPE($TAR,16i) model #NULL 2

:RACEMS2_2666
if
003A: $KAR == $STAGE($IND,6i) // (int)
else_jump @RACEMS2_2808
Car.StorePos($CAR($AK,6i), $XPOS, $YPOS, $ZPOS)
0509: $DIST = distance_between_XY $XPOS $YPOS and_XY $POINTX($KAR,16f) $POINTY($KAR,16f)
Car.StorePos($CAR($IND,6i), $XPOS2, $YPOS2, $ZPOS2)
0509: $DIST2 = distance_between_XY $XPOS2 $YPOS2 and_XY $POINTX($KAR,16f) $POINTY($KAR,16f)
if
0024: $DIST > $DIST2 // (float)
else_jump @RACEMS2_2801
$POS += 1

:RACEMS2_2801
jump @RACEMS2_2838

:RACEMS2_2808
if
001C: $STAGE($IND,6i) > $KAR // (int)
else_jump @RACEMS2_2838
$POS += 1

:RACEMS2_2838
jump @RACEMS2_2852

:RACEMS2_2845
$POS += 1

:RACEMS2_2852
if or
Car.Wrecked($CAR($IND,6i))
02BF: car $CAR($IND,6i) sunk
not Actor.Driving($ACT($IND,6i))
else_jump @RACEMS2_2928
Actor.RemoveReferences($ACT($IND,6i))
$CAR($IND,6i) = -1
Car.RemoveReferences($CAR($IND,6i))
Marker.Disable($MARK($IND,6i))

:RACEMS2_2928
$IND += 1
001C: $IND > $A // (int)
else_jump @RACEMS2_2431
return

:RACEMS2_2952
gosub @RACEMS2_3311
if
$POS2 == 1
else_jump @RACEMS2_3135
00BA: show_text_styled GXT 'RACES18' time 3000 style 1 // ZO6EDNTELJ!
wait 3000
01E3: show_text_1number_styled GXT 'M_PASS' number $MONEY time 4000 style 1 // MNCCNR BSZOLHEHA!~n~~w~$~1~
Player.Money($PLAYER_CHAR) += $MONEY
01BD: 12@ = current_time_in_ms
0085: 13@ = 12@ // (int)
0062: 13@ -= 11@ // (int)
13@ /= 1000.0
0085: 33@ = 13@ // (int)
33@ /= 60
0085: 33@ = 33@ // (int)
33@ *= 60
0085: 33@ = 13@ // (int)
0062: 33@ -= 33@ // (int)
0394: play_music 1
02FD: show_text_2numbers_lowpriority GXT 'TIME' numbers 32@ 33@ time 8000 flag 1 // ~1~:~1~
jump @RACEMS2_3253

:RACEMS2_3135
01E3: show_text_1number_styled GXT 'RACES_8' number 200 time 5000 style 1 // ZPONFPABWNN!
01BD: 12@ = current_time_in_ms
0085: 13@ = 12@ // (int)
0062: 13@ -= 11@ // (int)
13@ /= 1000.0
0085: 33@ = 13@ // (int)
33@ /= 60
0085: 33@ = 32@ // (int)
33@ *= 60
0085: 33@ = 13@ // (int)
0062: 33@ -= 33@ // (int)
02FD: show_text_2numbers_lowpriority GXT 'TIME' numbers 32@ 33@ time 8000 flag 1 // ~1~:~1~

:RACEMS2_3253
0318: set_latest_mission_passed 'RACES_0' // FOHKN
Player.ClearWantedLevel($PLAYER_CHAR)
gosub @RACEMS2_38
return

:RACEMS2_3278
gosub @RACEMS2_3311
00BA: show_text_styled GXT 'RACES_8' time 5000 style 1 // ZPONFPABWNN!
create_thread @NONAME_2
return

:RACEMS2_3311
01EB: set_traffic_density_multiplier_to 1.0
Car.DoorStatus($CAR($AK,6i)) = 0
$PAR = 1

:RACEMS2_3336
if
not $CAR($PAR,6i) == -1
else_jump @RACEMS2_3432
Car.SetImmunities($CAR($PAR,6i), 0, 0, 0, 0, 0)
Model.Destroy($MODEL($PAR,6i))
Car.RemoveReferences($CAR($PAR,6i))
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_3432
Marker.Disable($MARK($PAR,6i))
Actor.RemoveReferences($ACT($PAR,6i))

:RACEMS2_3432
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_3336
Marker.Disable($CHEKP)
06D6: disable_racing_checkpoint $RCHEKP
03F0: enable_text_draw 0
014F: stop_timer $TIME
01B7: release_weather
return

:RACEMS2_3477
$ONMISSION = 0
mission_cleanup
end_thread

И ещё как зделать так чтобы миссия больше не повторялась, и нельзя было приступить к другой гонке, не пройдя эту? За ранее благодарен!
Скрипт рабочий, так что можите поставить и проверить все баги)

ya-pyank   28 октября 2009 в 18:43

Почему то когда ставлю новые автомобили в gta san andreas сразу перестает запускаться а точнее виснет на загрузке, и у меня вопрос, (я новечок в San andreas и мало что знаю) может надо снять защиту, как к примеру в gta 4 надо ставить аси лоадер и файл фикс, или просто автомобили которые я поставил кривые???

CraZZZy-GameRRR   28 октября 2009 в 19:26

08-03 wrote:
Эти два файла main.scm и script.img просто пройденные миссии.

Ан нет! Миссии здесь полностью убраны, а игра выглядит, как-будто она полностью пройдена, тобищь всё открыто и доступно. Можешь ради интереса в исходном коде поглядеть:
объявлены только мини-миссии и мини-игры. Всего 33 штуки. Для сравнения, в оригинальном MAIN`е их, если не ошибаюсь, аж 134. Проблем с DYOM`ом, а также из-за изменения карты по сути возникнуть не должно.

CraZZZy-GameRRR   14 ноября 2009 в 00:33

В справке Sanny Builder`а (Документация по SCM - GTA SA - Объекты).

Sеen   17 ноября 2009 в 14:13

А у меня такой вопрос:читая мануал, там пишут, что например "загрузка моделей актёров происхдит вот этой командой".А как эти команды вводить???Знаю вроде в опкодник залазаешь и там ишешь.Ну нашел опкод, дальше что с ним делать????????????/?

CraZZZy-GameRRR   17 ноября 2009 в 22:08

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

Sеen   18 ноября 2009 в 14:45

С.П.А.С.И.Б.О.!.!.Хм, действительно, ничего сложного!!!

MNXOH11   22 ноября 2009 в 03:43

Люди!мне нужен мод замедляющий время.Очень надо.

CraZZZy-GameRRR   22 ноября 2009 в 14:33

Зачем мод, когда есть код?

LikeBAX   23 ноября 2009 в 12:31

Подскажите плиз если нетрудно, как с помощью CLEO скрипта можно создать новую парикмахерскую, в Ganton? Заблокированное здание я уже подметил.

преступник   27 ноября 2009 в 11:44

ну ё!нужен скрипт что бы копы реагировали на чужие выстрелы

CraZZZy-GameRRR   29 ноября 2009 в 00:35

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



CraZZZy Speedometer v.2

Просьба оценить.

В самое ближайшее время будет добавлена новая версия моего первого спидометра.

Sеen   29 ноября 2009 в 09:47

Хм...Мне понравилось.Для меня лучший спидометр из всех что я видел.Честно.А то есть которые маленькие, слишком большие, функций мало.А этот как раз хороший.

ILdar07   29 ноября 2009 в 11:27

Ну да, только когда название раёна выводица, о5 некрасиво, ага ;-)

Sеen   29 ноября 2009 в 16:14

А что за месность на скрине?

Ну да, только когда название раёна выводица, о5 некрасиво, ага ;-)

Ну название районов тоже некрасивые , особенно в Las-Venturas

CraZZZy-GameRRR   29 ноября 2009 в 16:44

А что за месность на скрине?

Ты уже пятый человек, задавший мне такой вопрос. Мод называется Криминальная Россия. Скачать можно отсюда - gta.criminalrussia.ru/

преступник   1 декабря 2009 в 21:15

я кстати свой мод такого типа создаю!

CraZZZy-GameRRR   1 декабря 2009 в 22:36

08-03 Wrote:
я кстати свой мод такого типа создаю!

И как идёт процесс? Чего интересного уже сделал?

FLAIT   3 декабря 2009 в 22:04

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

Griffen13   14 декабря 2009 в 18:58

Помогите пожалуйста.Я написал скрипт в sany builder,теперь хочу его залить,но как его сделать в формате CS?

CraZZZy-GameRRR   14 декабря 2009 в 19:51

Довольно простой вопрос. Просто ставим
{$CLEO .cs} перед //-------------MAIN---------------, нажимаем "F6", к названию файла дописываем .cs, в типе файла ставим "*.* | All files" и всё.

CraZZZy-GameRRR   18 декабря 2009 в 17:50

Сильно разочаровался в администрации PlayGround.ru. Сегодня исполнился ровно месяц с того момента когда я добавил CraZZZy Speedometer v.1.2, а на сайте до сих пор он так и появился. Несколько раз писал модератору, тот обещал в самое ближайшее время его добавить, но так обещания своего и не выполнил. Так что ссылку даю с gta.com.ua.

CraZZZy Speedometer v.1.2 + Ограниченный бензин

CraZZZy Speedometer v.1.2 + Ограниченный бензин

Ссылка: gta.com.ua/file_sa_details.phtml?id=940

преступник   21 декабря 2009 в 18:42

CraZZZy-GameRRR Wrote:
И как идёт процесс? Чего интересного уже сделал?

спасибо всё ОК!много изменений:банды переделал,скины новые,полностью автопарк переделал,здания создаю тоже и т.д.Я хочу потом в интернет поместить.Только кроме этого скриптовые моды хочу добавить.
Слушай есть тут дело,поскольку ты скриптер,то можешь помочь?
Не замечал ли ты в игре,когда любой пед бьёт по банде,то гангстеры удирают от него.Если другой гангстер ударит по вражеской банде,то они его атакуют.
Можно это исправить?

ПашОК7777777   22 декабря 2009 в 13:17

Что бы объект появлялся перед игроком.

Азик Азимович   23 декабря 2009 в 19:41

Привет люди помомоги пожалуйста установить cleo никак немогу =(((

преступник   25 декабря 2009 в 16:24

А чё устанавливать? Следуй по инструкции! У тебя cleo3.exe?

Griffen13   25 декабря 2009 в 18:44

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

ILdar07   25 декабря 2009 в 21:36

034F: destroy_actor_with_fade 2@
01C2: remove_references_to_actor 2@
009B: destroy_actor 2@

Griffen13   26 декабря 2009 в 08:23

В каком файле хранятся все ролики из игры и в каком формате?

ILdar07   26 декабря 2009 в 10:14

anim\cuts.img
.cut, .dat, .ifp

Griffen13   27 декабря 2009 в 16:48

А какой прогой можно просмотреть эти ролики из архива cuts.img?

ILdar07   27 декабря 2009 в 20:22

Я загружал в 3Ds Max .ifp и так смотрел. А спецпрог для этого нет.
PS. Здесь рассматриваются те три файла.

Kamred   4 января 2010 в 14:01

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

V-13   4 января 2010 в 18:36

Подскажите, что я делаю не правильно.
Я через SB захожу в main.scm и в самом конце пишу:
create_thread @Myplanes

:Myplanes
wait 0
014B: $Myplanes1 = init_parked_car_generator #AT400 color -1 -1 1 alarm 0 door_lock 0 0 10000 at -1266.0 -438.0 35.349 angle 0.0
014C: set_parked_car_generator $Myplanes1 cars_to_generate_to 101
014B: $Myplanes2 = init_parked_car_generator #BAGGAGE color -1 -1 1 alarm 0 door_lock 0 0 1 at -1286.0 -432.0 35.676 angle 90.0
014C: set_parked_car_generator $Myplanes2 cars_to_generate_to 101
014B: $Myplanes3 = init_parked_car_generator #TUGSTAIR color -1 -1 1 alarm 0 door_lock 0 0 1 at -1282.0 -432.0 35.676 angle 90.0
014C: set_parked_car_generator $Myplanes3 cars_to_generate_to 101
014B: $Myplanes4 = init_parked_car_generator #ANDROM color -1 -1 1 alarm 0 door_lock 0 0 10000 at -1556.0 -160.0 36.419 angle 310.0
014C: set_parked_car_generator $Myplanes4 cars_to_generate_to 101
end_thread

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

LEX SAFONOV   6 января 2010 в 14:18

Чуваки! Можно сделать штоб карл с обычным пистолетом назад мог отходить, как например с SMG. А то комп может отходить назад и с узи, и с пистолетом и с TEC9 тоже. Это какая-то несправедливость прям. Говорю сразу!- ФАЙЛ WEAPON.DAT не помогает! Я всё в этом файле перерыл и ни чё не смог сделать! Мне кажется это можно исправить через скрипт, но я не знаю как. Сам только начинающий скриптер. Кто чё посоветует изменить или добавить в скрипт?

LEX SAFONOV   6 января 2010 в 14:23

Кто нить живой есть?

HighDefinition   7 января 2010 в 02:03

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

:TXD-SAS
wait 0
0390: load_txd_dictionary "SAS"
038F: request_texture "blood" as 1
:TXD_1
wait 0
if
00E1: key_pressed 0 16
jf @TXD_1
038D: create_texture 1 position 560.0 200.0 scale 180.0 180.0 color 255 255 255 alpha 255
end_thread

Вопросы
1.Как сделать чтобы эта текстура отключалась при нажатии НА ЭТУ САМУЮ КЛАВИШУ(в данном случае пробел - надо нарн ставить проверку включена ли она сейчас?)
2.Есть ли проверка на то, получает ли гг урон?
ЗЫ
Если данные вопросы показались вам слишком нубскими, не судите сразу обо мне, я только сегодня начал учится.

ViTaLiK090583   7 января 2010 в 04:23

ребят а как я могу форму и цвет кроссовок изменить??? Научите валенка))))))

LEX SAFONOV   7 января 2010 в 17:32

ViTaLiK090583 - это не по скиптингу, а по моделированию

LEX SAFONOV   7 января 2010 в 17:33

Чуваки! Можно сделать штоб карл с обычным пистолетом назад мог отходить, как например с SMG. А то комп может отходить назад и с узи, и с пистолетом и с TEC9 тоже. Это какая-то несправедливость прям. Говорю сразу!- ФАЙЛ WEAPON.DAT не помогает! Я всё в этом файле перерыл и ни чё не смог сделать! Мне кажется это можно исправить через скрипт, но я не знаю как. Сам только начинающий скриптер. Кто чё посоветует изменить или добавить в скрипт?

LEX SAFONOV   7 января 2010 в 17:35

V-13 - при изменении scm - файла сохранялки не будут работать

LEX SAFONOV   7 января 2010 в 17:43

Чуваки помогите! Как сделать штоб в скрипте, когда я сижу пассажиром, можно было двигатель включать и выключать, фары, двери. Повторяю не водилой, а ПАССАЖИРОМ! Вот этот скрипт и чё в нём надо изменить. Я пробовал ставить проверку на то что игрок просто в машине , а не за рулём, но но компилятор просто говорит что надо 2 параметра! Какие 2 параметра? Вот текст:
// 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---------------
1@ = 0
0AB3: var 0 = 0

:NONAME_13
wait 250
if and
Actor.InCar($PLAYER_ACTOR)
$ONMISSION == 0
89AE: not actor $PLAYER_ACTOR driving_train
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BMX)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BIKE)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #MTBIKE)
else_jump @NONAME_259
077E: get_active_interior_to $ACTIVE_INTERIOR
03C0: 0@ = actor $PLAYER_ACTOR car
046C: 26@ = car 0@ driver
if and
$ACTIVE_INTERIOR == 0
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_259
if
0AB0: key_pressed 190
else_jump @NONAME_140
gosub @NONAME_332

:NONAME_140
if
0AB0: key_pressed 76
else_jump @NONAME_162
gosub @NONAME_537

:NONAME_162
if
0AB0: key_pressed 79
else_jump @NONAME_184
gosub @NONAME_602

:NONAME_184
if
0AB0: key_pressed 70
else_jump @NONAME_206
gosub @NONAME_266

:NONAME_206
0A97: 8@ = car 0@ struct
8@ += 1064
0A8D: 9@ = read_memory 8@ size 1 virtual_protect 0
if
9@ == 16
else_jump @NONAME_259
08C0: clear 1@ bit 1

:NONAME_259
jump @NONAME_13

:NONAME_266
if and
84A9: not actor $PLAYER_ACTOR driving_heli
847A: not actor $PLAYER_ACTOR driving_bike
84A7: not actor $PLAYER_ACTOR driving_boat
else_jump @NONAME_312
Car.DoorStatus(0@) = 1
02D4: car 0@ turn_off_engine
0622: AS_actor $PLAYER_ACTOR bail_car 0@

:NONAME_312
wait 250
0AB3: var 0 = 0
1@ = 0
return

:NONAME_332
if
88B4: not test 1@ bit 1
else_jump @NONAME_446
if and
84A9: not actor $PLAYER_ACTOR driving_heli
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_412
051E: 19@ = get_current_radio_station
0918: unknown_car 0@ driver_flag 0
041E: set_radio_station 12
08BA: set 1@ bit 1
0AB3: var 0 = 1
jump @NONAME_530

:NONAME_412
02D4: car 0@ turn_off_engine
051E: 19@ = get_current_radio_station
041E: set_radio_station 12
08BA: set 1@ bit 1
0AB3: var 0 = 1
jump @NONAME_530

:NONAME_446
if and
84A9: not actor $PLAYER_ACTOR driving_heli
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_504
0918: unknown_car 0@ driver_flag 1
041E: set_radio_station 19@
08C0: clear 1@ bit 1
0AB3: var 0 = 0
jump @NONAME_530

:NONAME_504
036A: put_actor $PLAYER_ACTOR in_car 0@
041E: set_radio_station 19@
08C0: clear 1@ bit 1
0AB3: var 0 = 0

:NONAME_530
wait 1000
return

:NONAME_537
if
88B4: not test 1@ bit 2
else_jump @NONAME_581
067F: set_car 0@ lights 2
08BA: set 1@ bit 2
wait 1000
jump @NONAME_600

:NONAME_581
067F: set_car 0@ lights 1
08C0: clear 1@ bit 2
wait 1000

:NONAME_600
return

:NONAME_602
if and
847A: not actor $PLAYER_ACTOR driving_bike
84A7: not actor $PLAYER_ACTOR driving_boat
else_jump @NONAME_761
if
88B4: not test 1@ bit 3
else_jump @NONAME_694
Car.DoorStatus(0@) = 4
054C: use_GXT_table 'WUZI1'
00BC: show_text_highpriority GXT 'WOO1@00' time 3000 flag 1 // ~z~M’ ‡AKP’T’! ’OKA!
08BA: set 1@ bit 3
wait 1000
jump @NONAME_761

:NONAME_694
if and
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_761
Car.DoorStatus(0@) = 1
054C: use_GXT_table 'HEIST3'
00BC: show_text_highpriority GXT 'HE3_DA' time 3000 flag 1 // ~z~€BEPG0; OTKP’TA, XO‡•H!
08C0: clear 1@ bit 3
wait 1000

:NONAME_761
return

CraZZZy-GameRRR   10 января 2010 в 01:08

Как определить версию gta_sa.exe?

преступник   10 января 2010 в 15:55

Ты имеешь ввиду пиратка или орегинал?

CraZZZy-GameRRR   10 января 2010 в 17:56

Нет. Я имею ввиду версию файла gta_sa.exe - 1.0 или 2.0?

V-13   11 января 2010 в 15:54

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

преступник   11 января 2010 в 17:38

Извини незнаю.
Я хочу спросить.Помнишь,как я давно тебе говорил про то что если ударить по автомобилю водитель сразу не реагирует.Этот скрипт который ты писал, правильный?
//-------------MAIN---------------
0000: NOP

:THREAD_1
wait 0
if
056D: actor $PLAYER_ACTOR defined
jf @THREAD_1
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 10.0 10.0 0.0
04C4: store_coords_to 21@ 22@ 23@ from_actor $PLAYER_ACTOR with_offset -10.0 -10.0 0.0
09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1
if
056E: car 0@ defined
jf @THREAD_1
if
jf @THREAD_1
046C: 1@ = car 0@ driver
if
056D: actor 1@ defined
jf @THREAD_1
07A5: AS_actor 1@ attack_actor $PLAYER_ACTOR 99999 ms
wait 5000
jump @THREAD_1
Кстати!В этом скрипте водитель только на игрока сразу среагирует?

ILdar07   11 января 2010 в 19:00

if
056E: car 0@ defined
jf @THREAD_1
if
// тут должна быть проверка чего-либо
jf @THREAD_1

046C: 1@ = car 0@ driver
if
056D: actor 1@ defined
jf @THREAD_1

CraZZZy-GameRRR   11 января 2010 в 21:47

V-13 wrote:
Есть ли скрипт что бы остановить игру.

А почему бы и нет? В скриптинге нет ничего невозможного. (Или почти ничего.)

{$CLEO .cs}
//-------------MAIN---------------

:Time
015D: set_gamespeed 0.9 //0.9 - скорость игры
end_thread


Надеюсь, с Sanny Builder`ом обращаться умеешь, сам скомпилируешь.

Kamred   12 января 2010 в 16:29

Научите как обращаться c Санни Буилдером и как скриптинговать.

CraZZZy-GameRRR   12 января 2010 в 17:05

Смотри справку в Sanny Builder`e. Там всё написано. Будут вопросы - задавай на форуме.

Kamred   12 января 2010 в 19:02

Есть вопрос: Что значит "декомпилировать"?

Kamred   12 января 2010 в 19:08

И что значит "опкод"?

Kamred   12 января 2010 в 19:17

Да, и куда устанавливать CLEO-скрипты?

CraZZZy-GameRRR   12 января 2010 в 19:20

Компилировать - преобразовать исходный текст программы в готовый файл (не путать с сохранить).

Декомпилировать - тоже самое, только наоборот.

Опкод - оператор, выполняющиё какое-либо действие, например: запись числа в переменную, вывод текста на экран, создание объекта и т.п. (Список основных опкодов можно найти тут - acteam.clan.su/publ/2-1-0-22.)

В исходном коде в самое начало вставляем эти строки:
{$CLEO .cs}
//-------------MAIN---------------


Внимание! При выборе "Сохранить файл" сохраняется только исходный код, а не сам скрипт.

Для сохранения самого скрипта выбираем "Компилировать" ("F6"). Сохраняем готовый скрипт в папку "GTA San Andreas/CLEO", установив в типе файла "All files" и дописав расширение ".cs" к названию файла.

преступник   12 января 2010 в 21:08

Честно,иногда опускаются руки!!!

V-13   13 января 2010 в 17:01

CraZZZy-GameRRR
Я пока дошёл только до того как припарковывать машины...

К этому надо ещё что-то писать? И как это дать опр кнопке. Что бы при нажатии скорость игры менялась.

{$CLEO .cs}
//-------------MAIN---------------

:Time
015D: set_gamespeed 0.9 //0.9 - скорость игры
end_thread

CraZZZy-GameRRR   14 января 2010 в 18:42

Reply to V-13

Вот полный исходный код:

{$CLEO .cs}
//-------------MAIN---------------
0A95: enable_thread_saving
0@ = 1.0

:Time_1
wait 0
if
0AB0: key_pressed 0x21
jf @Time_2
if
not 0@ = 10.0
jf @Time_4
0@ += 0.1
jump @Time_3

:Time_2
if
0AB0: key_pressed 0x22
jf @Time_1
if
not 0@ = 0.0
jf @Time_4
0@ -= 0.1

:Time_3
015D: set_gamespeed 0@

:Time_4
0087: 1@ = 0@
1@ *= 10.0
0092: 1@ = float 1@ to_integer
00BE: text_clear_all
01E4: show_text_1number_lowpriority GXT 'NUMBER' number 1@ time 1000 flag 1
wait 300
jump @Time_1


Извини, GTA SA у меня в данный момент не установлена, протестировать скрипт не было возможности, но, вроде, дожен работать.

Управление:
"Page Up" - увеличить скорость игры
"Page Down" - уменьшить

При изменении скорости, её значение выводится на экран. Кроме того, скорость сохраняется при сохранении игры.

преступник   15 января 2010 в 17:23

CraZZZy-GameRRR! Можешь помочь мне со скриптом?
Я хочу тачку припарковать:

// 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---------------
create_thread @MyCars

:MyCars
wait 0
014B: $Car1 = init_parked_car_generator #ZB 2 1 0 alarm 0 door_lock 0 0 40000 at 2650.87 -2193.2 13.4703 angle 120.0
014C: set_parked_car_generator $Car cars_to_generate_to 101
end_thread

ILdar07   15 января 2010 в 17:56

create_thread @MyCars тут ненужен. И внимательней: в 014B ты пишешь $Car1, а в 014С почему-то $Car. И что за модель #ZB?

преступник   15 января 2010 в 19:24

Это добавленный автомобиль.

CraZZZy-GameRRR   16 января 2010 в 00:35

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

LikeBAX   16 января 2010 в 19:14

С чего лучше начать изучать скрипты?

[SCTD]FROG   19 января 2010 в 19:21

if(classid == 0){
SetPlayerPos(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
SetPlayerCameraPos(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
SetPlayerCameraLookAt(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
gTeam[playerid] = TEAM_1;
GameTextForPlayer(playerid, "FBI", 1000, 3);}
(421) : warning 202: number of arguments does not match definition
(422) : warning 202: number of arguments does not match definition
(423) : warning 202: number of arguments does not match definition
блин че он хочет???=((

Огненый Паук   19 января 2010 в 19:34

кто может сделат подобие мотоцикла по фоткам , незнаю че за марка и модель нашел на сайте 3d моделей хочется такую с полным функционалом , а сам пока неумаю , учусь тока

CraZZZy-GameRRR   20 января 2010 в 00:00

Reply to Огненый Паук:

Тебе СЮДА.

BоPоH   20 января 2010 в 22:10

Кто хочет поиграть в НОВЫЙ паркур мод - gta-parkour.uc*z.ru/ (вместо * поставьте o)

преступник   21 января 2010 в 20:56

Как сделать что бы банды нападали на обычного педа,если тот атакует их?

денис fraerov   24 января 2010 в 06:45

пари заходите поиграем там прикольно на прокачку 194.146.228.42:7777

FAXMANIAK_S   25 января 2010 в 21:05

[SCTD]FROG, "number of arguments does not match definition" - "количество аргументов не должно быть бесконечным". Думай где у тебя аргументы кишмя кишит.

more45654   7 февраля 2010 в 12:15

конверт педов в сан,опишите подробнее,кто умеет

Griffen13   7 февраля 2010 в 17:43

Здравствуйте.Я хочу сделать простенькую миссию для своего мода.Т.к в скриптинге я почти ничего не понимаю,не могли бы вы мне помочь?Я хочу что бы при старте игры СJ появился на корабле(-2392.7439 1529.0458 31.8594),затем проследовал к чекпоинту.Помогите пожалуйста с потоком(ну а чекпоинт я как-нибудь сам поставлю)

CraZZZy-GameRRR   7 февраля 2010 в 22:56

Для людей, которые хотят создать свою миссию, но совершенно не разбираются в скриптинге DYOM самое оно.

NYCPD   8 февраля 2010 в 11:01

Кто-нибудь может сгенерировать припаркованную машину добавленной модели? Я пытался создать cleo-скрипт, но почему-то добавленные модели на месте не появляются, хотя если в том же скрипте поставить стандартную модель (ID 400-611), то проблем нет. Please help!

NYCPD   8 февраля 2010 в 11:02

Кто-нибудь может сгенерировать припаркованную машину добавленной модели? Я пытался создать cleo-скрипт, но почему-то добавленные модели на месте не появляются, хотя если в том же скрипте поставить стандартную модель (ID 400-611), то проблем нет. Please help!

преступник   10 февраля 2010 в 18:16

CraZZZy-GameRRR! Так как зделать что бы банды нападали на обычного педа,если тот атакует их?

CraZZZy-GameRRR   12 февраля 2010 в 18:48

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

CraZZZy-GameRRR   12 февраля 2010 в 18:55

Никто не помнит, какой опкод выбирает случайного пешехода?

ILdar07   12 февраля 2010 в 20:50

: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

CraZZZy-GameRRR   12 февраля 2010 в 21:30

Спасибо, Ильдар, тольо мне не ближайший, а рандомный пед нужен.

ILdar07   12 февраля 2010 в 21:48

А по-другому никак.

CraZZZy-GameRRR   12 февраля 2010 в 21:59

Тогда другой вопрос. Ты в памяти GTA SA разбираешься? Не знаешь, как вычислить адрес, где расположен хэндл какого-либо педа, а то я читал на gtamodding, но так и не понял.

ILdar07   12 февраля 2010 в 22:34

В памяти GTA SA не разбираюсь. По таким серьёзным вопросам лучше обращаться на форум SB.

CraZZZy-GameRRR   12 февраля 2010 в 23:15

О ужас! Форум SB не работает (впрочем, так же как и сам сайт). Впервые такое вижу. Надеюсь, это временно.

muskatooo   14 февраля 2010 в 16:19

А как выкладывать свой файл на сайт?!

Marco1873   14 февраля 2010 в 16:22

Народ! у меня на миссиях нет маркеров и иконок! они пропадат если я пройду 4-5 миссий! что делать?? Решил исправить! поиграть в свой сохранение через читсую Саню! но не выходит! Подскажите плис!

CraZZZy-GameRRR   14 февраля 2010 в 16:29

muskatooo wrote:
А как выкладывать свой файл на сайт?!

www.playground.ru/files/add/

more45654   14 февраля 2010 в 19:34

вот короче такая тема: конвертирую педов из разных игр, в самом конце начинаю текстурить,но не знаю как затекстурить отдельные части (руки, голову, одежду и т.д.) всё по отдельности не получается, пед красится весь целиком, ЧТО ДЕЛАТЬ и как?

и вот такая ещё: бывает так, что когда вынимаю педа из игры, сую его в 3д макс, он в 3д максе отображается затекстуренным, но самих файлов с картинками нигде нет, КАК ИЗ 3Д МАКСА ВЫНУТЬ ЭТИ САМЫЕ ТЕКСТУРЫ, ЧТОБЫ В ДАЛЬНЕЙШЕМ УЖЕ ГОТОВЫЕ КАРТИНКИ СУНУТЬ В TXD WORKSHOP?

Vanez_350   15 февраля 2010 в 22:57

люди помогите новичку... плизз
нужен main без миссий (чистый), но с возможностями 100% прохождения и оставлеными парикмахерскими, магазинами, тюнингсалонами и т.д
или напишите скрипт у самого не получается =(

HyperXStream   16 февраля 2010 в 13:32

Люди, извените что не по теме, но скажите как в 3Ds Max 2010 из ped.ifp вытащить именно одну анимацию??? Скажите плиз! Спасибо!

преступник   16 февраля 2010 в 15:05

Скрипт не работает!!!

HyperXStream   16 февраля 2010 в 15:43

Скрипт работает!!!

Vanez_350   16 февраля 2010 в 19:28

работает !!!!!!
спасибо огромное!!! респект тебе!!!!! =)

HyperXStream   16 февраля 2010 в 22:12

Помогите! на 5 постов выше!

нико ман   21 февраля 2010 в 21:24

чтобы покатать cj'я в качестве пассажира, следует создать такой поток:
:PASSEHG
03A4: name_thread 'PASSEHG'

:PASSEHG_11
060A: unknown_create_entity 0 $12249
01C3: remove_references_to_car $11248
01C2: remove_references_to_actor $12246
01C2: remove_references_to_actor $12247
01C2: remove_references_to_actor $12248

:PASSEHG_38
0001: wait 50 ms
00D6: if and
810F: not player $2 wanted_level > 3
8449: not actor $3 in_a_car
00E1: key_pressed 0 11
0038: $409 == 0 // integer values
004D: jump_if_false @PASSEHG_38
04C4: create_coordinate $11247 $11246 $11245 from_actor $3 offset 3.75 3.75 0.0
04C4: create_coordinate $11244 $11243 $11245 from_actor $3 offset -3.7499 -3.7499 0.0
053E: $11248 = get_random_car_with_actors -1 in_area $11247 $11246 $11244 $11243
00D6: if
056E: carcass_of_car $11248 valid
004D: jump_if_false @PASSEHG_38
046C: $12246 = car $11248 driver
00D6: if
056D: carcass_of_actor $12246 valid
004D: jump_if_false @PASSEHG_11
00D6: if
056C: actor $12246 driving_police_vehicle
004D: jump_if_false @PASSEHG_245
01C0: $12244 = player $2 wanted_level
0008: $12244 += 1 // integer values
010D: set_player $2 wanted_level_to $12244
0001: wait 50 ms
0002: jump @PASSEHG_11

:PASSEHG_245
00D6: if and
8137: not car $11248 id == #BMX
8137: not car $11248 id == #BIKE
8137: not car $11248 id == #MTBIKE
84C8: not actor $3 driving_flying_vehicle
84A9: not actor $3 driving_helicopter
84A7: not actor $3 driving_boat
89AE: not actor $3 driving_train
004D: jump_if_false @PASSEHG_11
00A9: set_car $11248 to_normal_driver
060B: unknown_actor_use_entity $12246 $12249
0224: set_car $11248 health_to 1750
00AE: unknown_set_car $11248 to_ignore_traffic_lights 2
0004: $12250 = 0 // integer values
00D6: if
8431: not car $11248 car_passenger_seat_free 0
004D: jump_if_false @PASSEHG_493
00D6: if
0431: car $11248 car_passenger_seat_free 1
004D: jump_if_false @PASSEHG_418
0004: $12250 = 1 // integer values
0519: lock_vehicle $11248 in_current_position 1
0002: jump @PASSEHG_468

:PASSEHG_418
00D6: if
0431: car $11248 car_passenger_seat_free 2
004D: jump_if_false @PASSEHG_11
0004: $12250 = 2 // integer values
0519: lock_vehicle $11248 in_current_position 1
0432: $12247 = get_actor_handle_from_car $11248 passenger 1
060B: unknown_actor_use_entity $12247 $12249

:PASSEHG_468
0432: $12248 = get_actor_handle_from_car $11248 passenger 0
060B: unknown_actor_use_entity $12248 $12249
0002: jump @PASSEHG_500

:PASSEHG_493
0519: lock_vehicle $11248 in_current_position 1

:PASSEHG_500
05CA: AS_actor $3 enter_car $11248 passenger_seat $12250 -1 ms
0001: wait 50 ms
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_592

:PASSEHG_534
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 5000 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11

:PASSEHG_592
00D6: if or
0118: actor $3 dead
0741: (unknown) $3
004D: jump_if_false @PASSEHG_650
06C9: remove_actor $12246 from_group
05D2: unknown_action_sequence $12246 $11248 20.0 0
0002: jump @PASSEHG_11

:PASSEHG_650
00D6: if
01C1: car $11248 stopped
004D: jump_if_false @PASSEHG_534
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_500
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2

:PASSEHG_736
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_11
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_954
00D6: if
847A: not actor $3 driving_a_motorbike
004D: jump_if_false @PASSEHG_954
00D6: if
0038: $12250 == 0 // integer values
004D: jump_if_false @PASSEHG_954

:PASSEHG_815
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_870
0622: AS_unknown_remove_actor $12246 from_car $11248
00D6: if
8448: not actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_815

:PASSEHG_870
0676: AS_actor $3 in_car $11248 move_from_passengerseat_to_driverseat
0001: wait 50 ms
00D6: if
00DF: actor $3 driving
004D: jump_if_false @PASSEHG_870
05CB: AS_actor $3 enter_car_as_driver $11248 -1 ms
05C0: AS_actor $12246 look_at_car $11248 -1 ms
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
0002: jump @PASSEHG_11

:PASSEHG_954
00D6: if
00E1: key_pressed 0 15
004D: jump_if_false @PASSEHG_736

:PASSEHG_971
0622: AS_unknown_remove_actor $3 from_car $11248
0001: wait 50 ms
00D6: if
8448: not actor $3 in_car $11248
004D: jump_if_false @PASSEHG_971
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 17.5 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 7500 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
end_thread

поясняю: $2 и $3 - сам cj как написано в начале main'a; $11248 - сама тачка; $12246, $12247 и $12248 - сам водила и потенциальные попутчики cj'я; если сядем в коповозку - дадут звезду на память; так что тачку выбирай с умом - о всяких летающих биглях и великах забудь.
как использовать: подходи к тачке с хотя бы одним свободным местом, жми "Беседа - да" (по умолчанию Y). Чувак залезет в тачку. Шоб вылезти - Entеr, выкинуть водилу - "Беседа - нет" (обычно N).
насчёт курить - тоже просто. также создаёш поток, назначаеш определённой анимации клавиши - и вперёд. клавы и анимации можно поизучать по оригинальному скрипту и учебникам. сигару оружием сделать? думаю лишнее. и так видно же)) невозможного ничего нет.

преступник   23 февраля 2010 в 16:13

CraZZZy-GameRRR! Помоги пожалуйсто как оружие спецназу изменить?!
Написал скрипт:
// 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---------------
0000: NOP

:NONAME_2
Model.Load(#SWAT)
01B9: set_actor #SWAT armed_weapon_to 32
jump @NONAME_2

Skripter   23 февраля 2010 в 21:34

08-03 это у тебя так сказать эээ... ну типо.. даже в голову не лезет.. ты када скриптингом занялся???

Skripter   23 февраля 2010 в 22:18

08-03 ясно, если желаешь, пиши мне в асю: 6653594, постараюсь за короткий срок тебя чему нибудь научить

LikeBAX   24 февраля 2010 в 11:42

Напишите плз формочку для CLEO скрипта чтоб тачку поставить где-нибудь. Чтоб мне поставить только координаты ну и собственно тачку, ато не разберусь как клео начать.

Skripter   24 февраля 2010 в 14:25

Victor CC вот держи:

{$CLEO .cs}
thread 'tachka'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #Model 8 8 0 alarm 0 door_lock 0 0 40000 at X Y Z angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread

LikeBAX   24 февраля 2010 в 22:29

Skripter, мне нужно просто вставить название тачки и координаты (после X Y Z?) и компилировать и все?

Skripter   25 февраля 2010 в 00:13

Обьясняю:

первая команда:

1. 0@ - имя тр. средства, не должно повторяться.

2. #Model - показывает, машина какой модели должна быть припаркована

3. Цифры 8 8 обозначают цвет машины

4. Цифра 0 после слова "alarm" показывает установленность сигнализации в машине, это проценты.

5. Цифра 0 после слова "door_lock" показывает вероятность(в процентах) закрытых дверей.

6. Цифра 0 после слова "lock 0" указывает будут ли менты реагировать на то, что ты угнал машину,если 0,то будут,а если 1, то им это будет по-барабану.

7. Цифра 40000 указывает цену машины

8. X Y Z - понятно, что это координаты машины(ставить координаты вместо этих букв)

9. Цифра 180.0 указывает на угол поворота машины.


следующая команда:

1. 0@ - имя тр. средства, которое мы только-что создали.

2. 101 - частота появления машины, если поставим 0, то вообще никогда тачку не увидим, а вот если 101, то транспортное средство будет появлятся всегда


Все остальное не трогай(кроме thread 'tachka' конечно), иначе потом будешь думать почему у тебя ошибка или несколько машин друг на друге...

LikeBAX   25 февраля 2010 в 09:54

{$CLEO .cs}
thread 'Tank'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN 8 8 0 alarm 0 door_lock 0 0 40000 at коордX коордY коордZ angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread

Вот так правильно?
p.s. вместо коордX Y Z поставлю координаты только щас скачаю клео скрипт...
angle всегда 180.0?

LikeBAX   25 февраля 2010 в 10:07

{$CLEO .cs}
thread 'Tank'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN 8 8 0 alarm 0 door_lock 0 0 40000 at 1546,343 -1653,204 13,26828 angle -1,6015
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread

вот так?

преступник   25 февраля 2010 в 15:26

Skripter! Можешь здесь научить?

Haker-47   25 февраля 2010 в 16:10

Вот самый тупой вопрос машина скачиная всегда заменяет другую.

Skripter   25 февраля 2010 в 16:18

Victor CC да, так

Skripter   25 февраля 2010 в 16:22

08-03 могу, но долго будет

ILdar07   25 февраля 2010 в 16:22

Skripter
Хреновый ты скриптер, если не знаешь, что дробные числа надо писать с точкой.

Skripter   25 февраля 2010 в 16:24

Haker-47 естественно заменит, ведь ты же модель на другую меняешь

Skripter   25 февраля 2010 в 16:27

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

преступник   25 февраля 2010 в 16:54

Victor CC! На держи!Вместо запятых точки должны быть!

// 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---------------
thread 'CAR'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN color 8 8 0 alarm 0 door_lock 0 0 40000 at 1546.343 -1653,204 13.26828 angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread

Skripter   25 февраля 2010 в 16:56

08-03 ты в аське?

LikeBAX   25 февраля 2010 в 22:32

08-03, ты там не во всех координатах точку вместо запуятой поставил! Так и надо?

\\\This file was decompiled... - это тоже надо?

Skripter   25 февраля 2010 в 22:58

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

{$VERSION 3.1.0027}

Все это не надо, эта инфа твоего "SASCM.INI" появляется тока при декомпиляции, компилироваь можно без этого, главное {$CLEO .cs} - где ".cs" - не контер-страйк, а расширение, которое получит скрипт после компиляции, все что идет за // игнорируется компилятором

Haker-47   26 февраля 2010 в 05:58

А можно ли сделать что бы машина другую не заменяла?

преступник   26 февраля 2010 в 16:53

Извини торопился!Сделал ошибку.Вместо запятых ставь точки!Всё что написал всё и записывай!
Skripter! Я незнаю что это! Меня это никогда не интересовало!
Haker-47! Добавить авто можно,но тогда тебе сюда:forums.playground.ru/gta_san_andreas/modding/178..

преступник   27 февраля 2010 в 12:56

Как оружие спецназу сменить?

San SanЫч 7   27 февраля 2010 в 13:38

КАК ДЕЛАТЬ СКРИНЫ В СА БЕЗ ФОТИКА??!!

LikeBAX   27 февраля 2010 в 13:43

Skripter, пасибо, протестирую.

LikeBAX   27 февраля 2010 в 13:49

Сан Саныч, качай скрипт DUMPSCREEN или могу скинуть. А лучше вообще FRAPS установить.

Skripter   27 февраля 2010 в 14:55

San SanЫч 7, если тебе надо зделать скрин без радара и HUD'а, то в настройках выруби и юзай клавишу Print Screen, потом вставляй в паинт или фотошоп клавишами Ctrl+V

преступник   28 февраля 2010 в 13:51

Skripter! Помоги пожалуйсто мне зделать эффект,а то у меня не получается.

// 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---------------
0000: NOP

thread 'effect'
wait 0
066D: $Atch = attach_particle "WS_factorysmoke" to_object $powerstat1_lae2 offset 2660.4 -1449.65 79.3406
end_thread

преступник   28 февраля 2010 в 14:12

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

LEX SAFONOV   1 марта 2010 в 14:07

Чуваки! Помогите мне - кто знает где в Main-не прописаны миссии вора, жрачка, мисии типа BloodRing, оружейки и т.п.? Позарез надо - если кто знает, то напишите сточки или что-нибудь в этом роде. Да и ещё вопрос - почему у меня внешний скрипт парашута не пашет? Или его надо прописать к Сиджею в начале майна?

LEX SAFONOV   1 марта 2010 в 14:13

08-03 - надо прописать начальную точку появления игрока в начале мейна и просто тупо удалить все миссии. Да и когда миссии удалишь, то удали все строки после DEFINE MISSIONS , а так же DEFINE MISSIONS 0 сделай - это будет обозначать, что миссий в игре нет. Да и не забудь где-нибудь прописать зоны игры, так как зоны изначально лежат в нулевой миссии. Просто тупо создай поток(постоянный) и когда будешь миссии удалять коперни всё из нулевой в свой поток(всё что касается территорий). Вроде так самое основное объяснил.

San SanЫч 7   1 марта 2010 в 14:59

А где найти это Fraps

LikeBAX   1 марта 2010 в 22:42

в интернете. Введи в яндексе или в гугле.

Подскажите плз как в Сани Билдер вообще начать создание клео скрипта! Я знаю только как менй запускать.

Skripter   2 марта 2010 в 02:18

08-03, я так понимаю ты собрался создавать эффект в тех координатах, то тебе надо другая команда, кароче вот так:

{$CLEO .cs}

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

thread 'effect'
wait 0
064B: $Atch = create_particle "fire_large" at 2660.4 -1449.65 79.3406 1 // Создаем эффект(я сменил эффект на другой, т.к. "WS_factorysmoke" чего то не работает)
064C: make_particle $Atch visible // Делаем этот эффект видимым
0A93: end_custom_thread // В клео скриптах завершай всегда поток этим опкодом

в общем перемещайся в эти координаты и там увидишь огонь

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

Skripter   2 марта 2010 в 02:38

Victor CC,

начало любого клео скрипта:

{$CLEO .cs}
// здесь сам скрипт, т.е. метки, название потока если хочешь и все остальное

потом тупо компилируй в папку GTA San Andreas\Cleo\ и запускай игру

преступник   2 марта 2010 в 16:33

Спасибо! Main выложишь?

Skripter   2 марта 2010 в 19:35

Качать Main Здесь: slil.ru/28732188

LikeBAX   3 марта 2010 в 15:22

Подскажите плз, что такое.
Ну вот я написал скрипт

{$CLEO .cs}
(здесь пропустил строчку)
//-------------MAIN---------------
thread 'TANK'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN color 8 8 0 alarm 0 door_lock 0 0 40000 at 1546.343 -1653.204 13.26828 angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread

Потом компилировал в папку GTA SA\CLEO. В папке появились файлы TANK.txt и TANK.cs. Но в игре скрипт не работает! И в файле TANK.txt не написано "THIS FILE COMPILED USING SASCM.INI"

Skripter   3 марта 2010 в 15:49

все там работает, и пропускать строчки дело не обязательное, это ты сам пиши как тебе нравится, как я уже говорил все что идет после // игнорируется компилятором, отсюда следует что //-------------MAIN--------------- тоже не надо. Если машина не появляется, попробуй отойти подальше, потом вернись, просто не всегда есть шанс что транспорт будет тебя ждать или попробуй убрать опкод 0A95: enable_thread_saving или удали папку cleo_saves

VanSpR   4 марта 2010 в 18:32

{$CLEO .cs}
//-------------MAIN---------------
create_thread @NONAME_8
:NONAME_8
wait 0
014B: $X_ANGEL_PINE_MOTEL = init_parked_car_generator #LANDSTAL color 8 8 0 alarm 50 door_lock 0 1 40000 at -1991.004 154.8551 27.5391 angle 180.1707
014C: set_parked_car_generator $X_ANGEL_PINE_MOTEL cars_to_generate_to 101
end_thread



В чём проблема????
когда я начинаю игру,СJ не двигаеться.
Как исправить???
Может не в скрипте дело??
Но это начинаеться как только добовляю свой скрипт в папку CLEO

ILdar07   4 марта 2010 в 18:56

create_thread @NONAME_8 УДАЛИТЬ!
$X_ANGEL_PINE_MOTEL ЗАМЕНИТЬ! на 0@, к примеру

СJ не двигаеться
А ты клавиши движения нажимал?

VanSpR   4 марта 2010 в 20:15

А ты клавиши движения нажимал?


Нажимал и крутить камеру пытался и оружия менть пытался,но не чего игрок стоит на месте не двигаеться,НО все обьекты вокруг двигаються.Что такое подскажите??

Skripter   4 марта 2010 в 22:25

CJ не двигается потому что стоит опкод end_thread, в клео скриптах всегда надо использовать 0A93: end_custom_thread

VanSpR   6 марта 2010 в 09:38

нАПИСАЛ ПРОСТЕНЬКИЙ СКРИПТ,ЧТО БЫ ПРИ НАЖАТИИ "Y" ПОЯВЛЯЛСЯ МУЖИК С MINIGUN И ХОТЕЛ МЕНЯ УБИТЬ,А ЕСЛЕ Я БЫ ЕГО УБИЛ ТО МНЕ ДАЛИ БЫ 250$,НО НАЖАВ ЭТу КНОПКу НИЧЕГО НЕ ПРОИСХОДИТ!!чТО НЕ ТАК??пОМОГИТЕ ПЛИЗЗ!


{$CLEO .cs}

//-------------MAIN---------------
thread 'SKRIPT'

:SKRIPT_11
wait 0
Model.Load(#MINIGUN)
Model.Load(#FAM1)
038B: load_requested_models

:SKRIPT_26
wait 0
if and
Model.Available(#MINIGUN)
Model.Available(#FAM1)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
00E1: player 0 pressed_key 11
jf @SKRIPT_26
wait 5000
04C4: store_coords_to $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR with_offset 0.0 10.0 3.0
1@ = Actor.Create(CivMale, #FAM1, $X1, $Y1, $Z1)
01B2: give_actor 1@ weapon 38 ammo 6000
wait 100
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR
80E1: not player 0 pressed_key 11
jump @SKRIPT_26

:SKRIPT_153
if
Actor.Dead(1@)
jump @SKRIPT_153
Model.Destroy(#FAM1)
Model.Destroy(#MINIGUN)
Player.Money($PLAYER_CHAR) += 250
Player.ClearWantedLevel($PLAYER_CHAR)
jump @SKRIPT_11

ILdar07   6 марта 2010 в 12:05

thread 'SKRIPT' УДАЛИТЬ!

05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR
80E1: not player 0 pressed_key 11
jump @SKRIPT_26

тут где-то потерялся if

:SKRIPT_153
if
Actor.Dead(1@)
jump @SKRIPT_153

тут игра зависнет

Skripter   6 марта 2010 в 13:04

1. thread 'SKRIPT' удалять не обязательно
2. после :SKRIPT_153
if
Actor.Dead(1@)
нужно поставить jf @SKRIPT_153
3. обрати внимание на переменные здесть:
04C4: store_coords_to $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR with_offset 0.0 10.0 3.0
1@ = Actor.Create(CivMale, #FAM1, $X1, $Y1, $Z1)


координат пишешь в $X_1 $Y_1 $Z_1, а создаешь чувачка по $X1, $Y1, $Z1

преступник   6 марта 2010 в 14:50

Skripter! Можешь мне написать скрипт чтобы копы реагировали на чужие выстрелы,а то если например гангстер стреляет то копы которые рядом должны стрелять в него,но этого не происходит.Можно ли это исправить? Можно ещё так сделать чтобы если пед убил другово педа (включая игрока),то копы чтобы стреляли в него.Если пед атакует другово педа любым оружием 'кроме кулаков' то копы тоже стрелали бы в него,а если пед использует кулаки,то копы чтобы мочили его дубинками.

Skripter   6 марта 2010 в 21:55

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

преступник   7 марта 2010 в 13:30

Можно половину.

преступник   7 марта 2010 в 16:54

Skripter! Слушай я конечно не потеме но у меня проблемы с dff файлом.Я создал здание и импортировал его в гта, но объект выглядит не так как в zmodeler он стал похож на ежа.версии файлов dff 'san andreas' Я импортировал ещё раньше всё было нормально прадо у меня был сан андреас 2005 а сейчас я установил другово года.

Skripter   7 марта 2010 в 18:22

незнаю, я с моделями не работал, только с текстурами и мап едитором

преступник   8 марта 2010 в 16:04

Можешь написать тогда скрипт?

преступник   9 марта 2010 в 15:20

Skripter! Можешь скинуть мне папку data?

Skripter   9 марта 2010 в 16:09

она с модами

Kostyan_Chern   9 марта 2010 в 16:31

Народ пожалуйста помогите мне найти скрипт отпускания стёкол в машине я слыхал что такой есть а если нету то вот и новая идея если кто-то её воплотит скиньте мне на мыло Kostyan_Chern@mail.ru просто я в скриптинге полный ноль зарание спасибо...

Kostyan_Chern   9 марта 2010 в 16:34

Да и если кто знает хороший учебник для скриптинга тоже кинте не мыло ссылку.
Вот моё мыло Kostyan_Chern@mail.ru

Skripter   9 марта 2010 в 23:00

08-03 тебе Сюда
Kostyan_Chern лучший учебник - это справка в проге Sanny Builder

Kostyan_Chern   10 марта 2010 в 04:12

Skripter я насчёт скрипта отпускания и поднимание стёкол...
Такой есть или нет?

преступник   10 марта 2010 в 12:57

Как определить версию gta, европейский или американский?

Skripter   10 марта 2010 в 16:01

Kostyan_Chern незнаю

p00   10 марта 2010 в 17:13

есть какой-нибудь скритп,который заменит анимацию CJ на анимацию педа?

преступник   10 марта 2010 в 20:34

Skripter! Как спецназу оружие сменить?

LEX SAFONOV   11 марта 2010 в 13:27

p00 - вроде такого пока нет, но я пробовал анимацию править в максе и получилась одна хрень.
08-03 - какое именно оружие хочешь поставить спецназу? Есть скрипт на cleo - там менты палят по игроку из машины, вот его можно подправить и сделать чтоб оружие у спецназа нужное было.
Skripter - спасибо за скрипт, давно искал такой. Да и не знаешь что надо сделать, чтоб гроувцы карла за своего не считали? вроде такое обнаружил когда писал мод на очищенном Main. Если не лень, то пришли ещё то что отвечает за девушек карла, тату, причёски и одежду.
Просто пишу ща мод, а в нём можно выбрать перса, за которого играть - даже за балласа.

преступник   12 марта 2010 в 20:29

Я написал скрипт,но он не работает!
// 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---------------
0000: NOP

thread 'omon'
01B9: set_actor 285 armed_weapon_to 30
0A93: end_custom_thread

LEX SAFONOV   12 марта 2010 в 23:29

08-03 - это не правильно. Если ты хочешь чтоб у тебя спецназ к примеру стрелял с другого оружия при уровне розыска надо создать переменного актёра. Поясняю что это такое - это создание актёра в определённом радиусе от игрока. То есть - нужно записать координаты игрока в перменную и поставить на них радиус действия. Вроде записываются переменные командой: create_coordinate. И радиус ставится в этой же команде.
Записывают координаты, так как игрок постоянно двигается и его координаты постоянно обновляются.
Вот скрипт копа-турретчика:

thread 'COPTURRETCHECK'

:COPTURRETCHECK_19
wait 100
if
Player.WantedLevel($PLAYER_CHAR) > 1
jf @COPTURRETCHECK_19
wait 100
Model.Load(#TEC9)
038B: load_requested_models

:COPTURRETCHECK_52
wait 100
if
Model.Available(#TEC9)
jf @COPTURRETCHECK_52
03C0: 20@ = actor $PLAYER_ACTOR car

:COPTURRETCHECK_80
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 60.0 60.0 0.0
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -60.0 -60.0 0.0
10@ = -1
053E: 10@ = get_random_car_with_model -1 in_rectangle_cornerA 1@ 2@ cornerB 4@ 5@
if
not 10@ == -1
jf @COPTURRETCHECK_416
if or
Car.Model(10@) == #COPCARLA
Car.Model(10@) == #COPCARRU
Car.Model(10@) == #COPCARSF
Car.Model(10@) == #COPCARVG
Car.Model(10@) == #ENFORCER
jf @COPTURRETCHECK_416
if
8431: not car 10@ passenger_seat_free 0
jf @COPTURRETCHECK_416
wait 100
0432: 11@ = get_actor_handle_from_car 10@ passenger_seat 0
if
not Car.Wrecked(10@)
jf @COPTURRETCHECK_416
wait 100
01B2: give_actor 11@ weapon 32 ammo 30000 // Load the weapon model before using this
01B9: set_actor 11@ armed_weapon_to 0
01B9: set_actor 11@ armed_weapon_to 32
Actor.SetCarWeapon(11@, 32, 200000)

:COPTURRETCHECK_326
wait 700
if
not Car.Wrecked(10@)
jf @COPTURRETCHECK_80
if
not Actor.Dead(11@)
jf @COPTURRETCHECK_80
if
Actor.Driving(11@)
jf @COPTURRETCHECK_326
0713: actor 11@ driveby_actor $PLAYER_ACTOR car 20@ point 0.0 0.0 0.0 radius 5000.0 8 1 firing_rate 90

:COPTURRETCHECK_416
jump @COPTURRETCHECK_80
Car.RemoveReferences(10@)
Actor.RemoveReferences(11@)
jump @COPTURRETCHECK_19
Только тут в скрипте координаты прочитываются, а не создаются, но практически это одно и тоже. Скрипт не мой. Просто я его вскрыл.

TonуMontana   13 марта 2010 в 07:13

О, я вижу тут не нубы сидят, это хорошо. :)

ILdar07   13 марта 2010 в 10:35

А опкод 03C0 работает, если в начале не проверять, за рулём ирок или нет?

Daeman.cs   13 марта 2010 в 18:51

ILdar07
А опкод 03C0 работает, если в начале не проверять, за рулём ирок или нет?

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

ILdar07   13 марта 2010 в 20:31

Вот именно. Если пешком, в переменную записывается несуществующее значение. Чтобы этого не случилось, нужна проверка.

TonуMontana   14 марта 2010 в 03:12

Скриптеры, помогите. Короче мне нужна помощь по выведению текстур на экран, я как только вывожу текстуру, она через секунду пропадает. :( Как это изменить?

Daeman.cs   14 марта 2010 в 15:02

ILdar07, а зачем задавать вопрос, ответ на который тебе заведомо известен.

Rixer0, зацикли эту команду, сделай её бесконечной, чтобы эта текстура выводилась снова и снова. Тогда достигнешь желаемого результата ;)

преступник   14 марта 2010 в 19:08

Ну как сменить оружие спецназу вы ответети мне когда-нибудь в ЖИЗНИ???

ILdar07   14 марта 2010 в 21:07

Может быть, Daeman.cs, мне просто хочется поговорить.
08-03, в этой ЖИЗНИ никогда, может быть, в следующей.

преступник   14 марта 2010 в 22:07

О ё!!! Вам чё слабо что ли ,я не понимаю.

преступник   17 марта 2010 в 15:42

Где написан скрипт в main.scm отвечающий за оружие гангстеров?

Warbossik   17 марта 2010 в 16:41

плиз напишите как написать действие через клавишу (нажать клавишу для действия) а в справке какието 19 клавиш и все :(

ILdar07   17 марта 2010 в 17:14

08-03
Ищи опкод 0237, он отвечает за оружие гангстеров.

warbossik
Запустил SB, нажал F12, выбрал раздел CLEO 3 Code Library, далее CLEO3: опкоды, тебе нужен 0AB0.

Skripter   17 марта 2010 в 20:33

08-03 Мне кажется это должно работать:
Открой справку SB, открой статью "External Script – что это такое и как с ним работать?", почитай как привязать внешний скрипт к актеру, напиши сам внешний скрипт, тело которого будет состоять из загрузки модели оружия, которое тебе нужно для спецназа, проверки на загруженность, и собственно дающее это оружие тому чуваку в игре, к модели которого привязан скрипт. Ну вот впринципе и все, думаю ты понял что я попытался тебе сказать.
P.S. не забудь скрипт привязать к актеру!!!

keySTOER   17 марта 2010 в 21:43

У меня вопрос. Я токо учу Санни Билдер и у меня такой вопрос: возможен ли скриптинг для GTA 3 и GTA VC на Sanny Bulder'e?

Skripter   17 марта 2010 в 22:17

P.A.N.T.E.U.X. да, возможен, нужно лишь переключить SB для конкретной игры, в справке все описано

ILdar07   17 марта 2010 в 22:22

Йо чувачок P.A.N.T.E.U.X., как жизнь в гетто? Запусти SB, в нижней панели справа рядом с CLEO кликай значок. Все эти игры можно заскриптить нафик!!! Выбирай одну и пиши.
Но твоя главная ошибка в том, что ты не посмотрел справку. Там на первой же странице: Поддерживаемые игры...

keySTOER   18 марта 2010 в 15:52

Спасибо!

P.S. Я смотрел справку.
Йао, всё ОК))

А как узнавать координаты? Ну не тупо же ставить цыферги??

ILdar07   18 марта 2010 в 16:10

Запусти игру и SB. Далее в проге:
Сервис > Инструменты > Редактор координат
или
Ctrl+Alt+1

Warbossik   18 марта 2010 в 16:38

ILdar07

Спасибо!

Warbossik   18 марта 2010 в 17:19

{$CLEO}
create_thread @aptechka
:aptechka
00D6: if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
004D: jump_if_false @aptechka
actor.Health($PLAYER_ACTOR) =100
0002: jump @aptechka
end_thread @aptechka
я сделал скрипт что в нем не так?

Skripter   18 марта 2010 в 17:31

create_thread @aptechka - не нужно в клео
end_thread @aptechka - во-первых после end_thread не нужно писать имя потока, во-вторых в клео нужно писать опкод 0A93: end_custom_thread, а в-третьих зачем тебе заканчивать поток после jump, если end_thread в данном скрипте никогда не выполнится?

Warbossik   18 марта 2010 в 17:39

а разве end_thread не заканчивает скрипт навсегда?
а за подсказку спс
а пробела и нет мож между ($PLAYER_ACTOR) и =100?

Skripter   18 марта 2010 в 17:41

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

Warbossik   18 марта 2010 в 17:44

ага понял
и исчо я установил клео вместе с санни а там клео глючит :) переустановил и игра пошла.тока без скрипта :))

Skripter   18 марта 2010 в 17:46

и если в cleo скрипте поставить end_thread вместо 0A93: end_custom_thread, то случится тоже что и у гражданина с постом выше(VanSpR 04.03.10 18:32)

Warbossik   18 марта 2010 в 17:49

а еще когда грузишь анимацию разрешение файла писать? (то есть food.ipf или food хватит?)
постом выше
понял ок

Skripter   18 марта 2010 в 17:54

без расширения, но в "" например "food"

Skripter   18 марта 2010 в 18:00

0605: actor -1 perform_animation_sequence "Anim" from_file "File" 4.0 loop 0 0 0 1 -1 ms

После слова actor идёт число -1 -это имя неопределённого актёра, если вы не собираетесь использовать последовательность действий, то вместо -1 надо поставить имя актёра, который будет выполнять анимацию. Если надо, чтобы анимация повторялась, то число, стоящее сразу после слова "loop" должно быть равным 1, а если надо, чтобы анимация не повторялась (обязательное условие последовательности), то ставьте 0.
Если надо, чтобы анимация повторялась определённое кол-во времени, то после "loop" ставете 1 и вместо "-1 ms" ставите своё время.
Если надо, чтобы анимация заканчивалась и актёр возвращался в исходное положение, то число,
стоящее перед -1 ms меняйте на 0, если чтоб оставался в последнем движении анимации, то ставьте 1.

Warbossik   18 марта 2010 в 18:03

а если я сделал так actor. (открылось меню,я выбрал animation) потом ($PLAYER_ACTOR) и все что ты написал со своими настройками (все по нулям).
правильно?

Skripter   18 марта 2010 в 18:07

actor.Animation() - это условие, например: actor.Animation($3) == "food"

Warbossik   18 марта 2010 в 18:08

{$CLEO}
:aptechka
wait 6000
04ED: load_animation "food"
00D6: if and
04EE: animation "food" loaded
0AB0: key_pressed 0x76
0AA0: gosub_if_false @aptechka
0605: actor.Animation($PLAYER_ACTOR) perform_animation_sequence "EAT_BURGER" from_file "food" 4.0 loop 0 0 0 0 0 ms
actor.Health($PLAYER_ACTOR) =100
jump @aptechka

вот я сделал скрипт (по идее сиджи ест секретный бургер и восстановливает здоровье.) активация на L

Skripter   18 марта 2010 в 18:23

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

00D6: if and
04EE: animation "food"
сделай новую метку и в случае не выполненного условия переход на нее.

анимацию присваивай так:
0605: actor $PLAYER_ACTOR perform_animation_sequence "EAT_BURGER" from_file "food" 4.0 loop 0 0 0 0 -1 ms

сиджею лучше дать здоровья 1000 а не 100, т.к. если у тебя строка здоровья увеличена до максимума и она полная, то получится что здоровье станет меньше

далее всегда выгружай анимацию из памяти

и wait 6000 поставь в конце перед jump @aptechka , а в начале 6000 смени на 0, иначе тебе придется жать на кнопку что бы скрипт заработал около 6 секунд

преступник   19 марта 2010 в 19:09

Можно ли скрипты записывать в main.scm кроме cleo 3?

keySTOER   19 марта 2010 в 22:38

Скажите, а почему в справке Sanny Builder НЕ написаны все ID пушек, тачек, банд и т.д. для GTA3???

Skripter   19 марта 2010 в 23:01

08-03 можно, но после каждого изменения майна нужно начинать новую игру.

P.A.N.T.E.U.X. потому что их не написали, но в последней версии SB если поставить курсор перед названием модели и нажать Ctrl+Alt+H то будет тебе ID

keySTOER   19 марта 2010 в 23:28

Хаха!
если поставить курсор перед названием модели и нажать Ctrl+Alt+H то будет тебе ID
у меня получлось проще - я ввёл # и тут такое:
pix.PlayGround.ru
:))) И все модели и номера выскочили сами :)

преступник   20 марта 2010 в 18:21

Skripter! Помнишь ты мне давал чистый маин, правдо там не всё удалено.Можно так сделать чтобы там были только гангстеры и потребление Сиджея жрать?

Skripter   20 марта 2010 в 20:58

P.A.N.T.E.U.X. не все! а только основные, которые компилируются без объявления их в заголовке DEFINE OBJECT как это нужно делать в майне и нельзя в Cleo...

08-03 Можно

keySTOER   23 марта 2010 в 15:57

Помогите! Вообщем написал скрипт для VC чтобы у Томми стояла тачка в одном месте.

create_thread @INFERNUS

:INFERNUS
wait 0
014B: $Car = init_parked_car_generator #INFERNUS 2 2 0 alarm 0 door_lock 1 1 150000 at -1061.9845 -227.0772 11.4464 angle 180.0
014C: set_parked_car_generator $Car cars_to_generate_to 101
end_thread


Чё дальше делать? Как его запихивать в папку VC?

ILdar07   23 марта 2010 в 16:54

Найди файл data\main.scm
Открой его в SB
Найди строку с create_thread и впиши свой create_thread @INFERNUS в новую строку
Между потоками вставь свой :INFERNUS...end_thread
Например между
:MAIN_13817
return

// сюда. поток MAIN кончился, далее идёт другой
:AMBBANK
Но если ты новичок, можешь просто найти строку
//-------------Mission 0---------------
и вписать над ней свой поток
А так это всё нерационально, чувачок. Ради двух опкодов писать целый поток
В оригинальном main.scm и create_thread, и 014B с 014С написаны сразу в первом потоке 'MAIN'.
ЗЫ. Лучше на форуме VС обсуждать это наверн.

CraZZZy-GameRRR   24 марта 2010 в 00:57

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

ILdar07   24 марта 2010 в 10:26

Ещё раз. Такие серьёзные вопросы лучше задавать тут.

CraZZZy-GameRRR   24 марта 2010 в 14:44

Я там спрашивал, только мне никто не ответил. Думал, может здесь кто-нибудь знает.

ILdar07   24 марта 2010 в 14:56

Ну если даже там не помогли, то тут чё-то искать без мазы. Туши свет.

преступник   24 марта 2010 в 15:27

Как сделать чтобы банды не приставали ко мне?

ILdar07   24 марта 2010 в 15:59

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

преступник   24 марта 2010 в 18:19

CraZZZy-GameRRR! Помнишь ты мне давно давал чистый маин без гангстеров.Можно их в этом чистом main.scm прописать,а также и диллеров?

CraZZZy-GameRRR   24 марта 2010 в 18:55

А что мешает использовать main.scm без миссий? Там гангстеры есть.

преступник   24 марта 2010 в 19:51

Если я тебе скажу,то может быть ты меня не поймёш.

CraZZZy-GameRRR   24 марта 2010 в 19:58

Говори. Попробую понять.

Skripter   24 марта 2010 в 20:10

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

преступник   24 марта 2010 в 20:39

Много пошлятины !

CraZZZy-GameRRR   24 марта 2010 в 22:11

Skripter wrote:
кто знает где взять все известные адреса памяти?

Я знаю. ;-)
www.gtamodding.ru/wiki/Адреса_Памяти_Функций_(SA..
Тут не все, но процентов 70-80 найти точно можно.


08-03 wrote:
Много пошлятины !

Ты был прав - не понял. Можешь объяснить?

преступник   25 марта 2010 в 21:43

CraZZZy-GameRRR! Слушай в майне с гангстерами который ты давал кое что осталось.Смотри, выхожу на улицу,заварачиваю на право, ещё раз на право, потом на лево, иду и через дорогу дом, там ещё автомобиль припаркован. Это можно удалить?

CraZZZy-GameRRR   25 марта 2010 в 23:01

Если под словом ЭТО имеется ввиду автомобиль, то да - narod.ru/disk/19107886000/main.scm.html

преступник   26 марта 2010 в 11:31

Вопчето,я не имел ввиду автомобиль.

CraZZZy-GameRRR   26 марта 2010 в 12:00

А что тогда? Если дом, то его через MEd удалять надо.

преступник   26 марта 2010 в 13:20

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

Warbossik   27 марта 2010 в 11:49

какую курицу?всю СА прошел и видел только муляж.А миссии чтобы муляж спасать не видел.

а про миссию-помню,так что там тачка стоит тоже помню.
я не понял ты что удалить хочешь?

ILdar07   27 марта 2010 в 13:17

Ну блин развели тут базар «моя твоя не понимать». 08-03 не понравилась фича, что с тёлками мутить можно. Её надо удалить. Ясно теперь???
Вчіть російську, хлопці!

keySTOER   27 марта 2010 в 14:26

marker.CreateAboveActor($Mark,$Actor)
$Mark - имя маркера,
$Actor - имя актёра.

Какие бывают имена маркера, чтобы актёр:
1. Был врагом
2. Был другом и следовал за тобой

ILdar07   27 марта 2010 в 15:25

Отношение не зависит от имени.
Чтобы был врагом, надо прописать:
077A: set_actor $Actor acquaintance 4 to_actors_pedtype 0 // 0 – это игрок

Чтобы был другом и следовал за тобой:
077A: set_actor $Actor acquaintance 1 to_actors_pedtype 0
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
0631: put_actor $Actor in_group $PLAYER_GROUP


Отношения acquaintance бывают такие: 1 – уважение, 2 – симпатия, 3 – неприязнь, 4 – вражда.

keySTOER   27 марта 2010 в 15:46

А от чего тогда зависит "имя маркера"?

ILdar07   27 марта 2010 в 17:06

Имя маркера зависит от твоей фантазии, но обязательно должен быть с @ или $.

Warbossik   28 марта 2010 в 15:21

Офигенный сюжет придумал!!
хоть бы сказал какой ))

преступник   29 марта 2010 в 17:34

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

Skripter   29 марта 2010 в 19:03

справку юзай

преступник   29 марта 2010 в 21:37

Не помогло!Говорит что метки не находит!

Skripter   29 марта 2010 в 22:31

а ты бы нашел то, чего нету?

преступник   2 апреля 2010 в 16:04

Skripter! Можешь сделать скрипт,чтобы копы реагировали на чужие выстрелы?

Skripter   2 апреля 2010 в 22:19

если узнаю как вычислить актера в памяти который стреляет

Leontik   3 апреля 2010 в 16:19

ЛЮДИ !!! МНЕ НУЖЕН СКРИПТЕР ДЛЯ ОДНОГО ГЛОБАЛЬНОГО МОДА !!! КТО ШАРИТ В СКРИПТИНГЕ СТУЧИТЕ В АСЬКУ 613449906 . СРОЧНО

Fonet1c   4 апреля 2010 в 16:18

Кто хорошо в скриптинге шарит...мне б "учителя" по скриптингу...очень над
icq - 446120317
Команду набирать собираюсь там для дела.

P.S: позарез надо

преступник   4 апреля 2010 в 20:25

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

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

:NONAME_1
wait 0
if
07A5: AS_actor $1000 attack_actor 7 10000 ms
jf @NONAME_1

:NONAME_3
if
07A5: AS_actor $1000 attack_actor 7 10000 ms
wait 1000
jump @NONAME_1

:NONAME_5
05E2: actor 7 kill_actor $1000
wait 2000
jump @NONAME_1

ILdar07   4 апреля 2010 в 21:04

У опкодов-проверок после двуеточия больше одново пробела.

Skripter   5 апреля 2010 в 17:33

08-03 in Los Santos хм.... интересный скрипт, а че он делает?

Skripter   5 апреля 2010 в 17:53

У опкодов-проверок после двуеточия больше одново пробела.

Там без разницы сколько пробелов, главное что бы вообще были

преступник   5 апреля 2010 в 22:15

Я хочу чтобы, если гангстеров атакует прохожий, то они атаковали его, а не убегали.

преступник   13 апреля 2010 в 20:15

Как записать актёра в переменные?

ILdar07   13 апреля 2010 в 20:22

009A: 2@ = create_actor_pedtype 4 model #MALE01 at 0.0 0.0 0.0
2@ – переменная.

преступник   13 апреля 2010 в 20:52

ILdar07! Спасибо! Но хочу ещё спросить.Если в скриптинге, когда проверяешь действие,то оно верное, как опкод записать чтобы установить действие?

ILdar07   13 апреля 2010 в 21:16

В скриптинге проверяешь не действие, а условие. Создаёшь, к примеру, маркер и проверяешь через 00ЕС, актёр рядом или нет. Можно сравнивать числовые переменные.

LikeBAX   15 апреля 2010 в 16:22

Помогите плз. Мне нужно создать красные маркеры в которые нужно зайти в определенных местах. На радаре не должно быть ничего, что указывает на эти маркеры. После входа в маркер у CJ поменяется прическа и одежда.
Я пробовал сделать одежду, но в том скрипте который я взял за основу было 3 параметра одежды, я вбил 4, и про компиляции вылезает ошибка, вот:
{$CLEO .cs}

//-------------MAIN---------------
thread "JUMPER"
wait 0

:JUMPER_14
wait 0
if
Player.Defined($PLAYER_ACTOR)
else_jump @JUMPER_14
if
00E1: player 0 pressed_key 0
00E1: player 0 pressed_key 1
else_jump @JUMPER_14
if
84AD: not actor $PLAYER_ACTOR in_water
else_jump @JUMPER_14
wait 0
Player.SetClothes($PLAYER_CHAR, "CAPRED", "CAP", Hats)
Player.SetClothes($PLAYER_CHAR, "HAIRGREEN", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "FIELD", "FIELD", Torso)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Head)
Player.SetClothes($PLAYER_CHAR, "HITOP", "HITOP", Shoes)
Player.Build($PLAYER_CHAR)
wait 40
Player.CanMove($PLAYER_CHAR) = True
Actor.HasWeapon($PLAYER_ACTOR, 22)
if
else_jump @JUMPER_194

:JUMPER_194
jump @JUMPER_14

Но нужно еще сделать маркер.

ILdar07   15 апреля 2010 в 18:35

if
Actor.HasWeapon($PLAYER_ACTOR, 22)
else_jump @JUMPER_194

так правильнее наверно.

if
00E1: player 0 pressed_key 0
00E1: player 0 pressed_key 1
else_jump @JUMPER_14

тут 2ве проверки значит надо писать if and чтоб выполнялись обе или if or чтоб выполнялась одна из них

преступник   19 апреля 2010 в 18:29

Чуваки! Помогите пожалуйста мне установить спецназу оружие,а то у меня sa зависает после загрузки.
//-------------MAIN---------------
0000: NOP

:NONAME_2
wait 0
Model.Load(#SWAT)
Model.Load(#AK47)
038B: load_requested_models

:NONAME_18
wait 0
if and
Model.Available(#SWAT)
Model.Available(#AK47)
else_jump @NONAME_18

:NONAME_43
if
Player.WantedLevel($PLAYER_CHAR) > 4
else_jump @NONAME_43
wait 5000
1@ = Actor.Create(Cop, #SWAT, $X1, $Y1, $Z1)
01B9: set_actor 1@ armed_weapon_to 30
jump @NONAME_43

:NONAME_99
if
Actor.Dead(1@)
else_jump @NONAME_99
Model.Destroy(#SWAT)
Model.Destroy(#AK47)
jump @NONAME_2

ILdar07   19 апреля 2010 в 19:07

:NONAME_43
wait 0
if
Player.WantedLevel($PLAYER_CHAR) > 4
else_jump @NONAME_43
wait 5000
04C4: store_coords_to $X $Y $Z from_actor $PLAYER_ACTOR with_offset 10.0 3.0 1.0
02C0: store_to $X1 $Y1 $Z1 ped_path_coords_closest_to $X $Y $Z
1@ = Actor.Create(Cop, #SWAT, $X1, $Y1, $Z1)
01B2: give_actor 1@ weapon 30 ammo 6969
01B9: set_actor 1@ armed_weapon_to 30

:NONAME_99
wait 0
if
Actor.Dead(1@)
else_jump @NONAME_99

CraZZZy-GameRRR   20 апреля 2010 в 00:13

Не подскажете, что делают эти два опкода?
0253: save_current_time и 0254: restore_current_time

ILdar07   20 апреля 2010 в 00:25

Думаю, первый заморраживает текущее время, второй запускает его.

CraZZZy-GameRRR   20 апреля 2010 в 00:37

А не знаешь, как реальное (а не игровое) время узнать?

преступник   20 апреля 2010 в 16:44

ILdar07! Так почему у спецназа остался микро узи?

Skripter   20 апреля 2010 в 18:19

CraZZZy-GameRRR я как то находил файл в винде отвечающий за время на компе, только не помню как называется, так вот из него думаю можно прочитать текущее время

преступник   20 апреля 2010 в 20:31

CraZZZy-GameRRR! Помоги пожалуйста, я хочу поставить бандам отношение к актёру (определённому).

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

:NONAME_1
wait 0
Model.Load(#BALLAS1)
Model.Load(#BALLAS2)
Model.Load(#BALLAS3)
Model.Load(#BMYDJ)
038B: load_requested_models

:NONAME_3
wait 0
if and
Model.Available(#BALLAS1)
Model.Available(#BALLAS2)
Model.Available(#BALLAS3)
Model.Available(#BMYDJ)
jf @NONAME_3
wait 5000
1@ = Actor.Create(Criminal, #BALLAS1, $X1, $Y1, $Z1)
3@ = Actor.Create(Criminal, #BALLAS2, $X1, $Y1, $Z1)
5@ = Actor.Create(Criminal, #BALLAS3, $X1, $Y1, $Z1)
8@ = Actor.Create(CivMale, #BMYDJ, $X1, $Y1, $Z1)
0746: set_acquaintance 3 of_actors_pedtype 1@ to_actors_pedtype 8@
0746: set_acquaintance 3 of_actors_pedtype 3@ to_actors_pedtype 8@
0746: set_acquaintance 3 of_actors_pedtype 5@ to_actors_pedtype 8@
jump @NONAME_3

:NONAME_5
wait 0
if
Actor.Dead(1@)
Actor.Dead(3@)
Actor.Dead(5@)
Actor.Dead(8@)
jf @NONAME_5
Model.Destroy(#BALLAS1)
Model.Destroy(#BALLAS2)
Model.Destroy(#BALLAS3)
Model.Destroy(#BMYDJ)
jump @NONAME_1

ILdar07   20 апреля 2010 в 22:54

CraZZZy-GameRRR
Скатай это, покопайся в исходнике, может найдёшь что-нибудь.

08-03 in Los Santos
Потому что это самое оружие прописано в EXE, как и пистолет у копов.

Параметры опкода 0746:
1-е число = отношение (см. 27.03.10 15:25);
2-е и 3-е числа = тип педов (см. Справку SB: Документация по SCM > GTA SA > Типы пешеходов)

До сих пор не могу понять, почему когда несколько условий, пишут только if.

CraZZZy-GameRRR   20 апреля 2010 в 23:25

Спасибо, Ильдар! Это именно то, что мне нужно.

преступник   21 апреля 2010 в 14:04

А как в EXE изменить, ведь блокнотом не исправить.Я пробывал, но это бред.

ILdar07   21 апреля 2010 в 16:19

Скатай SA Limit Adjuster. Открой salimit.ini, там есть #SWAT Weapon=28, 28 это УЗИ, # означает что игра эту строку не читает.

преступник   21 апреля 2010 в 18:38

Где этот salimit.ini.SA Limit Adjuster открывает только EXE.

ILdar07   21 апреля 2010 в 18:43

Попробуй этот архив. Там он точно есть.

преступник   21 апреля 2010 в 19:10

Я установил.Но минусы-исчез загрузочный экран и в salimit.ini поменял оружие спецназу,но когда уровень разыскиваемости 4, sa вылетает.

преступник   23 апреля 2010 в 12:35

Какой опкод проверяет атакует ли актёр другого актёра?

ILdar07   23 апреля 2010 в 13:56

031D: actor 55@ hit_by_weapon 38
если вместо 38 писать 51 например, то будет проверка на любое оружие наверно.

преступник   24 апреля 2010 в 21:37

ILdar07! Слушай у меня проблема. Я решил взять чистый маин без миссий, потом начал редактировать его.Дело в том что у меня sa вылетает, чуть не через 5 минут.Ты не знаешь чё за фигня?

ILdar07   24 апреля 2010 в 21:42

Я знаю чё за фигня! Ты наделал косяков и ща их раскуриваешь. Надо поновой взять чистый маин без миссий и редактировать его внимаетльно.

преступник   27 апреля 2010 в 19:21

Как сделать так чтобы если гангстеров атаковал актёр, чтобы они его атаковали.Написал скрипт, но он не работает.

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

:GANG_1
wait 0
if
051A: actor 8 damaged_by_actor 4
jf @GANG_1

:GANG_3
05E2: actor 8 kill_actor 4
jump @GANG_1

ILdar07   27 апреля 2010 в 22:43

Надо писать имя актёра, то есть переменную, в которую ты его записал, а не его тип педа. И сначала создать конечно же самого актёра, либо взять из окружения (см. 12.02.10 20:50).

преступник   28 апреля 2010 в 12:56

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

Hеревар   29 апреля 2010 в 20:28

Подскажите,пожалуйста,как сменить модель CJ-я на модель нужного мне педа?Извиняюсь,так сказать,за нубость.

ILdar07   29 апреля 2010 в 21:17

Предположим, модель нужного тебе педа – #BFORI.
Model.Load(#BFORI)
:Noname
if
not Model.Available(#BFORI)
else_jump @Noname_2
wait 0
jump @Noname
:Noname_2
09C7: change_player $PLAYER_CHAR model_to #BFORI
Model.Destroy(#BFORI)

Hеревар   29 апреля 2010 в 21:33

Метка "NONAME_2" переобъявлена. что значит сея ошибка?

CraZZZy-GameRRR Спасибо : )

Хмм...Блин.Что-то у меня совсем ничего не получается...=(

CraZZZy-GameRRR   29 апреля 2010 в 23:50

Reply to Открывалка:
Метка переобьявлена

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

Возможные решения: укажите иное имя для метки, которая повторяется дважды.

------------------
Совет: Если SB пишет ошибку, нажимай "Помощь" и всё сразу станет ясно.

Hеревар   30 апреля 2010 в 19:49

Ещё вопрос.
Как сделать так,чтобы при поднятии пикапа отнималось опр. кол-во денег?

CraZZZy-GameRRR   30 апреля 2010 в 21:50

{$CLEO .CS}

:PickUp_1
Model.Load(1239)

:PickUp_2
wait 0
if
Model.Available(1239)
jf @PickUp_2

:PickUp_3
02E1: 0@ = create_cash_pickup -1000 at 2625.6196 1112.9114 10.8203 permanence_flag 1
// Здесь -1000 - кол-во денег, отнимаемое у игрока
// а 2625.6196 1112.9114 10.8203 - координаты пикапа

Model.Destroy(1239)
0A93: end_custom_thread

преступник   1 мая 2010 в 19:33

Я хочу сменить Сиджея на другого персонажа, только неполучается.
Короче взял dff и txd переименовал их maks.dff и maks.txd. Потом в peds.ide написал
0, maks, maks, CRIMINAL, STAT_PLAYER, man, 0, 0, man, 9, 9, PED_TYPE_GEN, VOICE_GEN_CR, VOICE_PLY_CR
Написал скрипт:
:maks
thread 'maks'
Model.Load (#MAKS)
:maks
wait 0
if
not Model.Available (#MAKS)
jf @maks_3
wait 0
jump @maks
:maks_3
09C7: change_player $PLAYER_CHAR model_to #MAKS
Model.Destroy(#MAKS)
end_thread
Что неправильно?

ILdar07   1 мая 2010 в 20:17

Зачем что-то менять в peds.ide, если хочешь изменить скриптом. И трогать 0 тогда не надо, лучше найти педа, которого нет в pedgrp.dat, и его менять.
Две одинаковых метки maks.
На заметку: модель, на которую игрока меняем через скрипт, не обязательно прописывать в файлах.

keySTOER   1 мая 2010 в 21:34

плиз сделайте скрипт чтоб возле крана в Сан Фиерро стояла Euros. Её невозможно найти - а надо.

CraZZZy-GameRRR   1 мая 2010 в 21:51

:ParkedCar
014B: 0@ = init_parked_car_generator #EUROS 8 8 0 alarm 0 door_lock 0 0 40000 at -2081.5081 231.0162 34.9918 angle 134.0291
014C: set_parked_car_generator 0@ cars_to_generate_to 101
end_thread

elsyChester   1 мая 2010 в 22:36

Товарищи скриптеры)), очень нужна ваша помощь. Вы, наверное, знаете скрипт "Новый алгоритм движения поездов v5"? Так вот, мне нужно "заточить" его под старую КР(0.1.5), а то у меня вместо светофоров по бокам "хрущевки" стоят и подъезды прям к рельсам выходят))))) Существует и 1-я версия - без светофоров, но в ней багов полно(( Сможете помочь? Заранее спасибо)

keySTOER   2 мая 2010 в 22:13

Блин сорри что я задаю такой вопрос, но как мне перевести формат файла в .CS после написания скрипта?

ILdar07   2 мая 2010 в 23:04

Пиши в начале {$CLEO .CS} и компилируй.

devil assassin   3 мая 2010 в 15:10

а зделайте скин неро из devil may cry 4 а рука демона в место кастета

преступник   5 мая 2010 в 23:12

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

ILdar07   5 мая 2010 в 23:32

{$CLEO .CS}
1@ = 0
:GUNS1
Model.Load(#LAPD1)
Model.Load(#MICRO_UZI)
:GUNS1_8
if or
not Model.Available(#LAPD1)
not Model.Available(#MICRO_UZI)
jf @GUNS1_20
wait 0
jump @GUNS1_8
:GUNS1_20
wait 5000
00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
02C0: store_to 7@ 8@ 9@ ped_path_coords_closest_to 1@ 2@ 3@
009A: 4@ = create_actor_pedtype 6 model #LAPD1 at 7@ 8@ 9@
if
82CB: not actor 4@ bounding_sphere_visible
jf @GUNS1_30
01B2: give_actor 4@ weapon 28 ammo 60
05DE: AS_actor 4@ walk_around_ped_path
01C2: remove_references_to_actor 4@
jump @GUNS1_20
:GUNS1_30
009B: destroy_actor 4@
jump @GUNS1_20

преступник   6 мая 2010 в 15:31

ILdar07! Слушай я никак не смог сменить сиджея ни фига всё попробывал Скрипт взял из cleo который может заменить игрока твой не помог ничего не помагает Загружаю сан-андреас и он вылетает ЧЁ делать не знаю!

:MAKS
thread 'MAKS'

:MAKS_18
wait 0
Model.Load(#MAKS)
038B: load_requested_models
jump @MAKS_804

:MAKS_804
wait 0
if
Model.Available(#MAKS)
else_jump @MAKS_804
wait 5000
09C7: change_player $PLAYER_CHAR model_to #MAKS
jf @MAKS_804

:MAKS_5
wait 0
if
Actor.Dead($PLAYER_ACTOR)
jf @MAKS_5
Model.Destroy(#MAKS)
jump @MAKS_18

ILdar07   6 мая 2010 в 17:28

jf @MAKS_804
Это зачем??? В MAKS_5 после Model.Destroy(#MAKS) добавь 09C7: change_player $PLAYER_CHAR model_to #NULL, чтоб к игроку вернулась родная модель.
Этот скрипт тож неробит? (F5 для активации)

преступник   6 мая 2010 в 20:44

Если честно я писал скрипт в маин скм

ILdar07   6 мая 2010 в 23:04

Какой нафик маин скм, весь прогрессивное человечество юзает CLEO

Skripter   6 мая 2010 в 23:26

гггыыы, you Crazzzyyy man! меня щас перекосит от сумашедших скриптов 08-03 in Las Venturas'a))))

преступник   7 мая 2010 в 17:29

CLEO 3 ухудшает гта! Я сам видел. Он изменил поведение актёров в худшую сторону, а копы не реагируют на то что я угнал автомобиль! Решил провереть, удалил все скрипты и ничего не изменилось значит виноват asi плагин!

ILdar07   7 мая 2010 в 17:55

А что плохого в том что изменилось поведение актёров в худшую сторону, а копы не реагируют на то что ты угнал автомобиль?

keySTOER   9 мая 2010 в 18:36

А какие папки CLEO существуют для GTA 3 и VC? Делаю на них скрипт и в игре не показывается :((

Write 2   10 мая 2010 в 15:57

ВСЕМ привет я вот тут решил создать в грув стрит мастерскую и построить дома и я не могу это сделать помогите для samp или я не туда попал ?

Hеревар   10 мая 2010 в 17:45

Может кто нибудь,наиболее подробно,объяснить как мне сделать мисиию,как те,в которых надо доставлять пакеты в красные круги?
Буду премного благодарен.

саня1994   16 мая 2010 в 11:43

как создать cleo script для sa:mp скажите пожалуйста

преступник   16 мая 2010 в 20:57

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

саня1994   28 мая 2010 в 13:54

ну чё ктонить ответит аааааааааа

Untitled__   28 мая 2010 в 17:00

у меня возникла проблема - как только я в main.scm через SB создаю нужный скрипт, и нажимаю "компилировать", в конце процесса выскакивает ошибка "метка NONAME_2 не найдена". если же я переименовываю название потока, который до этого назывался, к примеру, "MAN", в "NONAME_2", то выскакивает ошибка "метка MAN_2 не найдена". подскажите пожалуйста, что делать, так как я новичок в скриптинге!

ILdar07   28 мая 2010 в 17:08

Всегда надо с чего-то начинать. В данном случае мы начинаем с отсутствия нужных меток. Временами такое случается. По-моему, из-за того, что декомпилятор "съедает" некоторые ненужные на его взгляд метки. А потом сам же и жалуется, что их нет.
Помочь тут чем-то сложно. Надо смотреть весь файл и прописывать недостающие элементы. Я так и делал по крайней мере. Только конечно же не переименовывал существующие, а писал в новые строки там, где на мой взгляд и должна находиться нужная метка.
PS. В сообщении об ошибке SB есть кнопка "Помощь".

Untitled__   28 мая 2010 в 17:13

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

ILdar07   28 мая 2010 в 17:16

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

саня1994   29 мая 2010 в 10:24

пацаны как создать телепорт например поставить в 1 городе красный круг в него зайти и появится во 2 городе гденибудь
кто знает можите написать или отправить на mail. /////parkour.fox_1.@mail.ru//////
зарание спосибо

ILdar07   29 мая 2010 в 11:37

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
4@ = -1
:Noname_1
02A7: 0@ = create_icon_marker_and_sphere 37 at 2447.4 -1974.5 12.547 // в 1 городе красный круг
:Noname_2
wait 0
if
00ED: actor $PLAYER_ACTOR 0 near_point 2447.4 -1974.5 radius 1.0 1.0 on_foot
jf @Noname_2
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
00A1: put_actor $PLAYER_ACTOR at -2623.5 1405.661 6.1 // во 2 городе гденибудь
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
jump @Noname_2

саня1994   29 мая 2010 в 17:37

большое спосибо ILdar07

саня1994   29 мая 2010 в 19:10

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

ILdar07   29 мая 2010 в 20:19

Через IPL проще намного.

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
4@ = -1
:Noname_1
wait 0
if
00ED: actor $PLAYER_ACTOR 1 near_point 2447.4 -1974.5 radius 2.0 2.0 on_foot
jf @Noname_1
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
select_interior 3
0860: link actor $PLAYER_ACTOR to interior 3
actor.PutAt($PLAYER_ACTOR,2494.05, -1696.73 ,1013.75)
0A40: 1@ = create_entrance_marker_at 2494.05 -1696.73 1015.0 color 14
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_12
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point 2494.05 -1696.73 radius 2.5 2.5 on_foot
jf @Noname_12
:Noname_2
wait 1000
09E8: 0@ = actor $PLAYER_ACTOR active_interior
if
not 0@ == 0
else_jump @Noname_1
if
00ED: actor $PLAYER_ACTOR 1 near_point 2494.05 -1696.73 radius 2.0 2.0 on_foot
jf @Noname_2
0A41: destroy_entrance_marker 1@
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
04BB: select_interior 0
0860: link_actor $PLAYER_ACTOR to_interior 0
00A1: put_actor $PLAYER_ACTOR at 2447.4 -1974.5 12.547
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_22
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point 2447.4 -1974.5 radius 2.5 2.5 on_foot
jf @Noname_22
jump @Noname_1

саня1994   30 мая 2010 в 00:20

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

ILdar07   30 мая 2010 в 00:53

Показал бы свои попытки, было бы конструктивней. С машинами всё то же самое, что и с педами, только надо посадить актёра в авто и указать:
06BB: set_actor -1 drive_car 0@ speed 10.0 along_SCM_path // -1 актёр, 0@ авто, 10.0 скорость

саня1994   30 мая 2010 в 01:00

ILdar07 а ты много в скриптинге знаешь

саня1994   30 мая 2010 в 01:05

а как создать pickup на покупку дома как только его купить и следом появляется pickup сохранения

ILdar07   30 мая 2010 в 01:07

Знаю два опкода, пишу скрипты для себя. Сочиняю рифмы, слушаю рэп любя. Йо!

саня1994   30 мая 2010 в 01:20

а как создать pickup на покупку дома как только его купить и следом появляется pickup сохранения
скажи если не тркдно

ILdar07   30 мая 2010 в 01:24

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0518: 4@ = create_available_asset_pickup 'PROP_3' at $X $Y $Z price 1@ // $X $Y $Z координаты, 1@ цена
:Noname_1
wait 0
if
0214: pickup 4@ picked_up
jf @Noname_1
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
0215: destroy_pickup 4@
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_12
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point $X $Y radius 2.5 2.5 on_foot
jf @Noname_12
4@ = Pickup.Create(1277, 3, $X, $Y, $Z)
:Noname_2
wait 0
if
0214: pickup 4@ picked_up
else_jump @Noname_2
player.CanMove($PLAYER_chAR) = false
03D8: show_save_screen
0215: destroy_pickup 4@
:Noname_22
wait 0
if
03D9: save_done
jf @Noname_22
player.CanMove($PLAYER_chAR) = true
jump @Noname_12

саня1994   30 мая 2010 в 01:26

большое спосибо

саня1994   30 мая 2010 в 01:27

а ты сколько скриптингом занимаешься

ILdar07   30 мая 2010 в 01:31

Эта информация не подлежит обсуждению в данном топике. Рекомендую воспользоваться системой Личные Сообщения (ЛС) на этом сайте либо прибегнуть к услугам специальных программ для обмена мгновенными сообщениями (типа ICQ, M-Агент и др.).

саня1994   30 мая 2010 в 01:38

А ТЫ СКАЖИ СВОЁ МЫЛО ЕСЛИ ЧТО ТАМ ПООБЩАЕМСЯ ВОТ МОЁ {parkour.fox_1.@mail.ru}

преступник   30 мая 2010 в 13:39

ILdar07. Помоги пожалуйста! Как сделать чтобы когда актёр имеет в руке огнестрельное оружие, чтобы копы стреляли в него.И ещё если копы рядом то чтобы банды прятали оружие, а когда коп изчезает чтобы оружие банды с ново держали оружие в руке.

преступник   2 июня 2010 в 15:11

Можно заменить этот опкод на другой?
0ABE: vehicle 7@ engine_on

vampire-man   3 июня 2010 в 12:40

научите плиз cleo моды создавать там что прога нужна или что ???

vampire-man   3 июня 2010 в 19:28

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

Untitled__   3 июня 2010 в 20:49

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

Hеревар   5 июня 2010 в 15:47

Справка Sunny Builder'а рулит.
Для начала можно и её почитать.

саня1994   6 июня 2010 в 07:58

а как прицепить объект к машине

ILdar07   6 июня 2010 в 17:25

0681: attach_object 1@ to_car 0@ with_offset 0.5 0.3 0.3 rotation 0.0 0.0 0.0

mr.leone14   12 июня 2010 в 02:51

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

ILdar07   12 июня 2010 в 10:57

0629: change_integer_stat 181 to 4 // чтобы звёзды не прибавляли
Garage.Activate('VECMOD') // LV
Garage.Activate('MODLAST') // LS Low-Rida
Garage.Activate('BODLAWN') // LS
Garage.Activate('MDSSFSE') // SF
Garage.Activate('MDS1SFS') // SF Street-Raca тюннинг с самого начала
Но тюнинг по-любому не будет работать, если у тебя нет внешнего скрипта (EXTERNAL SCRIPT CARMOD1 AT @CARMOD // 66 в оригинале).
Советую не заморачиваться, взять чистый мейн без миссий, но со всем остальным, там всё открыто и доступно.

keySTOER   12 июня 2010 в 23:39

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

ILdar07   13 июня 2010 в 00:42

Значит ты не всё в точности делал правильно.

mr.leone14   13 июня 2010 в 09:38

большое спасибо за совет!

Untitled__   13 июня 2010 в 21:47

PanteuX
скрипт косячный.

Mantana1   23 июня 2010 в 01:43

помогите новечку как ставить на сервер в samp ворота некотрым франкциям и как узновать потом как они открываются напишите пл в личку

михуилsx   26 июня 2010 в 00:02

Помогите по скрипту.
Пишу скрипт, суть которого заключается в том чтобы когда число человек в банде больше чем мест в машине, оставшиеся на улице бандиты садились в ближайшую попавшуюся машину и ехали за игроком.
Проблема такая: напарник садится за руль случайного авто и сразу вылазит, потом снова садится и опять вылазит (и так до бесконечности).
Кто нибудь встречался с такой фигней? Отпишитесь плиз
вот фрагмент скрипта:
...
:int_2
wait 100
if
00DF: actor $PLAYER_ACTOR driving
jf @int_3
jump @InT_2_1

:InT_2_1
03C0: 0@ = actor $PLAYER_ACTOR car
01EA: 1@ = car 0@ max_passengers

07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
07F6: get_group $PLAYER_GROUP number_of_leaders_to 6@ number_of_members_to 7@
092B: 8@ = group $PLAYER_GROUP member 1@
if
056D: actor 8@ defined
jf @int_2
04C4: store_coords_to 9@ 10@ 11@ from_actor 8@ with_offset 5.75 5.75 0.0
04C4: store_coords_to 12@ 13@ 14@ from_actor 8@ with_offset -5.75 -5.75 0.0
053E: 15@ = get_random_car_with_model -1 in_rectangle_cornerA 9@ 10@ cornerB 12@ 13@

if
056E: car 15@ defined
jf @int_2
0615: define_AS_pack_begin 18@
05CB: AS_actor -1 enter_car 15@ as_driver -2 ms
0616: define_AS_pack_end 18@
0618: assign_actor 8@ to_AS_pack 18@

wait 2000
if
0448: actor 8@ in_car 15@
jf @int_2
jump @int_2_2
....

ILdar07   26 июня 2010 в 08:40

Зачем для одного действия назначать AS_pack. Попробуй без него, просто сразу AS_actor (и кстати, есть опкод 05D2).

михуилsx   26 июня 2010 в 18:28

ILdar07
спасибо за опкод, не знал что такой имеется) теперь все работает ЯХУУ!

ПRoSto_GonShik   29 июня 2010 в 08:09

Как отключить трафик?

ILdar07   29 июня 2010 в 13:23

01EB: set_traffic_density_multiplier_to 0.0

ILdar07   30 июня 2010 в 19:19

Если хочешь спросить, то спрашивай, не стесняйся. А скрипт создать может и можно, невозможное возможно, но очень сложно. Я лично такой хернёй не страдаю.

kerm68   30 июня 2010 в 22:43

Вопрос по поводу DYOM (v5). А можно создать миссию, где за рулём сидит кто-то другой, а на месте пассажира - ГГ с оружием (типа последней миссии)? Если да, то как?

Faruhbek   7 июля 2010 в 20:54

ПЛЗ помогите кто нидь знает почему в гта са после того как я установил скрипт "taxi mod' у мя на карте перестали появляться метки миссий преходиться делать все вслепую. Хотя я уже удалил этот скрипт все равно метки невидно

Diaz0   20 июля 2010 в 15:47

Здорова всем Помогите мне пожалыста найти опкод который проверяет открыты ли двери у тачки

CraZZZy-GameRRR   21 июля 2010 в 02:26

09B3: get_car 0@ door_status 1@

Diaz0   21 июля 2010 в 12:56

Спасибо очень помог

Diaz0   21 июля 2010 в 13:39

еще вот что как проверить атакует ли актер ту или иную машину.И ещё врезался ли актер в ту или иную машину.Разрабатываю скрипт сигнализация почти готов

CraZZZy-GameRRR   21 июля 2010 в 17:31

051C: car 0@ damaged_by_actor $PLAYER_ACTOR
и
0547: actor $PLAYER_ACTOR colliding_with_car 0@

Diaz0   22 июля 2010 в 13:42

спасибо и вот последний вопрос как заставить любого актёра(Не главного) не двигаться т.e стоять на месте.И ещё как задать Какому либо пешеходу Wanted_level

Scripter21   22 июля 2010 в 15:19

Здравствуйте, обитатели форума=)
Я новичок. Но уже кое что умею.
Написал код, вот он:

create_thread @GUARD_44
end_thread
thread 'GUARD'
Model.Load(#CELLPHONE)
Model.Load(#BULLET)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'

:GUARD_44
wait 0
if and
Model.Available(#CELLPHONE)
Model.Available(#BULLET)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
jf @GUARD_44

:GUARD_68
if
0AB0: key_pressed 90
jf @GUARD_68
:guard_43
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 1200 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 1200 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 8.0 0.0
$GUARD = Car.Create(#BULLET, 2495.368, -1994.034, 13.5038)
Car.Angle($GUARD) = 180.0
0229: set_car $GUARD primary_color_to 1 secondary_color_to 0
0129: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD driverseat
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
Model.Destroy(#BMYBOUN)
Model.Destroy(#BULLET)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
0631: put_actor $12 in_group $PLAYER_GROUP
0631: put_actor $13 in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
Actor.WeaponAccuracy($12) = 95
Actor.WeaponAccuracy($13) = 95
Actor.Health($12) = 200
Actor.Health($13) = 200
Actor.Armour($12) = 200
Actor.Armour($13) = 200
Car.DriveTo($GUARD, 1@, 2@, 3@)

:GUARD_394
if
01C1: car $GUARD stopped
jf @GUARD_394
0633: AS_actor $13 exit_car
0633: AS_actor $12 exit_car
end_thread

Суть в том, что Карл должен позвонить по телефону и вызвать двух охранников, машина создается в определенном участке, в месте с ней два актера, вооруженных.
Ис помощью кода драйвту едут ко мне.
Я списал координаты, с офсетом 4 по оси y (то есть машина остановится прямо передо мнойб в 4 метрах).

Но к сожалению, Карл даже трубку брать не хочет! В чем дело? Подскажите пожалуйста.

ILdar07   22 июля 2010 в 22:23

Diaz0
05B9: AS_actor 1@ stay_idle 1 ms // 1@ – имя актёра, 1 – время простоя
Wanted_level работает только на игроке.

Scripter21

create_thread @GUARD
end_thread
:GUARD
thread 'GUARD'
Model.Load(#CELLPHONE)
Model.Load(#BULLET)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'

:GUARD_44
wait 0
if and
Model.Available(#CELLPHONE)
Model.Available(#BULLET)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
jf @GUARD_44

:GUARD_68
wait 0
if
0AB0: key_pressed 90
jf @GUARD_68
:guard_43
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 1200 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 1200 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 8.0 0.0
$GUARD = Car.Create(#BULLET, 2495.368, -1994.034, 13.5038)
Car.Angle($GUARD) = 180.0
0229: set_car $GUARD primary_color_to 1 secondary_color_to 0
0129: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD driverseat
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
0631: put_actor $12 in_group $PLAYER_GROUP
0631: put_actor $13 in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
Actor.WeaponAccuracy($12) = 95
Actor.WeaponAccuracy($13) = 95
Actor.Health($12) = 200
Actor.Health($13) = 200
Actor.Armour($12) = 200
Actor.Armour($13) = 200
Car.DriveTo($GUARD, 1@, 2@, 3@)

:GUARD_394
wait 0
if
01C1: car $GUARD stopped
jf @GUARD_394
0633: AS_actor $13 exit_car
0633: AS_actor $12 exit_car
Model.Destroy(#BMYBOUN)
Model.Destroy(#BULLET)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
end_thread

Diaz0   23 июля 2010 в 09:48

ILdar07 у меня этот опкод не идёт почему то я его пробую а пед как шёл так и продолжает идти

Diaz0   23 июля 2010 в 09:56

Не забудь проверочку поставить
00D6: if
0256: player $PLAYER_CHAR defined ///если игрок существует. иначе возможны вылеты в некоторых местах

Scripter21   23 июля 2010 в 12:49

diaz0, попробуй это:
player.canMove(переменная актера@) = False/True
--------------------------------------------------
True - может ходить
false - нет
Между False и True можно поставить wait.

ну или это - put_actor 12@ stay_put = 1
1 - стоп
0 - идет
опкод к сожалению не помню,
введи в поиске опкодов.


Кстати, можно вас попросить заценить мой скрипт=)
Вот, скомпилируйте в клео=)
Z- позвонить и вызвать двух охранников
X - сесть в их машину пассажиром, выставить цель на карте, нажать F8
Машина поедет туда.
Только одна трабла!
Машина почему то едет на очень черепашьей скорости, не знаю почему=((
Начните новую игру!!! Возможен вылет после воторого, третьего использования.
//-------------MAIN---------------
thread "GUARD"
wait 100
Model.Load(#CELLPHONE)
Model.Load(#EMPEROR)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
Model.Load(#MAFBOSS)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'

:GUARD_50
wait 100
if and
Model.Available(#CELLPHONE)
Model.Available(#EMPEROR)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
Model.Available(#MAFBOSS)
else_jump @GUARD_50

:GUARD_89
wait 100
if and
0AB0: key_pressed 90
not Actor.Driving($PLAYER_ACTOR)
else_jump @GUARD_89
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 2000 flag 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 2000 flag 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 flag 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
Player.CanMove($PLAYER_CHAR) = False
wait 3000
04C4: store_coords_to 10@ 11@ 15@ from_actor $PLAYER_ACTOR with_offset 5.5 -6.5 0.0
$GUARD = Car.Create(#EMPEROR, 10@, 11@, 15@)
0229: set_car $GUARD primary_color_to 0 secondary_color_to 0
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 1.5 3.5 0.0
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 0
01C8: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
Actor.Health(13@) = 500
Actor.WeaponAccuracy(13@) = 95
Actor.Armour(13@) = 100
0129: 14@ = create_actor_pedtype 4 model #MAFBOSS in_car $GUARD driverseat
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
Actor.WeaponAccuracy(12@) = 90
Actor.Armour(12@) = 100
Actor.Health(12@) = 500
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Car.DriveTo($GUARD, 7@, 8@, 9@)

:GUARD_424
wait 0
if
01AD: car $GUARD sphere 0 near_point 7@ 8@ radius 3.0 3.1
else_jump @GUARD_424
0633: AS_actor 12@ exit_car
0633: AS_actor 13@ exit_car
Player.CanMove($PLAYER_CHAR) = True
0631: put_actor 12@ in_group $PLAYER_GROUP
0631: put_actor 13@ in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
00BC: show_text_highpriority GXT 'BODYGA' time 2200 flag 1 // ~z~Hi, we are your bodyguards. We will protect you.

:GUARD_553
wait 0
if
0AB0: key_pressed 88
jf @GUARD_553
05CA: AS_actor $PLAYER_ACTOR enter_car $GUARD passenger_seat 1 10000 ms
05CA: AS_actor 12@ enter_car $GUARD passenger_seat 2 20000 ms
05CA: AS_actor 13@ enter_car $GUARD passenger_seat 0 15000 ms

:GUARD_613
wait 0
if
0AB0: key_pressed 119
jf @GUARD_613
0AB6: store_target_marker_coords_to 21@ 22@ 23@ // IF and SET
wait 500
02CE: 11@ = ground_z_at 21@ 22@ 23@
if and
not 21@ == -1
not 22@ == -1
not 11@ == -1
wait 100
Car.DriveTo($GUARD, 21@, 22@, 11@)


:GUARD_539
wait 0
if or
0741: actor $PLAYER_ACTOR busted
Actor.Dead($PLAYER_ACTOR)
else_jump @GUARD_539
Actor.Dead(12@)
Actor.Dead(13@)
Car.Destroy($GUARD)
Car.RemoveReferences($GUARD)
Actor.RemoveReferences(12@)
Actor.RemoveReferences(13@)
Actor.RemoveReferences(14@)
7@=0
8@=0
9@=0
10@=0
11@=0
15@=0

Model.Destroy(#BMYBOUN)
Model.Destroy(#EMPEROR)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
model.Destroy(#MAFBOSS)
jump @GUARD_89


К сожалению текста не будет, но текст вы можете увидеть в комментариях.

ILdar07   23 июля 2010 в 14:09

Scripter21
player.canMove – если читать внимательно, можно найти слово player (игрок). Все опкоды с этим словом работают только на ГГ.

Diaz0
Покажи, как ты его создаёшь.

Diaz0   23 июля 2010 в 18:20

AS_actor 0@ stay_idle 9999 ms
где unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@

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

ILdar07   23 июля 2010 в 20:38

Ну ясно, ты его не создаёшь, а берёшь из окружения, всё понятно. Попробуй создать по туториалу: загрузка модели, проверка на загруженность и создание. Тогда он шевелиться не должен по идее.

Diaz0   26 июля 2010 в 20:46

ILdar07 мне вот нужно чтобы именно из окружения брало)идея скрипта такова подходш к прохожему нажимаеш клавишу приезжает смоук и съедает его голову,поэтому мне нужно из окружения,ну я смог решить эту проблему сделал просто чтобы смоук догонял этого прохожего бегом.Всем кто помогал спасибо

Egor_Pskov   27 июля 2010 в 00:59

подходш к прохожему нажимаеш клавишу приезжает смоук и съедает его голову
Хорошая фантазия у тебя!

Diaz0   30 июля 2010 в 18:39

Egor_Pskov спасибо)

Sanchez Ramirez   12 августа 2010 в 13:17

Люди! Помогите нубу!)) Я только-только начинаю разбираться с клео. Решил написать скрипт выключения радио по клавише и обратное включение по той же клавише:

0000: NOP
thread 'radio'

:radio_21
wait 10
if
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @radio_21
jump @radio_48

:radio_48
wait 50
051E: 1@ = get_current_radio_station
if and
0AB0: key_pressed 88
else_jump @radio_48
jump @radio_144

:radio_144
wait 10
041E: set_radio_station 12
else_jump @radio_48
jump @radio_168

:radio_168
wait 50
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_192

:radio_192
wait 10
041E: set_radio_station 1@
else_jump @radio_168
jump @radio_21

Что то получается, но не совсем то. Подскажите, чего не хватает, а что нужно убрать. Заранее благодарю!

ILdar07   12 августа 2010 в 17:14

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0@ = 0

:radio_21
wait 10
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @radio_21
jump @radio_48

:radio_48
wait 50
051E: 1@ = get_current_radio_station
if and
0@ == 0
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_144

:radio_144
wait 10
041E: set_radio_station 12
0@ = 1
jump @radio_168

:radio_168
wait 50
if and
0@ == 1
0AB0: key_pressed 88
else_jump @radio_48
jump @radio_192

:radio_192
wait 10
041E: set_radio_station 1@
0@ = 0
jump @radio_21

Sanchez Ramirez   12 августа 2010 в 18:51

ILdar07 благодарю за помощь! Но судя по всему тут тоже не тот результат, который нужен. Суть состоит в том, что допустим запущена какая нибудь радиостанция, и по нажатию X радио отключается, повторное нажатие - запускается та станция, которая была до отключения (а-ля ГТА 4).

ILdar07   12 августа 2010 в 19:42

:radio_48
wait 50
if and
0@ == 0
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_144

:radio_144
wait 10
051E: 1@ = get_current_radio_station
041E: set_radio_station 12
0@ = 1
jump @radio_168

Sanchez Ramirez   12 августа 2010 в 20:38

Эх, получается, да опять не совсем то. В общем ладно, попробую еще... Так что всё равно благодарю, ILdar07, за помощь.

Sanchez Ramirez   12 августа 2010 в 21:26

Хм, вроде получилось...

HighDefinition   13 августа 2010 в 18:01

Для полной красоты вот так=)
{$CLEO}
0000:
while true
wait 0
if Player.Defined($PLAYER_CHAR)
jf continue
if Actor.Driving($PLAYER_ACTOR)
jf continue
if 0AB0: key_pressed 88
jf continue
051E: 0@ = get_current_radio_station
while 0AB0: key_pressed 88
wait 0
end
041E: set_radio_station 12
while true
wait 0
if not Player.Defined($PLAYER_CHAR)
then
break
end
if not Actor.Driving($PLAYER_ACTOR)
then
break
end
if 0AB0: key_pressed 88
then
while 0AB0: key_pressed 88
wait 0
end
041E: set_radio_station 0@
break
end
end
0B12: 0@ = 0@ XOR 0@
end


Жаль пробелы стираются, претензии не ко мне=(
Кстати я такое делал в своём моде GTA IV radio-HUD=)

Sanchez Ramirez   13 августа 2010 в 20:10

Хм, нажимаю на X - радио выключается, повторное же нажатие приводит к вылету игры. Но тем не менее благодарю за помощь! И ещё: можно ли по подробней насчет мода?

HighDefinition   13 августа 2010 в 20:17

Убери это 0B12: 0@ = 0@ XOR 0@, у тебя вероятно не клео4.
И ещё: можно ли по подробней насчет мода?
Ммм ну знаешь в гта4 такая хигня, когда переключаешь радио, сверху иконки крутятся.

Sanchez Ramirez   13 августа 2010 в 21:26

У меня как раз-таки клео 4))
А, это, как так сделать чтоб вместо надписи иконки были? Тоже скриптом? Хотя, тупой вопрос, конечно))

LikeBAX   14 августа 2010 в 11:02

Задумал написать миссии в main.scm. В моей первой миссии сначала показывается игрок и текст от его лица, затем можно взять миссию в маркере, потом название миссии-сесть на байк-приехать к бару. После того, как игрок садится на байк, ничего не происходит! Я уже попробовал вписать jump - то же самое. Вот раскомпилированный код миссии, до компиляции он выглядел совсем иначе.
После строки Mission0 и до конца:
:MYTRIGGER_314
gosub @MYTRIGGER_350
if
wasted_or_busted
else_jump @MYTRIGGER_341
gosub @MYTRIGGER_641

:MYTRIGGER_341
gosub @MYTRIGGER_676
end_thread

:MYTRIGGER_350
increment_mission_attempts
$ONMISSION = 1
Player.ClearWantedLevel($PLAYER_CHAR)
fade 0 500
Model.Load(#FREEWAY)

:MYTRIGGER_376
not Model.Available(#FREEWAY)
else_jump @MYTRIGGER_399
wait 0
jump @MYTRIGGER_376

:MYTRIGGER_399
1@ = Car.Create(#FREEWAY, -2703.964, 817.1313, 49.561)
0229: set_car 1@ primary_color_to 28 secondary_color_to 29
7@ = Marker.CreateAboveCar(1@)
07E0: set_marker 7@ type_to 1
wait 500
fade 1 500

:MYTRIGGER_458
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458

:MYTRIGGER_484
Marker.Disable(7@)
6@ = Marker.CreateIconAndSphere(1, -2276.867, -119.2239, 35.3203)
jump @MYTRIGGER_511

:MYTRIGGER_511
wait 0
if
0103: actor $PLAYER_ACTOR in_sphere -2276.867 -119.2239 35.3203 radius 4.0 4.0 6.0 sphere 0 stopped_in_car
else_jump @MYTRIGGER_570
jump @MYTRIGGER_601

:MYTRIGGER_570
jump @MYTRIGGER_511

:MYTRIGGER_577
wait 0
if
wasted_or_busted
else_jump @MYTRIGGER_577
jump @MYTRIGGER_641

:MYTRIGGER_601
wait 0
01E3: show_text_1number_styled GXT 'M_PASS' number 0 time 5000 style 4 // MISSION PASSED!~n~~w~$~1~
Player.ClearWantedLevel($PLAYER_CHAR)
0394: play_music 1
gosub @MYTRIGGER_341
return

:MYTRIGGER_641
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1 // ~r~MISSION FAILED!
$ONMISSION = 0
mission_cleanup
create_thread @MYTRIGGER
return

:MYTRIGGER_676
$ONMISSION = 0
mission_cleanup
return

ILdar07   14 августа 2010 в 14:48

:MYTRIGGER_458
if
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458

LikeBAX   14 августа 2010 в 21:01

Не помогает. Вообще-то слово not заменяет if, так что его добавление ничего не изменяет.

HighDefinition   14 августа 2010 в 22:43

Вот это

:MYTRIGGER_458
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458

:MYTRIGGER_484
Marker.Disable(7@)
6@ = Marker.CreateIconAndSphere(1, -2276.867, -119.2239, 35.3203)
jump @MYTRIGGER_511

Заменить на это

:MYTRIGGER_458
wait 0
if Actor.InCar($PLAYER_ACTOR, 1@)
jf @MYTRIGGER_458
Marker.Disable(7@)
0570: 6@ = create_asset_radar_marker_with_icon 1 at -2276.867, -119.2239, 35.3203
jump @MYTRIGGER_511

--EDIT--
Начиная с метки MYTRIGGER_458, и до метки :MYTRIGGER_601 поставить это

:MYTRIGGER_458
wait 0
if Actor.InCar($PLAYER_ACTOR, 1@)
jf @MYTRIGGER_458
Marker.Disable(7@)
02A8: 6@ = create_asset_radar_marker_with_icon 10 at -2276.867, -119.2239, 35.3203 49.8281
while 8103: not actor $PLAYER_ACTOR in_sphere -2276.867, -119.2239, 35.3203 radius 4.0 4.0 6.0 sphere 1 stopped_in_car
wait 0
end
Marker.Disable(6@)

Sanchez Ramirez   17 августа 2010 в 13:59

Здрасте ещё раз. Так вот значит, решил ещё один скрипт написать:

thread 'ADRENALIN'

:ADRENALIN_19
wait 0
04ED: load_animation "SMOKING"

:ADRENALIN_50
wait 0
if and
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
8184: not actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
else_jump @ADRENALIN_50
jump @ADRENALIN_96

:ADRENALIN_96
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1 // versionA
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
Player.SetDrunkVisuals($PLAYER_CHAR, 50)
0169: set_fade_color_RGB 200 10 0
fade 0 1000
wait 1000
fade 1 1000
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
jump @ADRENALIN_239

:ADRENALIN_239
wait 50000
Player.InfiniteRun($PLAYER_CHAR) = False
Player.SetDrunkVisuals($PLAYER_CHAR, 0)
015D: set_gamespeed 1.0
jump @ADRENALIN_19

Суть скрипта: при нажатии на T Карл типа глотает таблетку с адреналином, экран краснеет, камера шатается, и бег бесконечен, а также отнимается 20 пунктов здоровья. После окончания скрипта всё возвращается на круги своя... кроме здоровья.

Проблема: скрипт должен работать, если только у Карла здоровья достаточно, чтоб принять таблетку. То есть если таблетка отнимает 20 пунктов, то у Карла должно быть 21 или больше, иначе будет баг.

Я всяко пытался, но получается наоборот: скрипт работает только тогда, когда у Карла меньше или ровно 21 здоровья.

HighDefinition   17 августа 2010 в 14:21

2Sanchez Ramirez
Понятное дело, ты ведь ставишь проверку, меньше ли здоровья у игрока. Т.е,
Это
8184: not actor $PLAYER_ACTOR health >= 21
Заменить на это
0184: actor $PLAYER_ACTOR health >= 21
Условие Player.Defined($PLAYER_CHAR) лучше написать отдельно от остальных. И ещё. Вот эти строчки
-----------------------------
jump @ADRENALIN_96

:ADRENALIN_96
-----------------------------
Можно смело убрать. То есть, примерно так можно записать:
-----------------------------
:ADRENALIN_50
wait 0
if Player.Defined($PLAYER_CHAR)
jf @ADRENALIN_50
if and
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @ADRENALIN_50
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1 // versionA
...
-----------------------------

Sanchez Ramirez   17 августа 2010 в 14:40

Всё равно не робит. Насчёт 8184: not actor $PLAYER_ACTOR health >= 21. Я писал так, убирал not, но результат один и тот же. То есть всяко-разно писал, а результата - 0. Всё равно работает только когда меньше или ровно 21.

HighDefinition   17 августа 2010 в 14:53

У меня всё работает.
--------------------------------------
{$CLEO}
thread 'ADRENALIN'
:ADRENALIN_19
wait 0
04ED: load_animation "SMOKING"

:ADRENALIN_50
wait 0
if Player.Defined($PLAYER_CHAR)
jf @ADRENALIN_50
if and
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @ADRENALIN_50
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
Player.SetDrunkVisuals($PLAYER_CHAR, 50)
0169: set_fade_color_RGB 200 10 0
fade 0 1000
wait 1000
fade 1 1000
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
wait 50000
Player.InfiniteRun($PLAYER_CHAR) = False
Player.SetDrunkVisuals($PLAYER_CHAR, 0)
015D: set_gamespeed 1.0
jump @ADRENALIN_19
--------------------------------------------------

Sanchez Ramirez   17 августа 2010 в 15:17

О! Терь робит как часы! Респект тебе! А вот ещё что: есть ли какой то опкод/параметр чтобы "Motion Blur" включить?

ILdar07   17 августа 2010 в 15:36

Нету. Есть что-то типа:

08FD: enable_heat_visuals 1 // 0 – выкл.

Sanchez Ramirez   17 августа 2010 в 15:49

Жаль! Ну и на этом спасибо!

HighDefinition   17 августа 2010 в 16:01

Можно через память, но у меня этих адрессов нигде нету записанных.

Sanchez Ramirez   17 августа 2010 в 17:15

Ну да ладно, хрен с ним! Главное - помог ты мне!))

Sanchez Ramirez   18 августа 2010 в 17:28

А вот ещё: подскажите пжлст, как заставить педа выполнить анимацию? Вот я подошёл к нему, нажал кнопку - он должен выполнить анимацию, но не выполняет. Я писал вот как:
..........
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as $BUY
if
Actor.Defined($BUY)
..........
if or
Actor.Model($BUY) == #WMYDRUG
Actor.Model($BUY) == #BMYDRUG
..........
0605: actor $BUY perform_animation_sequence "DRUGS_BUY" IFP_file "GANGS" 4.0 loop 0 0 0 0 time -1
..........
$BUY - барыга.
DRUGS_BUY - это типа он наркоту даёт.

ILdar07   18 августа 2010 в 19:21

Любой IFP-файл, кроме "PED", надо предварительно загружать опкодом 04ED, проверять – 04EE, выгружать – 04EF.

Sanchez Ramirez   18 августа 2010 в 20:18

Ааааааа)) Ясно! Чё-то я тупанул конкретно))) Ну просто я пока не очень разбираюсь во всех этих тонкостях)) Только так, в общих чертах.

Sanchez Ramirez   19 августа 2010 в 14:19

Итак, предлагаю чуть оживить тему!)) У меня, значит, снова вопрос:
Я заспавнил чела, под мостом у дома CJ'я:

actor.Create($SELLER,4,#WMYDRUG,2433.426,-1678.631,13.74978)
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1) - тут всё в порядке

Теперь мне нужно, чтобы когда я к нему подхожу (ИМЕННО К НЕМУ!), по нажатию кнопки происходила анимация (АНИМАЦИЯ ЧЕЛА, А НЕ CJ'я), к примеру. Так как мне сделать, чтоб это распространялось только к этому челу и чтоб вообще работало? А то я пробовал всяко, но либо его под мостом нет, либо нажатие кнопки не работает, либо вообще начинаются дикие тормоза. Я уже запутался что после чего должно быть.

ILdar07   19 августа 2010 в 16:54

Sanchez Ramirez, кидай код, разберёмся.

Sanchez Ramirez   19 августа 2010 в 17:03

{$CLEO}
thread "BUY"
:BUY_2
wait 0
model.Load(#WMYDRUG)
038B: load_requested_models
04ED: load_animation "SMOKING"
04ED: load_animation "GANGS"

:BUY_4
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @BUY_4
if and
model.Available(#WMYDRUG)
04EE: animation "GANGS" loaded
jf @BUY_4
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.0 1.0 1.0 handle_as $SELLER
if
Actor.Defined($SELLER)
else_jump @BUY_8
actor.Create($SELLER,17,#WMYDRUG,2433.426,-1678.631,13.74978)
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1)
if
0AB0: key_pressed 66
jf @BUY_4
0605: actor $PLAYER_ACTOR perform_animation_sequence "DEALER_DEAL" IFP_file "GANGS" 4.0 loop 0 0 0 0 time -1
wait 1000
Player.Money($PLAYER_CHAR) += -300
04EF: release_animation "GANGS"
jump @BUY_6

:BUY_6
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @BUY_6
if and
not Actor.Dead($PLAYER_ACTOR)
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 20
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @BUY_6
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
0169: set_fade_color_RGB 0 0 0
fade 0 1000
wait 1000
fade 1 1000
08B2: enable_thermal_vision 1
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
wait 25000
Player.InfiniteRun($PLAYER_CHAR) = False
0169: set_fade_color_RGB 255 255 255
fade 0 1000
wait 1000
fade 1 1000
08B2: enable_thermal_vision 0
015D: set_gamespeed 1.0
jump @BUY_2

:BUY_8
wait 0
Actor.RemoveReferences($SELLER)
jump @BUY_2

Суть: подходишь к челу под мостом, жмёшь B, деньги -300, теперь вторая часть скрипта - использование таблетки с адреналином)) Ну эта часть функционирует на ура, а вот первая...

ILdar07   19 августа 2010 в 17:26

Сначала ты берёшь из окружения случайного педа и называешь его $SELLER. Далее ты создаёшь актёра под тем же именем. Зачем? Или бери случайного, или создавай нового, к тому же имя одинаковое. Потом проверка на нажатие клавиши. Если не нажата, то скрипт прыгает почти на самое начало и опять идёт то же самое: получение педа, создание тёзки-актёра (причём старый, уже созданный, ещё в памяти). Вот отсюда тормоза: игра создаёт в одной точке кучу человеков. Поэтому следует разделить поток:
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1)
:BUY_5
wait 0
if
0AB0: key_pressed 66
jf @BUY_5

Sanchez Ramirez   19 августа 2010 в 17:35

Ну поэтому я и говорю, что запутался. И поэтому спрашиваю: как мне сделать, чтоб использовался не случайный пед из окружения, а именно тот, который под мостом? А насчёт тормозов эт я понял, просто их там бесконечное кол-во появляется. В общем ладно, ща попробую.

ILdar07   19 августа 2010 в 17:49

Чтоб использовался не случайный пед из окружения, а именно тот, который под мостом, не надо писать опкод 0A3E, а надо создавать нового актёра под мостом и его использовать (в 0605 писать не $PLAYER_ACTOR, а $SELLER).

Sanchez Ramirez   19 августа 2010 в 17:56

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

ILdar07   19 августа 2010 в 18:11

Если у тебя слабое воображение, в скриптинге будет сложно.
if and
00F3: actor $PLAYER_ACTOR near_actor $SELLER radius 1.5 1.5 0 on_foot
0AB0: key_pressed 66
jf @BUY_5

Ещё где-то слышал, что CLEO не любит глобальные переменные. Т.е. вместо $SELLER лучше писать 1@, к примеру. Но если работает, всё нормально.

Sanchez Ramirez   19 августа 2010 в 18:15

Не, воображение не то что слабое, просто я НЕ ЗНАЮ ЕЩЁ всех этих опкодов и тд., а насчёт переменных - всё робит, нет необходимости переименовывать.

Sanchez Ramirez   20 августа 2010 в 19:59

А кстати, реально ли сделать так, чтоб когда игрок берёт бронежилет, он был на нём (одет как бы)?

VitalRus   21 августа 2010 в 19:21

Sanchez Ramirez
если есть модель броника, то можно ее напялить на определенное место на игроке, хоть на голову, только была бы и все.

Sanchez Ramirez   22 августа 2010 в 13:40

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

Egor_Pskov   22 августа 2010 в 16:10

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

VitalRus   22 августа 2010 в 16:49

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

Sanchez Ramirez   22 августа 2010 в 17:23

Ну так это я понял, просто я не знаю как именно модель броника прилепить к плееру.

ILdar07   22 августа 2010 в 20:36

А не проще через одежду?
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Первый "VEST" – название текстуры из player.img, второй – модель оттуда же. Можно, наверно, похимичить с текстурой какой-нибудь майки или куртки, сделать как бронежилет. Но это уже не скриптинг.

Sanchez Ramirez   22 августа 2010 в 21:27

Ну я так и думал в общем то. Ладно, попробую чё нить сделать.

sneake   23 августа 2010 в 09:25

как сделать скрипт чтобы можно было использовать укрытия и стрелять из них (как в gta 4)??? Можно ли сделать чтобы казино 4 дракона приносило прибыль после прохождения всех миссий за триад, возможность купить клуб Джиззи?

ILdar07   23 августа 2010 в 11:22

sneake, гляди 30.05.10 01:24, может пригодится.

VitalRus   23 августа 2010 в 16:49

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

Sanchez Ramirez   27 августа 2010 в 20:41

Снова всем привет! Назрел у меня вопрос, снова:

{$CLEO .cs}
thread 'nitro'

:nitro_4
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @nitro_4
if
Actor.Driving($PLAYER_ACTOR)
jf @nitro_4
if
Actor.DrivingVehicleType($PLAYER_ACTOR, #BULLET)
jf @nitro_4
03CF: load_wav 45400 as 1
03C0: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
1@ == 0
03D0: wav 1 loaded
jf @nitro_4
jump @nitro_25

:nitro_25
wait 0
03D1: play_wav 1
if
80E1: not player 0 pressed_key 14
jf @nitro_25
wait 10
01EC: make_car 0@ very_heavy 1
040D: unload_wav 1
04BA: set_car 0@ speed_to 30.0
066C: 2@ = attach_particle "explosion_molotov" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 1.0 0.0 flag 1
066C: 3@ = attach_particle "explosion_tiny" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 0.0 0.0 flag 1
066C: 4@ = attach_particle "fire" to_car 0@ with_offset 0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
066C: 5@ = attach_particle "fire" to_car 0@ with_offset -0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
064C: make_particle 2@ visible
064C: make_particle 3@ visible
064C: make_particle 4@ visible
064C: make_particle 5@ visible
wait 1000
0650: destroy_particle 2@
0650: destroy_particle 3@
wait 1000
0650: destroy_particle 4@
0650: destroy_particle 5@
01EC: make_car 0@ very_heavy 0
jump @nitro_4

Суть: сидя в тачке bullet, игрок жмёт газ и тормоз одновременно, тормоз отпускается и у тачки из под колёс идёт огонёк, а сама тача разгоняется на приличную скорость.

Что требуется: я хочу сделать так, чтобы газ и тормоз надо было держать 3 секунды, т.е. если держишь 1 секунду - всё начинается по новой до тех пор, пока не продержишь 3 секунды. Но у меня не получается ни как.

Жду совета =)

HighDefinition   27 августа 2010 в 21:04

Переменные 32@ и 33@ - таймеры.
32@ с отсчётом вперёд, 33@ - с обратным отсчётом.
Когда будут нажаты клавиши, обнули (другим словом, "включи") таймер. Потом в цикле делай проверки - нажаты ли до сих пор клавиши, и дошёл ли таймер до отметки в 3000 мс. Также в этом цикле желательно сделать проверку на существ. игрока (а вдруг что-то приключится).

if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
then
32@ = 0 //Обнуляем
while true // Цикл
wait 0
if or
80E1: NOT key_pressed 0 14
80E1: NOT key_pressed 0 16
then
jump @OTPUSTIL
end
if not Player.Defined($Player_Char)
then
jump @WTF
end
if 32@ > 3000
then
jump @VSE_OK
end
end // while
end // if and

:WTF
//Игрок не найден

:OTPUSTIL
//Играющий не продержал клавиши 3 секунды

:VSE_OK
//Играющий продержал клавиши на протяжении 3 секунд.

Sanchez Ramirez   27 августа 2010 в 23:23

Хм, как только залезаю в машину - сразу срабатывает. Я так понял: если Игрок не найден, то возвращаемся в начало (т.е. :nitro_4), если Играющий не продержал клавиши 3 секунды, то тоже в начало, если Играющий продержал клавиши на протяжении 3 секунд, то переходим к :nitro_25. Так?

HighDefinition   27 августа 2010 в 23:46

Потесть=)
{$CLEO .cs}
thread 'nitro'

:nitro_4
wait 0
if Player.Defined($PLAYER_CHAR)
jf @nitro_4
if Actor.Driving($PLAYER_ACTOR)
jf @nitro_4
if Actor.DrivingVehicleType($PLAYER_ACTOR, #BULLET)
jf @nitro_4
03CF: load_wav 45400 as 1
03C0: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
1@ == 0
jf @nitro_4
while 83D0: NOT wav 1 loaded
wait 0
end
32@ = 0
while true
wait 0
if NOT Player.Defined($Player_Char)
then
jump @RELEASE
end
if or
NOT Car.Defined(0@)
80E1: NOT key_pressed 0 14
80E1: NOT key_pressed 0 16
then
jump @RELEASE
end
if 32@ > 3000
then
jump @nitro_25
end
end

:nitro_25
03D1: play_wav 1
wait 10
01EC: make_car 0@ very_heavy 1
04BA: set_car 0@ speed_to 30.0
066C: 2@ = attach_particle "explosion_molotov" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 1.0 0.0 flag 1
066C: 3@ = attach_particle "explosion_tiny" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 0.0 0.0 flag 1
066C: 4@ = attach_particle "fire" to_car 0@ with_offset 0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
066C: 5@ = attach_particle "fire" to_car 0@ with_offset -0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
064C: make_particle 2@ visible
064C: make_particle 3@ visible
064C: make_particle 4@ visible
064C: make_particle 5@ visible
wait 1000
0650: destroy_particle 2@
0650: destroy_particle 3@
wait 1000
0650: destroy_particle 4@
0650: destroy_particle 5@
01EC: make_car 0@ very_heavy 0

:RELEASE
040D: unload_wav 1
Car.RemoveReferences(0@)
jump @nitro_4

Sanchez Ramirez   28 августа 2010 в 00:17

Вроде всё робит =) Благодарю за помощь, иначе я бы не справился сам, по крайней мере пока что.

преступник   12 сентября 2010 в 15:40

Скажите пожалуйста! Как можно сделать скрипт чтобы если прохожий ударил кого-нибудь из гангстеров в банде, чтобы они не убегали от него а убили.
А то тупо они вооружены, обычный чел ударил они убегают.

LikeBAX   17 сентября 2010 в 20:42

преступник, они просто боятся копов:) Можно скрипт но проще прописать через ped.dat.
Господа скриптеры, срочно прошу вашей помощи, у меня тут заминка с CLEO миссией.
Начинается миссия, и идут одни ролики, без всяких поездок на маркер, но это ведь есть в скрипте! Потом игрок падает (понятно, это из-за интерьера, это ладно, потом надо подредактировать), потом игра возобновляется и надо убить Райдера и Смоука, и все. Потом миссия начинается снова!

Стартер миссии (.cs):
{$CLEO .cs}

//-------------MAIN---------------
thread "MISSION_STARTER"
wait 0
1@ = Marker.CreateIconAndSphere(15, 927.9838, -1063.212, 24.2891)

:MISSION_STARTER_45
wait 250
if and
Player.Defined($PLAYER_CHAR)
0102: actor $PLAYER_ACTOR in_sphere 927.9838 -1063.212 24.2891 radius 2.0 2.0 1.0 sphere 1 stopped_on_foot
jf @MISSION_STARTER_45
Marker.Disable(1@)
00BA: text_styled 'MIS_NAME' 1000 ms 2
0A94: start_custom_mission "MOMS"
$ONMISSION = 1

:MISSION_STARTER_117
wait 0
if
$ONMISSION == 0
jf @MISSION_STARTER_117
0A93: end_custom_thread

Миссия (.cm):
{$CLEO .cm}

//-------------MAIN---------------
thread 'MOMS'
increment_mission_attempts
$ONMISSION = 1
gosub @MOMS_64
if
wasted_or_busted
jf @MOMS_55
gosub @MOMS_444

:MOMS_55
gosub @MOMS_490
0A93: end_custom_thread

:MOMS_64
increment_mission_attempts
$ONMISSION = 1
Player.ClearWantedLevel($PLAYER_CHAR)
wait 0
fade 0 500
Model.Load(#BFORI)
Model.Load(#FAM1)
Model.Load(#AK47)
Model.Load(#BALLAS1)
Model.Load(#MAJESTIC)
023C: request_special_actor 'SMOKEV' as 1
023C: request_special_actor 'RYDER2' as 2
038B: load_requested_models

:MOMS_MISSION
wait 0
if and
Player.Defined($PLAYER_CHAR)
Model.Available(#BFORI)
jf @MOMS_MISSION
09C7: change_player $PLAYER_CHAR model_to #BFORI
Player.Build($PLAYER_CHAR)
actor.PutAt($PLAYER_ACTOR, 932.7957, -1057.7502, 24.7584)
fade 1 1100
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(929.7402, -1060.5007, 24.3759, 0.0, 0.0, 0.0)
Camera.OnPed($PLAYER_ACTOR, 15, 2)
00BC: show_text_highpriority GXT 'MOMS_1' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
02A8: 6@ = create_marker 0 at 2492.5503 -1683.4075 13.3375
Marker.SetIconSize(6@, 3)
00BC: show_text_highpriority GXT 'MOMS_2' time 3000 flag 1
jump @MOMS_MISSION2

:MOMS_MISSION2
8103: not actor $PLAYER_ACTOR in_sphere 2492.5503 -1683.4075 13.3375 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION2
Marker.Disable(6@)
02A8: 7@ = create_marker 0 at 2493.2463 -1701.9479 1014.7424
Marker.SetIconSize(7@, 3)
00BC: show_text_highpriority GXT 'MOMS_3' time 3000 flag 1
jump @MOMS_MISSION3

:MOMS_MISSION3
8103: not actor $PLAYER_ACTOR in_sphere 2493.2463 -1701.9479 1014.7424 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION3
Marker.Disable(7@)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2492.741, -1701.9777, 1014.7521, 0.0, 0.0, 0.0)
Camera.PointAt(2492.0454, -1702.019, 1014.7654, 1)
00BC: show_text_highpriority GXT 'MOMS_4' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_MISSION4

:MOMS_MISSION4
wait 0
if and
Model.Available(#FAM1)
Model.Available(#BALLAS1)
Model.Available(#MAJESTIC)
jf @MOMS_MISSION4
actor.create(16@,8,#FAM1,2456.53, -1655.0756, 13.3047)
01B2: give_actor 16@ weapon 30 ammo 2000
actor.create(17@,7,#BALLAS1,2457.0996, -1658.8373, 13.3047)
actor.Dead(17@)
car.Create(20@,#MAJESTIC, 2451.8899, -1662.7943, 13.3047)
car.Angle(20@) = 180.0
02A8: 8@ = create_marker 0 at 2494.5471 -1686.0857 13.5128
Marker.SetIconSize(8@, 3)
00BC: show_text_highpriority GXT 'MOMS_5' time 3000 flag 1
jump @MOMS_MISSION5

:MOMS_MISSION5
8103: not actor $PLAYER_ACTOR in_sphere 2494.5471 -1686.0857 13.5128 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION5
Marker.Disable(8@)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2464.6309, -1659.0415, 13.2957, 0.0, 0.0, 0.0)
00BC: show_text_highpriority GXT 'MOMS_6' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_MISSION6

:MOMS_MISSION6
wait 0
if
Model.Available(#AK47)
jf @MOMS_MISSION6
032B: 30@ = create_weapon_pickup #AK47 type 15 ammo 200 at 2457.0996 -1658.8373 13.3047
02A8: 24@ = create_marker 0 at 936.0135 -1103.7766 24.3054
Marker.SetIconSize(24@, 3)
00BC: show_text_highpriority GXT 'MOMS_7' time 3000 flag 1
jump @MOMS_MISSION7

:MOMS_MISSION7
8103: not actor $PLAYER_ACTOR in_sphere 936.0135 -1103.7766 24.3054 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION7
Marker.Disable(24@)
jump @MOMS_MISSION8

:MOMS_MISSION8
wait 0
if and
023D: special_actor 1 loaded
023D: special_actor 2 loaded
jf @MOMS_MISSION8
actor.create(40@,mission1, #special01, 902.9046, -1078.7025, 24.2969)
actor.create(41@,mission1, #special02, 902.8586, -1086.0817, 24.2969)
01B2: give_actor 40@ weapon 30 ammo 2000
01B2: give_actor 41@ weapon 30 ammo 2000
wait 500
05E2: AS_actor 40@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 41@ kill_actor $PLAYER_ACTOR
00BC: show_text_highpriority GXT 'MOMS_8' time 3000 flag 1
jump @MOMS_MISSION9

:MOMS_MISSION9
wait 0
if and
actor.Dead(40@)
actor.Dead(41@)
jf @MOMS_MISSION9
09C7: change_player $PLAYER_CHAR model_to #NULL
Player.Build($PLAYER_CHAR)
Model.Destroy(#BFORI)
actor.PutAt($PLAYER_ACTOR, 2494.8694, -1703.6049, 1018.3438)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2492.4409, -1705.6853, 1018.3438, 0.0, 0.0, 0.0)
Camera.OnPed($PLAYER_ACTOR, 15, 2)
00BC: show_text_highpriority GXT 'CJ_WAKEUP' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_360

:MOMS_336
wait 0
if
wasted_or_busted
jf @MOMS_360
jump @MOMS_444

:MOMS_360
wait 0
01E3: show_text_1number_styled GXT 'M_PASSD' number 0 time 5000 style 4 // MNCCNR BSZOLHEHA!~n~~w~$~1~
Player.ClearWantedLevel($PLAYER_CHAR)
0394: play_music 1
Model.Destroy(#FAM1)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
mission_cleanup
return

:MOMS_444
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1 // ~r~MNCCNR ZPOBALEHA!
$ONMISSION = 0
Model.Destroy(#FAM1)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
mission_cleanup
return

:MOMS_490
$ONMISSION = 0
return

ILdar07   18 сентября 2010 в 00:19

После :MOMS_MISSION2, :MOMS_MISSION3, :MOMS_MISSION5 и :MOMS_MISSION7 надо писать

wait 0
if

LikeBAX   18 сентября 2010 в 14:45

ILdar07, мне говорил опытный скриптер про not...,ну ок попробую так, обычным способом.

преступник   23 сентября 2010 в 17:36

ped.dat? Я делал через опкод, но они начинают испытывать неприязнь к копам.Я не хочу чтобы они приставали к копам.Лучше скрипт.Пожалуйста помогите!

преступник   26 сентября 2010 в 14:14

CraZZZy-GameRRR!Я 08-03.Просто логин теперь другой. Помоги сделать скрипт чтобы если прохожий ударил гангстеров чтобы они убили, а убегали от него.
Этот скрипт выбирает случайного прохожего.Я пробывал расставить по разному, но не вышло.Помоги всё расставить.Пожалуйста!
: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

LikeBAX   26 сентября 2010 в 19:20

Не знаю, как завершить мою CLEO миссию, при смерти игрока вылетает, помогите плиз (здесь только код провала, сама миссия выше):

:MOMS_444
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @MOMS_444
jump @MOMS_511

:MOMS_511
wait 0
if
Actor.Dead($PLAYER_ACTOR)
jf @MOMS_511
gosub @FAIL
$ONMISSION = 0
mission_cleanup
end_thread

:FAIL
09C7: change_player $PLAYER_CHAR model_to #NULL
Player.Build($PLAYER_CHAR)
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
01F0: set_max_wanted_level_to 6
Model.Destroy(#BFORI)
Model.Destroy(#FAM1)
Model.Destroy(#AK47)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
return

ILdar07   26 сентября 2010 в 20:15

В миссиях обычно используют wasted_or_busted. Почему вылетает? Потому что после смерти игрок не сразу доступен для каких-либо действий над ним (к примеру, смена модели). Так что либо используй опкод 0112, либо после :FAIL надо поставить задержку wait. А текст о провале миссии перенести перед gosub @FAIL.

преступник   28 сентября 2010 в 13:31

ILdar07! Ну помоги пожалуйста! У меня ни как скрипт не работает!Я не понимаю как всё расстановить!
Опкод 0AB5 это 1@ в конце любой прохожий?
: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

ILdar07   28 сентября 2010 в 14:17

Да, в 1@ записывается любой случайный пед, потом проверка, «поймала» ли игра человека, если нет (1@ = -1), то скрипт прыгает в начало и всё заново.

Sanchez Ramirez   28 сентября 2010 в 17:00

Всем снова привет! Хочу узнать, можно ли написать в скрипте, что в данный момент на игрока наводятся ракеты? А точнее говоря есть ли такой опкод и тд.? Я хочу сделать так: когда игрок сидит в Гидре, и на него наводятся другие истребители или ПВО, то воспроизводится сигнал тревоги.

ILdar07   28 сентября 2010 в 17:12

А зачем? По-моему, этот сигнал и так воспроизводится при запуске ракеты в игрока.

Sanchez Ramirez   28 сентября 2010 в 17:44

Нет, я не этот сигнал имел в виду. Хочу реальный звук запихнуть.

ILdar07   28 сентября 2010 в 17:53

Тогда надо найти в аудиофайлах этот сигнал и заменить его реальным звуком. А это уже не скриптинг.






GTA V
GTA: Vice City Stories
GTA IV
GTA: San Andreas
GTA: Vice City
GTA 3
GTA 2
GTA
GTA: Chinatown Wars
GTA: Liberty City Stories
Звуковые архивы: самое интересное и необычное (14)
Mule и steed (0)
Секреты и приколы GTA 5 (466)
Пропал трафик в игре что делать? (1)
GTA5 Мутное заднее стекло и боковое в машине от 1-го лица (15)
Что за музыка? (1)
Чит-код активировался сам во время гонки (6)
Тайны альфа/бета-версии GTA: VC (228)
Болталка GTA.ru (544)
Grand Theft Auto 2 намертво зависает - Решение! (0)
Нет некоторых машин на Xbox 360 (1)
Впечатления от GTA 5 (PC) (271)
GTA III Re3 + xbox edition re3 (1)
Тайны альфа-/бета-версии GTA: SA (454)
Помогите найти репак (2)
Тайны альфа/бета-версии GTA III (449)
Как вы тратите деньги в GTA IV? (217)
popcycle.dat в the ballad of gay tony (1)
Имущество и бизнес в GTA: VCS (38)
NOOSE Patriot в трафике (1)

Последние добавленные
Grand Theft Auto: San Andreas "Убийства людей приносят деньги, восстанавливают здоровье и броню, макс. уровень розыска на выбор (SA) 1.0" 101Mb
Grand Theft Auto: San Andreas "Все машины пуленепробиваемые и ударостойкие, но уязвимы к огню и взрывам (SA) 1.0" 335Mb
Grand Theft Auto: San Andreas "Погоня Чужих на вайсидском гермесе за Сиджеем (SA)1.0" 4,981Mb
Grand Theft Auto: San Andreas "Оптимизация для старых ноутбуков (SA) v.1.3" 792Mb
GTA5 "Drift v3.9" 1,078Mb
Grand Theft Auto 4 "PS4/3 DualShock Buttons" 322Mb
Grand Theft Auto: San Andreas "Укрепление макушек всех жителей Сан Андреса на выбор (SA) 1.0" 172Mb
Grand Theft Auto: San Andreas "Всеобщее вооружение всех жителей Сан Андреса на выбор (SA) 1.0" 665Mb
Grand Theft Auto: San Andreas "Травля Сиджея магучими химерами на выбор (SA) 1.0" 7,499Mb
Grand Theft Auto 5 "Language Tool v3.3" 1,955Mb

Самые популярные
Патч GTA 4 v1.0.7.0 (скачано: 198407)
Патч GTA 4 v 1.0.3.1/1.0.4.0 (RU/ENG) (скачано: 171660)
GTA "SA-MP 0.3.7 R4 (клиент R4 и сервера R2)" (скачано: 155530)
GTA 4 "Social Club v1.1.3.0" (скачано: 139990)
Патч GTA 4 v1.0.6.1 Русская версия (скачано: 130041)
Русификатор Grand Theft Auto IV и Grand Theft Auto: Episodes from Liberty City [Steam] (скачано: 120760)
Grand Theft Auto 4 (GTA IV): Русификатор (текст) [1.0.7.0] (скачано: 113695)
GTA MTA:SA v1.3.1 (скачано: 104077)
Патч GTA 4 v1.0.1.0 EN (скачано: 98324)
Патч GTA 4 v 1.0.2.1/1.0.3.0 (RU/ENG) (скачано: 91115)






Rambler's Top100






, Need for Speed Carbon на Nintendo DS, Soldiers: Heroes of War 2 скриншоты, Hearts of Iron 2 patch
   Copyright ©  наверх | главная | e-mail