Вопросы по CLEO-скриптингу

Dark_Knight

Me, me and me.
Друг
4,070
2,086
Записует значение в переменную с указаным размер. Я ним обнуляю память, когда мне нужно
 

1337coder

Новичок
27
0
Кто может сделать фейк стату под этот скрин? Вот ип сервера 176.32.39.4:7777 (не реклама)
Дам 50р)0 Надо срочно
1mo96mq7jafg.png
 

Dark_Knight

Me, me and me.
Друг
4,070
2,086
Кто может сделать фейк стату под этот скрин? Вот ип сервера 176.32.39.4:7777 (не реклама)
Дам 50р)0 Надо срочно

Получи текст и заголовок диалога в файл, измени как тебе нужно его и создай свой диалог с измененными данными.
 

1337coder

Новичок
27
0
Получи текст и заголовок диалога в файл, измени как тебе нужно его и создай свой диалог с измененными данными.

Я так не умею :)
Но должно вот так получиться

PHP:
Статистика персонажа: Abcdefg_Abcdefgjk
____________________________________
{E08600}Уровень: 28
{E08600}Респекты:{FFFFFF} 78/116
{E08600}Пол:{FFFFFF} Парень
{E08600}Возраст:{FFFFFF} 33
{E08600}Местонахождение:{FFFFFF} Los-Angeles
{E08600}Предупреждения:{FFFFFF} 0/3
{E08600}HP при респауне:{FFFFFF} 150.0
{E08600}Аккаунт:{FFFFFF} Gold
____________________________________
{E08600}Работа:{FFFFFF} None
{E08600}Организация:{FFFFFF} Гражданин
{E08600}Ранг:{FFFFFF} None
____________________________________
{E08600}Деньги(наличные):{FFFFFF} 82000000$
{E08600}Деньги(в банке):{FFFFFF} 870000$
{E08600}Номер телефона:{FFFFFF} 1337
{E08600}Семейное положение:{FFFFFF} -
____________________________________
{E08600}Лотерейный билет №:{FFFFFF} 0
 
{E08600}Кол-во преступлений:{FFFFFF}142
{E08600}Кол-во арестов:{FFFFFF} 9
{E08600}Уровень розыска:{FFFFFF} 0
____________________________________
{E08600}Наркотики:{FFFFFF} 0
{E08600}Материалы:{FFFFFF} 0
{E08600}Выговоры:{FFFFFF}0
{E08600}Скин:{FFFFFF}289
____________________________________
 

Dark_Knight

Me, me and me.
Друг
4,070
2,086
На короче
Код:
{$CLEO}
{$NOSOURCE}
{$INCLUDE SF}
{$INCLUDE KEYS}
if not 31@ = samp.Base()
then
end_thread
else
    while not samp.Available()
    wait 100
    end
end
 
while true
wait 0
    if key_down VK_F12
    then
        while key_down VK_F12
        wait 0
        end
        0ac6: 0@ = @dialog_caption
        0ac6: 1@ = @dialog_text
        0B3B: samp show_dialog id 456 caption 0@ text 1@ button_1 "Закрыть" button_2 "" style DIALOG_STYLE_MSGBOX
 
    end
end
 
:dialog_caption
hex
"{FF00FF}Статистика персонажа: {FFFFFF}Abcdefg_Abcdefgjk" 00
end
 
:dialog_text
hex
"____________________________________" A
"{E08600}Уровень: 28" A
"{E08600}Респекты:{FFFFFF} 78/116" A
"{E08600}Пол:{FFFFFF} Парень" A
"{E08600}Возраст:{FFFFFF} 33" A
"{E08600}Местонахождение:{FFFFFF} Los-Angeles" A
"{E08600}Предупреждения:{FFFFFF} 0/3" A
"{E08600}HP при респауне:{FFFFFF} 150.0" A
"{E08600}Аккаунт:{FFFFFF} Gold" A
"____________________________________" A
"{E08600}Работа:{FFFFFF} None" A
"{E08600}Организация:{FFFFFF} Гражданин" A
"{E08600}Ранг:{FFFFFF} None" A
"____________________________________" A
"{E08600}Деньги(наличные):{FFFFFF} 82000000$" A
"{E08600}Деньги(в банке):{FFFFFF} 870000$" A
"{E08600}Номер телефона:{FFFFFF} 1337" A
"{E08600}Семейное положение:{FFFFFF} -" A
"____________________________________" A
"{E08600}Лотерейный билет №:{FFFFFF} 0" A A 
"{E08600}Кол-во преступлений:{FFFFFF}142" A 
"{E08600}Кол-во арестов:{FFFFFF} 9" A 
"{E08600}Уровень розыска:{FFFFFF} 0" A
"____________________________________" A
"{E08600}Наркотики:{FFFFFF} 0" A
"{E08600}Материалы:{FFFFFF} 0" A
"{E08600}Выговоры:{FFFFFF}0" A
"{E08600}Скин:{FFFFFF}289" A
"____________________________________" 00
end
 
  • Нравится
