#2476 14-09-2010 20:49

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

Sergey81 wrote:

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

Спрашивал - отвечаю:D
Переименовал .asi в .dll, загружал dll через клео. Там же делал проверку, если гг в машине, менял адрес в памяти, найденный в исходниках. Если гг вышел из машины, возращал значение обратно. Особо не тестил, но на первый взгляд работает. Сначала использовал клео из за 0AA3: free_library $hLIB, но он никакого эффекта не даёт, так что по идее можно обойтись без переименования.

Offline

#2477 15-09-2010 06:58

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

@BoPoH -

0384: show_text_1string GXT 'твой GXT' string 2@s time 15000 1

Или через CLEO 4:

0ACC: show_text_lowpriority 2@s time 1000
0ACD: show_text_highpriority 2@s time 100
0AD0: show_formatted_text_lowpriority "%c" time 2000 2@
0AD1: show_formatted_text_highpriority "%c" time 2000 2@

Offline

#2478 15-09-2010 13:35

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

Alien wrote:

@BoPoH -

0384: show_text_1string GXT 'твой GXT' string 2@s time 15000 1

нет, нет, не то. Мне нужно использовать переменную в качестве названия GXT записи...тоесть например у меня есть GXT запись с названием 66, и у меня есть переменная, которая равна 66, теперь мне нужно подставить эту переменную например вот так -

00BC: show_text_highpriority GXT 1@ time 1000 flag 1  // 1@ - это та переменная со значением 66

но ведь проблема в том что тут нужно использовать переменную с типом String... вот мне и нужно конвертировать переменную типа Integer в переменную типа String...


userbar.png

Offline

#2479 15-09-2010 13:54

d88
Registered: 15-12-2009
Posts: 254
Website

Re: Один вопрос

Есть какой-нибудь код, что-то вроде кода 03EE:   player $PLAYER_CHAR controllable, который проверяет отключение управления игроком кодом

01B4: set_player $PLAYER_CHAR can_move 1

Проблема в том, что 03EE: не срабатывает даже тогда, когда игрок управляем. Например если игрок падает с высоты, он не срабатывает, хотя управление не отключено.

Last edited by d88 (15-09-2010 14:50)

Offline

#2480 15-09-2010 14:28

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Один вопрос

d88, ты хочешь сказать, что я управляю игроком в полёте?

Offline

#2481 15-09-2010 14:30

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

d88 wrote:

Есть какой-нибудь код, что-то вроде кода 03EE:   player $PLAYER_CHAR controllable, который проверяет отключение управления игроком кодом

01B4: set_player $PLAYER_CHAR can_move 1

Проблема в том, что 03EE: срабатывает даже тогда, когда игрок управляем. Например если игрок падает с высоты, он срабатывает, хотя управление не отключено.

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

01B4: set_player $PLAYER_CHAR can_move 1
$can_move = 1

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


userbar.png

Offline

#2482 15-09-2010 14:48

d88
Registered: 15-12-2009
Posts: 254
Website

Re: Один вопрос

~AquaZ~ wrote:

d88, ты хочешь сказать, что я управляю игроком в полёте?

Нет, но это другое. В полёте ведь можно управлять камерой, например. Или ещё пример – если махнуть кулаком, то пока игрок стоит в боевой позе, та проверка тоже не срабатывает, хотя can_move = 0.

BoPoH, спасибо, попробую.

Offline

#2483 15-09-2010 16:04

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

вероятно опкодом 03EE можно проверять только игровые моменты, как например ты сказал если махнуть кулаком, а не состояние опкодов типа 01B4...


userbar.png

Offline

#2484 16-09-2010 14:10

DOG-GHOST
From: Honduras
Registered: 28-02-2010
Posts: 14
Website

Re: Один вопрос

В Вайс-Сити после прохождения на 100 % игры в особняке появляются телохранители, бесконечное оружие и т.д.

Вопрос вот какой: За это отвечает какой-то опкод ? И, можно ли скриптами с начала игры все это включить ?

Offline

#2485 16-09-2010 14:58

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Один вопрос

в особняке появляются телохранители

За это отвечает поток @GANGMEM

