 |
|

06.01.2026, 22:51
|
|
Новичок
Регистрация: 15.12.2024
Сообщений: 17
С нами:
744380
Репутация:
3
|
|
Делаю бота на амазинг рп рудокопа. Смог разобраться с пулом объектов, высчитывать дистанции, но с бегом беда, не получается никак. Либо багнутое либо просто на месте поворачивает и в сторону смотрит. У кого есть знания прошу дать ответ
|
|
|

06.01.2026, 22:57
|
|
Флудер
Регистрация: 03.04.2020
Сообщений: 2,052
С нами:
3216796
Репутация:
183
|
|
|
|
|

06.01.2026, 23:33
|
|
Познавший АНТИЧАТ
Регистрация: 04.01.2022
Сообщений: 1,124
С нами:
2293878
Репутация:
118
|
|
вроде как данная тема не отправляет зажатие кнопки в синхре, её нужно эмулировать дополнительно
|
|
|

07.01.2026, 00:40
|
|
Новичок
Регистрация: 15.12.2024
Сообщений: 17
С нами:
744380
Репутация:
3
|
|
Мне на C++ через память нужно. На амз нет вариант lua или мунлоадер подгрузить. Да и впринципе идея эмуляция нажатий клавиш мне не заходила никогда. Зато пока я пытался сделать одно нашел другое, рабочий корд мастер и обход античита при тп. Но к сожалению мне это не нужно
|
|
|

07.01.2026, 01:49
|
|
Познавший АНТИЧАТ
Регистрация: 05.10.2019
Сообщений: 1,649
С нами:
3477805
Репутация:
168
|
|
Сообщение от VanoKLR
вроде как данная тема не отправляет зажатие кнопки в синхре, её нужно эмулировать дополнительно
Ещё как отправляет. Это буквально функция для изменения состояния игровой клавиши на уровне игры. Или по твоему откуда синхра нажатых клавиш берётся? Более того, оно не просто перезаписывает значение но и инициализирует все процессы как будто она была нажата вручную. Например такие как отправка дублирующей синхры при изменении состояния клавиш.
Сообщение от wafq
Мне на C++ через память нужно. На амз нет вариант lua или мунлоадер подгрузить. Да и впринципе идея эмуляция нажатий клавиш мне не заходила никогда. Зато пока я пытался сделать одно нашел другое, рабочий корд мастер и обход античита при тп. Но к сожалению мне это не нужно
Вообще setGameKeyState как и большинство функций moonloader'а это просто красивая обёртка для опкодов из самой игры. Можешь вызывать напрямую опкод 0b56 на плюсах с теми же аргументами. Реализация всех этих функций есть в самой гташке без модов и игра их сама использует
1767736659330.pngTema05 · 7 Янв 2026 в 00:49' data-fancybox="lb-post-1653469" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/284542/" style="cursor: pointer;" title="1767736659330.png">
opcodes - 0b56 | BlastHack — DEV_WIKI
www.blast.hk
|
|
|

07.01.2026, 02:07
|
|
Новичок
Регистрация: 15.12.2024
Сообщений: 17
С нами:
744380
Репутация:
3
|
|
Сообщение от Tema05
Ещё как отправляет. Это буквально функция для изменения состояния игровой клавиши на уровне игры. Или по твоему откуда синхра нажатых клавиш берётся? Более того, оно не просто перезаписывает значение но и инициализирует все процессы как будто она была нажата вручную. Например такие как отправка дублирующей синхры при изменении состояния клавиш.
Вообще setGameKeyState как и большинство функций moonloader'а это просто красивая обёртка для опкодов из самой игры. Можешь вызывать напрямую опкод 0b56 на плюсах с теми же аргументами. Реализация всех этих функций есть в самой гташке без модов и их их также использует
opcodes - 0b56 | BlastHack — DEV_WIKI
www.blast.hk
прислушиваться есть смысл к иишке?
|
|
|