Реакции: 1337coder

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,463
У меня тут исходник один остался, загружает диалог из указанного файла:
Код:
{$CLEO}
 
0000:
0662: "by legend2360"
0662: "BlastHack - cheating is art"
 
while not SAMP.Available()
    wait 400
end
 
reg_cmd "loaddlg" @cmd
 
while true
    wait 0
    if 1@ == true
    then
        if 2@ = File.Open(0@, "r")
        then
            alloc 3@ 91
            memset 3@ 0 91
            
            alloc 4@ 65 // Caption
            alloc 5@ 2049 // Text
            alloc 6@ 33 // button1
            alloc 7@ 33 // button2 
            memset 4@ 0 65
            memset 5@ 0 2049
            memset 6@ 0 33
            memset 7@ 0 33
 
            while not File.EOF(2@)
                if File.ReadString(2@, 3@, 90)
                then
                    if 0C18: 9@ = strstr string1 3@ string2 "caption"
                    then
                        call @process 4 max_size 64 string 3@ buf 4@ source 9@
                    else
                        if 0C18: 9@ = strstr string1 3@ string2 "btn1"
                        then
                            call @process 4 max_size 32 string 3@ buf 6@ source 9@
                        else
                            if 0C18: 9@ = strstr string1 3@ string2 "btn2"
                            then
                                call @process 4 max_size 32 string 3@ buf 7@ source 9@
                            else
                                if 0C18: 9@ = strstr string1 3@ string2 "style"
                                then
                                    0C2A: 9@ = strchr 9@ char 0x26 // &
                                    9@++
                                    
                                    0C1A: 10@ = atoi 9@ // style
                                else
                                    0C15: strcat destination 5@ source 3@ // Text
                                end
                            end
                        end
                    end
                end
                memset 3@ 0 91
            end
            
            0B3B: samp show_dialog id 455 caption 4@ text 5@ button_1 6@ button_2 7@ style 10@
 
            free 3@
            free 4@
            free 5@ 
            free 6@
            free 7@
            
            File.Close(2@)
        end
        
        1@ = false
    end
end
 
:cmd
0B35: samp 0@ = get_last_command_params
if 0AAB: file_exists 0@
then
    1@ = true
end
cmdret
 
:process
// call @process 4 max_size 0@ string 1@ buf 2@ source 3@
0C2A: 4@ = strchr 3@ char 0x26 // &
4@++
 
if 0C2A: 5@ = strchr 1@ char 0xA
then memset 5@ 0x0 1
end
 
strlen 5@ 4@
if 001d: 5@ > 0@
then 0085: 5@ = 0@
end
 
0C10: memcpy destination 2@ source 4@ size 5@
ret 0

Структура файла с данными диалога:
Код:
caption&{0099CC}Меню игрока
style&2
btn1&Выбрать
btn2&Закрыть
1. Статистика
2. Список команд
3. Личные настройки
4. Настройки безопасности
5. Связь с администрацией
6. Улучшения
7. Правила сервера
8. Изменить имя
9. Дополнительно
Сохраняем файл в папку игры\CLEO.
В игре вводим команду /loaddlg путь к файлу(к примеру: /loaddlg CLEO\dialog.txt).
 
  • Нравится
Реакции: 1337coder

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,463
Как найти ИД серверного тексдрава и удалить его ? Или изменить?


Вот опкод удаления текстдрава 0C5E: samp textdraw 0@ delete


http://blasthack.net/threads/897/#post-9982 // Крашит

Она не работает.
В SF 4 есть опкоды, которые помогут тебе.
Нежели CTRL ALT 2 отменили, молчу про вики, а про логику и даже мечтать наверно не могу.
 

fonarik

Известный
206
3
Не могу найти пример хука в чат,для того,чтобы изменять текст от сервера,есть такой? Если да,то прошу пример
 

1337coder

Новичок
27
0
Если от 0 до 999, то гта зависает.
от 0 до 300 норм, проверил так диапозон, но иды всеравно не нашел.
1 раз ток получилось, но без идов, вывело 3 сообщения (без %d , 1@), в принципе в которых иды должны были быть. LVL+Exp, Time, site
PHP:
{$CLEO }
 
0000:
wait 300
repeat
    wait 400
until 0AFA: is_samp_structures_available
 
0B34: samp register_client_command "textdraw" to_label @textdraw
while true
    wait 0
end
 
 
:textdraw
wait 100
0AC8: 1@ = allocate_memory_size 2048
for 1@ = 0 to 999
    if
    0C5D: samp textdraw 1@ is_exists
    then
        0af8: "texdraw ID %d" 1@
        end
end
samp.cmdret
 

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,463
Интересно, зачем ты выделяешь память?
К тому же, циклы в телах командах запрещены, точнее - невозможны(некоторые из них)

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

По вики мало что было понятно, да?:)
 

1337coder

Новичок
27
0
Интересно, зачем ты выделяешь память?
К тому же, циклы в телах командах запрещены, точнее - невозможны(некоторые из них)



По вики мало что было понятно, да?:)

Дак я думал память хавает.
Я не знаю как еще определить ид текстдрава