create_thread @GANGMEM

бесконечное оружие и т.д.

переменная $102

:MAIN_5391
if 
  100.0 > $102 // floating-point values 
else_jump @MAIN_5424 
058C: $102 = percentage_completed 
jump @MAIN_5526 

:MAIN_5424
if 
  $91 == 0 // integer values 
else_jump @MAIN_5526 
055B: $1352 = create_clothes_pickup 12 at -382.6 -585.9 25.3 
03E5: text_box 'CUNTY'  // ?o˜a® o?e??a ?ocya˜?e?a ˜ ?o ecy?e ?epceyy?!
055E: set_player $player_char max_health += 50 
055F: set_player $player_char max_armour += 50 
035E: set_player $player_char armour_to 200 
0222: set_player $player_char health_to 200 
wait 5000 
03E5: text_box 'HELP61'  // Te?ep? ? ˜ac ?eo?pa??¦e??oe ¦?c?o ?aypo? ? ?˜o??o? ?a?ac ?po¦?ocy? ? ˜cex yp.cpe?cy˜.
$91 = 1 // integer values 

:MAIN_5526

Offline

#2486 16-09-2010 15:57

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

ну так что, никто не знает как конвертировать переменную Integer в переменную String??? что-то мне начинает казаться, что это невозможно....может можно как-то значение переменной типа Integer записать в текстовый файл, а потом прочитать оттуда это значение как String?...

Last edited by BoPoH (16-09-2010 15:57)


userbar.png

Offline

#2487 16-09-2010 17:54

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

Ну так пробуй. Записывай значение в переменную, потом в файл, потом из файла в переменную (строковую).

Offline

#2488 16-09-2010 18:27

mr.Andrei
Registered: 03-07-2010
Posts: 38
Website

Re: Один вопрос

Ещё один вопрос: можно ли проверить,  имеется ли у актёра то или иное оружие?


SNKillers.net - всё о взломе и защите социальных сетей

Offline

#2489 16-09-2010 18:54

Silent
Registered: 08-05-2010
Posts: 29

Re: Один вопрос

Я думаю уто етот опкод будет хороший - мой руский язык может "переводить" твой вопрос плохо, извините если это не то sad

0491:   actor $PLAYER_ACTOR has_weapon 46

Offline

#2490 16-09-2010 19:31

mr.Andrei
Registered: 03-07-2010
Posts: 38
Website

Re: Один вопрос

Всё подходит, СПАСИБО!


SNKillers.net - всё о взломе и защите социальных сетей

Offline

#2491 16-09-2010 19:31

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

ммм... Sw[ee]t, не научишь как это делать?)) я это сказал, только потому что знал что это возможно, но как это сделать я не знаю, хотя сейчас попробую перебрать справку....


userbar.png

Offline

#2492 16-09-2010 21:08

Sanchez
Registered: 18-08-2006
Posts: 280

Re: Один вопрос

@BoPoH - извратский метод с помощью 0AC8\0AC9:

{$CLEO}
0000:
while true
    wait 0
    if
        0AB0:  key_pressed 0x73
    then
        if
            0AA2: 0@ = load_library "msvcrt.dll" // IF and SET
        then
            if
                0AA4: 1@ = get_proc_address "_ultoa" library 0@ // IF and SET
            then
                0AC8: 10@ = allocate_memory_size 16
                0AA5: call 1@ num_params 3 pop 3 10 10@ 12345
                0ACA: show_text_box 10@
                0AC9: free_allocated_memory 10@
            end
            0AA3: free_library 0@
        end
    end
end

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

{$CLEO}
0000:
while true
    wait 0
    if
        0AB0:  key_pressed 0x73
    then
        if
            0AA2: 0@ = load_library "msvcrt.dll" // IF and SET
        then
            if
                0AA4: 1@ = get_proc_address "_ultoa" library 0@ // IF and SET
            then
                11@ = 0
                12@ = 0
                13@ = 0
                14@ = 0
                0AC7: 10@ = var 11@ offset
                0AA5: call 1@ num_params 3 pop 3 10 10@ 12345
                0ACA: show_text_box 11@v
            end
            0AA3: free_library 0@
        end
    end
