Пишем свой GM от пуль
|
|
S0f4aR |
Дата: Вторник, 17.01.2017, 14:57 | Сообщение # 1
|
Новичок
Сообщений: 23
Статус: Offline
|
урок по разработке простенького гм от пуль. всяких фич типо настроек в .ini файле и прочей магии я не буду показывать, лень ![smile](/.s/sm/2/smile.gif) для разработки сиего чита вам понадобитсяsunny builder v3.2.2 sb link: https://sannybuilder.com/ru/downloads.html так же клео библиотека v4.1 и sampfuncs v5.3.3 cleo link: cleo.li sf link: http://blast.hk/threads/17/ открываем bin архив со скачаным sf и разархивируем папку sb data в такую же по пути //:диск/ваша директория/sunny builder/data/sa/ открываем sunny builder, тыкаем "создать" и в появившемся окне пишем следующее.
Код {$cleo .cs} {$include sf} 0000: godmode by ebuchiy garry const // задаем имя нашей переменной чтобы не путатся в её номере activestatus = 0@ end repeat // делаем ни(мат) не делающий цикл с условием "долби пока самп не прогрузился" wait 0 // ждём 0 мс, т.е ни(МАТ) не ждём)00 но циклу же нужно чем то занятся :d until samp.avaible() // само условие // // блок реги команд и хуков // while true // общий цикл скрипта который будет работать постоянно wait 0 // тело цикла end
это собственна и будет тело нашего будущего скрипта. далее ебашим sf хук для перехвата входящих пакетов от сервера.
Код // пихаем регу хука в блок регистрации 0be4: raknet setup_incoming_packet_hook @packet_sync_hook // ниже в том же блоке регаем нашу команду активации 0b34: samp register_client_command "pituh228" to_label @cmd_hook // где pituh228 имя вашей команды.
далее спускаемся в унитаз ниже нашего общего цикла и после end`a срём туда следующим говнокодом.
Код :cmd_hook // метка срабатывающая при вводе нашей команды if 0b61: samp is_local_player_spawned // если ты заспавнен то ныряем ниже then if activestatus == 0 then print "~b~gm ~w~by ~>~~y~ebuchiy garry~<~ - ~g~activated " time 3000 else print "~b~gm ~w~by ~>~~y~ebuchiy garry~<~ - ~r~deactivated" time 3000 end 0b12: activestatus = activestatus xor 1 // операция которая извращает байты наоборот :3 end 0b43: samp cmd_ret // объязательный возврат с команды чтоб не крашило <img src="/.s/sm/2/tongue.gif" border="0" align="absmiddle" alt="tongue" /> acket_sync_hook // метка которую постоянно будет вызывать наш перехватчик(hook) 0001: wait 0 0be5: raknet 3@ = get_hook_param param_bitstream // получаем указатель на битстрим 0be5: raknet 2@ = get_hook_param param_packetid // получаем указатель на ид пакета if 10@ == 206 // ловим пакет id_bullet_sync хранящий информацию о пулях then if activestatus == 1 // если гм активирован then 7@ = samp.getsampplayeridbyactorhandle($player_actor) // получаем свой ид 0be9: raknet bit_stream 3@ reset_read_pointer // смещаем указатель чтения на начало 0be7: raknet 4@ = bit_stream_read 3@ type bs_type_short // читаем ид отправителя 0beb: raknet bit_stream 3@ ignore_bits 8 // не читаем ид пакета т.к он нам известен 0be7: raknet 5@ = bit_stream_read 3@ type bs_type_byte // читаем тип пуль 0be7: raknet 6@ = bit_stream_read 3@ type bs_type_short // читаем ид жертвы // это неполная часть структуры пуль но информация дальше нам не нужна if and // чекаем что эта пуля не в землю/воздух и она должна попасть именно у вас! 5@ == 1 003b: 6@ == 7@ then 0be0: raknet hook_ret false // блокируем пакет с пулей end end end 0be0: raknet hook_ret true // разрешение на пропуск всех пакетов по умолчанию
жмякаем f6 для компиляций и вуаля, скрипт готов ![smile](/.s/sm/2/smile.gif) если вы сделали всё правильно то в появишемся окошке не должно быть никаких ошибок. если возникнут какие то вопросы либо проблемы обращайтесь. Вопросы сюда
Кодер-сатанист Откуда такой псевдоним? первая половина SOF - от слова софтер, вторая - 4aR (Чар) это тип данных в программировании, присущий С++
Сообщение отредактировал S0f4aR - Вторник, 17.01.2017, 14:57 |
|
|
|
Ozzi_Money |
Дата: Вторник, 17.01.2017, 15:02 | Сообщение # 2
|
Новичок
Сообщений: 7
Статус: Offline
|
Годно
Гавно Вопрос
|
|
|
|
iSlow |
Дата: Понедельник, 23.01.2017, 12:34 | Сообщение # 3
|
Медленный
Сообщений: 269
Статус: Offline
|
Тебе в другой раздел
[Статья/SRP] Быстро апаем ранг [FPSUP] Повышаем ФПС [CLEO/SRP] ТП Личка
|
|
|
|
S0f4aR |
Дата: Суббота, 06.05.2017, 16:48 | Сообщение # 4
|
Новичок
Сообщений: 23
Статус: Offline
|
UpЦитата S0f4aR ( ![Ссылка на цитируемый текст](/.s/img/fr/ic/4/lastpost.gif) ) урок по разработке простенького гм от пуль. всяких фич типо настроек в .ini файле и прочей магии я не буду показывать, лень для разработки сиего чита вам понадобитсяsunny builder v3.2.2 sb link: https://sannybuilder.com/ru/downloads.html так же клео библиотека v4.1 и sampfuncs v5.3.3 cleo link: cleo.li sf link: http://blast.hk/threads/17/ открываем bin архив со скачаным sf и разархивируем папку sb data в такую же по пути //:диск/ваша директория/sunny builder/data/sa/ открываем sunny builder, тыкаем "создать" и в появившемся окне пишем следующее. Код
{$cleo .cs} {$include sf} 0000: godmode by ebuchiy garry const // задаем имя нашей переменной чтобы не путатся в её номере activestatus = 0@ end repeat // делаем ни(мат) не делающий цикл с условием "долби пока самп не прогрузился" wait 0 // ждём 0 мс, т.е ни(МАТ) не ждём)00 но циклу же нужно чем то занятся :d until samp.avaible() // само условие // // блок реги команд и хуков // while true // общий цикл скрипта который будет работать постоянно wait 0 // тело цикла end
это собственна и будет тело нашего будущего скрипта. далее ебашим sf хук для перехвата входящих пакетов от сервера. Код
// пихаем регу хука в блок регистрации 0be4: raknet setup_incoming_packet_hook @packet_sync_hook // ниже в том же блоке регаем нашу команду активации 0b34: samp register_client_command "pituh228" to_label @cmd_hook // где pituh228 имя вашей команды.
далее спускаемся в унитаз ниже нашего общего цикла и после end`a срём туда следующим говнокодом. Код :cmd_hook // метка срабатывающая при вводе нашей команды if 0b61: samp is_local_player_spawned // если ты заспавнен то ныряем ниже then if activestatus == 0 then print "~b~gm ~w~by ~>~~y~ebuchiy garry~<~ - ~g~activated " time 3000 else print "~b~gm ~w~by ~>~~y~ebuchiy garry~<~ - ~r~deactivated" time 3000 end 0b12: activestatus = activestatus xor 1 // операция которая извращает байты наоборот :3 end 0b43: samp cmd_ret // объязательный возврат с команды чтоб не крашило <img src="/.s/sm/2/tongue.gif" border="0" align="absmiddle" alt="tongue" /> acket_sync_hook // метка которую постоянно будет вызывать наш перехватчик(hook) 0001: wait 0 0be5: raknet 3@ = get_hook_param param_bitstream // получаем указатель на битстрим 0be5: raknet 2@ = get_hook_param param_packetid // получаем указатель на ид пакета if 10@ == 206 // ловим пакет id_bullet_sync хранящий информацию о пулях then if activestatus == 1 // если гм активирован then 7@ = samp.getsampplayeridbyactorhandle($player_actor) // получаем свой ид 0be9: raknet bit_stream 3@ reset_read_pointer // смещаем указатель чтения на начало 0be7: raknet 4@ = bit_stream_read 3@ type bs_type_short // читаем ид отправителя 0beb: raknet bit_stream 3@ ignore_bits 8 // не читаем ид пакета т.к он нам известен 0be7: raknet 5@ = bit_stream_read 3@ type bs_type_byte // читаем тип пуль 0be7: raknet 6@ = bit_stream_read 3@ type bs_type_short // читаем ид жертвы // это неполная часть структуры пуль но информация дальше нам не нужна if and // чекаем что эта пуля не в землю/воздух и она должна попасть именно у вас! 5@ == 1 003b: 6@ == 7@ then 0be0: raknet hook_ret false // блокируем пакет с пулей end end end 0be0: raknet hook_ret true // разрешение на пропуск всех пакетов по умолчанию
жмякаем f6 для компиляций и вуаля, скрипт готов если вы сделали всё правильно то в появишемся окошке не должно быть никаких ошибок. если возникнут какие то вопросы либо проблемы обращайтесь. Вопросы сюда Кодер-сатанист Откуда такой псевдоним? первая половина SOF - от слова софтер, вторая - 4aR (Чар) это тип данных в программировании, присущий С++
Добавлено (06.05.2017, 16:48) --------------------------------------------- UP
Кодер-сатанист Откуда такой псевдоним? первая половина SOF - от слова софтер, вторая - 4aR (Чар) это тип данных в программировании, присущий С++
|
|
|
|
pwnedz1337 |
Дата: Вторник, 09.05.2017, 09:53 | Сообщение # 5
|
Боец
Сообщений: 94
Статус: Offline
|
Не в том разделе написал конечно, но годно
Аккаунт разрешен AK-47
|
|
|
|
[CM]MaTaS |
Дата: Воскресенье, 15.03.2020, 00:14 | Сообщение # 6
|
Боец
Сообщений: 76
Статус: Offline
|
сэнкс
|
|
|
|