07.01.2026, 02:32
|
|
Познавший АНТИЧАТ
Регистрация: 05.10.2019
Сообщений: 1,649
С нами:
3477805
Репутация:
168
|
|
Сообщение от wafq
прислушиваться есть смысл к иишке?
Честно говоря немного удручает, что ты сразу бежишь к иишке. Неужели погуглить уже так сложно и не интересно для людей. Ты номер этого опкода бы смог найти за 2 минуты.
По поводу использования ии: В целом использовать ии для скриптинга под гта са гиблое дело, так как это как и любая разработка модификаций на столько низком уровне супер нишевая тема и ии никогда не врубится в контекст (речь конкретно про плюсы и более менее сложные вещи, на lua ещё куда не шло). Информационный шум в виде сверхпопулярного moonloader и lua только усугубляет ситуацию. Но это моё мнение.
Если по существу, про CRunningScript и ProcessOneCommand верно, то что без moonloader/cleo этот опкод не поможет бред. Они разумеется дают возможность лёгкого использования с абстракцией, но не являются обязательными. Про последний абзац вообще *** пойми что он несёт.
Все эти опкоды, адреса вообще ЛЮБОЙ ***ни уже 100500 раз описаны и задокументированы. С гта са по степени изученности разве что марио может сравниться. Просто эта инфа премущественно находится не на модном популярном бластхаке, а в богом забытых документациях на страницах 10-летней давности, но уж точно не у ии. Вот буквально базу файла gta_sa.exe открываем и смотрим:
тут тебе и сама функция для вызова, и таблица опкодов, можешь хоть код любого опкода просмотреть и как он работает, что там внутри дёргает

|
|
|

