|
[CLEO] Вопрос - Ответ
|
|
| [CM]Рафаэль |
Дата: Суббота, 05.09.2015, 20:19 | Сообщение # 1
|
Cheat-Master
Сообщений: 3080
Статус: Offline
|
В этой теме задаются вопросы по CLEO, конкретным опкодам (например, назначение того или иного опкода) и т.д.
Форма вопроса: Код [color=#1E90FF][b]Вопрос:[/b][/color] text
Форма ответа: Код [color=#1E90FF][b]Ответ:[/b][/color] text
Мой Shop Официальный гарант
Контактные данные: VK: vk.com/ali_benua Skype: lvinyipen Telegram: @AliBenua ICQ: 552-090-283
|
|
|
|
|
| Toplivo |
Дата: Воскресенье, 06.09.2015, 01:14 | Сообщение # 1711
|
Советник
Сообщений: 728
Статус: Offline
|
Цитата sp1tf1re_ (  ) Палится античитом, а другие клео на оружие, написанные скиловыми скриптерами, не палятся. Как они это делают, при помощи чего. Ссылку на статью, если можно, или исходник таких клео, если есть, дайте пожалуйста, хочу ознакомиться с ПРИНЦИПОМ работы. Сейчас СФ позволяет пилить нопы в клео,поэтому все веапон хаки пилятся по типу дгана(т.е с нопом Disable Weapon Data)
Дурак дает,умный берет.
|
|
|
|
|
| Toplivo |
Дата: Воскресенье, 06.09.2015, 01:14 | Сообщение # 1712
|
Советник
Сообщений: 728
Статус: Offline
|
Цитата [CM]iGadzha (  ) Как сделать тп на метку? т.е как кинуть кординаты метки в переменные Код if 0AB6: store_target_marker_coords_to 0@ 1@ 2@ // IF and SET then actor.putat($PLAYER_ACTOR,0@,1@,2@) end Разберешься крч
Дурак дает,умный берет.
|
|
|
|
|
| Sano |
Дата: Воскресенье, 06.09.2015, 01:14 | Сообщение # 1713
|
Любитель
Сообщений: 48
Статус: Offline
|
Цитата sp1tf1re_ (  ) Вопрос: Почему клео, к примеру Код Model.Load(#SNIPER) wait 500 Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, 34, 24) wait 500 Model.Destroy(#SNIPER) Палится античитом, а другие клео на оружие, написанные скиловыми скриптерами, не палятся. Как они это делают, при помощи чего. Ссылку на статью, если можно, или исходник таких клео, если есть, дайте пожалуйста, хочу ознакомиться с ПРИНЦИПОМ обхода античитов. Готовый ноп weapon data на 0.3z Включить Код 0B2E: 0@ = read_module_memory "samp.dll" offset 0x5530 size 1 0B2D: write_module_memory "samp.dll" offset 0x5530 value 0xC3 size 1 Выключить - Код 0B2D: write_module_memory "samp.dll" offset 0x5530 value 0@ size 1
Естественно, сампфунс и все отсальные дела подключить надо.
/*============RAMPAGE=============*/
|
|
|
|
|
| sp1tf1re_ |
Дата: Воскресенье, 06.09.2015, 01:14 | Сообщение # 1714
|
Боец
Сообщений: 58
Статус: Offline
|
Sano, огромное спасибо, избавил меня от поиска нопа и смещения Сейчас еще 1 нубский вопрос: (ПОЛНЫЙ КОД)
Код {$CLEO .cs} 0000: if not 25@ = SAMP.Base() then end_thread end
repeat wait 400
until 0afa: struct while true wait 0 if and 0ab0: 16 // Shift 0ab0: 77 // M then
repeat wait 0 0B2E: 0@ = read_samp_memory offset 0x5530 size 1 0B2D: write_samp_memory offset 0x5530 value 0xC3 size 1 0acd: "NOP On" 1500 " until 0ab0: 53 0B2D: write_samp_memory offset 0x5530 value 0@ size 1 0acd: "NOP Off" 1500 end end
Я просто плохо понимаю, как работают эти нопы. Их нужно включать только на время создания оружия, или они должны работать постоянно... В какое место мне в клео тут вставить эти 5 строчек? И еще вопрос, если я сделаю выбор добавляемого оружия через листовое диалоговое окно, то мне включать ноп перед открытием окна и выключать после его закрытия, или делать включение и выключение его для каждой кнопки, которая будет добавлять то/иное оружие? Заранее спасибо за ответ, вы очень помогли, без вас еще туеву хучу времени потратил бы.
Сообщение отредактировал sp1tf1re_ - Четверг, 27.02.2014, 15:34 |
|
|
|
|
| Toplivo |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1715
|
Советник
Сообщений: 728
Статус: Offline
|
Цитата sp1tf1re_ (  ) Сейчас еще 1 нубский вопрос: Я тебе вчера кидал ссылку на мой пост с рабочим кодом(ну как рабочим,если функи СФ уже перевели,то рабочим)
Дурак дает,умный берет.
|
|
|
|
|
| DokerGT |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1716
|
★Doker крутой перец!★
Сообщений: 329
Статус: Offline
|
Вопрос: При компиляции вылезает ошибка "Неизвестная команда car.defined(2@)". Как я знаю такая команда есть, но у меня не работает.
|
|
|
|
|
| sp1tf1re_ |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1717
|
Боец
Сообщений: 58
Статус: Offline
|
Toplivo, я прочитал ту тему несколько раз, у меня всё получилось, если запускаю отдельным клео - всё работает ( по крайней мере пишет "NOP On"). Мне же нужно добавить к этому нопу еще код, который будет выводить диалоговое окно, в котором нужно будет выбирать, какое оружие начитерить. И я не понимаю вообще систему, как это работает, каким образом оно защищает от кика. Т.е. включить ноп, прописать оружие и выключить его, и всё, кика не будет? Или же как только я отключу ноп, я словлю кик, не пойму. Зачем тогда вообще придумали отключение (в теме, которую ты давал мне, для отключения отдельную кнопку сделали. Зачем?... Я просто что-то элементарное упустил, пойму принцип работы - всё будет отлично. :).
Сообщение отредактировал sp1tf1re_ - Четверг, 27.02.2014, 16:23 |
|
|
|
|
| Sano |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1718
|
Любитель
Сообщений: 48
Статус: Offline
|
Цитата DokerGT (  ) Вопрос: При компиляции вылезает ошибка "Неизвестная команда car.defined(2@)". Как я знаю такая команда есть, но у меня не работает. ' Maddy в своем уроке использовал кейворды. Проверяем доступность авто этим опкодом: Код 056E does_vehicle_exist 0@ где 0@ - именно хендл, а не id Если надо узнать хенд, а есть id Код 1@ = Samp.GetVehicleHandleBySAMPVehicleID(0@) 0@ - id транспорта. 1@ - хендлДобавлено (27.02.2014, 18:11) ---------------------------------------------
Цитата sp1tf1re_ (  ) Toplivo, я прочитал ту тему несколько раз, у меня всё получилось, если запускаю отдельным клео - всё работает ( по крайней мере пишет "NOP On"). Мне же нужно добавить к этому нопу еще код, который будет выводить диалоговое окно, в котором нужно будет выбирать, какое оружие начитерить. И я не понимаю вообще систему, как это работает, каким образом оно защищает от кика. Т.е. включить ноп, прописать оружие и выключить его, и всё, кика не будет? Или же как только я отключу ноп, я словлю кик, не пойму. Зачем тогда вообще придумали отключение (в теме, которую ты давал мне, для отключения отдельную кнопку сделали. Зачем?... Я просто что-то элементарное упустил, пойму принцип работы - всё будет отлично. :). Дело все в том,что кик не так то просто обойти. К примеру, нужно искать уязвимости. Но есть одно но - не забывай это проекты по 5 лет и с онлайном 1000+. По-этому, рассмотри: Disable - выключить информацию об оружии На нубо-рп можно провернуть это очень просто, выкючил и включил ноп. ВСЕ. Но вот на адвансе надо всегда её выкбченной, ибо если сервер получит инфу об оружии -кик. И то, твой скрипт не будет это обходить. Там намного тяжелее. Просто Weapon Data как "часть" этого. Пробуй на обычных проектах типо Crime street, где античит менее стабилен. По теме того, что зачем вырубать. Disable weapon data - это,как-бы, ноп. Но вот представь, что ты включил ноп OnFoot data. Ты выключил позицию об игроке, сделал действие и все. что альше? Ты стоишь для всех в афк, мир не грузиться, если поедешь. Вот и все. По-моему, все доступно обьяснил. P.S По диалогам ищи уроки, их много. Получаешь кнопку диалога в цикле, если она нажата - выполнил действие.Думаю, гуглом умеешь пользоваться.
/*============RAMPAGE=============*/
Сообщение отредактировал Sano - Четверг, 27.02.2014, 18:04 |
|
|
|
|
| sp1tf1re_ |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1719
|
Боец
Сообщений: 58
Статус: Offline
|
Sano, спасибо, доходчиво объяснил, теперь имею кое-какое представление о нопах. Как делать диалоговое окно я читал, даже начинал делать кое-какие наброски: Код {$CLEO} 0000: NOP const DIALOG_STYLE_MSGBOX = 0 // С текстом DIALOG_STYLE_INPUT = 1 // С полем для ввода текста DIALOG_STYLE_LIST = 2 // Со списком DIALOG_STYLE_PASSWORD = 3 // С полем для ввода текста, только скрывает точками end // SAMPFUNCS if 8AF7: get_samp_base_to 33@ then 0A93: end_custom_thread end repeat wait 400 until 0AFA: is_samp_structures_available // --------------------- while true wait 0 // Чтобы не крашилась игра if 0ADC: test_cheat "BH" // Если мы "написали" BH не в чат(ну или нажали эти клавиши, как угодно =) then 0AC8: 4@ = allocate_memory_size 128 // Выделение памяти 0AD3: string 4@ format "Deagle%cSniper%cm4a1%cФотокамера" 10 10 10 // %c - идентификатор символа. Если он будет равен 10, это будет означать, что это новая строка. 0B3B: samp show_dialog id 2 caption "[VW]WeaponCheat" text 4@ button_1 "ОК" button_2 "Отмена" style DIALOG_STYLE_LIST // Если всё же мы "написали" BH, то открываем диалог со списком 0AC9: free_allocated_memory 4@ // Очищаем... т.к. не нужно repeat wait 0 until 0B3C: samp dialog_respond 0@ button 1@ list_item 2@ input_text 3@v // Получаем возвращаемые параметры диалога(то, что было нажато, введено и т.п.) // 0@ - ID диалога, 1@ - нажатая кнопка, 2@ - выбранный пункт(только для DIALOG_STYLE_LIST), 3@v - введенный текст(только для DIALOG_STYLE_INPUT и DIALOG_STYLE_PASSWORD) if 0@ == 2 // Если наш диалог был закрыт(с ID 2) then // то if 1@ == 1 // Если была нажата кнопка Выбрал, т.е. 1 then // то //ДИГЛ if 2@ == 0 // Если был выбран пункт "Дигл" then Model.Load(#DESERT_EAGLE) wait 500 Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, 24, 24) wait 500 Model.Destroy(#DESERT_EAGLE) end //СНАЙПА if 2@ == 1 // Если был выбран пункт "Тест2" Model.Load(#DESERT_EAGLE) then Model.Load(#SNIPER) wait 500 Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, 34, 12) wait 500 Model.Destroy(#SNIPER) end //ЭМКА if 2@ == 2 // Если был выбран пункт "Тест3" Model.Load(#DESERT_EAGLE) Model.Load(#M4) wait 500 Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, 31, 240) wait 500 Model.Destroy(#M4) end //ФОТОАППАРАТ if 2@ == 3 // Если был выбран пункт "Тест4" Model.Load(#CAMERA) wait 500 Actor.GiveWeaponAndAmmo($PLAYER_ACTOR, 43, 24) wait 500 Model.Destroy(#CAMERA) else 0AF8: samp add_message_to_chat "Отмена" color 0x00FF00 // если была нажата другая кнопка, выводим в чат "закрыто" end end end Но потом забил на это временно, т.к. надо разобраться с нопами. [code]
И еще: я пишу клео для нашего белорусского сервера со стабильным онлайном в 100-150 человек, на котором играл около 6 лет, где все друг друга знают, я не замахиваюсь на самп рп или адванс, мне они не нужны, знаю одно, на этих адвансах защита уж в разы мощнее, чем тут, поэтому, думаю, ничего гениального писать не надо будет, всё будет более-менее просто. Завтра проверю то, что написал, сейчас нет возможности, отпишу, когда получу результат.
Сообщение отредактировал sp1tf1re_ - Четверг, 27.02.2014, 18:59 |
|
|
|
|
| [CM]Skand1k |
Дата: Воскресенье, 06.09.2015, 01:15 | Сообщение # 1720
|
Боец
Сообщений: 81
Статус: Offline
|
Киньте пример как включать нопы на 0.3z через команду с sampfuncsom, отблагодарю
Сообщение отредактировал [CM]Skand1k - Пятница, 28.02.2014, 19:24 |
|
|
|
|
| Sano |
Дата: Воскресенье, 06.09.2015, 01:16 | Сообщение # 1721
|
Любитель
Сообщений: 48
Статус: Offline
|
Цитата [CM]Skand1k (  ) 0B2E: 0@ = read_module_memory "samp.dll" offset 0x5530 size 1 0B2D: write_module_memory "samp.dll" offset 0x5530 value 0xC3 size 1 Код {$CLEO}
if not 29@ = samp.Base() then end_thread else while not samp.Available() wait 0 end end
0B34: samp register_client_command "nop" to_label @nop
while true wait 0 end
:nop wait 0 if 1@ == 0 then 0B2E: 0@ = read_module_memory "samp.dll" offset 0x5530 size 1 0B2D: write_module_memory "samp.dll" offset 0x5530 value 0xC3 size 1 0006: 1@ = 1 else 0B2D: write_module_memory "samp.dll" offset 0x5530 value 0@ size 1 0006: 1@ = 0 end
/*============RAMPAGE=============*/
|
|
|
|
|
| [CM]Skand1k |
Дата: Воскресенье, 06.09.2015, 01:16 | Сообщение # 1722
|
Боец
Сообщений: 81
Статус: Offline
|
sano, крашит хер знает в чем беда
Сообщение отредактировал [CM]Skand1k - Пятница, 28.02.2014, 21:45 |
|
|
|
|
| RAKSHA1337 |
Дата: Воскресенье, 06.09.2015, 01:16 | Сообщение # 1723
|
Советник
Сообщений: 784
Статус: Offline
|
[CM]Skand1k, конечно крашит, потомучто не так опкоды 0B2E и 0B2D используешь. В них по 3 параметра, а он 4 использует. Это устаревший вариант.
В казино рандом. Но рандом в программах - это генератор псевдослучайных чисел, который написан ручками человека. А значит есть формула! Есть алгоритм! Есть тактика! Кто не согласен - ставьте минус, после того как докажете обратное. https://habrahabr.ru/post/196442/
|
|
|
|
|
| [CM]Skand1k |
Дата: Воскресенье, 06.09.2015, 01:16 | Сообщение # 1724
|
Боец
Сообщений: 81
Статус: Offline
|
RAKSHA1337, напиши пример
|
|
|
|
|
| Toplivo |
Дата: Воскресенье, 06.09.2015, 01:16 | Сообщение # 1725
|
Советник
Сообщений: 728
Статус: Offline
|
Цитата Sano (  ) :nop wait 0 Тут не обязательно wait 0 писать. Лишняя задержка
Дурак дает,умный берет.
|
|
|
|
|