end

Offline

#2493 16-09-2010 23:42

Alien
Registered: 12-10-2008
Posts: 564

Re: Один вопрос

Зачем msvcrt?:D
@BoPoH - Тот вариант, что я дал, рабочий (где обрабатывается последний нажатый символ). Ты уже получил код символа (он совпадает с виртуальным кодом клавиши для 0AB0). Ничего преобразовывать не надо. Его можно представлять как число, а можно как символ. Если ты работаешь с ним как с символом, он будет вести себя как символ, а если как с числом - то как число.
2@s - строка.
2@ - число.

А вот если нужно представить произвольное число (не символ) в виде строки, воспользуйся вариантом выше. Хотя проще с опкодами форматирования:

0AD3: 0@v = sprintf "%d" 2@

Offline

#2494 17-09-2010 01:01

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

0570: 1@ = create_asset_radar_marker_with_icon 0 at -1720.306 -59.0799 3.5547 
0570: 2@ = create_asset_radar_marker_with_icon 0 at -2243.098 130.8056 35.3203 
0570: 3@ = create_asset_radar_marker_with_icon 0 at 402.7614 2543.393 16.5474 
0570: 4@ = create_asset_radar_marker_with_icon 0 at 1479.272 -1658.047 14.0469 
0570: 5@ = create_asset_radar_marker_with_icon 0 at -252.494 2584.684 63.5458 
0570: 6@ = create_asset_radar_marker_with_icon 0 at 2510.267 1208.45 10.4967

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

Offline

#2495 17-09-2010 19:56

BoPoH
From: Каушаны
Registered: 21-02-2009
Posts: 77

Re: Один вопрос

Alien, спасибо, разъяснил) но проблема в том что опкод 0384 отказывается работать вообще...однако 0ACD например работает, ну ничего, мне и так сойдёт я думаю...


userbar.png

Offline

#2496 18-09-2010 05:13

d88
Registered: 15-12-2009
Posts: 254
Website

Re: Один вопрос

У меня такой глюк – делаю миссию в мэйне, создаю в ней спецактёра, и появляется сразу 2 таких актёра!

Ещё такой вопрос, как к какому-то параметру статистики (например мышцы) прибавить какое-то значение. Не просто установить, а прибавить к тому что уже есть.

Offline

#2497 18-09-2010 06:25

Kostyan
Registered: 27-09-2009
Posts: 94

Re: Один вопрос

0623: add %1% to_integer_stat %2% 
0624: add %1% to_float_stat %2%

Вот эти, вроде ещё несколько есть, поищи хорошенько

Offline

#2498 18-09-2010 06:50

d88
Registered: 15-12-2009
Posts: 254
Website

Re: Один вопрос

Kostyan wrote:
0623: add %1% to_integer_stat %2% 
0624: add %1% to_float_stat %2%

Вот эти, вроде ещё несколько есть, поищи хорошенько

Я правильно понял, первый параметр – это сколько прибавить, а второй – номер стата?

Offline

#2499 18-09-2010 08:30

Kostyan
Registered: 27-09-2009
Posts: 94

Re: Один вопрос

Да, именно так, вот ещё нарыл такой:

0628: add %1% to_float_stat %2%

Offline

#2500 18-09-2010 11:58

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

{$CLEO}
0000:
thread 'MCLA'
while true
    wait 0
0A8D: 5@ = read_memory 0xC7F16C size 4 virtual_protect 0
0A8D: 6@ = read_memory 0xC7F170 size 4 virtual_protect 0
0A8D: 7@ = read_memory 0xC7F168 size 4 virtual_protect 0
    if or
  5@ < 0
  5@ > 0
  6@ > 0
  6@ < 0
  7@ > 0
  7@ < 0
    then
064B: 25@ = create_particle "smoke_flare" at 7@ 5@ 6@ type 1  
064C: make_particle 25@ visible 
wait 100 
0650: destroy_particle 25@    
    end
end

Почему партикл не удаляется? Пробовал по всякому, не удаляется и всё.:rolleyes:

Offline

Board footer

Powered by FluxBB