07.01.2026, 02:35
|
|
Новичок
Регистрация: 15.12.2024
Сообщений: 17
С нами:
744380
Репутация:
3
|
|
Сообщение от Tema05
Честно говоря немного удручает, что ты сразу бежишь к иишке. Неужели погуглить уже так сложно и не интересно для людей. Ты номер этого опкода бы смог найти за 2 минуты.
По поводу использования ии: В целом использовать ии для скриптинга под гта са гиблое дело, так как это как и любая разработка модификаций на столько низком уровне супер нишевая тема и ии никогда не врубится в контекст (речь конкретно про плюсы и более менее сложные вещи, на lua ещё куда не шло). Информационный шум в виде сверхпопулярного moonloader и lua только усугубляет ситуацию. Но это моё мнение.
Если по существу, про CRunningScript и ProcessOneCommand верно, то что без moonloader/cleo этот опкод не поможет бред, они дают разумеется возможность лёгкого использования с абстракцией, но не обязательно. Про последний абзатц вообще *** пойми что он несёт.
Все эти опкоды, адреса вообще ЛЮБОЙ ***ни уже 100500 раз описаны и задокументированы. Вот буквально базу файла gta_sa.exe открываем и смотрим:
тут тебе и сама функция для вызова, и таблица опкодов, можешь хоть код любого опкода просмотреть и как он работает, что там внутри дёргает
Просто у амз чуть другой клиент. И этот клиент если сам не разберешь - *** че поймешь. Дай бог если функции гташки будут живы, но пока таких особо не встретил. Гуглить - гуглил и пытался делать все с тем что находил - тщетно. Щас буду разбирать твой метод
Я нашел какой то софт который в теории работает (я не запускал его и не запускаю, ибо сурс скрыт, вирус тотал ноет (ну на него чуть по***) да и на амз таких проектов нет, а люди живут чтобы получать выгоду. Буду реверсить и смотреть мб смогу чет вытащить его не запуская
|
|
|

07.01.2026, 03:33
|
|
Познавший АНТИЧАТ
Регистрация: 05.10.2019
Сообщений: 1,649
С нами:
3477805
Репутация:
168
|
|
Сообщение от wafq
Просто у амз чуть другой клиент. И этот клиент если сам не разберешь - *** че поймешь. Дай бог если функции гташки будут живы, но пока таких особо не встретил. Гуглить - гуглил и пытался делать все с тем что находил - тщетно. Щас буду разбирать твой метод
Я нашел какой то софт который в теории работает (я не запускал его и не запускаю, ибо сурс скрыт, вирус тотал ноет (ну на него чуть по***) да и на амз таких проектов нет, а люди живут чтобы получать выгоду. Буду реверсить и смотреть мб смогу чет вытащить его не запуская
Что за бред? Чем он другой? Это та же самая gta san andreas, тот же самп просто изменённой версии crmp. Та же физика, те же структуры, то же управление сам костят игры один и тот же, его нет смысла менять да и не получится. ДА, поверх устанавливается миллион патчей, хуков, но сама база игры никуда не девается.
Когда ты просто спавнишься в мире у тебя создаётся персонаж, в этот момент вызывается опкод 009A (createChar в moonloader). И когда в samp срабатывает функция добавления нового игрока в зону стрима там также гдле-то внутри будет вызван опкод 009A. И любая моделька человека (char'а) в мире появляется так или иначе вызывом опкода 009A. Точно также с изменением скина, с ускорением транспорта, созданием объектов и так далее и так далее. И все кастомные системы от лаунчеров проекта по типу охранников, питомцев, нпс они если начать ревёрсить все по итогу для создания персонажей вызовут где-то опокод 009A.
Безусловно там наверняка на половину этих функции будут стоять хуки, чтобы пересылать на расширенные таблицы моделей, анимаций, текстурок. Добавлять какие-то дополнительные эффекты, хуки в рендере дополнительно отрисовывающие какую-то ***ню. Но так или иначе костяк игры остаётся, просто его обвешивают всё новой и новой мишурой. Это несколько тысяч опкодов это база самой игры, которую могут ЧАСТИЧНО заменять, но чаще модифицирует для расширения возможностей, но никто их вырезать не будет. Потому что УСЛОВНО при прыжке может вызываться какой-то один единственный опкод, нигде более не использующийся, который просчитывает кости персонажа и если его удалить игра умрёт. Может быть там поставят хук, который будет ссылаться на функцию в асишке лаунчера, который будет по другой формуле рассчитывать кости у каких-то кастомных персонажей великанов, но опкод останется на месте.
Я решил ради интереса посмотреть чё там внутри setGameKeyState. sub_100013A0 ссылается на CPad::GetPad в самой игре (тут буква "a", а не "e", не путать с "ped"). Индекс 0 это наш персонаж, получаем из массива "устройств ввода" наше, далее по номеру клавиши считает оффсет до неё в структуре и меняется значение. В твоём случаи вероятно лаунчер ставит на CPad::GetPad хук так как там скорее всего лимит 1000 устройств, а насколько я знаю на Амазинге на 1 сервере может быть больше игроков. Но это просто выведет нас на другой расширенных массив. Технология управления уверен на 100% они не меняли, это невероятный гемор непонятно ради чего.
Интересно, что опкод 0b56 moonloader не вызывает, как в других его функциях, я честно говоря впервые встречаю чтоб вместо вызова опкода была реализация на месте. Также я немного преувеличил, конкретно опкод 0b56 не входит в стандартный набор и его реализация находится в sampfuncs, который туда добавлен через интерфейс cleo (хотя он как я уже только что сказал и не вызывается). Хз, почему так сделано. Но учитывая что я за столько лет не сталкивался с потребностью вызвать опкод из стандартного набора в 2600+ штук думаю они слишком ситуативные и не сильно нужны. На крайняк можно спиздить реализацию из муна или сампфункса.
Ну и в целом хочу прокомментировать, то что ты пытаешься сделать. Разработка под Амазинг это тебе не Аризона и даже не Радмир. Там помимо дохуищя кастомизации (вероятно сделанной через жопу) есть защита. Это конечно всё можно раскопать и сделать при желании, но тут без навыков ревёрса ты нихера с места не сдвинешься. Дай бог ты найдёшь достаточно исходников с реализациями всего, что тебе нужно, и разберёшься как это себе взять. Но судя по твоим ответам и что тебя удивляет, то что я за 15 минут нашёл тебе в базе в открытом доступе ты полез в дело, которое намного сложнее чем тебе кажется и твоих навыков может не хватить
|
|
|

07.01.2026, 05:29
|
|
Новичок
Регистрация: 15.12.2024
Сообщений: 17
С нами:
744380
Репутация:
3
|
|
Сообщение от Tema05
Что за бред? Чем он другой? Это та же самая gta san andreas, тот же самп просто изменённой версии crmp. Та же физика, те же структуры, то же управление сам костят игры один и тот же, его нет смысла менять да и не получится. ДА, поверх устанавливается миллион патчей, хуков, но сама база игры никуда не девается.
Когда ты просто спавнишься в мире у тебя создаётся персонаж, в этот момент вызывается опкод 009A (createChar в moonloader). И когда в samp срабатывает функция добавления нового игрока в зону стрима там также гдле-то внутри будет вызван опкод 009A. И любая моделька человека (char'а) в мире появляется так или иначе вызывом опкода 009A. Точно также с изменением скина, с ускорением транспорта, созданием объектов и так далее и так далее. И все кастомные системы от лаунчеров проекта по типу охранников, питомцев, нпс они если начать ревёрсить все по итогу для создания персонажей вызовут где-то опокод 009A.
Безусловно там наверняка на половину этих функции будут стоять хуки, чтобы пересылать на расширенные таблицы моделей, анимаций, текстурок. Добавлять какие-то дополнительные эффекты, хуки в рендере дополнительно отрисовывающие какую-то ***ню. Но так или иначе костяк игры остаётся, просто его обвешивают всё новой и новой мишурой. Это несколько тысяч опкодов это база самой игры, которую могут ЧАСТИЧНО заменять, но чаще модифицирует для расширения возможностей, но никто их вырезать не будет. Потому что УСЛОВНО при прыжке может вызываться какой-то один единственный опкод, нигде более не использующийся, который просчитывает кости персонажа и если его удалить игра умрёт. Может быть там поставят хук, который будет ссылаться на функцию в асишке лаунчера, который будет по другой формуле рассчитывать кости у каких-то кастомных персонажей великанов, но опкод останется на месте.
Я решил ради интереса посмотреть чё там внутри setGameKeyState. sub_100013A0 ссылается на CPad::GetPad в самой игре (тут буква "a", а не "e", не путать с "ped"). Индекс 0 это наш персонаж, получаем из массива "устройств ввода" наше, далее по номеру клавиши считает оффсет до неё в структуре и меняется значение. В твоём случаи вероятно лаунчер ставит на CPad::GetPad хук так как там скорее всего лимит 1000 устройств, а насколько я знаю на Амазинге на 1 сервере может быть больше игроков. Но это просто выведет нас на другой расширенных массив. Технология управления уверен на 100% они не меняли, это невероятный гемор непонятно ради чего.
Интересно, что опкод 0b56 moonloader не вызывает, как в других его функциях, я честно говоря впервые встречаю чтоб вместо вызова опкода была реализация на месте. Также я немного преувеличил, конкретно опкод 0b56 не входит в стандартный набор и его реализация находится в sampfuncs, который туда добавлен через интерфейс cleo (хотя он как я уже только что сказал и не вызывается). Хз, почему так сделано. Но учитывая что я за столько лет не сталкивался с потребностью вызвать опкод из стандартного набора в 2600+ штук думаю они слишком ситуативные и не сильно нужны. На крайняк можно спиздить реализацию из муна или сампфункса.
Ну и в целом хочу прокомментировать, то что ты пытаешься сделать. Разработка под Амазинг это тебе не Аризона и даже не Радмир. Там помимо дохуищя кастомизации (вероятно сделанной через жопу) есть защита. Это конечно всё можно раскопать и сделать при желании, но тут без навыков ревёрса ты нихера с места не сдвинешься. Дай бог ты найдёшь достаточно исходников с реализациями всего, что тебе нужно, и разберёшься как это себе взять. Но судя по твоим ответам и что тебя удивляет, то что я за 15 минут нашёл тебе в базе в открытом доступе ты полез в дело, которое намного сложнее чем тебе кажется и твоих навыков может не хватить
Да не удивляет меня это нихуя, я в целом понимаю что это не работает, я шерстил интернет уже. Вместо реверса заебистого игры реверснул чужой код - достал часть камеры, нужно еще проверять, уже спать пойду. Пробовал твой метод, не сработало. Тут уж не знаю, то ли я криворукий то ли амазинг не дает
Я хочу получать навыки, реверсом я ранее не занимался, мой максимум был циферки в чит энжин вводить. То что сейчас - часть познания и развития. Я делаю софт под себя не больше
Сообщение от Tema05
Что за бред? Чем он другой? Это та же самая gta san andreas, тот же самп просто изменённой версии crmp. Та же физика, те же структуры, то же управление сам костят игры один и тот же, его нет смысла менять да и не получится. ДА, поверх устанавливается миллион патчей, хуков, но сама база игры никуда не девается.
Когда ты просто спавнишься в мире у тебя создаётся персонаж, в этот момент вызывается опкод 009A (createChar в moonloader). И когда в samp срабатывает функция добавления нового игрока в зону стрима там также гдле-то внутри будет вызван опкод 009A. И любая моделька человека (char'а) в мире появляется так или иначе вызывом опкода 009A. Точно также с изменением скина, с ускорением транспорта, созданием объектов и так далее и так далее. И все кастомные системы от лаунчеров проекта по типу охранников, питомцев, нпс они если начать ревёрсить все по итогу для создания персонажей вызовут где-то опокод 009A.
Безусловно там наверняка на половину этих функции будут стоять хуки, чтобы пересылать на расширенные таблицы моделей, анимаций, текстурок. Добавлять какие-то дополнительные эффекты, хуки в рендере дополнительно отрисовывающие какую-то ***ню. Но так или иначе костяк игры остаётся, просто его обвешивают всё новой и новой мишурой. Это несколько тысяч опкодов это база самой игры, которую могут ЧАСТИЧНО заменять, но чаще модифицирует для расширения возможностей, но никто их вырезать не будет. Потому что УСЛОВНО при прыжке может вызываться какой-то один единственный опкод, нигде более не использующийся, который просчитывает кости персонажа и если его удалить игра умрёт. Может быть там поставят хук, который будет ссылаться на функцию в асишке лаунчера, который будет по другой формуле рассчитывать кости у каких-то кастомных персонажей великанов, но опкод останется на месте.
Я решил ради интереса посмотреть чё там внутри setGameKeyState. sub_100013A0 ссылается на CPad::GetPad в самой игре (тут буква "a", а не "e", не путать с "ped"). Индекс 0 это наш персонаж, получаем из массива "устройств ввода" наше, далее по номеру клавиши считает оффсет до неё в структуре и меняется значение. В твоём случаи вероятно лаунчер ставит на CPad::GetPad хук так как там скорее всего лимит 1000 устройств, а насколько я знаю на Амазинге на 1 сервере может быть больше игроков. Но это просто выведет нас на другой расширенных массив. Технология управления уверен на 100% они не меняли, это невероятный гемор непонятно ради чего.
Интересно, что опкод 0b56 moonloader не вызывает, как в других его функциях, я честно говоря впервые встречаю чтоб вместо вызова опкода была реализация на месте. Также я немного преувеличил, конкретно опкод 0b56 не входит в стандартный набор и его реализация находится в sampfuncs, который туда добавлен через интерфейс cleo (хотя он как я уже только что сказал и не вызывается). Хз, почему так сделано. Но учитывая что я за столько лет не сталкивался с потребностью вызвать опкод из стандартного набора в 2600+ штук думаю они слишком ситуативные и не сильно нужны. На крайняк можно спиздить реализацию из муна или сампфункса.
Ну и в целом хочу прокомментировать, то что ты пытаешься сделать. Разработка под Амазинг это тебе не Аризона и даже не Радмир. Там помимо дохуищя кастомизации (вероятно сделанной через жопу) есть защита. Это конечно всё можно раскопать и сделать при желании, но тут без навыков ревёрса ты нихера с места не сдвинешься. Дай бог ты найдёшь достаточно исходников с реализациями всего, что тебе нужно, и разберёшься как это себе взять. Но судя по твоим ответам и что тебя удивляет, то что я за 15 минут нашёл тебе в базе в открытом доступе ты полез в дело, которое намного сложнее чем тебе кажется и твоих навыков может не хватить
Зареверсил, вышло B72D50, спасибо тебе большое, теперь все работает у мя
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|